SchildDerStaerke/scripts/enemy_overlay.gd

20 lines
844 B
GDScript

extends Sprite3D
@onready var name_label: Label = $EnemyOverlay/Stats/Name
@onready var health_bar: TextureProgressBar = $EnemyOverlay/Stats/Bars/Health
@onready var stamina_bar: TextureProgressBar = $EnemyOverlay/Stats/Bars/Stamina
func _ready() -> void:
owner.health_changed.connect(update_health_bar)
owner.stamina_changed.connect(update_stamina_bar)
owner.name_changed.connect(update_name_text)
func update_health_bar(current_health: int, maximum_health: int) -> void:
health_bar.value = (100.0 / maximum_health) * current_health
func update_stamina_bar(current_stamina: int, maximum_stamina: int) -> void:
stamina_bar.value = (100.0 / maximum_stamina) * current_stamina
func update_name_text(enemy_name: String, current_state: String) -> void:
name_label.text = "%s (%s)" % [enemy_name, current_state]