2013-12-15 28 views
0

我如何在向量[2]中啓動我的計時器並在vec [13]處停止它。 myTimer.stop();AS3 /停止定時器在矢量?

我已經做到了矢量跳轉到下一個向量每10秒(timerevent)。定時器和矢量將繼續計數,然後又回到了VEC [0]

如果可能的話,我想在以後的矢量開始我的計時器。並且計時器在最後停止。

var myTimer:Timer = new Timer(1000); 
myTimer.repeatCount = 13; 
myTimer.delay = 1000; 

myTimer.addEventListener(TimerEvent.TIMER, countdownHandler); 
function countdownHandler(event:TimerEvent):void 
{ 
    countdown.text = 0+myTimer.currentCount+" s remaining"; 
    countdown2.text = 0+myTimer.currentCount+" s remaining"; 
    if(myTimer.currentCount==10) 
    { 
     myTimer.reset(); 
     myTimer.start(); 

    } 
} 
myTimer.start(); 

&

function timerfunctie(event:TimerEvent) 
{ 
    for(var i:int = 0; i < vec.length; i++) 
    { 
     if (vec[i].parent) if (myTimer.currentCount == 9) 
     { 
      removeChild(vec[i]); 
      var next2:int = i+1; 
      if(next2 == vec.length) next2 = 0; 
      addChild(vec[next2]); 
      break; 
     } 
    } 
} 

回答

0

不知道哪裏timerfunctie被調用,但是當計時器的CURRENTCOUNT是2和13.如果您希望定時器運行整整13次迭代的代碼應該檢測,你做不是想要在迭代10時重置它。

function countdownHandler(event:TimerEvent):void 
{ 
    countdown.text = 0+myTimer.currentCount+" s remaining"; 
    countdown2.text = 0+myTimer.currentCount+" s remaining"; 

    if (myTimer.currentCount==2) { 
     // start with vector[2] 
    } else if (myTimer.currentCount==13) { 
     // end with vector[13] 
    } 
}