22 lines
503 B
GDScript
22 lines
503 B
GDScript
class_name EnergyBar
|
|
extends ProgressBar
|
|
|
|
|
|
func _ready() -> void:
|
|
show_percentage = false
|
|
_event_bus().connect("player_energy_changed", refresh)
|
|
|
|
|
|
func refresh(current: float, maximum: float) -> void:
|
|
max_value = maxf(0.01, maximum)
|
|
value = clampf(current, 0.0, maximum)
|
|
|
|
|
|
func _event_bus() -> Node:
|
|
var root := get_tree().root
|
|
var bus := root.get_node_or_null("EventBus")
|
|
if bus == null:
|
|
bus = load("res://autoload/event_bus.gd").new()
|
|
bus.name = "EventBus"
|
|
root.add_child(bus)
|
|
return bus |