extends Interactable var test: bool = false @export var items_pos_master: Node var item_poses: Array func _init() -> void: max_person_using = 1 can_store = true build_name = "shelf" func _ready() -> void: self.owner = $".." #object_placed.connect(_on_object_placed.bind(self)) func start_action(person, object): if person.target_action == "take" or person.target_action == "eat": give_out(person) func give_out(person): var pose = get_item_pose(person.target_item) pose.remove_item() person.hold_item(person.target_item) stored_items.erase(person.target_item) func add_item(item): stored_items.append(item) for pose in item_poses: if pose.is_free: print(pose) pose.add_item(item) break func get_item_pose(item): for pose in item_poses: if pose.item == item: return pose return null func create(): for pose in items_pos_master.get_children(): item_poses.append(pose) ItemManager.add_shelf(self) ItemManager.add_item_to_shelf(self, ItemManager.create_item(0)) ItemManager.add_item_to_shelf(self, ItemManager.create_item(0))