Flash Kar,yağmur yağdırma ile ilgili bir sorun???

Kodla Büyü

sas7979

Seçkin Üye
Seçkin Üye
Mesajlar
705
Arkadaşlar Flash programında ENTER_FRAME olayıyla kar ve yağmur yağdırma olayını hallediyorum fakat 1.framede başlattığım yağışı 30.framede sonlandırmak istediğimde bu işi yapamıyorum yağmur yağdırmak için aşağıdaki kodları:
import flash.events.Event;

stage.addEventListener(Event.ENTER_FRAME,yagis)
function yagis(e:Event)
{
var yag:yagmurdamlasi=new yagmurdamlasi();
addChild(yag);
yag.x=Math.random()*800;
yag.y=Math.random()*768;
yag.alpha=Math.random();
yag.scaleX=yag.scaleY=Math.random();
}

Durdurmak için ise;import flash.events.Event;

stage.removeEventListener(Event.ENTER_FRAME,yagis);Kodu kullanıyorum hata nerde acaba?
 
Örnek dosyayı eklerseniz daha fazla yardımcı olabiliriz.
stage.removeEventListener(Event.ENTER_FRAME,yagis);
kodunu 30. keyframe içerisine mi yazıyorsunuz? Eğer öyleyse 30 tane rastgele yağmur damlası oluşturup, durdurmak mı niyetiniz?

Ekleme:
Kodunuzu denedim. Çalışmamasının sebebi, 30. frame'de tekrar ilk frame'e geçiş yaptığı için yeniden eventlistener ekleniyor. 30. frame'e removeEvent kodundan sonra stop(); derseniz duracaktır.
 
Hocam rastgele bir yağmur yağışı yapıp 30.framede durdurmak istiyorum kod gayet mantıklı fakat işin içinden çıkamadım dosyayı ekledim.
 

Ekli dosyalar

  • yağış.rar
    8.5 KB · Görüntüleme: 41
Birden fazla rastgele yağmur yağıyo sayısı random zaten ben sadece yağışı durdurmaya ENTER_FRAME olayını durdurmaya çalışıyorum
 
Dosyanızı açamadım, bende cs5 yüklü.
Ancak önceki mesajımda dediğim gibi 30. keyframe'e stop kodu eklerseniz olacaktır.
 
Hocam dediğiizi yaptığımda animasyondaki hareket eden tüm nesneler durmasına rağmen ENTER_FRAME ile oluşturulan yağmur hala devam ediyor maalesef
 
30. frame'deki kodu silip, 1. frame'deki kodu aşağıdaki gibi değiştirip, dener misiniz? Dediğim gibi animasyon sona ulaşıp, 1. frame'e geri döndüğünde tekrar eventlistener ekliyor. Bu arada dosyayı CS5'e uygun olarak kaydedip, ekleyebilir misiniz?
Kod:
stage.addEventListener(Event.ENTER_FRAME,yagis)
function yagis(e:Event)
{
var yag:yagmurdamlasi=new yagmurdamlasi();
addChild(yag);
yag.x=Math.random()*800;
yag.y=Math.random()*768;
yag.alpha=Math.random();
yag.scaleX=yag.scaleY=Math.random();
if (currentFrame>=30){
	stage.removeEventListener(Event.ENTER_FRAME,yagis)
	stop();
}
}
 
Yakup hocam dediğinizi yaptım yine olmadı CS5 formatında çıktı aldım aşağıda
 

Ekli dosyalar

  • yağış.rar
    8.5 KB · Görüntüleme: 25
Geri
Üst