Áreas detectam corpos
Parte da seção Sinais e colisões do Journey de Godot da Coddy. Lição 1 de 27.
Um Area2D é uma zona que percebe o que entra nela.
Um Area2D precisa de um nó filho CollisionShape2D. A forma define o tamanho da área, que aqui é a caixa verde. Os corpos atravessam uma área. Eles não colidem com ela.
Quando um corpo entra, a área envia um sinal chamado body_entered. O script desta zona fica à escuta dele:
extends Area2D
func _ready():
body_entered.connect(_on_body_entered)
func _on_body_entered(body):
print("Welcome to the zone!")_on_body_entered é executada cada vez que um corpo entra na forma. A próxima lição explica a linha connect. O robô é um corpo, mas caminha ao longo de y = 250, abaixo da zona.
Desafio
FácilO robô caminha ao longo de y = 250. Em _ready(), mova a zona para baixo até y = 250. Em seguida, pressione Play e observe o Console.
Experimente você mesmo
extends Area2D
func _ready():
body_entered.connect(_on_body_entered)
func _on_body_entered(body):
print("Welcome to the zone!")
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