While, Do While
ve For döngü deyimleriyle belli bir koşulun doğru
olduğu sürece tekrar eden aksiyonlar oluşturabilirsiniz.
Döngü deyimleri uygulandığında görüntü donar
ve hiçbir fare ve klavye olayı algılanamaz. Bu nedenle bir film
klibi üzerinde döngü deyimleri yerine İf deyimi ile enterFrame
fare olayını birarada kullanmak çok daha uygun olacaktır.
While için:
1- Yeni bir film klibi oluşturalım.
Biz basit bir shape tween içeren bir film klibi yaptık. Sahneye
yerleştirip adlandıralım. (bar)
4-Statements-->Conditions/Loops-->While
komutunu verelim. Condition alanına i <361
yazalım. Değişkenimizi sıfırdan başlattığımız için döngü 361 olana
kadar devam edecektir. 360 derece dönüş planlanmaktadır
5- Şimdi koşulumuz doğru olduğu
sürece tekrarlamasını istediğimiz işlemi ekleyelim. isim="bar"+i;
komutunu verelim. Çoğaltılan klip adlarında kullanacağımız
bu değişkenden bir önceki örnekte de bahsedilmişti.duplicateMovieClip
komutunu ekleyelim.. Target alanına klibimizin mutlak yolunu girelim.(_root.bar)
NewName alanına isim, depth alanına i
yazalım
Bu komutlarla değişkenimizin sayısı arttıkça
kopya filmlerimiz sayı 361 olana kadar artacaktır.
6- Şimdi klip kopyalarının saydamlığını
ve rotasyonunu değiştireceğiz. setProperty komutunu
verelim. Property alanına _rotation yazalım.
Target alanına _root[isim] , value alanına i
yazalım.
Tekrar setPropery komutunu girelim. Property
için _alpha`yı seçelim. Target alanına
_root[isim] yazalım. Value alanına (i/360)*100
ekleyelim. Bu komutla kopya klipleri giderek artan bir değerde
şeffaflaşacak ve sonunda %100 şeffaflık değerine ulaşacaktır.
7- Şimdi i değerinin artışını
hazırlayalım. i + = 30 yazalım.(veya i=i+30)
Bu komutla döngü her çalıştığında i değişkeni 30 ar 30 ar artacak
ve 361 veya üstü değere ulaşınca artık koşul yanlış kabul edilip
döngü kesilecektir.Tüm döngü deyimleri kapa parantez
işaretinden önce yazılmalıdır. Yoksa animasyon hata verir. Döngü
deyiminden çıkmak için kapa parantez işaretini seçelim ve bar._visible
=0 yazalım. Artık o kopyaya ait görüntü kaybolacaktır.
Komutların görüntüsü şöyle olur:
on (release) {
i = 0;
while (i<361) {
isim="bar"+i;
duplicateMovieClip(_root.bar,isim , i);
setProperty(_root[isim], _rotation, i);
setProperty(_root[isim], _alpha, (i/360)*50);
i += 30;
}
bar._visible = 0;
}
Filmi test edebiliriz. Şimdi aynı işlemleri Do
While ve For için yazalım. Butona ait komutların hepsini
silin alttaki komutları kopyalayıp yapıştırın.Animasyon
aynı şekilde çalışacaktır.
Do While için:
on (release) {
// değişken sıfırdan başlatılıyor
i = 0;
do {
// filmin kopyaları hazırlanıyor
isim="bar"+i;
duplicateMovieClip (_root.bar,isim, i);
// kopyalar i derecesinde döndürülüyor
setProperty (_root[isim], _rotation, i);
// giderek artan şeffaflık sağlanıyor
setProperty (_root[isim], _alpha, (i/360)*100);
// artış 30 ar 30 ar sağlanıyor
i = i+30;
// koşul denetleniyor
} while (i<361);
// orjinal klip görülmez oluyor
bar._visible = 0;
}
For için:
on (release) {
for (i=0; i<361; i += 30) {
isim="bar"+i;
duplicateMovieClip (_root.bar, isim, i);
setProperty (_root[isim], _rotation, i);
setProperty (_root[isim], _alpha, (i/360)*100);
}
bar._visible = 0;
}