Éclair du héros
Fait partie de la section Projets du Journey Godot de Coddy. Leçon 34 sur 36.
Il est facile de ne pas remarquer qu’on a perdu un cœur dans la barre supérieure. Fais clignoter le héros en rouge lorsqu’il est touché, puis fais-le reprendre sa couleur. Une interpolation permet de le faire, dans une fonction flash() sur le héros :
func flash():
modulate = Color(1, 0.3, 0.3)
var tween = create_tween()
tween.tween_property(self, "modulate", Color(1, 1, 1), 0.5)La teinte devient rouge immédiatement, puis une interpolation la ramène au blanc en une demi-seconde. modulate teinte le héros et tous ses enfants.
main.gd appelle $Hero.flash() à chaque coup reçu. Tu peux appeler une fonction sur un autre nœud en passant par ce nœud.
Défi
MoyenFais clignoter le héros en rouge lorsque le garde le touche.
- Dans
hero.gd, écrisflash(): définismodulatesurColor(1, 0.3, 0.3), puis fais-le revenir progressivement àColor(1, 1, 1)en0.5secondes. - Dans
main.gd, appelle$Hero.flash()lorsque le garde touche le héros.
Appuie sur « Jouer » et touche le garde : le héros clignote en rouge. Puis clique sur « Vérifier ».
Essayez vous-même
extends CharacterBody2D
const SPEED = 160
func _physics_process(delta):
velocity = Input.get_vector("move_left", "move_right", "move_up", "move_down") * SPEED
move_and_slide()
Toutes les leçons de Projets
1Projet : Casse-briques
La raquetteGarder la raquette à l’écran4Projet : Exploration de donjon
Parcourir le donjonRamasser la cléEntraînez-vous par vous-même : Playground Godot