Menu
CoddyTech

Monedas restantes

Parte de la sección Señales y colisiones del Journey de Godot de Coddy. Lección 17 de 27.

Cada moneda cuenta las monedas que quedan cuando la recoges. La primera muestra Coins left: 3, pero solo quedan dos.

queue_free() espera hasta el final del fotograma. Hasta entonces, la moneda sigue en su grupo, así que se cuenta a sí misma.

Primero saca la moneda del grupo con remove_from_group(). Se aplica de inmediato:

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

Las líneas se ejecutan de arriba abajo, así que remove_from_group debe ir antes del recuento.

challenge icon

Desafío

Intermedio

Corrige el conteo. Saca la moneda del grupo coins antes de contarla. Al sacar las tres monedas, debería imprimirse Coins left: 2, Coins left: 1 y después Coins left: 0.

Pruébalo tú mismo

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 iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Señales y colisiones

Practica por tu cuenta: Playground de Godot