@tool extends FullscreenPanelBase @onready var box: Control = $%box func beforeOpen(_args: Array = []): for weapon in UIState.player.weapons: weapon.show() weapon.rebuildInfo() weapon.sublimateOpened.connect( func(): for w in UIState.player.weapons: if w != weapon: w.animator.play("hide") ) weapon.sublimateClosed.connect( func(): for w in UIState.player.weapons: if w != weapon: w.animator.play("show") ) UIState.player.weaponStore.remove_child(weapon) box.add_child(weapon) func afterClose(): for weapon in box.get_children(): weapon.hide() box.remove_child(weapon) UIState.player.weaponStore.add_child(weapon)