所在的位置: js >> js前景 >> autojs连连看脚本可视化

autojs连连看脚本可视化

牙叔教程简单易懂

我用autojs写了一个连连看app,然后我又写了一个连连看脚本,

效果展示

下面来看看连连看脚本的制作思路

采集画面原始信息

游戏区域的左上角和右下角坐标

游戏的行列的数量

格子的原始图片

调整数据结构

我把小小的格子定义为一个Cell类,然后所有属性都挂到他上面,方便调用

functionCell(row,column){this.row=row;this.column=column;this.state=Cell.state.NORMAL;this.width=0;this.height=0;this.centerX=0;this.centerY=0;this.left=0;this.top=0;this.right=0;this.bottom=0;this.canvas=null;this.number=null;this.originalImg=null;this.img=null;this.paint=paint;}

判断格子是否连通

这个是该教程的重点,网上已经有很多的方法了,大家可以博采众长,然后写出自己的脚本.

下面来看看这个脚本是怎么判断的

连通类别我分为三种

图形化展示三种连通分类

第一种:两个格子紧挨着

第二种:一个格子周围的空格和另一个格子周围的空格有交集

第三种:一个格子周围的空格集合A,

另一个格子周围的空格集合B,

集合B周围的空格集合C,

集合A和集合C有交集

几个小问题

1怎么判断格子是不是空的

Celll有一个属性originalImg,保存的是游戏刚开始格子里面的图片,

截图以后,拿当前的图片和原始图片做对比,不一样的话,就是格子就是空的

2怎么判断两个格子图片是不是一样的

我用的是多点比色,在一张图中取多个点的颜色数据,然后去另一张图中找;

能找到符合条件的多个点,就说明两张图一样.

functionisSameTwoImg(img1,img2){//在图中间找固定数量的点,然后去大图里面多点找色letcolorDataList=getColorDataList(img1);//[图片与颜色-Images](


转载请注明:http://www.aierlanlan.com/cyrz/4885.html