Heldenblitz
Teil des Abschnitts Projekte der Godot-Journey von Coddy. Lektion 34 von 36.
Ein verlorenes Herz in der oberen Leiste übersieht man leicht. Lass den Helden bei einem Treffer rot aufblitzen und anschließend wieder verblassen. Das erledigt ein Tween in einer flash()-Funktion des Helden:
func flash():
modulate = Color(1, 0.3, 0.3)
var tween = create_tween()
tween.tween_property(self, "modulate", Color(1, 1, 1), 0.5)Die Färbung wird sofort rot, dann bringt ein Tween sie innerhalb einer halben Sekunde wieder zu Weiß zurück. modulate färbt den Helden und alle seine untergeordneten Elemente.
main.gd ruft bei jedem Treffer $Hero.flash() auf. Du kannst eine Funktion über einen anderen Knoten aufrufen.
Aufgabe
MittelLass den Helden rot aufblitzen, wenn die Wache ihn berührt.
- Schreibe in
hero.gdflash(): SetzemodulateaufColor(1, 0.3, 0.3)und tween es dann innerhalb von0.5Sekunden zurück zuColor(1, 1, 1). - Rufe in
main.gd$Hero.flash()auf, wenn die Wache den Helden berührt.
Drücke auf „Spielen“ und berühre die Wache: Der Held blitzt rot auf. Drücke dann auf „Prüfen“.
Probier es selbst
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()
Alle Lektionen in Projekte
Übe selbstständig: Godot-Playground