【问题标题】: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)
    

    【讨论】:

      猜你喜欢
      • 2023-01-21
      • 2014-09-27
      • 2014-05-20
      • 1970-01-01
      • 2018-08-06
      • 2012-02-11
      • 2012-03-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多