2014-10-06 214 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