#[HOTKEY]F10
function main
SetInputMode(3) //驅動模式,很多遊戲會阻擋SP的部份功能,可以套用此函數
while true //循環開始
State() //子函數狀態
wend //返回while開始循環
end function
function State//休息攻擊+喝水
//取窗口原點坐標
GetActiveWindowXY(WinX0, WinY0)
print("執行攻擊")
if not CheckColor(WinX0+181, WinY0+709, Color(225, 42, 85), 10) then
Wait(500)
KeyDown("x")
Wait(500)
KeyUp("x")
do //循環
//等待1000毫秒
Wait(1000)
//直到窗口坐標(188, 42)的顏色等於(166, 60, 23)
loop until CheckColor(WinX0+252, WinY0+710, Color(109, 19, 40), 10)
end if
//取窗口原點坐標
GetActiveWindowXY(WinX0, WinY0)
//如果窗口坐標(86, 50)的顏色不等於(57, 121, 132) 那麼
//如果怪物狀態條的滿血位置找不到?
if not CheckColor(WinX0+591, WinY0+31, Color(108, 25, 44), 10) then
//執行段內語句,當運行至LOOP時,如果表達式為false則跳回DO進行下一次執行,
//直至LOOP後的表達式為true(真)時運行完畢。
do
KeyDown("Tab")
Wait(100)
KeyUp("Tab")
Wait(1000)
loop until CheckColor(WinX0+591, WinY0+31, Color(108, 25, 44), 10)//怪物滿血的位置
else //找到的話…
do//執行攻擊
for ForCount = 1 to 1
KeyDown("1")
Wait(500)
KeyUp("1")
next
//取窗口原點坐標
GetActiveWindowXY(WinX0, WinY0)
//補血技能,沒有就放紅水
//如果窗口坐標(91, 40)的顏色不等於(120, 62, 44) 那麼
if not CheckColor(WinX0+164, WinY0+708, Color(202, 19, 54), 10) then
KeyDown("6")
Wait(500)
KeyUp("6")
end if
loop while CheckColor(WinX0+451, WinY0+30, Color(109, 37, 47), 10)//怪物血量底部,如果還有血就跳回去
//等待500毫秒
Print("死亡")
KeyDown("2")//補打一下免的誤判
Wait(300)
KeyUp("2")
Wait(500)
KeyPress("ESC")
Wait(500)
KeyPress("F")
Wait(500)
end if
end function
幫前一位大大改好了,優化版,打怪速度加快,撿物速度加快,坐下不會有延遲。
請把主要攻擊技能擺1 次要玫擊技能擺2(怕程式誤判怪死了,可以多打一下)
喝的藥水請擺6 必免被強怪打的時候可以喝水
謝謝前一個大大提供的程式 |