Menu
CoddyTech

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 đó.

challenge icon

Thử thách

Dễ

Khiến chiếc đĩa chỉ phản ứng với người chơi.

  1. Trong _on_body_entered(body), đặt dòng modulate bên trong câu lệnh if.
  2. Đặt điều kiện của if để kiểm tra xem body.name có 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