扫雷小游戏课程设计

  • 格式:docx
  • 大小:342.70 KB
  • 文档页数:19

下载文档原格式

  / 19
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

西安科技大学

软件工程课程设计报告

题目:扫雷游戏开发

班级:计科0901班

学号: xxxxxxxxxxxx

姓名: xxxxxxx

电话:xxxxxxxxxxxxx

2012年7月

目录

1 绪论 (3)

1.1 选题目的及意义 (3)

1.2 系统概述 (3)

2 可行性研究报告 (4)

3 需求规格说明书 (5)

4 总体设计说明书 (6)

5详细设计说明书 (7)

6 系统实现 (16)

6.1 开发环境 (16)

6.2 关键技术 (16)

6.3 运行结果 (16)

7测试分析报告 (17)

8心得体会 (19)

参考文献

1.绪论

1.1选题目的及意义

随着现在生活节奏的加快,人们在工作学习之余需要一个轻松娱乐的放松环境。因此我编写此软件的目的,一方面作为初学者来了解java环境下的小程序开发,另一方面使用户能在娱乐休闲的同时拓展思维能力。扫雷是单人计算机游戏。游戏的用户界面由小方格组成的战场构成。当游戏开始时,计算机将固定的地雷数随机的放到战场的方格。此游戏还允许玩家指定战场中的地雷数。

参考Windows 操作系统提供的扫雷游戏,改进扫雷游戏程序,增加以下功能:在主界面中添加一个菜单栏,菜单栏中包括游戏和帮助两个菜单,其中游戏菜单中设置初级、中级、高级、自定义、声音、扫雷英雄榜这几个菜单项,帮助菜单中设置游戏规则和制作人员两个菜单项。

背景说明:

a.软件名称:扫雷

b.用户:所有扫雷游戏爱好者

1.2 系统概述

1.2.1扫雷游戏的基本要求

Windows 2000/XP系统提供的扫雷游戏是一个很有趣的游戏。本章的课程设计使用Java语言编写一个与其类似的扫雷游戏。具体要求如下:

(1) 扫雷游戏分为初级、中级和高级三个级别。单击游戏菜单可以选择“初级”、“中级”和“高级”。

(2) 选择级别后将出现相应级别的扫雷区域,这时用户使用鼠标左键单击‘“开始”便启动计时器。

(3) 用户要揭开某个方块,可左键单击它。若所揭方块下有雷,用户便输了这一局,若所揭方块下无雷,则显示一个数字,该数字代表方块的周围的8个方块中共有多少颗雷。

(4) 如果用户认为某个方块下埋着雷,单击右键可以在方块上标识一个用户认为是雷的图标,即给出一个扫雷标记。用户每标记出一个扫雷标记(无论用户的标记是否正确),程序将显示的剩余雷数减少一个。

(5)当用户点中雷时,将有“你输了”的提示出现,胜利时,将有“你赢了”的提示出现。

1.2.2 需实现的主要功能

用户可以自定义级别并且可以任意输入雷数;

具有计时功能,即显示用户完成移动盘子所花费的时间。

2 可行性研究报告

2.1 技术可行性分析

本程序是java平台下的windows应用程序,总体规模较小适合个人单独完成。开发人员是和软件专业相关的学生,有软件开发方面的基础,有能力完成该程序的设计及开发工作。

2.2 时间和资源可行性分析

(1)本程序按预定计划进行,有足够的时间完成

(2)预算中的人员可全天候的进行软件开发工作

(3)按照课程设计时间及安排,计划如下:

a.课程设计之前:查阅资料,确定题目;

b. 搜集资料,调研分析。

c.系统分析与设计。

d.系统实现/测试。

e.整理文档,成果验收,提交设计报告。

所以有充分的时间进行软件开发工作,所以硬件方面的资源可得到满足。

2.3软件要实现的功能及可行性

详情见需求分析

3.1需求分析

3.1.1功能需求:

3.1.2运行环境需求:基于J2SE平台的SDK1.6版本jdk1.6.0_31的java程序开发环境

3.2硬件需求:

a.处理器型号:奔腾III及同等型号以上处理器

b.内存容量:512MB以上内存(可运行数据库管理系统)

c.外存容量:5G以上硬盘空间

d.联机或脱机:脱机

e.输入及输出设备的型号和数量:鼠标、彩色显示器

3.3软件需求:

编译程序:jdk1.6.0_31

3.4控制需求:使用全鼠标控制

在设计扫雷游戏时,需要编写9个Java源文件:MineGame.java、MineArea.java、Block.java、BlockView.java、LayMines.Java、ShowRecord.java、voiceShow.java、userDefine.java、ruleShow

扫雷游戏除了需要编写上述java 源文件所给出的类外,还需要Java 系统提供的一些重要的类,如File、JButton、和Jlabel等类。扫雷游戏所用到的一些重要的类以及之间的组合关系如下图所示:

图4-1 类之间的组合关系

5.1MineGame类

5.1.1 UML类图

MineGame类是javax.swing 包中Jframe的一人子类,并实现了ActionListener接中,标明该类的主要成员变量和方法的UML图如下图所示:

图5-1-1 MineGame类的UML图

以下是UML图中有关数据和方法的详细说明。

1)成员变量

· bar和fileMenu提供菜单操作,单击游戏菜单中的选项为“初级”“中级”“高级”“自定义”“背景声音”“退出”“游戏规则”等

·MineArea 是扫雷区域,提供有关扫雷的主要功能。

·userdefine负责用户自定义功能

·VoiceShow 负责背景音乐功能

·ruleshow负责显示游戏规则功能

2)

·MineGame()是构造方法,负责完成窗口的主要功能

·actionPerformed(ActionEvent)方法是MineGame类实现的ActionLister接口中的方法,该方法负责执行菜单发出的有关命令。用户选择菜单项可以触发ActionEvent事件,导致actionPerformed(ActionEvent)方法执行相应的操作,例如将mineAreaw创建的雷区设置