如何在Flash AS3中编写播放和暂停按钮

时间:2013-08-26 08:04:45

标签: actionscript-3 flash-cs5

我在flash中做了一个简单的游戏。它包括计时器,坠落物体和使用滑动控制的物体。那么有没有办法用暂停按钮停止每个活动,然后使用播放按钮再次启动它。基本上我希望整个舞台能够使用按钮暂停和播放。

3 个答案:

答案 0 :(得分:1)

没有办法自动完成。您可以将整个游戏基于计时器(即使是动画和物理)并暂停此计时器。但这是您在游戏设计中必须考虑的功能。现在我想你只需要暂停每个动画片段,取消你的听众ENTER_FRAME并暂停你的计时器。

许多游戏引擎(例如FlixelFlashPunk)都包含此功能

答案 1 :(得分:0)

我在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();
}

这是即时创建的基本示例,但您可以使用标准事件侦听器调用暂停或播放按钮。如果你的整个舞台都没有计时器,它将全部停止。我使用第二个计时器但是没有停止并且也开始使用这些功能。你真的希望有些东西能够一直运行。

答案 2 :(得分:0)

如果您不介意使用FP 11.8 Beta,它可以通过递归方式停止所有动画片段。在这里查看:

http://labs.adobe.com/technologies/flashruntimes/flashplayer/