马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
[按键精灵] 纯文本查看 复制代码 //下载并使用紫猫安卓插件[url=https://zimaoxy.com/m/post/zm.about/]https://zimaoxy.com/m/post/zm.about/[/url]
Import "zm.luae"
zm.Init
Dim bx, by, x1, y1, x2, y2, backcolor, bsim, scale
//取背景色的坐标90,318,可自由调整
bx = 90 : by = 318
//背景色相似度0.94,可自由调整
bsim = 0.94
//定义扫描与查找棋子的范围31,337,668,904,可自由调整
x1 = 31 : y1 = 337
x2 = 668 : y2 = 904
//距离除以时间的比值,也就是速度,可自由调整
scale = 0.41975
Dim pc1, pc2, p1, p2, t
//采用多点找色来实现查找棋子坐标,可自由调整
pc1 = "623938" : pc2 = "-18|-38|482E2F,8|-112|B28B94,17|-6|543638,-9|-71|5C3C43,-22|0|4F2D2E,6|-68|AF8790,-1|-124|4F373D,-4|-91|473B39,-2|-32|54343F"
Do
KeepCapture
//使用超级多点找色来实现查找棋子坐标
//参数"1-0.9-0.01"表示自动从0.9到1.0范围内选取最佳相似度,可自由调整
//返回值在表p1中,可以用p1["x"], p1["y"]取出坐标
//这里代码也可以替换成官方自带的多点找色命令
p1 = zm.FindMultiColor(x1, y1, x2, y2, pc1, pc2, "显示", "1-0.9-0.01")
//获取当前背景色
backcolor = GetPixelColor(bx, by)
//嵌套循环,让坐标从左到右,从上到下进行变化
//每次坐标距离加10,提高对比速度
p2 = Null
For y = y1 To y2 Step 10
For x = x1 To x2 Step 10
//这里52是指棋子图片的宽度,可自由调整
//目的是不扫描到棋子,因为棋子颜色与背景色也不同
//俩方块太近的时候,棋子可能会高于方块,导致出错,所以需要排除棋子范围
If p1 and not(p1["x"] + 52 >= x >= p1["x"] - 52) Then
//对比指定坐标颜色是否与背景色相似
If CmpColor(x, y, backcolor, bsim) = -1 Then
//如果颜色不相似,则表示找到终点坐标了
p2 = {"x":x, "y":y}
Exit For
End If
End If
Next
If p2 Then
Exit For
End If
Next
//如果p1和p2都是有值的,表示起点与终点都获得了,可以计算时长了
If p1 and p2 Then
//求出起点与终点的水平距离,然后除以速度,得到按住的时长
t = Abs(p1["x"] - p2["x"]) / scale
Touch 200, 200, t
End If
ReleaseCapture
//延时2秒钟,保证棋子落到目的地并且停留一段时间了
Delay 2000
Loop
|