Coletor de Moedas: Moedas Restantes
Parte da seção Sinais e colisões do Journey de Godot da Coddy. Lição 26 de 27.
O script Main precisa saber quantas moedas restam. Mantenha o número em uma variável no início de main.gd. Conte o grupo uma vez no início e depois subtraia uma para cada moeda coletada:
var coins_left = 0
func _ready():
coins_left = get_tree().get_nodes_in_group("coins").size()Por que não contar o grupo em _on_coin_collected? A moeda envia collected pouco antes de se liberar. Ela permanece no grupo até o fim do quadro, então a contagem a incluiria.
Uma variável só muda quando você a altera.
Desafio
MédioFaça Main contar as moedas que restam.
- No início de
main.gd, adicionevar coins_left = 0e, em_ready(), defina seu valor como o tamanho do grupocoins. - Em
_on_coin_collected(), subtraia uma moeda e imprima o resultado no lugar deGot a coin!:print("Coins left: ", coins_left).
Pressione “Jogar” e pegue uma moeda: o Console mostra Coins left: 5. Depois, “Verificar”.
Experimente você mesmo
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!")
Todas as lições de Sinais e colisões
6Projeto: Coletor de Moedas
Coletor de Moedas: AndarColetor de Moedas: MoedasPratique por conta própria: Playground de Godot