Files
project-thor/Scripts/build_manager.gd
Nikolai Fesenko 5637c82eb7 added user action
2025-08-17 16:21:34 +02:00

62 lines
1.3 KiB
GDScript

extends Node
@onready var DoubleBeds = preload("res://Scenes/Prefabs/DoubleBeds.tscn")
@onready var Pot = preload("res://Scenes/Prefabs/Pot.tscn")
@onready var Battery = preload("res://Scenes/Prefabs/Battery.tscn")
@onready var Shelf = preload("res://Scenes/Prefabs/Shelf.tscn")
signal build_object_selected
signal exit_build_mode
signal enter_build_mode
signal preview_created
signal preview_destroyed
signal object_placed(build_postion)
signal object_added(object)
var build_mode: bool = false
var selected_object_id: int
var is_object_selected: bool
var global_y = 2.903
var builded_objects: Array
func _ready() -> void:
is_object_selected = false
build_object_selected.connect(_on_object_selected)
func _input(event: InputEvent) -> void:
if event.is_action_released("enter_build_mode"):
if build_mode:
exit_build_mode.emit()
build_mode = false
else:
enter_build_mode.emit()
build_mode = true
func get_preview_object():
var selected_object
match selected_object_id:
0:
selected_object = DoubleBeds
1:
selected_object = Pot
2:
selected_object = Battery
3:
selected_object = Shelf
return selected_object
func _on_object_selected():
is_object_selected = true
func add_object_to_array(object):
builded_objects.append(object)
object_added.emit(object)