Monete rimaste
Fa parte della sezione Segnali e collisioni del percorso Godot di Coddy. Lezione 17 di 27.
Ogni moneta qui conta le monete rimaste quando la raccogli. La prima stampa Coins left: 3, ma ne rimangono solo due.
queue_free() aspetta fino alla fine del frame. Fino ad allora la moneta è ancora nel suo gruppo, quindi conta anche se stessa.
Prima togli la moneta dal gruppo con remove_from_group(). L'effetto è immediato:
func _on_body_entered(body):
remove_from_group("coins")
print("Coins left: ", get_tree().get_nodes_in_group("coins").size())
queue_free()Le righe vengono eseguite dall'alto verso il basso, quindi remove_from_group deve comparire prima del conteggio.
Sfida
MedioCorreggi il conteggio. Rimuovi la moneta dal gruppo coins prima di contarla. Raccogliendo le tre monete, dovrebbe stampare Coins left: 2, Coins left: 1, poi Coins left: 0.
Provalo tu
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()
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Segnali e collisioni
Esercitati da solo: Playground Godot