罗技鼠标脚本编程(1)

最近玩方舟飞升的时候,一直要重复喂龙, 感觉很繁琐和重复.

突然想到, 我的鼠标好像支持宏,那么有没有可能通过按一下鼠标的一个键,自动帮我喂龙呢?

然后我就梳理了一下我的需求

  1. 按f
  2. 鼠标移动到指定位置
  3. 按左键
  4. 输入raw
  5. 移动到指定位置
  6. 按左键
  7. 按esc

接着我就去研究了鼠标宏,然后我发现宏并没有办法实现我想要的功能.

因为宏不能把鼠标移动到指定位置, 所以我又搜了一会,发现鼠标支持脚本编程.

然后脚本语言是LUA,所以稍微研究了一下语法, 就实现了需求, 下面贴一下步骤

1.首先要安装Logitech G HUB

2. 接着打开软件,选择游戏与应用程序, 在上面找到你需要自动跑脚本的游戏, 然后点击编写脚本

3.接着创建脚本

4.然后就是介绍一些常用的语法

function OnEvent(event, arg)
  --OutputLogMessage("Event: "..event.." Arg: "..arg.."")
end

这里的新脚本会有一个onEvent函数,当我们进行任何鼠标操作时,这个函数都会被调用.

第一个参数是事件名, 常用的有, 当鼠标键按下, 当键盘键按下等等

第二个参数是触发事件的对象, 比如说我们接收到一个鼠标键按下的时间,arg就是具体哪一个键被按下

下面列一下常用的事件

  • MOUSE_BUTTON_PRESSED //当鼠标按键按下, 默认按鼠标左键是不会触发该事件的
  • MOUSE_BUTTON_RELEASED //当鼠标按键松开
  • G_PRESSED //G键按下, 这个应该是指定的鼠标G键
  • M_PRESSED //M键按下, 这个应该是指定的鼠标M键

一般我们都会用MOUSE_BUTTON_PRESSED的事件, 然后该事件常用的参数为:

  • 2=Mouse Button 2 //鼠标右键按下
  • 4=Mouse Button 4 //鼠标侧键2按下
  • 5=Mouse Button 5 //鼠标侧键1按下

接着我们就可以在函数里判断, 只有当我们按下鼠标侧键1或2时,才调用该函数

  if event == "MOUSE_BUTTON_PRESSED" then
    if arg ~= 4 and arg ~= 5 then
      return
    end
  end

下面是一些常用的函数

  • PressAndReleaseKey(“f”) //按下然后松开f键
  • PressAndReleaseKey(“r”, “a”, “w”) //按下然后松开r,a,w键
  • Sleep(800) //睡眠指定的毫秒数
  • MoveMouseTo(坐标,坐标)// 移动鼠标到指定的坐标
  • x, y = GetMousePosition() //x,y为鼠标的坐标

借助这些常见的函数, 就可以自由自在的写脚本了~

然后是一些常见的控制语法

if a == "123" then
  xxx
elseif a ~= "456" then
  xxx
else
  xxx
end


for i=1,3 do
  
end

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注