Menu
CoddyTech

Übrig gebliebene Münzen

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

Jede Münze zählt hier die verbleibenden Münzen, wenn du sie einsammelst. Die erste gibt Coins left: 3 aus, obwohl nur noch zwei übrig sind.

queue_free() wartet bis zum Ende des Frames. Bis dahin befindet sich die Münze noch in ihrer Gruppe und zählt sich selbst mit.

Nimm die Münze zuerst mit remove_from_group() aus der Gruppe. Das geschieht sofort:

func _on_body_entered(body):
	remove_from_group("coins")
	print("Coins left: ", get_tree().get_nodes_in_group("coins").size())
	queue_free()

Zeilen werden von oben nach unten ausgeführt, deshalb muss remove_from_group vor dem Zählen stehen.

challenge icon

Aufgabe

Mittel

Korrigiere die Zählung. Entferne die Münze aus der Gruppe coins, bevor sie gezählt wird. Beim Aufheben der drei Münzen sollte Coins left: 2, Coins left: 1 und dann Coins left: 0 ausgegeben werden.

Probier es selbst

extends Area2D

func _ready():
	add_to_group("coins")
	body_entered.connect(_on_body_entered)

func _on_body_entered(body):
	print("Coins left: ", get_tree().get_nodes_in_group("coins").size())
	queue_free()
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