If IsNumeric(zb11)=False or IsNumeric(zb12)=False Then
MessageBox "未正确识别坐标,请检查游戏显示设置是否32色,然后重新开始本程序"
EndScript
Else
nfzb1= right("0"&zb11,3)
nfzb2= right("0"&zb12,3)
nFzb = nfzb1 & nfzb2
End If
Else
MessageBox "未正确识别坐标,请检查游戏显示设置是否32色,然后重新开始本程序"
EndScript
End If
End Sub
Sub 点选游戏窗口
ScreenW = Plugin.Sys.GetScRX()
ScreenH = Plugin.Sys.GetScRY()
Call Plugin.Msg.ShowScrTXT(5, 5, 1024, 25, "自动开始选择游戏窗口", "000000")
Hwnd = Plugin.Window.Foreground()
sText = Plugin.Window.GetText(Hwnd)
If InStr(sText,"天龙八部OL") > 0 Then
else
//call 自选天龙窗口
End if
End Sub
Sub 自选天龙窗口
dm_ret = dm.FindPicEx(0,ScreenH-200,ScreenW,ScreenH,"D:\Program Files\JY\yrbk\PIC\天龙任务栏.bmp","020202",0.9,0)
If len(dm_ret) > 0 Then
sst = split(dm_ret, "|")
else
EndScript
End If
sss = split(sst(0), ",")
dm.MoveTo int(sss(1)) + 30, int(sss(2)) + 10
Delay 300
LeftClick 1
Delay 1000
End Sub
Sub 显示窗口信息
Call Plugin.Msg.ShowScrTXT(xl + 5, yl + 5, 1024, yl + 25, "角色等级:" & rwdj & ".坐标:" & nFzb & ".打怪开始……", "000000")
Delay 1000
Call Plugin.Msg.HideScrTXT()
End Sub
Sub 检测坐标
XY=Plugin.Color.FindShape(xl,yl,xr,yr,"1|0|1,2|0|1,0|1|0,1|1|0,2|1|0,47|1|0,48|1|0,49|1|1,50|1|1,51|1|0,52|1|0,53|1|0,54|1|0,55|1|0,56|1|0,57|1|0,0|2|0,1|2|0,2|2|0,47|2|0,48|2|0,49|2|0,50|2|1,51|2|1,52|2|0,53|2|0,54|2|0,55|2|0,56|2|0,57|2|0,0|3|1,1|3|1,2|3|1,47|3|1,48|3|1,49|3|0,50|3|0,51|3|1,52|3|1,53|3|0,54|3|0,55|3|0,56|3|0,57|3|0,47|4|0,48|4|0,49|4|0,50|4|0,51|4|0,52|4|0,53|4|0,54|4|0,55|4|0,56|4|0,57|4|0",1)
ZB = InStr(XY,"|")
aX = Clng(Left(XY, ZB - 1)): aY = Clng(Right(XY, Len(XY) - ZB))
If aX > 0 And aY > 0 Then
zb11 = dm.Ocr(ax-5,ay+1,ax+22,ay+18, "fdff73-000000", 1.0)
zb12 = dm.Ocr(ax+22,ay+1,ax+48 ,ay+18, "fdff73-000000", 1.0)
sbzb1=Replace(zb11," ","")
sbzb2=Replace(zb12," ","")
If IsNumeric(sbzb1)=False or IsNumeric(sbzb2)=False or sbzb1="" or sbzb2="" Then
jczb=nfzb
Else
If sbzb1<=99 then
sbzb1="0"&sbzb1
End if
If zb12<=99 then
sbzb2="0"&sbzb2
End if
jczb=sbzb1&sbzb2
end if
End If
End Sub
Sub 检测范围
If TFdidian=1 then
Call 检测坐标
if CInt(abs(nfzb1 - sbzb1)) < CInt(left(FWdidian, 1)) and CInt(abs(nfzb2 - sbzb2)) < CInt(right(FWdidian, 1)) then
Else
Call Plugin.Window.Active(Hwnd)
Call 寻路
Delay 200
yddzb=Nfzb
Call 移动到
End If
end if
End Sub
Sub 寻路
ksdjt = now
djflag = 0
Rem 重新寻路
dm_ret = dm.FindStr(XR - 350, YL, XR, YR, "坐标", "fff263-000000", 1.0, X, Y)
If x >0 and y >0 Then
Else
KeyPress "Tab",1
delay 50
djt = now
djflag=1
End if
While djflag=1 and datediff("s",djt,now)<4 and datediff("s",ksdjt,now)<10
dm_ret = dm.FindStr(XR - 350, YL, XR, YR, "坐标", "fff263-000000", 1.0, X, Y)
If x > 0 and y > 0 Then
djflag=2
End If
Wend
While djflag=1 and datediff("s",djt,now)>=4 and datediff("s",ksdjt,now)<10
dm_ret = dm.FindStr(XR - 350, YL, XR, YR, "坐标", "fff263-000000", 1.0, X, Y)
If x > 0 and y > 0 Then
djflag = 2
Else