Menu
CoddyTech

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.

challenge icon

Sfida

Medio

Correggi 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()
quiz iconMettiti alla prova

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