您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > 基于JAVA的扫雷游戏的设计与实现
JAVA程序设计A课程设计题目基于JAVA的扫雷游戏的设计与实现院(系)信息工程学院专业班级计算机科学与技术(2)班学生姓名学号设计地点教(13)软件实验室指导教师起止时间:2014年6月9日至2014年6月13日《Java程序设计A》课程设计任务分工及成绩院(系):信息工程学院教研室:软件教研室课程设计题目基于JAVA的扫雷游戏的设计与实现课程设计内容用JAVA实现扫雷游戏,了解扫雷游戏的基本结构,和理解扫雷的算法,并努力对算法进行改进,调试过程中修复程序中的bugg,使该扫雷游戏尽可能完善。设计内容:1、扫雷游戏分为初级、中级和高级三个级别。单击游戏菜单可以选择“初级”、“中级”和“高级”。2、选择级别后将出现相应级别的扫雷区域,这时用户使用鼠标左键单击‘“开始”便启动计时器。3、用户要揭开某个方块,可左键单击它。若所揭方块下有雷,用户便输了这一局,若所揭方块下无雷,则显示一个数字,该数字代表方块的周围的8个方块中共有多少颗雷。4、如果用户认为某个方块下埋着雷,单击右键可以在方块上标识一个用户认为是雷的图标,即给出一个扫雷标记。用户每标记出一个扫雷标记(无论用户的标记是否正确),程序将显示的剩余雷数减少一个。小组成员及任务分配姓名学号承担任务成绩算法实现游戏布局设置监听器基于JAVA的扫雷游戏的设计与实现摘要随着时代的发展,电脑进入了普通老百姓的生活,越来越多的人使用电脑办公、娱乐、上网,游戏行业发展一日千里,该行业极大的影响和改变了人们的生活和娱乐方式,游戏为消费者提供丰富多彩的虚拟空间,使消费者可以自由自在的享受虚拟世界的乐趣,实现自己在现实生活着那个可能永远不能实现的梦想,满足了消费者的心理和精神需求。扫雷游戏是Windows操作系统自带的一款小游戏,本系统要是模仿WINDOWS系统的扫雷,对于实现过程中出现的bug进行调试解决。我这里用的是C#编写了与它功能相似的扫雷游戏。程序的功能是随机生成地雷数,通过鼠标操作玩游戏,不接受键盘,按任意键结束程序。单击屏幕上的笑脸可以重新开始游戏。当鼠标左键单击到地雷时提示游戏失败。报告首先介绍了进行该游戏课程设计的目的,然后是任务描述和设计的相关要求,最后是最重要的需求分析和设计方案。重点介绍了在游戏过程中各事件的处理,其中又以鼠标事件和清除未靠近地雷区方块这两方面最为最要,鼠标事件是利用鼠标所发出的信息了解用户的意图,进而做出相对应的动作。清除未靠近地雷区的方块较为复杂。关键词:扫雷游戏,算法设计,事件,JAVA目录1概述.................................................................11.1选题的目的及意义...............................................................................................11.2程序设计任务与要求..........................................................................................12需求分析................................................................................................................................22.1扫雷游戏的需求分析.........................................................................................22.2扫雷游戏的基本功能操作..............................................................................22.3功能要求...................................................................................................................23详细设计...............................................................................................................................43.1系统总体设计........................................................................................................43.1.1算法思想........................................................................................................43.1.2设计思想........................................................................................................43.1.3功能分析.......................................................................................................53.2系统详细设计..........................................................................................................53.2.1类的设计........................................................................................................53.2.2模块的划分及调用关系.......................................................................64系统测试与实现................................................................................................................74.1程序测试结果........................................................................................................74.1.1游戏玩家通过右击鼠标来进行扫雷,并显示“雷”........74.1.2游戏玩家因触到雷而导致游戏结束.............................................84.1.3游戏玩家扫雷成功..................................................................................84.1.4游戏玩家可选择游戏难度..................................................................9总结......................................................................................................................................10参考文献..................................................................................................................................11附录.....................................................................................................................................1211概述1.1选题的目的及意义本次课程设计的主要目的是为了通过具体的程序来加深对Java语言的掌握,提高自己的编程水平。选择的题目来自《Java课程设计(第二版)》中的扫雷游戏,这是一个综合性的题目,可以对Java中的各项功能有更好的理解和使用,同时也为以后的工作打下一定的基础。1.2程序设计任务与要求扫雷游戏是一个很有趣的游戏。本章的课程设计使用Java语言编写一个与其类似的扫雷游戏。具体要求如下:(1)扫雷游戏分为初级、中级和高级三个级别。单击游戏菜单可以选择“初级”、“中级”和“高级”。(2)选择级别后将出现相应级别的扫雷区域,这是用户使用鼠标左键单击雷区中任何一个方块便启动计时器。(3)用户要揭开某个方块,可单击它。若所揭方块下有泪,用户便输了这一局,若所揭方块下五雷,则显示一个数字,该数字代表方块的周围的8个方块中共有多少颗雷。(4)如果用户认为某个方块下埋着雷,单击右键可以在方块上标识一个用户认为是雷的图标,即给出一个扫雷标记‘雷’。用户每标记出一个扫雷标记(无论用户的标记是否正确),程序将显示的剩余雷数减少一个。(5)扫雷胜利后,游戏中的标签会显示“你赢了!”(6)如果在扫雷过程中一不小心碰到了雷,游戏会显示“你输了,这个游戏不适合你!”。22需求分析2.1扫雷游戏的需求分析随着社会的不断进步,人们的压力也不断的提高,在游戏层出不穷的时刻,扫雷游戏任然受到不少人的青睐,,其本身的性质,决定了人们对它的喜爱的程度,不需要特殊的技巧,不需要不断的升级,还不需要太多的时间进行熟悉,简简单单却趣味无穷。2.2扫雷游戏的基本功能操作本程序需实现的主要功能有:(1)用户可以自定义级别,并确定雷的个数。(2)具有计时功能,即显示用户完成扫雷所花费的时间。(3)点击开始进行扫雷。(4)用户识别雷右击可标记“雷”。2.3功能要求(1)程序的总体功能如图2.1所示。扫雷游戏主界面游戏开始帮助中级初级高级图2.1总体功能图3(2)程序总体流程如图2.2所示。开始结束定义并初始化个按钮,菜单等菜单按钮事件处理初级中级高级重新开始方块是否点中雷展示相应的效果菜单按钮NY图2.2总体流程图43详细设计3.1系统总体设计3.1.1算法思想(1)计算按钮周围雷数。(2)随机分布。扫雷游戏要求在M行N列的网格游戏区随即的不上bon个雷,且bon的取值应小于M和N的乘积。这可以在一张M*N的网格上通过均匀分布的随即算法视线。其中bon的网格是雷区,剩下的网格是非雷区。游戏的目标是尽可能快地找到所有的雷区,而不踩到地雷。Java提供了视线随即算法的类Math,通过Math类的random()方法这可以很方便的实现随即布雷的功能。3.1.2设计思想(1)扫雷棋盘的布局设计系统的整体布局为:CardLayout布局,采用了菜单、按钮、面板…等组件,菜单主要包括开始,选择级别,标记,按钮的功能是重新开始新的游戏。(2)雷区的设计ScanLei1类是继承了JFrame实现了ActionListener接口,该类里声明了组键,并进行布局,go方法通过设置是否显示窗体,主方法main()实例化窗体对象,out()方法是ScanLei1类中的重要方法之一,也就是扫雷的算法。actionPerformed(ActionEvente)就是单击按钮触发的事件,如果
本文标题:基于JAVA的扫雷游戏的设计与实现
链接地址:https://www.777doc.com/doc-4973551 .html