当前位置 : 主页 > 网络编程 > lua >

计时器 – 如何在我的Lua脚本中添加“睡眠”或“等待”?

来源:互联网 收集:自由互联 发布时间:2021-06-23
我正在尝试通过改变一天中的时间为游戏制作一个简单的脚本,但我想以快速动作完成它.所以这就是我所说的: function disco ( hour, minute)setTime ( 1, 0 )SLEEPsetTime ( 2, 0 )SLEEPsetTime ( 3, 0 )end 等
我正在尝试通过改变一天中的时间为游戏制作一个简单的脚本,但我想以快速动作完成它.所以这就是我所说的:

function disco ( hour, minute)
setTime ( 1, 0 )
SLEEP
setTime ( 2, 0 )
SLEEP
setTime ( 3, 0 )
end

等等.我该怎么做呢?

Lua没有提供标准的睡眠功能,但有几种方法可以实现,详见 Sleep Function.

对于Linux,这可能是最简单的一个:

function sleep(n)
  os.execute("sleep " .. tonumber(n))
end

在Windows中,您可以使用ping:

function sleep(n)
  if n > 0 then os.execute("ping -n " .. tonumber(n+1) .. " localhost > NUL") end
end

使用select的那个值得注意,因为它是获得亚秒级分辨率的唯一可移植方式:

require "socket"

function sleep(sec)
    socket.select(nil, nil, sec)
end

sleep(0.2)
网友评论