Menu
CoddyTech

Recolector de monedas: Monedas restantes

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

Main debe saber cuántas monedas quedan. Guarda el número en una variable al principio de main.gd. Cuenta el grupo una vez al inicio y luego resta uno por cada moneda recogida:

var coins_left = 0

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

¿Por qué no contar el grupo en _on_coin_collected? La moneda envía collected justo antes de liberarse. Permanece en su grupo hasta el final del fotograma, así que el recuento la incluiría.

Una variable solo cambia cuando la cambias.

challenge icon

Desafío

Intermedio

En main.gd:

  1. Añade var coins_left = 0 al principio y asígnale el tamaño del grupo coins en _ready().
  2. En _on_coin_collected(), resta uno e imprime Coins left: y el número, en lugar de Got a coin!.

La primera moneda imprime Coins left: 5.

Pruébalo tú mismo

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 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