newlon/scripts/gui/seedpacket/pickable_handler.gd
2025-08-02 23:32:32 +05:00

21 lines
555 B
GDScript

extends SeedpacketHandler
class_name PickableHandler
var chosen : bool
var locked : bool = false
var forbidden : bool = false
func _init(seedpacket : Seedpacket) -> void:
super._init(seedpacket)
LevelEventBus.hotbar_packets_update.connect(on_hotbar_changed)
func exit() -> void:
LevelEventBus.hotbar_packets_update.disconnect(on_hotbar_changed)
func is_avaiable() -> bool:
return not (chosen or locked or forbidden)
func on_hotbar_changed(to : Array[SeedpacketResource]):
chosen = to.has(seedpacket.held_resource)
seedpacket.update_contents()