Las áreas detectan cuerpos
Parte de la sección Señales y colisiones del Journey de Godot de Coddy. Lección 1 de 27.
Un Area2D es una zona que detecta lo que entra en ella.
Un Area2D necesita un nodo hijo CollisionShape2D. La forma establece el tamaño del área, aquí el recuadro verde. Los cuerpos atraviesan un área. No chocan con ella.
Cuando un cuerpo entra, el área envía una señal llamada body_entered. El script de esta zona la escucha:
extends Area2D
func _ready():
body_entered.connect(_on_body_entered)
func _on_body_entered(body):
print("Welcome to the zone!")_on_body_entered se ejecuta cada vez que un cuerpo entra en la forma. La siguiente lección explica la línea connect. El robot es un cuerpo, pero se desplaza por y = 250, debajo de la zona.
Desafío
FácilEl robot camina a lo largo de y = 250. En _ready(), mueve la zona hacia abajo hasta y = 250. Después, pulsa Jugar y observa la consola.
Pruébalo tú mismo
extends Area2D
func _ready():
body_entered.connect(_on_body_entered)
func _on_body_entered(body):
print("Welcome to the zone!")
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