【问题标题】:How to code a play and pause button in flash AS3如何在 Flash AS3 中编写播放和暂停按钮
【发布时间】:2013-08-26 08:04:44
【问题描述】:

我在 Flash 中制作了一个简单的游戏。它包括一个计时器、落下的物体和一个使用滑动控制的物体。那么有没有办法用暂停按钮停止每一个活动,然后用播放按钮重新开始。基本上我希望整个舞台使用按钮暂停和播放。

【问题讨论】:

    标签: actionscript-3 flash-cs5


    【解决方案1】:

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

    FlixelFlashPunk 等许多游戏引擎都包含此功能

    【讨论】:

      【解决方案2】:

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

      当然,这是一个动态创建的基本示例,但您可以使用标准事件侦听器调用暂停或播放按钮。如果你的整个舞台都用完了计时器,它就会全部停止。我使用了第二个计时器,但是它也不会停止并开始使用这些功能。您确实确实希望某些东西一直运行。

      【讨论】:

        【解决方案3】:

        如果您不介意使用 FP 11.8 Beta,它天生就具有递归停止所有影片剪辑的功能。在这里查看:

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

        【讨论】:

          猜你喜欢
          • 2018-10-08
          • 2016-10-25
          • 2015-02-01
          • 1970-01-01
          • 1970-01-01
          • 2019-06-25
          • 2020-12-03
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多