近期玩一个dnf私服,天天沉迷.弄了自动搬砖盗贼以及黄龙大会的脚本,分享一下,具体操作大概看看脚本内容就能猜到了,就是自动进图打,然后再次挑战,或者搬砖几张图退出再进,以及一些快速开盒子的小工具
源码分享
#Persistent
#NoEnv
#MaxMem 2048
SetBatchLines, -1
; SendMode Input
SetBatchLines, -1
#InstallKeybdHook
#InstallMouseHook
#MaxHotkeysPerInterval 2000
Process,Priority,,High
SetKeyDelay,0,1
SetStoreCapslockMode, Off
if !(A_IsAdmin || InStr(DllCall("GetCommandLine", "str"), ".exe"" /r"))
Run % "*RunAs " (s:=A_IsCompiled ? "" : A_AhkPath " /r ") """" A_ScriptFullPath """" (s ? "" : " /r")
#UseHook
gui,+AlwaysOnTop +E0x08000000
gui,add,Button,greload section,停止
gui,add,Button,g盗贼 x+5,盗贼
gui,add,Button,g鼠标放在返回城镇盗贼 x+5,鼠标放在返回城镇盗贼
gui,add,Button,g黄龙 x+5,黄龙
gui,add,Text,xs,返回城镇的x坐标
gui,add,Edit,vx,1183
gui,add,Text,,返回城镇的y坐标
gui,add,Edit,vy,950
gui,add,Text,,
(
说明:
自动盗贼需要测量返回城镇点的坐标
填上即可
也可以鼠标放在返回那里就可以不测量用了
F1连点用于购买大量tcg
F2快速开盒子
F3快速开各种罐子
F4关闭功能
F5老板键,快速隐藏dnf
)
gui,show,w400 h250 NoActivate,dnf工具箱
return
GuiClose:
GuiEscape:
ExitApp
reload:
reload
#IfWinActive ahk_class 地下城与勇士
F1::
loop 100
Click
Return
F2::
ToolTip 盒子放在数字1上F1启动f2关闭
WinActivate ahk_class 地下城与勇士
loop {
send,{vkFFsc2} ;1键
sleep,1
Click
}
Return
F3:: SetTimer,开罐子,4000
F4::reload
F5::WinMinimize ahk_class 地下城与勇士
#IfWinActive
开罐子:
send,{vkFFsc2} ;1键
return
鼠标放在返回城镇盗贼:
ToolTip,开始挂机盗贼
; InputBox,x,x坐标,返回城镇点的x坐标
; InputBox,y,y坐标,返回城镇点的y坐标
WinActivate ahk_class 地下城与勇士
gosub 进盗贼
SetTimer,左瞬图,3000
SetTimer,进盗贼,10000
SetTimer,退出固定鼠标,40000
gosub 循环技能
Return
盗贼:
ToolTip,开始挂机盗贼
; InputBox,x,x坐标,返回城镇点的x坐标
; InputBox,y,y坐标,返回城镇点的y坐标
WinActivate ahk_class 地下城与勇士
gosub 进盗贼
SetTimer,左瞬图,3000
SetTimer,进盗贼,10000
SetTimer,退出,40000
gosub 循环技能
Return
循环技能:
loop {
send,{vkFFsc1E} ;A键
sleep,1
send,{vkFFsc1F} ;S键
sleep,1
send,{vkFFsc20} ;D键
sleep,1
send,{vkFFsc21}
sleep,1
send,{vkFFsc22} ;G键
sleep,1
send,{vkFFsc23}
sleep,1
; send,{vkFFsc10} ;Q键
sleep,1
send,{vkFFsc11} ;W键
sleep,1
send,{vkFFsc12}
sleep,1
send,{vkFFsc13}
sleep,1
send,{vkFFsc14}
sleep,1
send,{vkFFsc15}
sleep,1
send,{vkFFsc2C} ;Z键
sleep,1
send,{vkFFscF} ;Tab键
; send,{vkFFsc2D} ;X键
; sleep 1
}
Return
左瞬图:
send,!{left}
Return
退出固定鼠标:
send {esc}
loop 10
click
Return
退出:
send {esc}
loop 10
; click
; hclick(1183, 950, 1, 0, "Screen", true)
; hclick(2704,1844, 1, 0, "Screen", true)
hclick(x, y, 1, 0, "Screen", true)
Return
进盗贼:
loop 100
send,{vkFFsc14B} ;←键
loop 30
send,{vkFFsc14D} ;→键
loop 20{
send,{vkFFsc39} ;Space键
}
Return
黄龙:
InputBox a,喝药间隔,几秒喝一次药
ToolTip,开始挂机黄龙
WinActivate ahk_class 地下城与勇士
a:=a*1000
SetTimer,补血,%a%
SetTimer,拾取,5000
SetTimer,再次挑战,5000
SetTimer,空格,3000
SetTimer,再次黄龙,30000
gosub 循环技能
Return
拾取:
loop 3{
send,!q
}
Return
再次挑战:
loop 3{
send,{vkFFsc44} ;F10键
}
Return
空格:
loop 3{
send,{vkFFsc39} ;空格ace键
}
Return
再次黄龙:
send,{vkFFsc3} ;2键
send,{vkFFsc4} ;3键
send,{vkFFsc5} ;4键
loop 10
send,{vkFFsc14D} ;→键
send,{vkFFsc39} ;空格ace键
Return
补血:
send,{vkFFsc2} ;1键
sleep,1
Return
hclick(posX,posY,ClickCount:=1,Speed:=0,CoordMode:="Screen",Return:=true){
;若使用相對模式
if (CoordMode="Relative"){
CoordMode,Mouse,Screen
MouseGetPos, posX_i, posY_i ;儲存原來的滑鼠位置
;根據點擊次數是否為零來使用MouseClick或MouseMove
if %ClickCount%{
MouseClick,,%posX%,%posY%,%ClickCount%,%Speed%,,R ;點擊相對位置
}else{
MouseMove, %posX%, %posY%,%Speed%
}
;若使用其他模式
}else{
CoordMode,Mouse,%CoordMode%
MouseGetPos, posX_i, posY_i ;儲存原來的滑鼠位置
;根據點擊次數是否為零來使用MouseClick或MouseMove
if %ClickCount%{
MouseClick,,%posX%,%posY%,%ClickCount%,%Speed%
}else{
MouseMove, %posX%, %posY%,%Speed%
}
}
;是否點擊後返回
if %Return%{
MouseMove, %posX_i%, %posY_i%,%Speed%
}
return
}
你好,能问一下我用MouseClick函数,在dnf界面里就失效是怎么回事,求大佬指点一下