首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用getTimer()方法在操作脚本2中休眠

使用getTimer()方法在操作脚本2中休眠
EN

Stack Overflow用户
提问于 2017-03-08 12:17:39
回答 1查看 75关注 0票数 0

如何使用sleep正确地执行类似于getTimer()的函数?我需要每15秒做一次动作。下面的代码不起作用。我在Linux上用mtasc编译器编译它。

代码语言:javascript
复制
class Tuto
{
static var lastMsg = 0;
static var msgInt = 15000;

  static function main(mc)
  {

    if(getTimer() > lastMsg + msgInt)
      {
         trace("something");
         lastMsg = getTimer();
      }

  }

}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-08 13:38:06

main指令只执行一次。您必须构建某种循环,或者依赖于播放机发送的滴答事件来持续执行代码。

基本的选择是:

代码语言:javascript
复制
while (true) { doSomething() }

这将永远执行,但请记住,闪存机是单线程的,因此,当它运行时,其他一切都将被冻结,UI和用户输入也包括在内。如果您正在构建一些不需要与用户交互的重处理工具,这才是“好的”。

代码语言:javascript
复制
setInterval(doSomething, 15000)

这将创建一个间隔,每隔X毫秒调用一次函数。这是最简单的选择,也可能是你想要的。

代码语言:javascript
复制
addEventListener(Event.ENTER_FRAME, doSomething)

这将为Flash的ENTER_FRAME事件注册一个侦听器,它将每秒发送30次(默认情况下)。在该函数中,您可以使用getTimer()检查当前时间,并决定是否该执行您的逻辑。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42671183

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档