`
Chang0501
  • 浏览: 23717 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

连连看游戏的设计

阅读更多

一、功能描述

     在连连看游戏中,两张相同图片之间存在通路的条件就是两张图片间某条路径中含有的拐角数不超过两个并且没有其它图片存在。基于这一基本功能完成的同时,这个连连看还有以下一些功能:

1、计时器:在游戏过程中同步设置一个计时器,需在规定时间内完成游戏,否则就为游戏失败。

 

2、游戏难度:可以在游戏开始时设置游戏难易程度,其实就是规定时间的不同。游戏的难易程度可以再窗体的游戏难度显示栏上显示。

 

3、暂停:在游戏过程中,玩家可以根据自己的需要暂停游戏,点击start键后又可以返回游戏。

 

4、路径显示:游戏过程中,如果两张所选的相同图片之间存在着通路,就可以用连线显示该组图片间的一条路径,便于玩家观察。

 

 

以下是游戏功能的展示图:



 

 

游戏难度的设置


                 
 
  

 

暂停功能                             



 


 路径显示

 



 

 

时间到了未完成游戏



 

 

 

二、技术分析

在整个连连看游戏的设置中主要涉及到以下几点:

1、JTable组件的应用:在游戏界面中,各个图像时存放在JTable组件的表格中,在运用这个组件时一定要注意与其对应的TableModel借口,在其中定义了设置表格一系列的方法。两者之间相辅相成。

 

2、判断路径的算法,在设计两张图片是否存在通路的算法中,运用了类似于递归的算法(这里只是形式与递归相似),首先是判断有没有无拐点的路径,之后在判断有无一个拐点的路径时调用了无拐点通路的判断方法以达到化繁为简的效果。相对于迷宫算法来说,我认为这个方法是比较好的,因为后来所说的路径显示问题也可以基于这个算法轻松实现。

 

3、线程thread在定时器上的运用:通过创建另一个线程在游戏进行的时候实现计时功能。并且调用了thread.sleep()方法来控制计时器的进度。

在这个游戏中运用的主要技术点就是以上三类。

 

 

三、总结分析

     连连看游戏的设计其实目的有两个:一是学习熟悉一下JTable组件的运用,二是预习一下多线程的内容,但是在设计的过程中,我学到的远不止这些,像在路径查找的算法分析中,我感觉到过去龙哥所说对一个看似复杂的问题应当具有一个具体的分析步骤的重要性,同时也知道了在具体开发中细节的重要性。这些方面我今后将会更加努力。细心的朋友也许会在游戏中发现为什么四周的相同图片不能连接,呵呵,这完全是我个人设置的游戏规则,当然了,是为了掩盖一个小的瑕疵,有兴趣的话大家可以仔细观察一下(只需要在界面上即可)。源代码发到附件里面了,下载之后jar文件一定要和图片在同一目录下运行,这个大家注意一下。最后借用最近看到的冯友兰先生新世训中的一句话做一下展望:自己尚觉不足,便还未到极致。

  • 大小: 187.2 KB
  • 大小: 9.3 KB
  • 大小: 50.1 KB
  • 大小: 8.1 KB
  • 大小: 144.2 KB
  • 大小: 2.5 KB
  • 大小: 2.4 KB
6
3
分享到:
评论
5 楼 Chang0501 2011-04-23  
陌路灬 写道
才入行,这个jar包怎么用?

直接点击就可以运行程序了,要是想看里面的内容的话,就用压缩来打开。源码就是在里面的.java文件里。
4 楼 陌路灬 2011-04-08  
才入行,这个jar包怎么用?
3 楼 jiushibuainizadi 2011-04-07  
当时在JAVA培训班是,我们的老师花了2个多小时就搞好了,很佩服他(有5年开发经验的项目经理)
2 楼 郭广川 2011-04-05  
[/color][color=red]小畅子,哼哼,搞的不错,顶你,必须滴!
1 楼 dysfzhoulong 2011-04-05  

相关推荐

Global site tag (gtag.js) - Google Analytics