字号:

剑灵攻略 自动刷勇猛任务的AHK代码

时间:2021-09-06 17:37 作者:B站 手机订阅 参与评论(0) 【投稿】
文 章
摘 要
剑灵攻略 自动刷勇猛任务的AHK代码

不想用Q群里面打无良广告、运行后再删除程序仍有相关注册表项目清不掉、更没有制作公司或制作人合法签名的EXE文件,所以自行尝试AHK代码。接触AHK没几天,网上搜到的相关代码只搜到一个B站视频带有代码,但不弄成文字我咋复制?自行尝试写了一份。非程序员,代码冗杂什么的可处理不了。仅供参考。

以下是全部代码,若运行提示错误把分号和中文去掉一些。能适用于文章标题功能,具体看代码注释部分,已测试可用。

#IfWinActive ahk_exe BNSR.exe ;只在剑灵窗口开启/暂停/继续AHK,可删除

;气功用[开启,大部分代码和剑士的相同,此文只保留剑士的

;枪手用]开启,大部分代码和剑士的相同,此文只保留剑士的

;剑士用9开启

;都是用0暂停/继续/重载

;启动AHK后这4个键(此文2个键9和0)是不能做为字符在游戏里面输入的

F1::

MouseGetPos, mouseX, mouseY

PixelGetColor, color, %mouseX%, %mouseY%, RGB

clipboard = (%mouseX%,%mouseY%)=="%color%" ;用F1取色,并复制到剪贴板

return

;上面5行是取色用途,每次启动游戏部分窗口位置不一样(打怪点位置换了也需要改)

;用法:鼠标移动到需要取色的位置按F1,然后坐标和色值就在剪贴板了

;游戏需要用到F1把此段落删除或每一行前面加分号注释掉

9::

Loop

{

{

send t

sleep 10

if (GetColor(389,851)=="0x656565") ;Q键没有亮起就转向(也可以取目标血条最左端)

{

send {left down}

sleep 300 ;按下方向键LEFT0.3秒转向

send {left up}

}

}

if (GetColor(470,955)=="0x17A6C5" OR GetColor(484,952)=="0x5D8F9C") ;剑士c键技能,消除i,j键窗口没有退出的影响

{

send c

}

if (GetColor(389,851)!="0x656565") ;Q键亮起使用技能,攻击2500以上此处IF删掉就按T可以了

{

if (GetColor(393,805)=="0xA0A1C0") ;展开

{

send {tab}

}

if (GetColor(523,952)=="0x5B7DDF") ;苍龙舞

{

send v

}

if (GetColor(522,907)=="0xD7E8C1") ;天隙流光

{

send 4

}

if (GetColor(431,796)=="0x589AE5") ;御剑连斩

{

click

}

if (GetColor(403,675)=="0xD5CAB3") ;星,我已更改为R键(可以shift+e,代码写法我注释掉的部分)

{

send r

;send {LShift down}

;sleep 100

;send e

;send {LShift up}

}

}

if (GetColor(1685,1054)=="0xA42402" AND GetColor(1671,1043)!="0xDBDBDB") ;有人申请队伍

;AND后面是避免礼品箱取的礼品箱上的色值,前面是有人申请队伍时出现的图标上取的点

{

send {alt down} ;这里需要呼出鼠标指针

sleep 50

click 1685,1054 ;同IF里面

send {alt up}

sleep 300

click 1685,590 ;接受2个字位置上的

}

if (GetColor(394,141)=="0xF3F3F4" AND GetColor(623,671)=="0xF7E401") ;在线奖励(和申请队伍图标冲突,取色该窗口2个点)

{

send {esc} ;这个窗口无目标技能消除不了,所以写了这个IF

}

if (GetColor(1471,966)=="0xEACD63" AND GetColor(1488,993)=="0xFFFFFF") ;被人邀请队伍,弹出窗口上取色2个点

{

send y

}

if ((GetColor(1640,1048)=="0x6D322A" OR GetColor(1631,1036)=="0xC24D50") AND GetColor(825,99)!="0xF0771E") ;武器损坏

{

send 5

sleep 5000

}

if (GetColor(1132,761)=="0xFFAF00") ;拾取

{

send f

sleep 150

send f

sleep 150

send f

sleep 150

send y ;可能橙色竞拍,拾取到紫色物品

}

if (GetColor(1651,379)=="0xC59C70" AND GetColor(389,851)=="0x656565") ;完成任务后接取任务,前个点在任务完成图标上

;AND后面是Q键没亮即没有战斗目标

{

send i

sleep 1000

click 1651,379

sleep 100

c:=0

while (c<9)

{

send f

sleep 100

c++

}

send j

sleep 1000

click 561,279 ;入手书信4个字位置

sleep 500

click 632,350 ;入手书信勇猛任务图标

sleep 100

c:=0

while (c<9)

{

send f

sleep 100

c++

}

if (GetColor(1649,722)=="0xBC9C50") ;接了净化之光任务会占勇猛图标,必须增加此处

{

click 1727,825 ;选神秘水碎片

sleep 150

send f

}

sleep 100

send j ;再次按j和i退出这2个窗口,有可能没有退出,所以上文有【剑士c键技能】语句

sleep 100

send i

sleep 100

}

;下面的IF避免接取任务时被怪打到而不接任务,AND前面是小地图出现的几个蓝色箭头、后面是没战斗目标的情况

if ((GetColor(1764,41)=="0x23A4E0" OR GetColor(1827,41)=="0x229FD9" OR GetColor(1883,56)=="0x219AD2") AND GetColor(389,851)=="0x656565")

{

send j

sleep 1000

click 561,279 ;入手书信4个字位置

sleep 500

click 632,350 ;入手书信勇猛任务图标

sleep 100

c:=0

while (c<9)

{

send f

sleep 100

c++

}

sleep 150

send j

}

}

Return

0::

reload ;重载,有pause功能(适合一个文件定义了几个热键的情况,我这已把气功、枪手的代码删了,可改用pause)

return

GetColor(x,y)

{

PixelGetColor, color, x, y, RGB

StringRight color,color,10 ;

return color

}

Return

;再次强调,加入一个无目标可用的技能避免任务窗口或者背包窗口(j和i)没有退出而不攻击 作者:未认证的二等兵士 https://www.bilibili.com/read/cv12978691?from=search 出处:bilibili

加入17173玩家俱乐部,100%领《原神》月卡、《王者荣耀》888点券、《魔兽世界》T恤等周边好礼!
加入方式:微信关注“17173服务号”