cocos2dx 3.0正式版发布。 正好作为练手,写个连连看Demo.
连连看关键在于它的消除算法。一般来说,连连看两个图片单元能够消除,需要满足以下三种情况之一。
1. 没有拐点

1. 没有拐点
这里H是起点1, D是终点,这两个点就是玩家连续点击的两个连连看单元。
如果从H->D或者从D->H没有障碍, 那么这两个单元可以消除。
2. 单个拐点

2. 单个拐点
主要有这四种情况,其中,
代表拐点。
如果从D->H或者H->D的路径上不存在障碍的话,那么这两个单元可以消除。
3. 两个拐点


【图2 完成部分消除后】
3. 两个拐点
这里的情况较为复杂。仅以Y方向的移动为例说明。所谓的Y方向,是指从H点出发,往拐点的路径是垂直方向向上或者向下。
同上,如果D->H或者H->D的路径上不存在障碍的话,那么这两个单元可以消除。
好了,算法的说明就是以上。下面上图。
【图1 开始时候】

当然,这仅仅是一个Demo。 完成度还很低。不过,也达到了学习的目的。欢迎大家拍砖。
最后打个广告,欢迎加入游戏开发技术讨论群 216208142 加入讨论。喜欢Android / IOS / Flash / OpenGL / OpenGL ES / Algorithm / AI 热烈欢迎。