Menu
CoddyTech

Destello del héroe

Parte de la sección Proyectos del Journey de Godot de Coddy. Lección 31 de 33.

Es fácil pasar por alto que se ha perdido una vida en la barra superior. Haz que el héroe parpadee en rojo cuando reciba un golpe y después vuelva a su color gradualmente. Para ello, usa un tween en una función flash() del héroe:

func flash():
	modulate = Color(1, 0.3, 0.3)
	var tween = create_tween()
	tween.tween_property(self, "modulate", Color(1, 1, 1), 0.5)

El tinte se vuelve rojo al instante y después un tween lo devuelve al blanco a lo largo de medio segundo. modulate aplica un tinte al héroe y a todos sus nodos secundarios.

main.gd llama a $Hero.flash() con cada golpe. Puedes llamar a una función de otro nodo a través de ese nodo.

challenge icon

Desafío

Intermedio
  1. En hero.gd, escribe flash(): establece modulate en Color(1, 0.3, 0.3) y después haz que vuelva gradualmente a Color(1, 1, 1) en 0.5 segundos.
  2. En main.gd, llama a $Hero.flash() cuando el guardia toque al héroe.

Pruébalo tú mismo

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()
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Proyectos

Practica por tu cuenta: Playground de Godot