本文主要是介绍连连看游戏——经典益智游戏制作方法手稿,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
以下是网上搜来的一个连连看游戏图片,还是诺基亚上的:
这种游戏看起来很简单,但却包含一个复杂的图论算法。
地图都是方格组成,使用二维数组实现,这个很简单。
至于怎么样做到“两拐以内”就能消,这要用到一个图论路径算法,迪杰斯特拉、弗洛伊德,还是A*算法,这三种哪个好我还没研究过,暂时请读者自行研究。
有的时候方块消完后,会有所有的方块向一个方向掉落的玩法,这也很简单,只要判断那个方向的方块区域是空的,就一直循环掉落直到不空为止即可。比如我希望都向下边掉落,就判断下边是否为空,是空就掉落,非空就停止。
还有一点,有的时候,如果没有可消的方块,就重新放置游戏中当前的方块的位置。判断方法还是用图论算法在任意两个相同图片的方块之间检测。
有一个问题我没想明白,那就是方块的位置和图片是完全随机呢,还是有规律的随机呢?图片肯定是一对一对地出现的,而位置,除了完全随机,肯定是有别的更好的方法的,这点我是想不明白了。
这篇关于连连看游戏——经典益智游戏制作方法手稿的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!