Android游戏开发菜鸟之路(五)

最近一直在根据《Android Games Beginning》一书写一个游戏框架,2D游戏基本的功能此框架基本可以实现,因此突发奇想,写一个简单的连连看游戏试试这个框架的功力。

连连看游戏的主要两个重点是游戏布局的生成和判断两个模块是否可以消除。先说游戏布局的生成:这里我实现的方法比较朴素,一开始先对每个模块同时生成两个,然后随进打乱这些模块,此生成算法实现简单,但有他明显的不足之处,那就是可能生成一个无解的布局,在知乎上看到利用拉斯维加斯算法+回溯,这个以后会试一下。

然后说一下判断两个模块是否可以消除,这个玩过连连看的都知道其规则,就是两个模块之间的连线的弯折次数不能大于2,这个可以根据广度优先搜索来实现,算法很好理解,实现起来很简单,这里不想多说,这我的实现代码里有,我写在Alogrithm类中。

还要说的是,这次实现的连连看完全是为了测试我现在写的游戏框架的效果(自我感觉此框架还不错),所以模块没有加图层,就是用正方形来代替的;并且也没有加计时器什么的限制;更没有加什么效果上的优化。最近实验室的项目和期末考试一起压过来,估计是要等着寒假去改进这个游戏了。

你可能感兴趣的:(Android游戏开发菜鸟之路(五))