Actionscript 3 如何在flash AS3中编码播放和暂停按钮

Actionscript 3 如何在flash AS3中编码播放和暂停按钮,actionscript-3,flash-cs5,Actionscript 3,Flash Cs5,我用flash做了一个简单的游戏。它包括一个定时器、一个坠落物体和一个通过滑动控制的物体。那么,有没有一种方法可以用暂停按钮停止每项活动,然后用播放按钮重新开始。基本上,我想让整个舞台暂停并使用按钮播放。没有办法自动完成。你可以把整个游戏建立在一个计时器上(即使是动画和物理),然后暂停这个计时器。但这是你在设计游戏时必须考虑的一个特性。现在我想你只需要暂停每一部电影,取消你的听众进入画面,然后暂停你的计时器 许多游戏引擎,如或包含此功能。我在as3中执行此操作的方式是运行两个计时器,一个始终以5

我用flash做了一个简单的游戏。它包括一个定时器、一个坠落物体和一个通过滑动控制的物体。那么,有没有一种方法可以用暂停按钮停止每项活动,然后用播放按钮重新开始。基本上,我想让整个舞台暂停并使用按钮播放。

没有办法自动完成。你可以把整个游戏建立在一个计时器上(即使是动画和物理),然后暂停这个计时器。但这是你在设计游戏时必须考虑的一个特性。现在我想你只需要暂停每一部电影,取消你的听众进入画面,然后暂停你的计时器


许多游戏引擎,如或包含此功能。我在as3中执行此操作的方式是运行两个计时器,一个始终以500毫秒左右的速度运行,另一个以随游戏速度变化的帧速率运行。差不多

public var speedControl:int = 15;
public var tick:Timer;

public function timers():void{
    tick = new Timer(1000/speedControl);
    tick.addEventListener(TimerEvent:TIMER,tickd);
    tick.start();
}

public function tickd(t:TimerEvent):void{
    // the timer has ticked
}

public function pause():void{
    tick.stop();
}

public function play():void{
    tick.start();
}

这当然是一个动态创建的基本示例,但是您可以使用标准事件侦听器调用暂停或播放按钮。如果你的整个舞台没有计时,它就会停止。我使用了第二个计时器,但是它不会停止,也不会启动函数。你真的很想让某些东西一直运行。

如果你不介意使用FP 11.8 Beta版,它本身就具有递归停止所有电影剪辑的功能。在这里查看: