Şimdi Ara

Action script 3 Sorunu

Bu Konudaki Kullanıcılar:
2 Misafir (1 Mobil) - 1 Masaüstü1 Mobil
5 sn
8
Cevap
0
Favori
881
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Arkadaşlar final projesi için flashda uğraştığım bir uygulama var.Örnek vermek gerekirse 40.frameden sonra yağmur yağma efekti olması gerekiyor ve ben bunu action script ile bir yağmur damlasını çoğaltarak randomize olarak ekrenda hareket ettiriyorum görüntüde sıkıntı yok fakat sorun şurada mesela 60.frameye geldiğinde bu yağmurun durması gerekiyor fakat ne varki animasyonu bir türlü durduramadım bana yardımcı olabilicek arkadaşlar varmı.Çok az bir sürem kaldı.



  • pek fazla anlamam ama
    60 frameye stop();
    yaz
  • Hem frameler hem de kodlarla animasyon oluşturduysanız(mesela framelerle arkaplanı,kodlarla da yağmur damlalarını hareket ettirmek gibi) ve her iki animasyonu da aynı anda durdurmak istiyorsanız,frameleri stop() ile durduracağınız gibi yağmur damlalarını kontrol etmekte kullandığınız kodları da deaktif etmeniz gerekli.(Mesela olay dinleyicileri kullandıysanız removeEventListener kullanmalısınız.)Kullandığınız kodları yazarsanız daha iyi yardımcı olabiliriz.
  • quote:

    Orijinalden alıntı: Interferon

    Hem frameler hem de kodlarla animasyon oluşturduysanız(mesela framelerle arkaplanı,kodlarla da yağmur damlalarını hareket ettirmek gibi) ve her iki animasyonu da aynı anda durdurmak istiyorsanız,frameleri stop() ile durduracağınız gibi yağmur damlalarını kontrol etmekte kullandığınız kodları da deaktif etmeniz gerekli.(Mesela olay dinleyicileri kullandıysanız removeEventListener kullanmalısınız.)Kullandığınız kodları yazarsanız daha iyi yardımcı olabiliriz.

    çok teşekkür ederim 120.framede stop yazamam çünkü animasyon devam ediyor şuanda okuldayım eve geçtiğim zaman size burdan kodları yazıcam...

    tekrardan çok teşekkürler zaten kodlarıda farklı bir siteden alıntı yapmıştım.
  • tekrardan merhaba

    şu kodlar dışardan çağırdım rain.as kütüphanesi
     

    /* Rain effect */
    /* Developed by Carlos Yanez */
    /* Image:http://www.flickr.com/photos/jinthai/3142824715/ */

    package Classes
    {
    import flash.display.MovieClip;
    import flash.events.Event;

    public class Rain extends MovieClip
    {
    private var offset:int = 50;
    private var dropsNumber:int;
    private var dropsVector:Vector.<MovieClip> = new Vector.<MovieClip>();

    public function init(drops:int, fallSpeed:int, windSpeed:int, hArea:int, vArea:int, dir:String):void
    {
    dropsNumber = drops;

    if (dir == "right")
    {
    offset *= -1;
    }

    for (var i:int = 0; i < drops; i++)
    {
    var drop:Drop = new Drop();

    drop.fallSpeed=fallSpeed;
    drop.windSpeed=windSpeed;
    drop.dir=dir;
    drop.hArea=hArea;
    drop.vArea=vArea;

    drop.x = Math.random() * (hArea + offset);
    drop.y=Math.random()*vArea;

    //

    drop.scaleX = Math.round(((Math.random() * 1) + 0.3) * 10) / 10;
    drop.scaleY=drop.scaleX;

    //

    dropsVector.push(drop);

    addChild(drop);
    }

    inTheDirection();
    }

    private function inTheDirection():void
    {
    for (var i:int = 0; i < dropsNumber; i++)
    {
    switch (dropsVector[i].dir)
    {
    case "left" :

    dropsVector[i].addEventListener(Event.ENTER_FRAME, moveLeft);

    break;

    case "right" :

    dropsVector[i].scaleX*=-1;
    dropsVector[i].addEventListener(Event.ENTER_FRAME, moveRight);

    break;

    default :

    trace("There is some error dude...");
    }
    }
    }

    private function moveLeft(e:Event):void
    {
    e.target.x-=e.target.windSpeed;
    e.target.y+=Math.random()*e.target.fallSpeed;

    if (e.target.y>e.target.vArea+e.target.height)
    {
    e.target.x = Math.random() * (e.target.hArea + (offset * 2));
    e.target.y=- e.target.height;
    }
    }

    private function moveRight(e:Event):void
    {
    e.target.x+=e.target.windSpeed;
    e.target.y+=Math.random()*e.target.fallSpeed;

    if (e.target.y>e.target.vArea+e.target.height)
    {
    e.target.x = Math.random() * (e.target.hArea - offset * 2) + offset * 2;//Check
    e.target.y=- e.target.height;
    }
    }
    }
    }


    şunlarda framede animasyonu çağırdığım kodlar

     
    /* Rain effect */
    /* Developed by Carlos Yanez */
    /* Image:http://www.flickr.com/photos/jinthai/3142824715/ */

    import Classes.Rain;

    var rain:Rain = new Rain();

    rain.init(5000, 600, 10, 1000, 1000, "right");

    addChild(rain);






  • Merhaba,istediğinizi şu şekilde yapabilirsiniz;

    stage.addEventListener(Event.ENTER_FRAME,YagmurDurdur);
    function YagmurDurdur(e:Event):void{
    if(currentFrame==60){ //60.frame'e gelindiğinde;
    removeChild(rain); //Yağmuru durdurur,
    stop(); //Arkaplan animasyonunu durdurur.
    }
    }
  • quote:

    Orijinalden alıntı: Interferon

    Merhaba,istediğinizi şu şekilde yapabilirsiniz;

    stage.addEventListener(Event.ENTER_FRAME,YagmurDurdur);
    function YagmurDurdur(e:Event):void{
    if(currentFrame==60){ //60.frame'e gelindiğinde;
    removeChild(rain); //Yağmuru durdurur,
    stop(); //Arkaplan animasyonunu durdurur.
    }
    }



    çok teşekkürler....kolay gelsinnn
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.