消除类游戏的设计与实现概要设计
更新时间:2024-03-20 01:09:01 阅读量: 综合文库 文档下载
- 消除类游戏的设计重点推荐度:
- 相关推荐
基于s3c2440平台的消除类游戏的
设计与实现 概要设计
总页数 编制 17 正文 14 附录 0 生效日期 2014.11.20 批准
概要设计 版本:1.0.0
修 改 履 历
修改编号 1 2
日期 2014.11.20 2015.5.28 修改人 版本号 VER0.1.0 VER1.0.0 修改内容 初始做成 修改字体
概要设计 版本:1.0.0
目 录
1
文档概述 ............................................................................................................................................................ 1 1.1 1.2 1.3 2
文档目的和范围 .................................................................................................................................... 1 术语/缩略语 ........................................................................................................................................... 1 参考文档 ................................................................................................................................................ 1
模块概述 ............................................................................................................................................................ 1 2.1 2.2 2.3
模块功能定义 ........................................................................................................................................ 1 模块结构 ................................................................................................................................................ 2 模块动作时序 ........................................................................................................................................ 3
3 接口说明 ............................................................................................................................................................ 6 3.1 3.2
数据结构定义 ........................................................................................................................................ 6 函数 ........................................................................................................................................................ 6 3.2.1 3.2.2
模块间接口函数 ........................................................................................................................ 6 模块内接口函数 ...................................................................................................................... 14
概要设计 版本:1.0.0
1 文档概述
1.1 文档目的和范围
该文档主要完成基于s3c2440平台的消除类游戏的设计与实现的概要设计,主要描述各个模块间接口函数的调用关系,结构图,时序图,数据结构的定义,以及接口函数和内部接口函数的定义。
1.2 术语/缩略语
序号 术语/缩略语 1 2 QT s3c2440 说明 一个1991年由奇趣科技开发的跨平台C++图形用户界面应用程序开发框架 手持设备和通用嵌入式应用的集成系统 1.3 参考文档
序号 文档名 1 2 需求分析报告书 QT高级编程 作者 时间 版本 1-1 2014.11.11 VER1.0.0 Mark Summerfield 2011.4 2 模块概述
总体分为三个功能模块,游戏界面处理模块、游戏算法模块和时间分数模块。
2.1 模块功能定义
序号 1 功能点 游戏界面 功能点详细内容 开始游戏进入游戏界面,界面中有开始游戏、退出游戏、帮助等功能键 2 3 4 5 6 7 游戏初始化 消除算法 游戏计分 游戏计时 手势判断 界面刷新 进入游戏后界面中的消除方块随机分配位置 判断是否有三个或三个以上的相同方块在同一行或同一列 消除方块后会得到一定的分数 游戏开始后会给出一定的时间限制,消除方块后会有时间奖励 根据手势判断方块移动的方向 方块消除后空白的地方会由上面的方块补齐 1
概要设计 版本:1.0.0
2.2 模块结构
图表 1 模块结构图
模块名称 WindowInit RePaint GameInit MouseControl Ranking Hint Time Score CanChange CanClear 模块类型 接口 接口 接口 接口 接口 接口 接口 接口 内部模块 内部模块 概要说明 游戏界面初始化 游戏界面刷新 游戏数据初始化 鼠标行为处理 游戏排名 游戏提示 计时 计分 随机生成游戏图片 判断两张图片是否可以交换 判断是否可以消除 CreatePicture 内部模块 2
概要设计 版本:1.0.0
2.3 类图
QLabelQMainWindowScoreListMainWindowQWidgetGameWindowQPushButtonQTimer
图表 2 类图
类MainWindow:
图表 3 类MainWindow
该类是游戏的主类,继承于类QMainWindow,控制着游戏的主界面的显示和主界面上各个控件的功能。由上图可以看出主界面中的三个按钮分别实现三个不同的功能。
类ScoreList:
图表 4 类ScoreList
该类为游戏成绩的显示界面类,继承类QWidget,负责显示游戏中的前五名的成绩信息。
3
概要设计 版本:1.0.0
类GameWindow:
图表 5 游戏界面类
该类是游戏实现各个功能的一个重要的类,继承于类QWidget,控制着游戏实现的各个功能。该类比较详细的实现了整个游戏的细节部分,如对鼠标点击坐标的获取,消除的判断,游戏开始函数的实现,游戏结束的判断,重新开始游戏功能的实现以及游戏智能提示功能的实现等等。
4
概要设计 版本:1.0.0
2.4 模块动作时序
MainWindowGameWindowQTimerQPushButtonScoreListQLabel1:开始游戏2:游戏初始化3:初始化时间对象4:返回游戏时间5:游戏暂停6:计时器暂停7:游戏控制8:点击按钮9:实现按钮功能10:游戏结束11:进入排行榜界面12:显示信息13:进入排行榜界面14:显示信息
图表 6 时序图
在本次项目中程序的运行主要由paintEvent、timerEvent和mouseEvent来主导,timerEvent在整个游戏运行过程中主要有两个作用,实现游戏时间倒计时和图片切换实现动画效果;鼠标的动作识别和处理通过mouseEvent事件来进行,mouseEvent将处理的的结果反馈给游戏控制对象进行图片消除。整个过程中修改界面图片都是通过调用rePaint函数来触发paintEvent来进行窗口重绘,界面中的背景以及游戏图片的贴图都是在paintEvent中实现的。
5
概要设计 版本:1.0.0
3 接口说明
3.1 数据结构定义
#define ROWCOUNT 6 //行数 #define COLCOUNT 8 //列数
#define PHWIDTH 20 //图片宽和高 #define PHHEIGHT 20
#define SUMPH 10 //图片种类
3.2 函数
3.2.1 模块间接口函数
3.2.1.1 WindowInit
函数名 文件名 功能概要 记述形式 参数 类型 void 返回值 变量名 - 类型 值 bool true false 详细说明 游戏界面初始化,随机显示各种类图片 使用注意事项 无 I/O - 说明 成功 失败 说明 - WindowInit dialog.cpp 游戏界面初始化 bool WindowInit();
6
概要设计 版本:1.0.0
3.2.1.2 RePaint
函数名 文件名 功能概要 记述形式 参数 类型 QPainter 返回值 变量名 painter 类型 值 void - - 详细说明 用于窗口重绘,每次界面刷新则调用该函数 使用注意事项 无 I/O - 说明 - - 说明 - RePaint dialog.cpp 界面刷新 void RePaint(QPainter *painter);
7
概要设计 版本:1.0.0
3.2.1.3 GameInit
函数名 文件名 功能概要 记述形式 参数 类型 void 返回值 变量名 - 类型 值 bool true false 详细说明 游戏开始时数据的初始化包括图片地图的初始化 使用注意事项 无 I/O - 说明 成功 失败 说明 - GameInit control.cpp 游戏数据初始化 bool GameInit();
8
概要设计 版本:1.0.0
3.2.1.4 MouseControl
函数名 文件名 功能概要 记述形式 参数 类型 void 返回值 变量名 - 类型 值 void - - 详细说明 根据鼠标动作进行相应处理 使用注意事项 无 I/O - 说明 - - 说明 - MouseControl control.cpp 鼠标动作处理 void MouseControl();
9
概要设计 版本:1.0.0
3.2.1.5 Ranking
函数名 文件名 功能概要 记述形式 参数 类型 QString 返回值 详细说明 变量名 filename 类型 值 显示和保存排名信息 使用注意事项 无 true false I/O - bool 成功 失败 说明 文件路径 说明 Ranking control.cpp 显示文件中记录的排名信息以及保存排名信息 bool Ranking(QString filename);
10
概要设计 版本:1.0.0
3.2.1.6 Hint
函数名 文件名 功能概要 记述形式 参数 类型 int 返回值 变量名 array 类型 值 void - - 详细说明 提示可交换的图片 使用注意事项 无 I/O - 说明 - - 说明 储存图片信息的数组 Hint contro.cpp 提示可交换的图片 void Hint(int array[][MAP_Y]);
11
概要设计 版本:1.0.0
3.2.1.7 Time
函数名 文件名 功能概要 记述形式 参数 类型 void 返回值 变量名 - 类型 值 bool true false 详细说明 倒计时处理判断时间是否用完,如果用户则游戏结束 使用注意事项 无 I/O - 说明 时间还有剩余 时间用完游戏结束 说明 - Time control.cpp 计时处理 bool Time();
12
概要设计 版本:1.0.0
3.2.1.8 Score
函数名 文件名 功能概要 记述形式 参数 类型 int 返回值 变量名 score 类型 值 bool true false 详细说明 在指定的位置使指定的字符有闪烁效果。 使用注意事项 无 I/O - 说明 超过排行榜最低分 没有超过排行榜最低分 说明 本次移动所得分数 Socre control.cpp 计分处理 bool Score(int score);
13
概要设计 版本:1.0.0
3.2.2 模块内接口函数
3.2.2.1 CreatePicture
函数名 文件名 功能概要 记述形式 参数 类型 void 返回值 变量名 - 类型 值 bool true false 详细说明 随机获取图片种类写入储存图片信息的数组中 使用注意事项 无 I/O - 说明 获取成功 获取失败 说明 - CreatePicture control.cpp 随机获取图片种类写入储存图片信息的数组中 bool CreatePicture();
14
概要设计 版本:1.0.0
3.2.2.2 CanChange
函数名 文件名 功能概要 记述形式 参数 类型 QPoint QPoint 返回值 变量名 point1 point2 类型 值 bool true false 详细说明 判断两张图片是否可以交换 使用注意事项 无 I/O - - 说明 可以交换 不能交换 说明 第一张图片坐标 第二种图片坐标 CanChange control.cpp 判断两张图片是否可以交换 bool CanChange(QPoint point1,QPoint point2);
15
概要设计 版本:1.0.0
3.2.2.3 CanClear
函数名 文件名 功能概要 记述形式 参数 类型 void 返回值 变量名 - 类型 值 bool true false 详细说明 判断图片是否满足消除条件 使用注意事项 无 I/O - 说明 可以消除 不能消除 说明 - CanClear Control.cpp 判断图片是否满足消除条件 bool CanClear();
16
正在阅读:
消除类游戏的设计与实现概要设计03-20
广东惊现谢安母亲庄太君墓01-28
七五普法工作自查报告(共5则范文)08-22
2018届高三 考试理综试卷(含答案)09-21
有机化学复习题(1)05-18
搞笑对联02-18
IPV6在电力系统的应用分析(华三通信) - 图文09-23
李长进董事长、党委书记在2012年工作会议上的讲话(审议稿)06-30
论文 赵志强 矿山测量在煤矿中的应用03-11
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 设计
- 概要
- 消除
- 实现
- 游戏
- 保持共产党员先进性教育活动范文
- 课程简报(第二期) 2 - 图文
- 别墅建筑装饰工程施工方案 - 图文
- 2016年4月《管理经济学》总复习资料(修改)
- 宣城市公开选拔县科级领导干部考试真题附答案
- 2016高考复习之现代文阅读题八大题型汇总
- 东财《国际法》在线作业(随机)全及答案
- 应急救援的典型案例
- 陕西省西安市第一中学2018-2019学年高二数学上学期10月月
- 2013临泽一中高二生物理科尖奥班期中考试试题
- GCAZX智能系列充电机
- 建恒身份及访问管理系统简易版操作手册
- 抗菌药物临床应用指导原则试题及答案(2016医博士)
- 小学四到六年级数学上册听课记录
- 甘肃省金塔四中七年级语文下册 第一单元复习题(无答案) 北师大
- 非机动车一方付全责的情况下
- 教师培训心得-新聘教师培训心得体会
- 《工程新业态发展和应用》答案解析
- 基于ANSYS的齿轮静力学分析及模态分析 - 图文
- 机房管理系统毕业设计