Refactor scene structure and resource paths; add death and game over screens

This commit is contained in:
2025-05-10 02:33:49 +02:00
parent 04cce84c6c
commit a95d96dcc9
38 changed files with 486 additions and 88 deletions

51
scripts/ui/hud.gd Normal file
View File

@@ -0,0 +1,51 @@
class_name Hud
extends Node
@export var player_health: HealthComponent
@export var coins_label: Label
@export var health_progressbar: ProgressBar
@export var lives_label: Label
@onready var game_manager: GM = $"/root/GameManager"
func _ready() -> void:
if not player_health:
var nodes := get_tree().get_nodes_in_group("player")
for node in nodes:
player_health = node.get_node_or_null("HealthComponent")
if player_health:
break
return
func _process(_delta: float) -> void:
if not game_manager:
return
set_health_progressbar()
set_lives_label()
set_coins_label()
func set_coins_label() -> void:
if not game_manager:
return
#todo: set internationalized text
coins_label.text = "Coins:" + str(game_manager.get_coins())
func set_lives_label() -> void:
if not game_manager:
return
lives_label.text = "Lives:" + str(game_manager.get_lives())
func set_health_progressbar() -> void:
if not player_health:
return
health_progressbar.value = player_health.health
health_progressbar.max_value = player_health.max_health