* Structure de l'histoire principale
* Line sur le perso principal
* Agrandissement de la zone de détection des cellules
* Ajout du spray de Talion (+1 points de plante de base)
* Ajout de feedback sur l'usage des cellules d'énergie
This commit is contained in:
2026-07-06 23:05:39 +02:00
parent d0446e8826
commit 22b753c6a9
78 changed files with 1464 additions and 208 deletions

View File

@@ -1,4 +1,3 @@
@tool
extends Interactable
class_name EnergyCell
@@ -8,6 +7,7 @@ const GIVEN_ENERGY = 1
func _ready():
set_used()
%EnergyParticle.visible = false
func set_used(v = used):
used = v
@@ -18,6 +18,11 @@ func set_used(v = used):
%SpriteOff.visible = used
%SpriteOn.visible = not used
func pointer_text() -> String:
if used:
return tr("%s_USED") % tr(default_info_title)
return default_info_title
func can_interact(p : Player) -> bool:
return p.data.energy < p.data.max_energy
@@ -26,13 +31,30 @@ func interact(p : Player) -> bool:
used = true
available = false
await spawn_energy_particle()
p.data.energy += GIVEN_ENERGY
interacted.emit(p)
region.data.used_objects.append(name)
AudioManager.play_sfx("Recharge1")
return true
return false
func spawn_energy_particle():
var screen_size = get_viewport().get_visible_rect().size
%EnergyParticle.visible = true
%EnergyParticle.position = (
(global_position - region.camera.global_position) * get_viewport().get_camera_2d().zoom
+ ((screen_size) / 2)
)
var tween = create_tween()
tween.set_trans(Tween.TransitionType.TRANS_SPRING)
tween.tween_property(%EnergyParticle,"position",Vector2(100,100),1.)
await tween.finished
AudioManager.play_sfx("Recharge1")
%EnergyParticle.visible = false