扫雷软件设计报告.doc

上传人:jian****018 文档编号:9566560 上传时间:2020-04-06 格式:DOC 页数:11 大小:158KB
返回 下载 相关 举报
扫雷软件设计报告.doc_第1页
第1页 / 共11页
扫雷软件设计报告.doc_第2页
第2页 / 共11页
扫雷软件设计报告.doc_第3页
第3页 / 共11页
点击查看更多>>
资源描述
摘 要 此次设计的一款扫雷游戏 其功能类似于 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 true counter 监听点击扫雷方法 private void CheckButton ExtendButton TempButton if TempButton GetStatus this timer stop JOptionPane showMessageDialog null You Failed Game JOptionPane INFORMATION MESSAGE this ShowBomb int i JOptionPane showConfirmDialog null 是否要继续 消息 JOptionPane YES NO OPTION if JOptionPane YES OPTION i SetExtendButton else this dispose return int CircleNum new int 8 int temp 0 if TempButton GetVisited CircleNum 0 TempButton GetPostion this myColumns 1 CircleNum 0 CircleNum 0 0 CircleNum 0 1 this myColumns 0 1 CircleNum 0 CircleNum 1 TempButton GetPostion this myColumns CircleNum 1 CircleNum 1 0 1 CircleNum 1 CircleNum 2 TempButton GetPostion this myColumns 1 CircleNum 2 CircleNum 2 this myRows this myColumns 1 CircleNum 5 1 this myColumns 0 1 CircleNum 5 CircleNum 6 TempButton GetPostion this myColumns CircleNum 6 CircleNum 6 this myRows this myColumns 1 1 CircleNum 6 CircleNum 7 TempButton GetPostion this myColumns 1 CircleNum 7 CircleNum 7 this myRows this myColumns 1 CircleNum 7 this myColumns 0 1 CircleNum 7 for int i 0 i 8 i if CircleNum i 1 if myButton CircleNum i GetStatus 总结 在程序代码基本完成后 经过不断的调试和修改 最后测试本次所设计的扫雷游戏能 够正常运行 没有出现明显的错误和漏洞 但是在一些细节方面仍然需要完善 比如在游 戏中可以假如一些声音的提示 在游戏完成和失败的时候弹出一些小的 Flash 动画 还有 就是可以完善一下扫雷英雄榜等等 总的来说本次设计在功能上已经基本达到要求 在其 他细节方面有待以后完善 通过这次比较完整的一个程序的设计 我摆脱了单纯的理论知识学习状态 和实际设 计的结合锻炼了我的综合运用所学的专业基本知识 解决实际问题的能力 同事也提高我 查阅文献资料 对程序整体的把握等其他能力水平 并且通过对整体的掌控 对局部的取 舍 以及对细节的处理 都使我的能力得到了锻炼 经验得到了丰富 各种组件的运用 各种算法的应用 各种控件的利用我都是随着设计的不断深入而不 断的熟悉并逐步掌握的 和老师以及同学的沟通更使我对程序整体的规划与设计有了新的 认识 也对自己提出了新的要求 提高是有限的但提高也是全面的 正是这一次设计让我积累了许多实际经验 也必然 会让我在未来的工作学习中表现出更高的应变能力和理解力 参考文献 陆迟 Java 语言程序设计 第 2 版 北京 电子工业出版社 2008 12 叶核亚 陈立 Java2 程序设计实用教程 北京 电子工业出版社 2003 5 焦玲 王兴玲 Java 程序设计 北京 中国铁道出版社 2006 3 贾素玲 王强 Java 编程基础 北京 高等教育出版社 2005 4 聂哲 袁梅冷 杨淑萍 Java 面向对象程序设计 北京 高等教育出版社 2005 6
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 工作总结


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!