Menu
CoddyTech
flag Pt iconPortuguêsdown icon

Coletor de Moedas: Coletadas

Parte da seção Sinais e colisões do Journey de Godot da Coddy. Lição 25 de 27.

main.gd contém as regras do jogo, como quantas moedas ainda restam. Main precisa saber de cada moeda que você coleta. Então, cada moeda envia um sinal, e Main escuta todos eles.

Em coin.gd, declare signal collected e emita-o logo antes de a moeda se liberar:

if body.is_in_group("player"):
	collected.emit()
	queue_free()

Em main.gd, conecte cada moeda do grupo, como você fez com os espinhos:

for coin in get_tree().get_nodes_in_group("coins"):
	coin.collected.connect(_on_coin_collected)

Isso funciona em _ready() de Main porque o Godot prepara os filhos antes do pai. Nesse momento, todas as moedas já entraram no grupo.

challenge icon

Desafio

Médio

Desta vez, são dois scripts:

  1. coin.gd: declare signal collected e emita-o antes de queue_free().
  2. main.gd: em _ready(), conecte o sinal collected de cada moeda a uma nova função _on_coin_collected() que imprime Got a coin!.

Experimente você mesmo

extends Node2D

func _ready():
	pass
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Sinais e colisões

Pratique por conta própria: Playground de Godot