1、计算机科学与技术系 课程设计报告 200132014 学年第一学期 课程课程 JAVA 语言基础 课 程 设 计 名 称课 程 设 计 名 称 扫雷游戏 学生姓名学生姓名 学号学号 专业专业班级班级 网络工程 1 班 指导教师指导教师 2013 年 9 月 目目 录录 第一章 设计内容及要求 1 1.1 扫雷游戏的基本要求 1 1.2 游戏需要实现的主要功能 1 第二章 需求分析 2 2.1 扫雷游戏界面设计 . 2 2.2 雷区的设计 2 2.3 音效的设计 3 2.4 扫雷英雄榜的设计 3 第三章 总体设计 5 3.1 总体功
2、能图 5 3.2 总体流程图 本文来自毕设资料网()5 第四章 主要功能设计流程 6 4.1 雷区设计流程图. 6 4.2 音效设计流程图. 6 4.3 英雄榜设计流程图. 7 第五章 主要功能设计流程 8 5.1 类之间关系图. 8 5.2 程序运行效果图. 8 5.2.1 游戏登录界面 8 5.2.2 游戏菜单界面 9 5.2.3 游戏运行界面 10 5.2.4 游戏英雄榜界面 12 第六章 总结 13 参考文献 14 附录 15 1 第一章第一章 设计内容及要求设计内容及要求 1.11.1 扫雷游戏的基本要求扫雷游戏的基本要求 当前各种游戏层出不穷,因为
3、游戏的开发成本非常大,所以游戏的开发具有 一定的风险性,但是一些小游戏的开发成本具有成本小,编写简单的优势,所以 这些小游戏在游戏开发中也占有一席之地。在这类小游戏中包括益智类游戏,它 以画面精美、游戏方法简单等特点得到大家的认可。成为人们在工作之余不可或 缺的好伙伴。针对这种情况我选择了扫雷游戏该课题作为我的课程题目。 Windows XP 和 Windows 7 系统提供的扫雷游戏是一个很有趣的游戏。本次 课程设计的主要任务是使用 JAVA 语言编写一个与其类似的扫雷游戏。具体要求 如下: 1、扫雷游戏分为初级、中级和高级三个级别,同时扫雷英雄榜存储每个级 别的最好成绩, 即挖出全部的地雷
4、且用时最少者。 单击游戏菜单可以选择 “初级” 、 “中级”和“高级”或“查看英雄版” 。 2、选择级别后将出现相应级别的扫雷区域,这时用户使用鼠标左键单击雷 区中任何一个方块便启动了计时器。 3、用户要揭开某个方块,可单击它。若所揭方块下有雷,用户便输了这一 局,若所揭方块下没有雷,则显示一个数字,该数字代表此方块周围的 8 个方块 中共有多少颗雷。 4、如果用户认为某个方块下埋着雷,单击右键可以在方块上标识一个用户 认为是雷的图标,即给出一个扫雷标记。用户每标记出一个扫雷标记(无论用户 的标记是否正确),窗口左上角的雷数计数器将会减少一个。 5、扫雷胜利后(用时最少者),程序弹出保存成绩的
5、对话框。 6、用户如果遇到疑问的方块,可以勾选游戏菜单下的标记选项卡(或者用 快捷键 Alt+G 然后点击 M)即可标记该可疑方块,此时双击右键并可出现“?” 标记。另有颜色选项,当用户选中该项时,游戏将以最低图像像素来显示。 7、 如果用户需要使用提示声, 可选中声音选项, 此时将听到计时的咔嗒声。 当用户点中雷时,将有爆炸声产生;胜利时,将有凯旋的旋律播放,此时企鹅出 现欢悦表情。 1.21.2 游戏需要实现的主要功能游戏需要实现的主要功能 1、用户可以自定义级别并且可以任意输入雷数; 2、具有计时功能,既显示用户完成所有扫雷任务所需要的时间; 3、自动保存扫雷英雄榜。 2 第
6、二章第二章 需求分析需求分析 2.1 2.1 扫雷扫雷游戏游戏界面设计界面设计 系统的整体布局为:CardLayout 布局,采用了菜单、按钮、面板等组件,菜 单主要包括开始、选择级别、标记、扫雷英雄榜、退出等选项。 2.2 2.2 雷区的设计雷区的设计 MineArea 类是 java.swing 包中 Jpanel 容器的子类,实现了 ActionListener 和 MouseListener 接口,所创建的对象:mineArea 是 MineGame 类中最重要的成员 之一,作为一个容器添加到 MineGame 窗口的中心。其中 MineArea 类的主要成 员变量、方法以及和 MineGame 类之间组合关系的 UML 图如图 2-1 所示。 JPanelActionListenerMouseListener MineArea row,colum,mineCount,markMount: in block: Block blockView: BlockView showTime: JTextField shouMarkedMineCount: JTextField lay: LayMines record: Record reStart: JButton time