- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(扫雷软件设计报告
摘 要
此次设计的一款扫雷游戏,其功能类似于Windows操作系统自带的扫雷游戏。首先介绍了制作游戏的整体思路及整个游戏设计的流程规划,然后介绍了雷区的布置及地雷随机产生的实现方法;重点介绍了在游戏过程中各事件的处理,其中又以鼠标事件和清除未靠近地雷区方块这两方面最为重要,鼠标事件是利用鼠标所发出的信息了解使用者的意图,进而做出相对应的动作,而清除未靠近地雷区方块由于引进了“递归”这个概念而使其简单化。
本次设计只是完成了扫雷游戏的基本功能,在细节方面仍有待完善。
关键词:扫雷、事件、递归
目 录
1引言 1
1.1课题背景 1
1.2本文的主要工作 1
2 需求分析及开发环境 1
2.1系统目标 1
2.2系统应具备的基本功能 1
2.3开发环境及工具 2
3系统总体设计 2
3.1基本简介 2
3.2功能模块设计 3
4 系统流程与实现 5
4.1系统流程 5
4.2游戏界面介绍 6
总结 9
参考文献 9
1引言
1.1课题背景
扫雷是一个相对来说较为简单的小游戏。而且由于自身能力有限的问题,所以对于首次尝试制作小游戏的我是一个比较不错的选题。由于从未制作过任何的软件,为了将自己的所学知识加以运用,制作过程很大上的程度借鉴了别人的思想。但是我希望通过此次制作和学习过程,可以了解软件设计的方法。
1.2本文的主要工作
本文主要工作时相对较为详细的阐述此个小游戏,也就是扫雷的制作过程,遇到的问题,还有解决办法。所采用的工具软件和使用的方法。
2 需求分析及开发环境
2.1系统目标
游戏开始时,系统会在雷区的某些小方块中随机布下若干个地雷。安放好地雷的小方块称之为雷方块,其他的称之为非雷方块。部署完毕后,系统会在其他非雷方块中填充一些数字。某一个具体数字表示与其紧邻的8个方块中有多少雷方块。玩家可以根据这些信息去判断是否可以打开某些方块,并把认为是地雷的方块打上标识。如果某个数字方块周围的地雷全都标记完,可以指向该方块并同时点击鼠标左右键,将其周围剩下的方块挖开。如果编号方块周围地雷没有全部标记,在同时点击鼠标左右键时,其他隐藏或未标记的方块将被按下一次(即闪烁一下)。当玩家将所有地雷找出后,其余的非雷方块区域都已打开,此时游戏胜利。在游戏过程中,一旦错误地打开了雷方块则立即失败,游戏结束;当玩家标识的地雷数超过程序设定,虽然打开了全部其余方块,游戏仍然不会结束。
2.2系统应具备的基本功能
1、从外观上分析:
菜单
方块
地雷数目显示
计时器
有雷标识
无雷标识
红叉显示
胜利画面
失败画面
2、从操作上分析
鼠标事件:
点击鼠标左键于未知区域,如果未知区域有雷,游戏停止,显示所有的地雷。如果没雷,则显示周围雷数,如果周围没雷,则再查看周围八个区域是否有雷直到有雷为止,并显示雷的数目。
点击鼠标右键于未知区域,则显示小红叉,将其置为有雷。在该位置再次点击右键则视为取消设置,红叉消失。
菜单设置:
点击菜单可以选择重置现在的雷区,选择设置可以设置雷区的大小和雷得数目
2.3开发环境及工具
Windos XP系统、Ecliipse 6以上
3系统总体设计
3.1基本简介
(1) 扫雷游戏可以自己设置扫雷区域的大小、地雷的数目。
(2) 设置好后将出现相应的扫雷区域,这时用户可以开始点击雷区。
(3) 用户要揭开某个方块,可单击它。若所揭方块下有雷,用户便输了这一局,若所揭方块下五雷,则显示一个数字,该数字代表方块的周围的8个方块中共有多少颗雷。
(4) 如果用户认为某个方块下埋着雷,单击右键可以在方块上标识一个用户认为是雷的图标,即给出一个扫雷标记。用户每标记出一个扫雷标记(无论用户的标记是否正确),程序将显示的剩余雷数减少一个。
(5) 扫雷失败后。用户可以选择继续。
3.2功能模块设计
布雷
鼠标事件
鼠标左击事件流程图
(1)点击未知区域。
(2)是地雷,游戏结束。
(3)不是地雷,判断周围地雷数目是否为0,为0则显示空白格子,并拓展周围格子,不为0则显示地雷数
空白格子拓展
4 系统流程与实现
4.1系统流程
4.2游戏界面介绍
布雷方法
private void SetBomb(int count) {
int counter = 0;
int tempint;
while(counter != count) {
tempint = (int) (Math.random()*(this.myRows * this.myColumns));
if(!this.myButton[tempint].GetStatus()) {
this.myButton[tempint].SetStatus(tr
文档评论(0)