extends Node3D var load_place = preload("res://places/base_place/base_place.tscn") var place = load_place.instantiate() var build_enabled = false var is_building = false var is_placing_door = false var last_room = null var build_start_pos = null signal room_built func _ready(): add_child(place) func _input(event): pass func _on_build_toggle(toggled_on): build_enabled = toggled_on if not toggled_on: place.clear_selection() func _on_area_3d_input_event(_camera, event, event_position, _normal, _shade_id): #Checks input events from the mouse planex if event.is_action_pressed("select") && build_enabled: build_start_pos = event_position is_building = event place.draw_tile_click(build_start_pos) elif is_building: if Input.is_action_pressed("select"): place.init_select_drag(build_start_pos, event_position) else: is_building = event place.end_select_drag() elif is_placing_door: if not event.button_mask: place.hover_door(event_position) if event.is_action_pressed("select"): is_placing_door = false place.build_door() emit_signal("room_built") func _on_confirm_button_pressed() -> void: if is_building: if place.build_allowed: last_room = place.build_selection() build_enabled = false is_building = false is_placing_door = true # else: pass