I think you emit_signal
too early before parent node is ready.
onready var bar = $HBoxContainer/Bars/Bar/Gauge
is executed just before _ready
so if you emit signal to early, bar
is actually null
I guess it can be fixed by call_defered("emit_signal", "start_instanced", MAXHP)
or... handle like below.
onready var bar = $HBoxContainer/Bars/Bar/Gauge
var max_hp = 0
func _ready():
update_bar()
func _on_HUD_start_instanced(MAXHP):
max_hp = MAXHP
update_bar()
func update_bar():
if bar == null:
return
bar.max_value = max_hp
bar.value = bar.max_value