Dev 0.1
* 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:
@@ -3,6 +3,7 @@
|
||||
[ext_resource type="Script" uid="uid://b25sqd4v2i3v2" path="res://entities/interactables/energy_cell/scripts/energy_cell.gd" id="1_nheea"]
|
||||
[ext_resource type="Texture2D" uid="uid://ds65vxsiitxit" path="res://entities/interactables/energy_cell/assets/sprites/energy_cell_on.png" id="2_fnyaf"]
|
||||
[ext_resource type="Texture2D" uid="uid://dh6jdqoy2xu65" path="res://entities/interactables/energy_cell/assets/sprites/energy_cell_off.png" id="3_t6ydv"]
|
||||
[ext_resource type="Texture2D" uid="uid://dcgnamu7sb3ov" path="res://common/icons/bolt.svg" id="4_fnyaf"]
|
||||
|
||||
[sub_resource type="CircleShape2D" id="CircleShape2D_ylpt4"]
|
||||
radius = 39.115215
|
||||
@@ -100,3 +101,10 @@ shape = SubResource("CircleShape2D_ylpt4")
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="." unique_id=1320210428]
|
||||
unique_name_in_owner = true
|
||||
libraries/ = SubResource("AnimationLibrary_d2c63")
|
||||
|
||||
[node name="CanvasLayer" type="CanvasLayer" parent="." unique_id=1285579466]
|
||||
|
||||
[node name="EnergyParticle" type="Sprite2D" parent="CanvasLayer" unique_id=786670396]
|
||||
unique_name_in_owner = true
|
||||
position = Vector2(100, 100)
|
||||
texture = ExtResource("4_fnyaf")
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user