Menu
CoddyTech

É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.

challenge icon

Défi

Moyen

Fais clignoter le héros en rouge lorsque le garde le touche.

  1. Dans hero.gd, écris flash() : définis modulate sur Color(1, 0.3, 0.3), puis fais-le revenir progressivement à Color(1, 1, 1) en 0.5 secondes.
  2. 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

Entraînez-vous par vous-même : Playground Godot