Animasyon geciktirme, bekletme işlemleri

Bazı durumlarda o anki karede animasyonu belirli bir süre bekletmek istiyorsanız basit olarak timer ile bu işi halledebiliyoruz. Aslında basit birşey ama bu kodu kullanmak yerine çoğumuz frame sayısını arttırıyoruz. 10 saniye için 10*fps(24ise)=240 frame. İşlemci, rem bayılıyor tabi bu duruma 🙂 Öncelikle aşağıdaki kodu bekletme yapacağımız animasyonun ilk framelerinden 1 tanesine koyalım.

var time :Timer = new Timer(3000,1);
time.addEventListener(TimerEvent.TIMER, beklet);

function beklet(e:TimerEvent):void
{
gotoAndPlay(currentFrame+1);
time.stop();
}

Daha sonra bekletme yapacağınız kareye

stop();

time.start();

yazarak bu işlemi rahatlıkla yapabiliriz.Her kare için kullanabilirsiniz. tabi fonksiyonun bulunduğu “mc” için geçerli bu.

Basitçe açıklamak gerekirse “3000 = 3 sn. 1 defa çalışacak.” “currentFrame+1” kısmı da bulunduğu kareyi 1 arttırıp animasyonu hareket ettiriyoruz.1 arttırmamızın sebebi ise aynı karede stop(); komutu olduğu için takılma yaşanbiliyor çoğu zaman.

Ayrıca ana sahneden devam etmek için MovieClip(root).gotoAndPlay… , bir önceki movieClip’den devam etmek için MovieClip(parent).gotoAndPlay… kodlarını kullanarak daha da pratik bir çözüm üretebiliriz.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir