项目名称:Android游戏开发,宠物小精灵连连看


使用工具:ADT(开发工具),Photoshop(图片处理),Visul VM(性能测试)


项目构想:由于本人比较喜欢玩连连看,而网上的连连看大多都是积分制,利益为上。所以本人就想写一个连连看的手机游戏,没有积分制,采取过关的方式。每一关都有规定的时间,如果时间内没有完成,则判定失败,由于没有美工基础,所以界面不是特别友好,不过还是达到了想要的效果。


算法思想:通过自己的想法,加上查阅网上的资料,连连看的算法基本可以确定为分层显示的思想,首先先简单介绍一下布局算法。采用4*4的棋盘,假设棋子有四种,首先在程序初始化的时候,我就先将棋子图片加载出来(一次性加载两次,确保棋子偶数个),之后再将棋盘随机打乱,就可以构造出一局标准的连连看,如下图所示

Android连连看游戏项目创建 android开发连连看_Android连连看游戏项目创建

                                    

Android连连看游戏项目创建 android开发连连看_图片处理_02

再来看看连连看的连接算法,首先分析,判断两个图标能够连接的充要条件是:1.两个图标是相同的。2.两个图标之间有一条路相连,其中这条‘路’上没有其他棋子阻碍。3。‘路’不能有两个以上的拐角。所以对连通的判断,我们有三个情况需要满足。

通过查阅资料,对于连通的判断方法可以分为三种,1.直线型。 2,1折型。 3,2折型。 三种判断方法示意图如下所示,赘于篇幅,就不在这里详细讨论了。


 一折型

Android连连看游戏项目创建 android开发连连看_Android连连看游戏项目创建_03

         二折型      

Android连连看游戏项目创建 android开发连连看_Android连连看游戏项目创建_04

Android连连看游戏项目创建 android开发连连看_Android连连看游戏项目创建_05

Android连连看游戏项目创建 android开发连连看_偏好设置_06



算法搞定了之后,我们就可以开始动手了。

程序的大致框架如下图所示

Android连连看游戏项目创建 android开发连连看_连连看_07

 

游戏音效是直接下载的QQ游戏连连看的音效包,背景音乐是自己偏好设置的,游戏内的图标则是自己用PS做的。

程序实现:

程序框架及部分代码展示:

Android连连看游戏项目创建 android开发连连看_连连看_08


绘制棋盘算法:

Android连连看游戏项目创建 android开发连连看_图片处理_09


之后是程序运行效果图:


主界面:

Android连连看游戏项目创建 android开发连连看_图片处理_10

游戏界面:

Android连连看游戏项目创建 android开发连连看_连连看_11

胜利界面:

Android连连看游戏项目创建 android开发连连看_连连看_12

失败界面:

Android连连看游戏项目创建 android开发连连看_图片处理_13

程序处于调试阶段,所以帮助次数设置为99,可以自觉不用帮助提示。


最后是性能分析,程序开始时间6:11分。

Android连连看游戏项目创建 android开发连连看_Android连连看游戏项目创建_14



最后附上游戏下载地址:


http://pan.baidu.com/s/1qWJkYBy