按键精灵大漠找多图如何能实现逐个点击拾起?
看教程 写了下面代码,可是不拾取,什么原因,有大神来帮忙么?
就是游戏 装备拾取的问题。。
Plugin.dm.FindPic 400,120,1200,500,"D:\Program Files\jietu\T001.bmp|D:\Program Files\jietu\T002.bmp|D:\Program Files\jietu\T003.bmp|D:\Program Files\jietu\T004.bmp|D:\Program Files\jietu\T005.bmp|D:\Program Files\jietu\T006.bmp|D:\Program Files\jietu\T007.bmp|D:\Program Files\jietu\T008.bmp|","202020",0.7,0,intX,intY
If intX > 0 Then
MoveTo intX + 5, intY + 5
Delay 200
LeftClick 1
Delay 1000
End If 展开
全部找一遍的话 只能一个个找。你找的图太多,所以也不适合多线程一起找,否者卡死~
这代码是这些图中找到其中一个图就返回xy坐标,同时代码也停止了 ,并不是把这些图全部找一遍
有其他办法可以办到么?
至少有三样东西是比较重要的 需要判定拾取,
第一次找一遍,返回一个地址,在重复进行呢?直到 X,Y<0
在重复进行呢?直到 X,Y<0
你这个思路是不行的,当出现一次找不到,就会返回 -1,那么就不找了,
所以要用限时找图,比如2秒没找到图,就结束,如果找到一个,继续找2秒,直到2秒内没找到图
For i = 1 To 999
IsFile = Plugin.File.IsFileExist("D:\Program Files\jietu\T00" & i & ".bmp")
If IsFile = True Then
图集 = 图集 & "D:\Program Files\jietu\T00" & i & ".bmp|"
Else
图集 = Mid(图集, 1, len(图集) - 1)
Exit For
End If
Next
保存时间 = timer
Do
返回值 = dm.FindPic(400, 120, 1200, 500, 图集, "202020", 0.7, 0, intX, intY)
TracePrint "返回值: " & 返回值
If 返回值 <> - 1 Then
TracePrint "找到 第 " & 返回值 + 1 & " 个图"
MoveTo intX + 5, intY + 5
Delay 200
LeftClick 1
Delay 1000
保存时间 = timer
ElseIf timer - 保存时间 > 3 Then'3秒内没找到任何图退出
Exit Do
End If
Delay 200
Loop
MessageBox "找图结束"
能确定找到图了,前面几个标记,后面加个 goto 还可以捡到两个到三个,
实验 时候最多能捡到三个,之后鼠标就飘走了。
广告 您可能关注的内容 |