Áreas se Encontram
Parte da seção Sinais e colisões do Journey de Godot da Coddy. Lição 6 de 27.
Os nós do Godot vêm com sinais integrados. Uma Area2D tem quatro sinais que você usará com frequência:
body_enteredebody_exited: um corpo entrou ou saiu. Corpos são coisas sólidas, comoCharacterBody2DeStaticBody2D.area_enteredearea_exited: outra área entrou ou saiu.
Uma área nunca emite body_entered para outra área. As estrelas cadentes são áreas, então a cesta precisa de area_entered:
func _ready():
area_entered.connect(_on_star_caught)A função recebe a área que entrou, então aceita um valor, como _on_body_entered(body). Você pode dar qualquer nome a ele.
Desafio
FácilDuas estrelas caem na cesta, mas o Console continua vazio. A cesta está ouvindo o sinal errado. Faça com que ela imprima Caught a star! para cada estrela.
Experimente você mesmo
extends Area2D
func _ready():
body_entered.connect(_on_star_caught)
func _on_star_caught(star):
print("Caught a star!")
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