Alanlar Birbirleriyle Buluşuyor
Coddy'nin Godot Journey'sinin Sinyaller ve Çarpışmalar bölümünün bir parçası. Ders 6 / 27.
Godot düğümleri yerleşik sinyallerle gelir. Bir Area2D, sık kullanacağınız dört sinyale sahiptir:
body_enteredvebody_exited: bir gövde içeri girdi veya dışarı çıktı. Gövdeler,CharacterBody2DveStaticBody2Dgibi katı nesnelerdir.area_enteredvearea_exited: başka bir alan içeri girdi veya dışarı çıktı.
Bir alan, başka bir alan için asla body_entered göndermez. Düşen yıldızlar alan olduğundan, sepetin area_entered sinyaline ihtiyacı vardır:
func _ready():
area_entered.connect(_on_star_caught)Fonksiyon, içeri giren alanı alır; bu nedenle _on_body_entered(body) gibi bir değer alır. Ona istediğiniz adı verebilirsiniz.
Görev
KolaySepetin düşen yıldızları fark etmesini sağla.
- Yıldızlar gövde değil, alandır.
_ready()içinde,body_enteredyerinearea_enteredbağlantısını kur. - Fonksiyon olarak
_on_star_caughtkullanmaya devam et.
“Oyna” düğmesine bas: Konsol, her yıldız için bir kez olmak üzere Caught a star! ifadesini iki kez gösterir. Ardından “Kontrol et” düğmesine bas.
Kendin dene
extends Area2D
func _ready():
body_entered.connect(_on_star_caught)
func _on_star_caught(star):
print("Caught a star!")
Sinyaller ve Çarpışmalar bölümündeki tüm dersler
2Sinyaller
Alanlar Birbirleriyle BuluşuyorKendi SinyalinDeğer İçeren SinyallerBaşka Bir Düğümün SinyaliSinyalini DinleKendi başına pratik yap: Godot playground