Menu
CoddyTech

Tín hiệu từ nút khác

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 9 trên 27.

Một script cũng có thể lắng nghe tín hiệu của một nút khác. Lấy nút bằng $, rồi kết nối tín hiệu của nút đó:

$Switch.body_entered.connect(_on_switch_body_entered)

Nghĩa là: khi Switch gửi body_entered, hãy gọi _on_switch_body_entered. Hàm này nằm trong script đó, nên có thể dùng các nút của script này, chẳng hạn như $Light.

Game thường được kết nối theo cách này. Một script chính kết nối công tắc, đèn và cửa, còn từng nút vẫn đơn giản. Godot đặt tên cho các hàm như vậy bằng _on_, tiếp theo là tên nút, rồi đến tên tín hiệu.

challenge icon

Thử thách

Dễ

Khi bật công tắc, đèn sẽ sáng.

  1. Trong _ready() của Main, bắt đầu một dòng bằng $Switch.body_entered.
  2. Kết nối nó với _on_switch_body_entered.

Nhấn Chơi rồi bước lên công tắc màu xanh lá: đèn sẽ sáng. Sau đó nhấn Kiểm tra.

Tự làm thử

extends Node2D

func _ready():
	pass

func _on_switch_body_entered(body):
	$Light.visible = true

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

Tự luyện tập: Playground Godot