Loop
maxdelay=maxdelay/2
d2state=getD2State()
//如果状态在毁灭王座,则表示成功
If d2state=3 then
stateinfo="成功进入-尼拉塞克"
inTPdoor=1
Else
stateinfo="进入失败—退出游戏"
inTPdoor = 0
exitGame
End if
显示信息
End Function
Sub 显示信息
stateinfo1="Diablo-第"&xx&"次自动KP-"&stateinfo
Call Plugin.Window.SetText(d2_Hwnd, stateinfo1)
// Call Plugin.Msg.Tips(stateinfo1)
End Sub
Sub ATTACK
stateinfo="杀老皮"
显示信息
FindPic d2_pyx + 550 - 250, d2_pyy + 200 - 200, d2_pyx + 550 + 250, d2_pyy + 200 + 200, "Attachment:\/闪电无效.bmp", 0.9, intX, intY
If intX > 0 Then
isdanger = 1
stateinfo = "闪电无效,打不过退出"
Call Plugin.File.WriteFileEx("zdkp_log.txt",ow&":第" & xx & "次KP,闪电无效,打不过退出")
else
KeyPress akhotkey, 1
Delay 100
i = 0
Do
FindPic d2_pyx + 550 - 250, d2_pyy + 200 - 200, d2_pyx + 550 + 250, d2_pyy + 200 + 200, "Attachment:\暴躁外皮.bmp", 0.6, intX, intY
//i<20+int(rnd*5)
If INTX > 0 Then
isdanger= dangerBack()
If isdanger=0 then
Delay 30+int(rnd*5)
moveto d2_pyx+600,d2_pyy+130
Delay 10
RightClick 1
Delay 10
// i = i + 1
Else
Exit Do
End If
Else
Exit Do
End If
Loop
End if
End Sub
Function getD2State()
//判断游戏角色状态
//----------------------------------------------------------------//
// state
// 1:大厅
// 2:哈勒加斯
// 3:尼拉塞克
// 4:超时错误
//----------------------------------------------------------------//
dtime=0
Do
//MoveTo d2_pyx+61,d2_pyy+552
//判断是否在游戏中
FindColor d2_pyx+61,d2_pyy+552,d2_pyx+81,d2_pyy+572,"1CC40C",intX,intY //血上面的绿色ping
FindColor d2_pyx+190,d2_pyy+80,d2_pyx+220,d2_pyy+90,"AC5050",intX1,intY1 //大厅左上角蓝色字
If (intX>0 And intY>0) and (intx1<=0 and inty1<=0) Then
//游戏中
GetColor = GetPixelColor(d2_pyx + 136, d2_pyy + 566)
If GetColor = "485058" Then
getD2State=3 //尼拉塞克
stateinfo="已成功进入尼拉塞克"
Else
getD2State=2 //在哈勒加斯
stateinfo="哈勒加斯"
End if
Exit do
End if
If (intX<=0 And intY<=0) and (intx1>0 and inty1>0) Then
//大厅中
getD2State=1 //大厅中
stateinfo="大厅"
Exit do
End if
If dtime>=maxDelay*2 then
getD2State=4
Exit do
stateinfo="超时"
End if
dtime=dtime+1
Delay 500
Loop
//显示信息
End Function
Sub exitGame()