消除类游戏的设计与实现设计_第1页
消除类游戏的设计与实现设计_第2页
消除类游戏的设计与实现设计_第3页
消除类游戏的设计与实现设计_第4页
消除类游戏的设计与实现设计_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 基于s3c2440平台的消除类游戏的 设计与实现概要设计总页数17正文14附录0生效日期2014.11.20编制批准概要设计 版本:1.0.0修 改 履 历修改编号日期修改人版本号修改内容12014.11.20VER0.1.0初始做成22015.5.28VER1.0.0修改字体目 录1文档概述11.1文档目的和范围11.2术语/缩略语11.3参考文档12模块概述12.1模块功能定义12.2模块结构22.3模块动作时序33接口说明53.1数据结构定义53.2函数63.2.1模块间接口函数63.2.2模块内接口函数141 文档概述1.1 文档目的和范围该文档主要完成基于s3c2440平台的消除类

2、游戏的设计与实现的概要设计,主要描述各个模块间接口函数的调用关系,结构图,时序图,数据结构的定义,以及接口函数和内部接口函数的定义。1.2 术语/缩略语序号术语/缩略语说明1QT一个1991年由奇趣科技开发的跨平台C+图形用户界面应用程序开发框架2s3c2440手持设备和通用嵌入式应用的集成系统1.3 参考文档序号文档名作者时间版本1需求分析报告书2014.11.11VER1.0.02QT高级编程Mark Summerfield2011.41-12 模块概述总体分为三个功能模块,游戏界面处理模块、游戏算法模块和时间分数模块。2.1 模块功能定义序号功能点功能点详细内容1游戏界面开始游戏进入游戏

3、界面,界面中有开始游戏、退出游戏、帮助等功能键2游戏初始化进入游戏后界面中的消除方块随机分配位置3消除算法判断是否有三个或三个以上的相同方块在同一行或同一列4游戏计分消除方块后会得到一定的分数5游戏计时游戏开始后会给出一定的时间限制,消除方块后会有时间奖励6手势判断根据手势判断方块移动的方向7界面刷新方块消除后空白的地方会由上面的方块补齐2.2 模块结构图表 1 模块结构图模块名称模块类型概要说明WindowInit接口游戏界面初始化RePaint接口游戏界面刷新GameInit接口游戏数据初始化MouseControl接口鼠标行为处理Ranking接口游戏排名Hint接口游戏提示Time接口

4、计时Score接口计分CreatePicture内部模块随机生成游戏图片CanChange内部模块判断两张图片是否可以交换CanClear内部模块判断是否可以消除2.3 类图图表 2 类图类MainWindow:图表 3 类MainWindow该类是游戏的主类,继承于类QMainWindow,控制着游戏的主界面的显示和主界面上各个控件的功能。由上图可以看出主界面中的三个按钮分别实现三个不同的功能。类ScoreList:图表 4 类ScoreList该类为游戏成绩的显示界面类,继承类QWidget,负责显示游戏中的前五名的成绩信息。类GameWindow:图表 5 游戏界面类该类是游戏实现各个功

5、能的一个重要的类,继承于类QWidget,控制着游戏实现的各个功能。该类比较详细的实现了整个游戏的细节部分,如对鼠标点击坐标的获取,消除的判断,游戏开始函数的实现,游戏结束的判断,重新开始游戏功能的实现以及游戏智能提示功能的实现等等。2.4 模块动作时序图表 6 时序图在本次项目中程序的运行主要由paintEvent、timerEvent和mouseEvent来主导,timerEvent在整个游戏运行过程中主要有两个作用,实现游戏时间倒计时和图片切换实现动画效果;鼠标的动作识别和处理通过mouseEvent事件来进行,mouseEvent将处理的的结果反馈给游戏控制对象进行图片消除。整个过程中

6、修改界面图片都是通过调用rePaint函数来触发paintEvent来进行窗口重绘,界面中的背景以及游戏图片的贴图都是在paintEvent中实现的。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函数名WindowInit文件名dialog.cpp功能概要游戏界面初始化记述形式bool WindowInit();参数类

7、型变量名I/O说明void-返回值类型bool说明值true成功false失败详细说明游戏界面初始化,随机显示各种类图片使用注意事项无3.2.1.2 RePaint函数名RePaint文件名dialog.cpp功能概要界面刷新记述形式void RePaint(QPainter *painter);参数类型变量名I/O说明QPainterpainter-返回值类型void说明值-详细说明用于窗口重绘,每次界面刷新则调用该函数使用注意事项无3.2.1.3 GameInit函数名GameInit文件名control.cpp功能概要游戏数据初始化记述形式bool GameInit();参数类型变量名I

8、/O说明void-返回值类型bool说明值true成功false失败详细说明游戏开始时数据的初始化包括图片地图的初始化使用注意事项无3.2.1.4 MouseControl函数名MouseControl文件名control.cpp功能概要鼠标动作处理记述形式void MouseControl();参数类型变量名I/O说明void-返回值类型void说明值-详细说明根据鼠标动作进行相应处理使用注意事项无3.2.1.5 Ranking函数名Ranking文件名control.cpp功能概要显示文件中记录的排名信息以及保存排名信息记述形式bool Ranking(QString filename);

9、参数类型变量名I/O说明QStringfilename-文件路径返回值类型bool说明详细说明值true成功false失败显示和保存排名信息使用注意事项无3.2.1.6 Hint函数名Hint文件名contro.cpp功能概要提示可交换的图片记述形式void Hint(int arrayMAP_Y);参数类型变量名I/O说明intarray-储存图片信息的数组返回值类型void说明值-详细说明提示可交换的图片使用注意事项无3.2.1.7 Time函数名Time文件名control.cpp功能概要计时处理记述形式bool Time();参数类型变量名I/O说明void-返回值类型bool说明值t

10、rue时间还有剩余false时间用完游戏结束详细说明倒计时处理判断时间是否用完,如果用户则游戏结束使用注意事项无3.2.1.8 Score函数名Socre文件名control.cpp功能概要计分处理记述形式bool Score(int score);参数类型变量名I/O说明intscore-本次移动所得分数返回值类型bool说明值true超过排行榜最低分false没有超过排行榜最低分详细说明在指定的位置使指定的字符有闪烁效果。使用注意事项无3.2.2 模块内接口函数3.2.2.1 CreatePicture函数名CreatePicture文件名control.cpp功能概要随机获取图片种类写入储存图片信息的数组中记述形式bool CreatePicture();参数类型变量名I/O说明void-返回值类型bool说明值true获取成功false获取失败详细说明随机获取图片种类写入储存图片信息的数组中使用注意事项无3.2.2.2 CanChange函数名CanChange文件名control.cpp功能概要判断两张图片是否可以交换记述形式bool CanChange(QPoint point1,QPoint point2);参数类型变量名I/O说明QPointpoint1-第一张图片坐标QPointpoint2-第二种图片坐标返回值类型bool说明值true可以交换false不能

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论