2014-10-06 331 views
0

我想弄清楚暫停和取消暫停我的視頻動畫的方法。在as3中,通過使用stage.framerate = 0這是一件容易的事,但as2不允許這樣做。主要問題是動畫只有1幀,所有動畫都通過actionscript2進行操作。暫停和取消暫停AS2動畫

這裏是我的示例代碼:

Tween1(); 
function Tween1(){ 
    setTimeout(theTween, 1000); //tween executes after 1000 milliseconds 
    function theTween(){ 
     //animation stuff here 
     //Move X position of ball instance 
     var myTween:Tween = new Tween(ball, "_x", Regular.easeOut, -40, 71, 1, true); 
     //Rotate button 360 degrees 
     var myTween:Tween = new Tween(button, "_rotation", Regular.easeOut, -360, 0, 1, true); 
     // fade in logo 
     var myTween:Tween = new Tween(logo, "_alpha", Regular.easeOut, 0, 100, 1, true); 
     //call Tween 2 
     Tween(2); //calls next animation tween 
} 

    function Tween2(){ 
     setTimeout(theTween, 5000); //tweene executes after 5000 milliseconds 
     function theTween(){ 
      //more animation stuff 
      // fade out logo 
      var myTween:Tween = new Tween(logo, "_alpha", Regular.easeOut, 100, 0, 1, true); 
      Tween(3); //calls next animation tween 
    } 

我創建了一個影片剪輯圖標播放之間改變狀態和暫停符號,但我不知道如何暫停及恢復這些功能的執行。任何人都可以提供一種方式來做到這一點?這裏是改變我Pause_mc

var buttonState = 0; 

pause.onMouseDown = function() { 
    if (buttonState == 0) { 
     buttonState = 1; 
     pause.gotoAndStop(2); //moves movieclip to pause symbol 
     //need code to pause tween executions 
    } else { 
     buttonState = 0; 
     pause.gotoAndStop(1); //moves movieclip to play symbol 
     //need code to resume tween executions 
    } 

} 

回答

0

國家也許嘗試使用的setInterval()我當前的代碼;而不是setTimeout(); &某種開關玩&停止狀態。

例如。當它變成補間功能'如果玩假',它重複間隔直到遊戲成真。

或者也許tweenInstance.stop();有幫助。

例如。

import mx.transitions.Tween; 
var myTween:Tween = new Tween(img1_mc, "_x", mx.transitions.easing.None.easeNone, img1_mc._width,   Stage.width, 8, true); 

myTween.onMotionFinished = function() { 
myTween.start(); 
}; 

stopTween_btn.onRelease = function() { 
myTween.stop(); 
}; 

resumeTween_btn.onRelease = function() { 
myTween.resume(); 
}; 
+0

不幸的是,這不是如何建立文件。對困惑感到抱歉。我添加了額外的代碼來幫助闡明我的動畫是如何運作的。每次調用某個函數時,都會執行一組操作,然後該函數會調用下一個補間函數以執行另一組操作。 – nr20 2014-10-10 18:14:58

+0

我已更新我的答案,由於我的Flash CC更新,我無法再訪問任何as2功能來測試,但我認爲這將有所幫助。 – 2014-10-11 14:07:16