【问题标题】:Lua logitech mouse 180/360 degree turnLua罗技鼠标180/360度旋转
【发布时间】:2020-05-02 01:35:24
【问题描述】:

正如标题所说,我正试图弄清楚如何让这段被盗代码发挥作用:p

function OnEvent(event, arg)
  OutputLogMessage("event = %s, arg = %d\n", event, arg)
  if (event == "PROFILE_ACTIVATED") then
    EnablePrimaryMouseButtonEvents(true)
  elseif event == "PROFILE_DEACTIVATED" then
    ReleaseMouseButton(5) -- to prevent it from being stuck on
  end
  if (event == "MOUSE_BUTTON_PRESSED" and arg == 3) then
    recoil = not recoil
    spot = not spot
  end

  if (event == "MOUSE_BUTTON_PRESSED" and arg == 5 and recoil) then
    if recoil then
      repeat
        Sleep(1)
        MoveMouseRelative(-400, 0)
        Sleep(1)
      until not IsMouseButtonPressed(5)
    end
  end
end

无论我添加什么睡眠定时器,我都无法让它按我想要的方式工作:我想要在使命召唤中单按像素完美 180/360 度转弯,而不必按顺序按住 mb5 按钮转身。

【问题讨论】:

  • 你最好不要窃取代码,更糟糕的是,发布窃取的代码。
  • @Twonky - github 的存在只有一个目的:窃取代码。并用于发布准备被盗的代码;-)
  • @Egor 拿走打算拿走的东西不是偷窃。 ;-)

标签: lua mouse logitech-gaming-software


【解决方案1】:
  
MoveAmount = -400
function OnEvent(event, arg)
  OutputLogMessage("event = %s, arg = %d\n", event, arg)
  if (event == "PROFILE_ACTIVATED") then
    EnablePrimaryMouseButtonEvents(true)
  elseif event == "PROFILE_DEACTIVATED" then
    ReleaseMouseButton(4) -- to prevent it from being stuck on
  end
  
  

  if (event == "MOUSE_BUTTON_PRESSED" and arg == 4) then
    for x=1,10,1
    do
        MoveMouseRelative(MoveAmount, 0)
        Sleep(5)
       
    end
      
      
    
  end
end

【讨论】:

  • 这适用于桌面...将值设置为高似乎会使其崩溃,因此只需多次移动少量。每次鼠标点击都会移动一次,所以如果你按住键它不会重复。
【解决方案2】:

当你按住 mb5 时,每隔 2 秒,就会出现这行代码:

MoveMouseRelative(-400, 0)

我想问题在于,将鼠标移动 -400 像素并不完全是 180 度转弯,而且每个人的正确数字可能会有所不同,具体取决于他们的鼠标灵敏度设置。

您可以尝试一些不同的数字而不是 -400,看看它是否更符合您的要求。

【讨论】:

    【解决方案3】:
    function OnEvent(event, arg)
       OutputLogMessage("event = %s, arg = %d\n", event, arg)
       if (event == "PROFILE_ACTIVATED") then
          EnablePrimaryMouseButtonEvents(true)
       end
       if (event == "MOUSE_BUTTON_PRESSED" and arg == 3) then
          recoil = not recoil
          spot = not spot
       end
       if (event == "MOUSE_BUTTON_PRESSED" and arg == 5 and recoil) then
          local distance = 400  -- adjust this value
          while distance > 0 do
             local delta = math.min(100, distance)
             distance = distance - delta
             MoveMouseRelative(-delta, 0)
             Sleep(15)
          end
       end
    end
    

    【讨论】:

      猜你喜欢
      • 2019-08-30
      • 1970-01-01
      • 2020-03-10
      • 1970-01-01
      • 2016-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-14
      相关资源
      最近更新 更多