class_name PlayerInventory extends Node2D @export var default_equipped: Node2D @onready var player: Player = get_parent() var equipped: Item: get: return equipped set(value): if value == equipped: return if value: assert(value.get_parent() == self, "item is not a child") if equipped: equipped.set_equipped(false) if value: value .set_equipped(true) equipped = value func _ready() -> void: equipped = default_equipped func get_items() -> Array[Item]: return Array(get_children(), TYPE_OBJECT, "Sprite2D", Item)