【问题标题】:How to use logitech lua scripting如何使用罗技 lua 脚本
【发布时间】:2020-11-02 08:33:43
【问题描述】:

我试图让两个输入产生一个输出。这样我就可以在游戏中使用技能了,谢谢。

function OnEvent(event, arg) 
     if event == "MOUSE_BUTTON_PRESSED" and arg == 2 then --set flag for mb2
            mb2_pressed = true
    elseif event == "MOUSE_BUTTON_RELEASED" and arg == 2 then --set flag for mb2=false
        mb2_pressed = false
    else if event == "LSHIFT_BUTTON_PRESSED" and arg == 1 then
    leftshift_pressed = true
    else if event == "LSHIFT_BUTTON_RELEASED" and arg == 1 then
    leftshift_pressed = false
    end
end

if leftshift_pressed and  if mb2_pressed then
presskey("9")
        Sleep(50)
        releasekey("9")
end
end

https://gyazo.com/7e7f2139fabb22d1e06f8f3f169cb4bb

【问题讨论】:

标签: lua scripting logitech logitech-gaming-software


【解决方案1】:
function OnEvent(event, arg)
   if event == "MOUSE_BUTTON_PRESSED" and arg == 2 and IsModifierPressed("lshift") then
      PressAndReleaseKey("lshift")
      PressAndReleaseKey("9")
   end
end

你应该知道以下几点:

  • LGS/GHUB 存在行号错误,错误消息中的“第 12 行”实际上表示代码中的第 13 行(红色条纹也设置在错误位置)
  • if leftshift_pressed and if mb2_pressed then 是语法错误,你应该写if leftshift_pressed and mb2_pressed then
  • if/elseif/else/end必须平衡。你的不是。在代码中使用缩进使其更明显。
  • 没有事件LSHIFT_BUTTON_PRESSED,您只能从 G 按钮(罗技鼠标上的所有按钮和罗技键盘上的特殊 G 按钮)接收事件。
  • 大写与小写不同:PressKeypresskey 不同

【讨论】:

  • 感谢它的工作方式,但不是输出 9,而是显示一个“(”
  • 是的,当 shift 向下时,键 9 被视为 (
  • 感谢您的帮助,但是那个不能很好地工作以前的旧代码是什么?
  • 究竟有什么不好?您可以通过单击“已编辑 XX 分钟”链接查看以前版本的答案
  • 在这个版本中,在我使用宏移位之后,即使在按键之后也保持按下/保持不变。这很奇怪。
猜你喜欢
  • 2021-08-14
  • 2021-04-12
  • 2021-08-13
  • 2020-01-26
  • 2021-04-22
  • 2022-01-07
  • 1970-01-01
  • 2021-08-13
  • 2021-05-27
相关资源
最近更新 更多