代码是用到了ahk,autohotkey。之前有尝试用别的写,最后这个最方便简洁文档齐全,反应也快。
使用要装autohotkey。
鼠标软件宏
有的游戏要用管理员模式启动才有效。
我用了好几个鼠标自带的压枪宏,都是连点带压枪的,我就想要长按压枪不连点才写的。
我是将【CapsLock键】也绑定成开火键了
功能:长按鼠标侧键前进键,鼠标下移同时会按下【CapsLock键】
代码都注释了,压枪幅度可以自行调整,或者魔改
自行改建可以参考ahk官方文档
[Asm] 纯文本查看 复制代码 MsgBox, 0, 标题52破解umena, 52破解umena`n长按鼠标侧键前进键长按下压`n同时按大小写切换键,可以把CapLock也绑定成开火键用
#NoEnv
#SingleInstance force
Rate = 2 ;单次移动距离
;-------------------【绑定按键1】
*XButton2::
SetKeyDelay -1 ; 如果目标键是鼠标按钮, 则使用 SetMouseDelay 代替. -1 表示无延时
Send {Blind}{CapsLock DownR} ; 按下CapsLock键 DownR 和 Down 相似
Qian = 5 ;每次长按前X次幅度加大
Loop
{
GetKeyState, Xstate, XButton2, P ;检查键盘按键或鼠标/操纵杆按键是否按下或放开. 也可以获取操纵杆的状态.
if Xstate = U ;U表示松开 D表示按下
Break
RandomSleep() ; 暂停延时
Random, zz, -1, 1 ;为-1或0或1 随机左右晃动
if (Qian > 0) ; 只有一行.可以不需要使用大括号括住
mouseXY(zz, Rate*3) ;鼠标向下移动,前几次幅度大
else ; 只有一行.可以不需要使用大括号括住
mouseXY(zz, Rate) ;鼠标向下移动
Qian := Qian - 1 ;前几次
mouseXY(zz, Rate) ;鼠标向下移动
}
Return ;----------------------------------
;-------------------【绑定按键1抬起】
*XButton2 up::
SetKeyDelay -1 ; 请参阅下面的注意事项来了解在这段代码中两处 SetKeyDelay 都没有指定按键时长的原因.
Send {Blind}{CapsLock Up}
Return ;----------------------------------
RandomSleep() ;----------【方法1:暂停】----------
{
Random, tt, 14, 25
Sleep tt ; 毫秒
} ;-------------------方法结束
mouseXY(xxx,yyy) ;=============【方法2:鼠标移动】==============
{
DllCall("mouse_event",uint,1,int,xxx,int,yyy,uint,0,int,0)
} ; ==================================================
;XButton1 侧键 后退
;WheelDown 向下滚动
;WheelUp 向上滚动
;WheelLeft 向左滚动
;WheelRight 向右滚动
;MButton 鼠标中键
使用方法,去官网安装ahk
桌面新建【ahk压枪,ahk】把代码复制进去
直接运行,或管理员运行
启动有有个弹窗,确定后,进程在
长按鼠标侧键前进键,看到鼠标在下移就正常了。
自己改代码调整幅度,保存后在运行。
不用时候,右下角的【绿色H图标】右键exit退出
|