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