我在flash中做了一个简单的游戏。它包括计时器,坠落物体和使用滑动控制的物体。那么有没有办法用暂停按钮停止每个活动,然后使用播放按钮再次启动它。基本上我希望整个舞台能够使用按钮暂停和播放。
答案 0 :(得分:1)
没有办法自动完成。您可以将整个游戏基于计时器(即使是动画和物理)并暂停此计时器。但这是您在游戏设计中必须考虑的功能。现在我想你只需要暂停每个动画片段,取消你的听众ENTER_FRAME
并暂停你的计时器。
答案 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/