下载此文档

贪吃蛇小游戏实验报告[.doc


文档分类:IT计算机 | 页数:约11页 举报非法文档有奖
1/11
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/11 下载此文档
文档列表 文档介绍
软件设计报告
学院:
华北电力大学科技学院
专业班级:
软件10K1
学生姓名:
张飞
学生学号:
101909020122
指导教师:
乔玲玲
提交时间:

成绩:
设计题目: 贪吃蛇
目录
一. 需求分析
二. 概要设计
三. 详细设计
四. 心得体会
一. 需求分析


利用Microsoft Visual C++制作一个贪吃蛇的小游戏,要求:
应用MFC单文档制作
能够记录游戏成绩
可根据玩家要求设置游戏速度(级别):初级,中级,高级
可以根据个人喜好更换背景图片,食物图片,障碍物图片,结束图片等

贪吃蛇是家喻户晓的益智类小游戏,选择这个题目一是为了将自己的所学知识加以运用,二是一直以来贪吃蛇这个游戏就深深地吸引着我们,它的制作方法对于以前的我们而言都是很神秘的。我们希望通过自己的所学知识把它剖析开来,真真正正的了解它的本质和精髓。虽然我们的编程能力不是很强,但是我们有信心,在这次学习中我们将从实践和实际的项目中提高自己的编程能力。因此我们选定了这个题目。

本程序采用Microsoft Visual C++。VisualC++++编程工具,平台的集成开发环境,但由于其良好的界面和可操作性,加上支持标准C/C++规范,但仍有相当多的编程人员使用VisualC++。

本程序经过调试,可以在XP系统下编译运行,也可以在Vista下运行,界面稍有不同,但不影响运行结果。
二. 概要设计


根据分析,贪吃蛇这个程序一共要实现如下几个功能,包括游戏方面开始游戏、停止游戏,设置游戏级别(速度),设置图片等。具体的程序结构如下面的图1-1所示。
贪吃蛇
游戏开始
游戏设置
游戏结束
开始
初级
中级
高级
结束
图2-1 贪吃蛇结构图

根据分析后的贪吃蛇结构设计出相应的贪吃蛇流程。贪吃蛇的内容主要包括: 游戏开始,随机出现食物。
载入游戏并初始化
判断是否开始
蛇开始移动
根据键盘控制蛇移动方向
判断蛇头和食物的坐标是否重合
随机生成下一个食物
判断蛇头和自身及墙、毒果是否重合
游戏结束
设置菜单
选择游戏级别
判断选择级别
初级
中级
高级
退出






图2-2 贪吃蛇流程图
三. 详细设计

根据程序的结构,将贪吃蛇需要实现的功能细化成为相应的函数。

主函数:
void StartGame() //开始游戏
void GameAreaDraw(HDC hdc) //绘制游戏空间,包括空地,水果和毒果等
void SheelDraw(HDC hdc) //绘制墙,白色底平面,绘制分数板,绘制分数打印墙
蛇的函数:
CSnake::CSnake(int x_pos,int y_pos,int len) //蛇的构造函数
int CSnake::ChangeDirect(MoveState d) //改变蛇的运动方向
void CSnake::Move() //保存蛇身体各部分的形状、根据新旧状态特性取正确的状态
void CSnake::AddBody(int n) //保存位置、保存蛇的状态信息、创建并初始化增长后的蛇的存储数据空间
void CSnake::SetHeadPos(int x,int y) //设置蛇头的位置
void CSnake::Initial() //蛇的初始化(坐标位置、运动状态、位图显示状态
桌面函数:
CTable::CTable() // 桌面的构造函数
void CTable::InitialTable(int w,int h) //初始化桌面函数
bool CTable::AddBlock(int x,int y) // 添加障碍物
bool CTable::AddFood(int x,int y) // 添加食物
bool CTable::ClearFood(int x,int y) // 清除食物
CSnake *CTable::GetSnake() // 获得蛇
int CTable::GetData(int x,int y) // 活得数据
void CTable::SnakeMove() // 蛇的运动


贪吃蛇游戏的游戏界

贪吃蛇小游戏实验报告[ 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数11
  • 收藏数0 收藏
  • 顶次数0
  • 上传人yunde113
  • 文件大小0 KB
  • 时间2014-08-04