Lua脚本循环按键

我有一个罗技G102鼠标,我想创建一个lua脚本,每次按下鼠标按钮4时都按下不同的键。具体而言,我希望每次单击鼠标按钮4都循环3个键盘按键(5,6,7)。因此,如果我第一次单击鼠标按钮4,它会按下数字3,第二次按下数字4,第三次按下数字5,然后重复这个过程,直到我按下鼠标按钮4为止。我已经尝试了一些代码,但没有任何进展。有人可以帮我吗?

点赞
用户1847592
用户1847592
local keys = {"h", "e", "l", "l", "o"}   -- 键盘按键循环
local idx   -- 当前按键的索引 
local tm = -math.huge   -- 上一次鼠标滚轮事件的时间戳

function OnEvent(event, arg)
   if event == "MOUSE_BUTTON_PRESSED" and arg == 4 then  -- 鼠标滚轮向上滚动事件
      if GetRunningTime() - tm > 2000 then   -- 两次事件之间的时间差大于2秒
         idx = 0   -- 重新从第一个按键开始循环
      end
      idx = idx % #keys + 1   -- 取模计算出下一个按键的索引
      PressKey(keys[idx])   -- 模拟按下按键
   elseif event == "MOUSE_BUTTON_RELEASED" and arg == 4 then   -- 鼠标滚轮向上滚动事件
      ReleaseKey(keys[idx])   -- 模拟释放按键
      tm = GetRunningTime()   -- 更新时间戳
   end
end
2021-02-18 03:07:01