20 lines
839 B
GDScript
20 lines
839 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, maximal_health: int) -> void:
|
|
health_bar.value = roundi((100.0 / maximal_health)) * current_health
|
|
|
|
func update_stamina_bar (current_stamina: int, maximal_stamina: int) -> void:
|
|
stamina_bar.value = roundi((100.0 / maximal_stamina)) * current_stamina
|
|
|
|
func update_name_text (enemy_name: String, current_state: String) -> void:
|
|
name_label.text = enemy_name + " (" + current_state + ")"
|