`
wuyakenihao
  • 浏览: 30964 次
  • 性别: Icon_minigender_1
  • 来自: 河南
社区版块
存档分类
最新评论

我来来说说手机开发连连看的地图布局和连连看的算法

 
阅读更多
eyes 们大家好:
              这几天闲着没事做了一个手机版得连连看,做的很粗糙,不过实现了基本的功能。在做连连看看的这几天感触颇深。下面就写写我做连连看的感受。在项目中的算法都是我自己想的,可能那里写的不是很好。希望得到大家的点评。
      
      首先来说说地图的布局吧。地图我是用一个二维的数组实现的。下面来说说如何来生成这个二维的数组。假如入你的是6*8的大小, 那么最好选择24张不一样的图片(当然这个图片不一定是24张不一样的)为了保证生成的二维数组里面的图片是成双成对的,我声明了一个list list 的大小也是6*8 然后在生成的这个list 的时候两个两个 生成,这样就保证这个list 里面的图片一定是成双成对的。 这个时候就要给 声明的二维数组赋值了,在赋值的时候 要随即取 list 里面的值 ,每取出一个就删除一个,让这个随即数始终在0到list的大小之间。 这样就生成了一个一定成双成对的出现的二维数组了地图了。
       
      上面是我生成地图布局的方法。
      

      下面来说说这个连连看的算法。
      首先是横向计算看看两个图片是否可以相连。(这个中间的过程大家看我的代码吧!代码中间有注释)
      其次是纵向计算看看两个图片是否可以相连。

      一个拐角可以让两张图片的相连的其实也很简单,当两个图片可以用一个拐角相连的时候那么这两个图片刚好可以画成一个矩形,而这两个图片的刚好位于矩形的两个对角。
      这个时候你只要把这个矩形对折一下(当然是你想想中的)会得到这个矩形的另外两个对角。只要这两个对角其中的一个在横向的方向和纵向的方向 能和你选中的这两个图片相连,就代表你选中的两个图片在一个拐角中是可以联通的。

     两个拐角的其实的思路也很简单,就是那这其中一个 在他的周围找到一个可以和另外一个只有一个拐角相连,如果有这么一个位置就代表 两个图片通过两个拐角就可以相连。

    其实我的思路就是,不管是1个拐角还是两个拐角最终都会转化成 横向相连或者纵向相连。
      以上,是我的思路。 大家谁有更好的思路。请说下。方便我们大家一起了解。有什么不对的地方请大家说出来。

   



       


  • XYQ.rar (273 KB)
  • 下载次数: 287
分享到:
评论

相关推荐

    连连看 寻路算法 源码

    A*(A-Star)寻路算法是一种启发式搜索算法,它结合了Dijkstra算法和最佳优先搜索,通过一个估价函数来指导搜索,寻找从起点到终点的最短路径。在这个连连看的场景中,估价函数通常是距离起点的距离加上预估到达终点...

    连连看地图编辑器(JAVA版)源代码 最优化版

    《连连看地图编辑器(JAVA版)源代码最优化版》是一个专为开发连连看游戏地图的工具,它提供了一套完整的项目工程,允许开发者创建和编辑连连看地图布局,以实现游戏关卡的多样化。这个编辑器是基于JAVA语言编写的,...

    连连看核心算法.rar

    连连看是一款广受欢迎的休闲消除类游戏,其核心算法是实现游戏流畅运行和高效消除的关键。在本压缩包“连连看核心算法.rar”中,我们可以深入探讨连连看游戏的算法设计与实现。 连连看的基本规则是:玩家需要找出并...

    基础入门连连看算法

    以上就是基础入门连连看算法的主要知识点,通过理解和掌握这些概念,你可以构建出一个基本的连连看游戏。在实际开发中,还可以根据需求添加更多功能,如时间限制、道具系统、难度级别等,以增加游戏的复杂性和趣味性...

    java版连连看算法

    ### Java版连连看算法解析与实现 #### 一、引言 连连看作为一种经典的消除类游戏,深受广大玩家的喜爱。其核心玩法在于寻找并消除两个相同图案的图标,且这两个图标之间可以画出不多于两条直线连接。Java作为一种...

    Java 连连看 经典算法

    首先,随机分布算法是连连看游戏初始阶段的关键,它决定了棋盘上元素的布局。在Java中,通常会使用Java.util.Random类来生成随机数,以决定元素的位置。要实现均匀分布,可以先将所有位置放入一个列表,然后通过随机...

    功能较全的连连看,经典算法

    总之,这个连连看游戏不仅展示了Java Swing框架在GUI编程方面的强大能力,还体现了游戏设计中的关键算法和逻辑,包括随机生成游戏板、游戏状态管理和事件驱动的交互设计。这对于学习游戏开发和Java编程的人来说,是...

    Java版连连看 连连看(可自选地图)

    接着,连连看的逻辑处理主要涉及两个重要算法:搜索算法和判断相邻算法。搜索算法用于查找所有可以匹配的方块对,例如深度优先搜索(DFS)或广度优先搜索(BFS)。当玩家点击一个方块时,程序会使用这些算法遍历整个...

    用 JAVA 开发游戏连连看 实现游戏的算法

    在JAVA中开发一款游戏,如“连连看”,涉及到多个编程技术与算法的综合应用。首先,我们要理解连连看的基本规则:玩家需要找到并消除一对相同的图案,这些图案必须通过不超过两条直线连接,且直线不能穿过其他图案。...

    Android开发连连看游戏

    在Android平台上开发一款连连看游戏,需要掌握一系列的编程技术和设计思路。连连看游戏的核心玩法是寻找并消除一对相同的图片,直到所有配对都被消除。下面将详细讲解开发这样一款游戏涉及的关键知识点。 1. **...

    连连看android手机游戏代码

    这个"连连看android手机游戏代码"是一个完整的项目源码,适用于开发者学习和研究Android游戏开发,特别是对于连连看这类轻量级游戏的实现。 在Android平台上开发连连看游戏,主要涉及以下几个关键知识点: 1. **...

    连连看算法

    以上是对连连看算法的基本介绍,实际开发中可能需要根据具体需求进行调整和优化,比如加入难度等级、时间限制等因素,使得游戏更加有趣且具有挑战性。通过理解并实现这些算法,不仅能提升编程技能,也能深入理解游戏...

    连连看消除算法

    连连看消除算法是一种常见的休闲游戏玩法,其核心是通过寻找并消除两个相同图案的棋子,直至棋盘上没有可消除的对为止。...开发者可以根据具体需求选择合适的算法和策略,以达到良好的游戏体验和性能表现。

    java游戏开发-连连看3-将算法与代码结合.doc

    实现一个完整的连连看 3 游戏需要将算法与代码结合起来,使用布局和按钮来实现游戏的界面,并使用事件处理来实现游戏的逻辑。通过这种方式,我们可以创建一个功能齐全的连连看 3 游戏。 在游戏的开发中,我们还需要...

    一个连连看游戏的算法程序

    综上所述,这个连连看游戏项目不仅涉及到基本的编程技巧,更关键的是对算法和数据结构的理解和运用。通过这个项目,开发者可以深入学习C++Builder的使用,以及如何利用算法来解决实际问题,提高编程思维能力。对于...

    C#连连看游戏开发代码

    开发连连看游戏需要熟悉C#的基本语法,包括变量、数据类型、控制流(如if语句、for循环、while循环)、函数以及类和对象的概念。 2. **Windows Forms**:Windows Forms是C#进行桌面应用开发的重要库,它提供了丰富...

    c++版的连连看(解释很详细)

    在本项目中,我们主要探讨的是使用C++编程语言实现的一款经典游戏——连连看。C++是一种强大且灵活的编程语言,它允许...理解这个项目不仅可以加深对C++语言的理解,还能学习到游戏开发中的问题解决策略和算法设计。

    易语言连连看核心算法

    易语言连连看核心算法源码,连连看核心算法,初始化画板,画编号图片,画连通块通路线,计算块相对坐标,计算块绝对坐标,计算相对坐标块号,计算绝对坐标块号,画块边框,画连通块清除动画,自动提示有效块,建立四边留空布局,...

    c#winform开发的连连看

    在本文中,我们将深入探讨如何使用C# WinForm开发一款连连看游戏,并通过XML文件来存储和读取游戏地图。连连看是一款广受欢迎的休闲益智游戏,玩家需要找到并消除一对相同的图案,直到所有匹配的图案都被消除。在C# ...

Global site tag (gtag.js) - Google Analytics