gpt4 book ai didi

linux - 使用 getTimer() 方法在 ActionScript 2 中休眠

转载 作者:太空宇宙 更新时间:2023-11-04 12:33:22 25 4
gpt4 key购买 nike

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

class Tuto
{
static var lastMsg = 0;
static var msgInt = 15000;

static function main(mc)
{

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

}

}

最佳答案

main 指令将只执行一次。您必须构建某种循环或依靠播放器发送的 tick 事件来连续执行您的代码。

基本选项是:

while (true) { doSomething() }

这将永远执行,但请记住 flashplayer 是单线程的,因此在运行时其他所有内容都将被卡住,包括 UI 和用户输入。如果您正在构建一些不需要与用户交互的繁重处理工具,这只是“好”。

setInterval(doSomething, 15000)

这会创建一个间隔,每 X 毫秒调用一次您的函数。这是最简单的选项,可能正是您正在寻找的选项。

addEventListener(Event.ENTER_FRAME, doSomething)

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

关于linux - 使用 getTimer() 方法在 ActionScript 2 中休眠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42671183/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com