Bittiğinde
Coddy'nin Godot Journey'sinin Oyun Hissi bölümünün bir parçası. Ders 22 / 23.
Bir sıçrayıştan sonra robot hareketsiz kalır, çünkü "hop" döngüye girmez. Yeniden sallanması gerekir.
Bir AnimationPlayer, döngüye girmeyen bir animasyon sona ulaştığında animation_finished sinyalini gönderir. Sinyal animasyonun adını taşır, böylece tek bir işlev her animasyonu işleyebilir.
func _ready():
$AnimationPlayer.animation_finished.connect(_on_animation_finished)
func _on_animation_finished(anim_name):
if anim_name == "hop":
print("Landed")Bu sinyale body_entered sinyalindekiyle aynı şekilde bağlanırsın. Döngüye giren bir animasyon asla sona ermez, bu yüzden "bob" onu asla göndermez.
Görev
KolayAnimationPlayer'ın animation_finished sinyalini _on_animation_finished(anim_name) işlevine bağla. Biten animasyon "hop" olduğunda, "bob" animasyonunu yeniden oynat.
Kendin dene
extends Node2D
func _ready():
$AnimationPlayer.play("bob")
func _process(delta):
if Input.is_action_just_pressed("jump"):
$AnimationPlayer.play("hop")
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Oyun Hissi bölümündeki tüm dersler
Kendi başına pratik yap: Godot playground