Menu
CoddyTech

Vùng phát hiện đối tượng

Thuộc phần Tín hiệu và va chạm trong hành trình Godot của Coddy. Bài học 1 trên 27.

Area2D là một vùng nhận biết những gì đi vào đó.

Area2D cần có nút con CollisionShape2D. Hình dạng này xác định kích thước của vùng, ở đây là khung màu xanh lá cây. Các đối tượng đi xuyên qua vùng. Chúng không va chạm với vùng.

Khi một đối tượng đi vào, vùng gửi một tín hiệu có tên là body_entered. Tập lệnh của vùng này lắng nghe tín hiệu đó:

extends Area2D

func _ready():
	body_entered.connect(_on_body_entered)

func _on_body_entered(body):
	print("Welcome to the zone!")

_on_body_entered chạy mỗi khi một đối tượng đi vào hình dạng này. Bài học tiếp theo giải thích dòng connect. Robot là một đối tượng, nhưng nó di chuyển dọc theo y = 250, bên dưới vùng.

challenge icon

Thử thách

Dễ

Đặt vùng trên đường đi của rô-bốt.

  1. Rô-bốt đi dọc theo y = 250. Trong _ready(), đặt position.y của vùng thành 250.
  2. Giữ nguyên dòng connect.

Nhấn "Chơi": khi rô-bốt đi vào, Console hiển thị Welcome to the zone!. Sau đó nhấn "Kiểm tra".

Tự làm thử

extends Area2D

func _ready():
	body_entered.connect(_on_body_entered)

func _on_body_entered(body):
	print("Welcome to the zone!")

Tất cả bài học trong Tín hiệu và va chạm

Tự luyện tập: Playground Godot