2014-12-06 5 views
0

я делал прелоадер для моей игры, я экспортировал свои MovieClips к раме 2, за исключением тех, которые связаны с Preloader графики В моем кадре 1 У меня этот кодPreloader анимация не работает

import flash.events.ProgressEvent; 
stop(); 
this.loaderInfo.addEventListener(ProgressEvent.PROGRESS , onProgress); 
function onProgress(e:ProgressEvent):void 
{ 
    progbar.width = (this.loaderInfo.bytesLoaded/this.loaderInfo.bytesTotal) * 398; 
    jot.x = progbar.x + progbar.width;  //jot is the name of loader label it moves with the 
    jot.y = progbar.y;      //end point of progbar 
    jot.loadtext.text = String(Math.round(progbar.width/398 * 100)) + " %"; // labale has text inside it 
    if (this.loaderInfo.bytesLoaded == this.loaderInfo.bytesTotal) 
    { 
     gotoAndStop(2); 
    } 
} 

и На точка, в которой штанга достигнет в любой момент времени я хотел поставить кипящий эффект, для которого я ящики класса Спарк это как моя искра класс выглядит

public class Spark extends MovieClip 
    { 

     private var pl:Array = new Array(); 
     private var t:int = 0; 
     public function Spark() 
     { 
      this.addEventListener(Event.ENTER_FRAME , onEnter); 
     } 
     private var l:int = 0; 
     private var i:int = 0; 
     private function onEnter(e:Event) 
     { 
      t++; 
      if (t == 2) 
      { 
       t = 0; 
       var p:P = new P(); // P is the single particle 
       addChild(p); 
       pl.push(p);   // pl is the array to hold particles 
       p.width = Math.random() * 20 + 5; 
       p.height = p.width; 
       p.vx = Math.random() * 4 - 2; 
       p.vy = Math.random() * 4 - 2; 
      } 
      l = pl.length;   //storing length of array to save performance 
      for (i=0; i< l; i++)  
      { 
       pl[i].alpha -= 0.05; 
       pl[i].y += pl[i].vy; 
       pl[i].x += pl[i].vx; 
      } 
      //removeing completely transparent particles 
      for (i=0; i< l; i++) 
      { 
       if (pl[i].alpha < 0.02) 
       { 
        removeChild(pl[i]); 
        pl.splice(i,1); 
        break; 
       } 
      } 
     } 
    } 

в первом кадре Спарк Insta nce на сцену и добавленный код для его выравнивания с progbar , но ничего не происходило только в баре, но пузыри не выходили из его конца. Я попытался проверки и убрав искры класса «экспорт в кадре 2»

Я ВГА назвал перетаскиваемую экземпляр класса Спарк, как spark1 и когда я добавил этот код к кадру 1 я surpirised

if(spark1 != null) 
{ 
    trace("its fine"); 
} else { 
    trace("something weird"); 
} 

и я получил процитированное выражение else. Как это возможно

ответ

0

Я нашел решение

  1. Я пошел в меню Файл> настройки Action-скрипт.
  2. есть ИНТ текстового поля с именем, как экспорт классы в кадре ___ иЙ поставил там 1, который я ранее имеющий 2
  3. Затем бесконтрольно Экспорта в кадре 1 только для тех символов, которые были частью Preloader

затем запустил фильм, который работал