From 53e86be2cefa54c3707fd9560b5abb8481d649c4 Mon Sep 17 00:00:00 2001 From: Altaezio Date: Thu, 2 Jul 2026 10:41:04 +0200 Subject: [PATCH] =?UTF-8?q?Animation=20des=20cellules=20entre=20les=20jour?= =?UTF-8?q?s=20corrig=C3=A9es?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gui/game/energy_info/scripts/battery_3d.gd | 11 +++++++---- gui/game/energy_info/scripts/energy_info.gd | 4 ++-- gui/game/energy_info/scripts/energy_info_3d.gd | 12 ++++++------ 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/gui/game/energy_info/scripts/battery_3d.gd b/gui/game/energy_info/scripts/battery_3d.gd index b43896a..1cabd49 100644 --- a/gui/game/energy_info/scripts/battery_3d.gd +++ b/gui/game/energy_info/scripts/battery_3d.gd @@ -4,14 +4,17 @@ class_name Battery3d const MAX_BATTERY_GAUGE_SPRITE_SCALE = 2.525 -@export var powered : bool = true : set = set_powered +@export var powered: bool = true func _ready(): set_powered() -func set_powered(_powered : bool = 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: - var tween : Tween = get_tree().create_tween() - tween.tween_property(%NonPoweredBatteryGauge, "scale:y", 0. if powered else MAX_BATTERY_GAUGE_SPRITE_SCALE, 0.3) + 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 diff --git a/gui/game/energy_info/scripts/energy_info.gd b/gui/game/energy_info/scripts/energy_info.gd index 85dfa18..8864eda 100644 --- a/gui/game/energy_info/scripts/energy_info.gd +++ b/gui/game/energy_info/scripts/energy_info.gd @@ -13,7 +13,7 @@ var max_energy := 0 func update( _energy : int, _max_energy : int, - _with_animation := true, + with_animation := true, ): var changed = (energy != _energy or max_energy != _max_energy) if changed: @@ -23,7 +23,7 @@ func update( # if with_animation: # %EnergyAnimationPlayer.bounce() - %EnergyInfo3d.energy = energy + %EnergyInfo3d.set_energy(energy, with_animation) %EnergyInfo3d.max_energy = max_energy %EnergyCount.text = energy_count_text %EnergyCount.modulate = Color.WHITE if energy > 0 else Color.RED \ No newline at end of file diff --git a/gui/game/energy_info/scripts/energy_info_3d.gd b/gui/game/energy_info/scripts/energy_info_3d.gd index b4deac7..301333b 100644 --- a/gui/game/energy_info/scripts/energy_info_3d.gd +++ b/gui/game/energy_info/scripts/energy_info_3d.gd @@ -2,15 +2,15 @@ extends Node3D const BATTERY_SCENE = preload("res://gui/game/energy_info/battery_3d.tscn") -const BATTERY_SHIFT = Vector3(0,0,-1) +const BATTERY_SHIFT = Vector3(0, 0, -1) -@export var max_energy : int = 0 : set = set_max_energy -@export var energy : int = 0 : set = set_energy +@export var max_energy: int = 0: set = set_max_energy +@export var energy: int = 0 func _ready(): set_max_energy() -func set_max_energy(_max_energy : int = max_energy): +func set_max_energy(_max_energy: int = max_energy): max_energy = _max_energy if is_node_ready() and max_energy != len(%Batteries.get_children()): for c in %Batteries.get_children(): @@ -24,7 +24,7 @@ func set_max_energy(_max_energy : int = max_energy): await get_tree().create_timer(0.1).timeout set_energy() -func set_energy(_energy : int = energy): +func set_energy(_energy: int = energy, with_animation: bool = true): energy = _energy if is_node_ready(): var energy_count = 0 @@ -32,5 +32,5 @@ func set_energy(_energy : int = energy): if not battery.is_node_ready(): await battery.ready if battery is Battery3d: - battery.powered = energy_count < energy + battery.set_powered(energy_count < energy, with_animation) energy_count += 1