Unit death

This commit is contained in:
gamer147
2026-04-02 09:01:10 -04:00
parent ce92c6e435
commit 528cb50e58
5 changed files with 67 additions and 9 deletions

View File

@@ -10,14 +10,23 @@ func _ready() -> void:
unit_panel.visible = false
for unit: Unit in get_tree().get_nodes_in_group("units"):
unit.unit_selected_changed.connect(_on_unit_selected_changed)
unit.unit_died.connect(_on_unit_died)
get_tree().node_added.connect(_on_node_added)
func _on_node_added(node: Node) -> void:
if node is Unit and node.is_in_group("units"):
node.unit_selected_changed.connect(_on_unit_selected_changed)
if not node.unit_selected_changed.is_connected(_on_unit_selected_changed):
node.unit_selected_changed.connect(_on_unit_selected_changed)
if not node.unit_died.is_connected(_on_unit_died):
node.unit_died.connect(_on_unit_died)
func _on_unit_died(unit: Unit) -> void:
if _selected_unit == unit:
_selected_unit = null
unit_panel.visible = false
func _process(_delta: float) -> void:
if _selected_unit:
if _selected_unit and is_instance_valid(_selected_unit):
hp_bar.max_value = _selected_unit.current_stats.max_hp
hp_bar.value = _selected_unit.current_stats.current_hp