Menu
CoddyTech

Münzsammler: Übrige Münzen

Teil des Abschnitts Signale und Kollisionen der Godot-Journey von Coddy. Lektion 26 von 27.

Main sollte wissen, wie viele Münzen noch übrig sind. Speichere die Anzahl in einer Variablen am Anfang von main.gd. Zähle die Gruppe einmal zu Beginn und ziehe dann für jede eingesammelte Münze eins ab:

var coins_left = 0

func _ready():
	coins_left = get_tree().get_nodes_in_group("coins").size()

Warum nicht die Gruppe in _on_coin_collected zählen? Die Münze sendet collected, kurz bevor sie sich selbst freigibt. Bis zum Ende des Frames bleibt sie in ihrer Gruppe, daher würde sie bei der Zählung mitgezählt.

Eine Variable ändert sich nur, wenn du sie änderst.

challenge icon

Aufgabe

Mittel

In main.gd:

  1. Füge oben var coins_left = 0 hinzu und setze den Wert in _ready() auf die Größe der Gruppe coins.
  2. Ziehe in _on_coin_collected() eins ab und gib Coins left: und die Anzahl aus, anstelle von Got a coin!.

Die erste Münze gibt Coins left: 5 aus.

Probier es selbst

extends Node2D

func _ready():
	for coin in get_tree().get_nodes_in_group("coins"):
		coin.collected.connect(_on_coin_collected)

func _on_coin_collected():
	print("Got a coin!")
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 Signale und Kollisionen

Übe selbstständig: Godot-Playground