Quem entrou?
Parte da seção Sinais e colisões do Journey de Godot da Coddy. Lição 3 de 27.
A área passa para a sua função o corpo que entrou. Esse é o body em _on_body_entered(body). É o próprio nó, então você pode ler qualquer coisa nele.
body.name é o nome do corpo que entrou:
func _on_body_entered(body):
print(body.name)Um name simples é o nome da própria zona, porque o script está na zona.
Dois corpos atravessam esta zona: você, o Player, e um Rover âmbar que passa rolando por conta própria.
Desafio
FácilFaça a zona dizer quem entrou.
- Em
_on_body_entered(body), altere oprint()para imprimir dois valores:body.namee" entered the zone". - Coloque uma vírgula entre eles.
Pressione “Jogar”: o console mostra Rover entered the zone e, depois, Player entered the zone quando você entrar. Em seguida, clique em “Verificar”.
Experimente você mesmo
extends Area2D
func _ready():
body_entered.connect(_on_body_entered)
func _on_body_entered(body):
print("Something entered the zone")
Todas as lições de Sinais e colisões
Pratique por conta própria: Playground de Godot