【问题标题】:How can I use non-integer without using float in LUA如何在 LUA 中使用非整数而不使用浮点数
【发布时间】:2021-08-06 05:51:54
【问题描述】:
在用于 MoveMouse 的 LUA 中,我无法使用 FLOAT。所以我需要绕过它。我不知道该怎么做。所以我需要帮助。
function OnEvent(event, arg)
local multiplier = 2
if smth == CODE then
MoveMouseRelative(-1*multiplier, 0.1*multiplier)
Sleep(10)
MoveMouseRelative(-1*multiplier, 0.2*multiplier)
Sleep(10)
【问题讨论】:
标签:
lua
lua-table
logitech-gaming-software
【解决方案1】:
您可以将小数 value 存储在变量中,并将 math.floor(value) 传递给您的函数。
未使用的小数部分将被累积以备将来使用。
local x_frac, y_frac = 0
local function MoveMouseRelativeFractional(x, y)
x_frac = x_frac + x
y_frac = y_frac + y
local x_int = math.floor(x_frac)
local y_int = math.floor(y_frac)
x_frac = x_frac - x_int
y_frac = y_frac - y_int
if x_int ~= 0 or y_int ~= 0 then
MoveMouseRelative(x_int, y_int)
end
end
function OnEvent(event, arg)
local multiplier = 2
if smth == CODE then
MoveMouseRelativeFractional(-1*multiplier, 0.1*multiplier)
Sleep(10)
MoveMouseRelativeFractional(-1*multiplier, 0.2*multiplier)
Sleep(10)