版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、答辩学生: 一、分析扫雷游戏的基本功能 ? 1、从外观上分析: ? 方块 ? 笑脸 ? 计时器 ? 有雷标识 ? 无雷标识 ? 胜利画面 ? 失败画面 一、分析扫雷游戏的基本功能 ? 2、从操作上分析: 鼠标 单击 右击 点击鼠标左键于未知 区域,如果未知区域有 雷,游戏停止,显示所 有的地雷。如果没雷, 则显示周围雷数,如果 周围没雷,则再查看周 围八个区域是否有雷 直到有雷为止,并显 示雷的数目。 一、分析扫雷游戏的基本功能 ? 2、从操作上分析: 鼠标 单击 右击 点击鼠标右键于未知 区域,则显示小红旗, 将其置为有雷。在该 位置再次点击右键则 视为不确定,显示问 号,点击第三次,取 消
2、设置,问号消失。 二、需求分析 ? 1、功能概述: ? 按功能将游戏区域分成两个区域:雷区和 提示区。提示区包括一个计数器和一个按 键操作。游戏过程中,当玩家用鼠标点击 相应的方块,程序就会作出相应的鼠标响 应事件,而众多鼠标事件的处理,都是围 绕着实现扫雷程序的算法而衍生的。 二、需求分析 ? 1、功能概述: ? 游戏开始时,系统会在雷区的某些小方块 中随机布下若干个地雷。安放好地雷的小 方块称之为雷方块,其他的称之为非雷方 块。部署完毕后,系统会在其他非雷方块 中填充一些数字。某一个具体数字表示与 其紧邻的8个方块中有多少雷方块。玩家可 以根据这些信息去判断是否可以打开某些 方块,并把认为
3、是地雷的方块打上标识。 如果某个数字方块周围的地雷全都标记完, 可以指向该方块并同时点击鼠标左右键, 将其周围剩下的方块挖开。 二、需求分析 ? 1、功能概述: ? 如果编号方块周围地雷没有全部标记,在 同时点击鼠标左右键时,其他隐藏或未标 记的方块将被按下一次(即闪烁一下)。 当玩家将所有地雷找出后,其余的非雷方 块区域都已打开,此时游戏胜利。在游戏 过程中,一旦错误地打开了雷方块则立即 失败,游戏结束;当玩家标识的地雷数超 过程序设定,虽然打开了全部其余方块, 游戏仍然不会结束。 二、需求分析 2、功能需求: ? (1)雷区上部左侧显示总雷数,并减去被 标明有雷区域的数目。 ? (2)雷区
4、上部中间位置显示一按钮用于开 局和显示鼠标动作的结果。 ? (3)雷区上部右侧显示扫雷的时间。 二、需求分析 ? 2、功能需求: ? (4)将雷全部扫清后,则显示一对话框将你 的姓名记入排行榜。以时间排序。 ? (5)点击鼠标左键于未知区域,如果未知区 域有雷,游戏停止,显示所有的地雷。如果没 雷,则显示周围雷数,如果周围没雷,则再查看 周围八个区域是否有雷直到有雷为止,并 显示周围雷的数目。 二、需求分析 ? 2、功能需求: ? (6)点击鼠标右键于未知区域,则显示小红 旗,将其置为有雷。在该位置再次点击右 键则视为不确定,显示问号,点击第三次, 取消设置,问号消失。 ? (7)如果该数字方
5、块周围地雷已经完全标 识出,双击该数字所在方块,将快速翻开 所有周围不是地雷的方块,并显示,直到 有雷为止。 二、需求分析 ? 3、功能模块: ? (1)游戏界面 ? (2)布雷 ? (3)鼠标事件 ? (4)地雷判断 ? (5)游戏胜利 ? (6)游戏结束 二、需求分析 ? 3、功能模块: ? (7)游戏设置。 ? (8)查看英雄榜,帮助。 三、总体设计 ? 1、游戏总体流程图 ? 用圆角矩形代表数据开始和结束。 ? 用矩形代表数据处理。 ? 用菱形代表判断。 ? 用带方向的箭头代表数据流向。 三、总体设计 ? 游戏总体流程图 三、总体设计 ? 1、游戏界面 ? (1)功能栏 ? (2)雷区
6、 ? (3)计时器 ? (4)状态栏 三、总体设计 ? 2、布雷 (1) 算法的设计 把整个雷区看成一个二维数组,aij周围的雷个数 是由如下8个雷区决定的(如果超出边界,应该再加 以判断): ai-1j-1 , ai-1j, ai-1j+1, aij-1 , aij+1, ai+1 j-1 , ai+1j, ai+1j+1, 在被展开时,检查周围的雷数是否与周围标示出来 的雷数相等,如果相等则展开周围未标示的雷区。 这样新的雷区展开又触发这个事件,就这样递归下 去,一直蔓延到不可展开的雷区。 三、总体设计 ? 3、布雷 ? (2) 核心算法的实现 ? 整个游戏程序包含3个阶段:布雷、扫雷过程
7、和结果 (并不是操作结果展示,而是在扫雷过程中,玩家通 过与游戏交互后的操作结果展示)。 ? 首先定义雷方块的数据结构,具体描述如下所示。 ? struct ? int num;/*格子当前处于什么状态,1有雷,0已经显 示过数字或者空白格子*/ ? int roundnum;/*统计格子周围有多少雷*/ ? int flag;/*右键按下显示红旗的标志,0没有红旗标 志,1有红旗标志*/ ? Mine1010;然后定义雷方块的状态类别和属性类别。 三、总体设计 ? 3、鼠标事件 ? 鼠标左击事件流程图 ? (1)点击未知区域。 ? (2)是地雷,游戏结束。 ? (3)不是地雷,判断周围地雷数
8、目是否为)不是地雷,判断周围地雷数目是否为0,为0则显则显 示空白格子,并拓展周围格子,不为示空白格子,并拓展周围格子,不为0则显示地雷数。则显示地雷数。 ? 流程图说明:数据的起始和结束用圆角矩形流程图说明:数据的起始和结束用圆角矩形 数据的处理用矩形 表示判断用菱形 数据流向用带方向箭头表示 鼠标左击事件流程图鼠标左击事件流程图 空白格子拓展空白格子拓展 (0,0) (0,1) (0,2) (0,3) (0,4) (0,5) (0,6) (0,7) (0,8) (0,9) (1,0) (1,1) (1,2) (1,3) (1,4) (1,5) (1,6) (1,7) (1,8) (1,9)
9、 (2,0) (2,1) (2,2) (2,3) (2,4) (2,5) (2,6) (2,7) (2,8) (2,9) (3,0) (3,1) (3,2) (3,3) (3,4) (3,5) (3,6) (3,7) (3,8) (3,9) (4,0) (4,1) (4,2) (4,3) (4,4) (4,5) (4,6) (4,7) (4,8) (4,9) (5,0) (5,1) (5,2) (5,3) (5,4) (5,5) (5,6) (5,7) (5,8) (5,9) (6,0) (6,1) (6,2) (6,3) (6,4) (6,5) (6,6) (6,7) (6,8) (6,9)
10、 (7,0) (7,1) (7,2) (7,3) (7,4) (7,5) (7,6) (7,7) (7,8) (7,9) (8,0) (8,1) (8,2) (8,3) (8,4) (8,5) (8,6) (8,7) (8,8) (8,9) (9,0) (9,1) (9,2) (9,3) (9,4) (9,5) (9,6) (9,7) (9,8) (9,9) 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 1 0 0 1 1 1 1 0 0 1 1 1 1 1 1 1
11、 1 2 2 1 1 2 1 2 1 1 1 1 1 1 1 1 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 1 1 1 1 1 1 1 1 0 0 1 1 1 1 2 2 2 2 2 2 1 1 1 1 0 0 1 1 1 1 2 2 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 (0,0) (0,1) (0,2) (0,3) (0,4) (0,5) (0,6) (0,7) (0,8) (0,9) (1,0) (1,1) (1,2) (1,3) (1,4) (1,5) (1,6) (1,7) (1,8) (1,9)
12、 (2,0) (2,1) (2,2) (2,3) (2,4) (2,5) (2,6) (2,7) (2,8) (2,9) (3,0) (3,1) (3,2) (3,3) (3,4) (3,5) (3,6) (3,7) (3,8) (3,9) (4,0) (4,1) (4,2) (4,3) (4,4) (4,5) (4,6) (4,7) (4,8) (4,9) (5,0) (5,1) (5,2) (5,3) (5,4) (5,5) (5,6) (5,7) (5,8) (5,9) (6,0) (6,1) (6,2) (6,3) (6,4) (6,5) (6,6) (6,7) (6,8) (6,9)
13、 (7,0) (7,1) (7,2) (7,3) (7,4) (7,5) (7,6) (7,7) (7,8) (7,9) (8,0) (8,1) (8,2) (8,3) (8,4) (8,5) (8,6) (8,7) (8,8) (8,9) (9,0) (9,1) (9,2) (9,3) (9,4) (9,5) (9,6) (9,7) (9,8) (9,9) 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 1 0 0 1 1 1 1 0 0 1 1 1 1 1 1 1 1 2 2 1 1 2 1 2 1 1 1 1 1 1 1 1 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 湖南省邵阳市双清区春云学校2024年四年级数学第一学期期末学业质量监测试题含解析
- 湖南省湘西土家族苗族自治州龙山县2025届数学三上期末联考模拟试题含解析
- 山东省日照市2023-2024学年高一上学期期末校级联合考试化学试题 含解析
- 淮安市楚州区2024年四上数学期末教学质量检测模拟试题含解析
- 2025年聚合工艺考试100题及答案
- 紧固件 弹簧垫圈 标准型 征求意见稿
- 跨境电商供应链中的知识服务供需匹配模型研究
- 服务细节感动顾客案例服务细节
- 2.2 地形图的判读(教学设计)七年级地理上册同步 高效备课课件(人教版)
- 黄陵县2024-2025学年三上数学期末质量检测试题含解析
- 2024版译林英语七年级上册 Unit3 Integration 2课件
- 2024 入团学习考试题库(含答案)
- RAG技术:人工智能的新篇章
- 初中语文八年级上册 第二单元 写作《学写人物传记》公开课一等奖创新教学设计
- 安全员A证考试题库及答案
- 山西省2024年中考数学试卷【附真题答案】
- 航空法概论智慧树知到期末考试答案章节答案2024年中国民航大学
- CTD申报资料:创新药IND模块一-行政文件和药品信息
- 2024年教师教学能力提升(信息技术应用)水平知识考试题与答案
- 2024年度公司各级安全生产责任制考核细则表
- 《SketchUp三维辅助设计》课件-03 SketchUp基本操作方法
评论
0/150
提交评论