Files
ScrapFrontier/game/entities/ships/player/blink_charge_indicator.gd
T

34 lines
689 B
GDScript

class_name BlinkChargeIndicator
extends Node2D
var maximum: float = 0:
set = _set_maximum
var value: float = 0:
set = _set_value
@onready var progress_bar : TextureProgressBar = $ProgressBar
@onready var charged_sprite : Sprite2D = $ChargedSprite
func _set_maximum(new_value: float) -> void:
maximum = new_value
value = clampf(value, 0, maximum)
progress_bar.max_value = maximum
_update_charged_sprite()
func _set_value(new_value: float) -> void:
value = clampf(new_value, 0, maximum)
progress_bar.value = value
_update_charged_sprite()
func _update_charged_sprite() -> void:
if is_equal_approx(value, maximum):
charged_sprite.show()
else:
charged_sprite.hide()