* Changements de la texture des cristaux de Talion dans tous les assets 3D pour correspondre aux assets 2D * Ajout d'un évenement en fin de région, une résurgence de Talion qui décontamine et fait looter les plantes mature aux alentours * Ajout d'un path finding sur le mouvement du robot * Modification du flow des actions à la souris : ajout d'un nouveau son, d'un icône à l'emplacement de l'action * Modification du nombre et de l'ordre de mutation débloquées * Augmentation de la valeur maximale de zoom * Modification des scores à atteindre dans les premières régions * Modification de l'interface du vaisseau, laissant apparaitre une roadmap plus claire, et laissant inspecter l'inventaire actuel * Modification de l'icône d'action dans les scènes 3D * Augmentation de la zone d'écart entre les plantes, et augmentation du taux de zone fertile en conséquence * La station de recharge devient inutilisable après la fin de la région * Ajout d'une transparence lors de la sélection d'objets derrières d'autres objets * Les plantes juvéniles donneront toujours une graine si coupées * Ajout d'un bouclage sur les couleurs des mutations * Fix des hitbox des plantes pour l'inspection à la souris * Fix de plusieurs bugs sur la manipulation de l'inventaire * Ajout de nombreux screenshots d'utilisation des outils lors du tutoriel * Amélioration mineure de la traduction/wording
45 lines
1.1 KiB
GDScript
45 lines
1.1 KiB
GDScript
extends Interactable3D
|
|
|
|
const MAX_BREAK_LEVEL = 2
|
|
|
|
signal broken
|
|
|
|
@export var break_level = 0
|
|
|
|
func _ready():
|
|
update_model()
|
|
|
|
func click():
|
|
if interactable:
|
|
clicked.emit()
|
|
%BreackAudioPlayer.playing = true
|
|
%BreakParticles.emitting = true
|
|
|
|
break_level += 1
|
|
if break_level == MAX_BREAK_LEVEL:
|
|
broken.emit()
|
|
interactable = false
|
|
unlock_mutation()
|
|
|
|
update_model()
|
|
|
|
|
|
func update_model():
|
|
if is_node_ready():
|
|
%CristalModel.visible = break_level == 0
|
|
%CristalModelCrack.visible = break_level > 0
|
|
|
|
if break_level > 1:
|
|
%CristalModelCrack.find_children("AnimationPlayer")[0].play("Break")
|
|
|
|
func unlock_mutation():
|
|
var progression = GameInfo.game_data.progression_data
|
|
|
|
if progression.mutations_unlocked < len(progression.get_all_mutations()):
|
|
var new_mutation : PlantMutation = progression.get_all_mutations()[progression.mutations_unlocked]
|
|
progression.mutations_unlocked += 1
|
|
|
|
get_tree().create_timer(1.).timeout.connect(
|
|
func (): %MutationAnnounce.announce_mutation = new_mutation
|
|
);
|