【发布时间】:2016-05-02 11:24:56
【问题描述】:
编辑:这个问题是关于 Roblox Lua 的。
我正在使用math.sin(tick()) 获取一个变量号,并希望它始终以0 开头。这可以使用 math.sin 吗?除了tick() 之外,我还可以使用其他东西来完成这项工作吗?
例子:
for i = 1, 10 do
local a = math.sin(tick())+1
print(a)
wait()
end
wait(1)
for i = 1, 10 do
local a = math.sin(tick())+1
print(a)
wait()
end
我的目标是让这个数字每次都从 0 开始,然后从那里增加。因此,只要我继续调用它,它就会从 0 开始,然后增加到 2,然后减少回零并继续在 0 和 2 之间调制。使用上面的示例,数字从 0 到 2 之间的任意数字开始。
【问题讨论】:
-
tick到底是什么?这不是标准的 Lua 函数。 -
@Nicol 这是一个 ROBLOX 函数,它返回自 1970 年 1 月 1 日以来的秒数(我认为)。也有一些小数位。
-
@NicolBolas 返回本地 UNIX 时间。
-
基本上更精确的
os.time -
如果你在第一次迭代时保存了
tick()的值,你可以将tick() - start_time传递给math.sin()。这将以1.0而不是0.0开头,但它应该为您提供解决方案的起点。