Chỉ người chơi
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 4 trên 27.
Một khu vực nhận biết mọi đối tượng đi vào. Thường chỉ nên tính một đối tượng, chẳng hạn như cánh cửa chỉ mở cho nhân vật chính.
Dùng if để kiểm tra đó là ai:
func _on_body_entered(body):
if body.name == "Player":
print("Hello, player")== kiểm tra xem hai giá trị có bằng nhau không. Các dòng bên dưới if, thụt vào sâu hơn một tab, chỉ chạy khi chúng bằng nhau. Tên phải khớp chính xác. "player" với chữ p viết thường là một tên khác.
Ở đây, xe tự hành lăn qua tấm áp lực trước, rồi bạn bước lên đó.
Thử thách
DễKhiến chiếc đĩa chỉ phản ứng với người chơi.
- Trong
_on_body_entered(body), đặt dòngmodulatebên trong câu lệnhif. - Đặt điều kiện của
ifđể kiểm tra xembody.namecó phải là"Player"hay không bằng==.
Nhấn "Chơi": chiếc đĩa giữ nguyên màu khi rô-bốt thám hiểm đi qua và chuyển sang màu xanh bạc hà khi bạn bước lên. 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):
modulate = Color(0.49, 0.95, 0.75)
Tất cả bài học trong Tín hiệu và va chạm
Tự luyện tập: Playground Godot