Menu
CoddyTech

Schlage die Zeit

Teil des Abschnitts Spielregeln der Godot-Journey von Coddy. Lektion 24 von 29.

Der Countdown bewirkt bei null nichts und läuft weiter bis -1, -2. Füge die Regeln hinzu:

  • Wenn die Zeit 0 erreicht, verliert der Spieler. Zeige Time's up! an und stoppe das Spiel.
  • Wenn der Spieler zuerst die Flagge erreicht, gewinnt er. Zeige You win! an und stoppe das Spiel.

Stoppe das Spiel mit get_tree().paused = true. Durch die Pause wird die Uhr angehalten, sodass die Zeit bei dem Wert stehen bleibt, bei dem sie endete. Außerdem wird der Spieler angehalten, sodass niemand gewinnt, nachdem die Zeit abgelaufen ist.

if time_left == 0:
	$HUD/Message.text = "Time's up!"
	get_tree().paused = true
challenge icon

Aufgabe

Einfach

Mach aus dem Countdown ein Rennen, das du verlieren kannst.

  1. Setze in _on_clock_timeout() nach der Zeile mit dem Label, wenn time_left 0 ist, $HUD/Message.text auf "Time's up!" und pausiere das Spiel.
  2. Pausiere in _on_goal_body_entered(body) das Spiel nach "You win!".

Drücke auf „Spielen“ und warte: Bei Time: 0 stoppt das Spiel mit Time's up! Drücke dann auf „Prüfen“.

Probier es selbst

extends Node2D

var time_left = 10

func _ready():
	$HUD/Time.text = "Time: %d" % time_left
	$Goal.body_entered.connect(_on_goal_body_entered)
	$Clock.timeout.connect(_on_clock_timeout)

func _on_goal_body_entered(body):
	if body.is_in_group("player"):
		$HUD/Message.text = "You win!"

func _on_clock_timeout():
	time_left -= 1
	$HUD/Time.text = "Time: %d" % time_left
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Spielregeln

Übe selbstständig: Godot-Playground