@tool extends Node3D class_name Battery3d const MAX_BATTERY_GAUGE_SPRITE_SCALE = 2.525 @export var powered: bool = true func _ready(): set_powered() func set_powered(_powered: bool = powered, with_animation: bool = true): var old_powered = powered powered = _powered if is_node_ready() and old_powered != powered: if with_animation: var tween: Tween = get_tree().create_tween() tween.tween_property(%NonPoweredBatteryGauge, "scale:y", 0. if powered else MAX_BATTERY_GAUGE_SPRITE_SCALE, 0.3) else: %NonPoweredBatteryGauge.scale.y = 0. if powered else MAX_BATTERY_GAUGE_SPRITE_SCALE