收藏 分销(赏)

MFC专业课程设计方案报告贪吃蛇.doc

上传人:a199****6536 文档编号:2864432 上传时间:2024-06-07 格式:DOC 页数:6 大小:164.54KB 下载积分:6 金币
下载 相关 举报
MFC专业课程设计方案报告贪吃蛇.doc_第1页
第1页 / 共6页
MFC专业课程设计方案报告贪吃蛇.doc_第2页
第2页 / 共6页


点击查看更多>>
资源描述
MFC课程设计汇报 MFC实现贪食蛇小游戏 1.需求分析,系统功效 贪吃蛇游戏需求分析 贪吃蛇游戏作为一款经典小游戏,版本多样,娱乐性也很高,适合在闲暇时放松心神。而且可在多个平台上实现,程序简单易懂,很适合MFC初学者学习制作。 贪吃蛇游戏功效介绍 一条蛇在密闭围墙内,在围墙内随机出现一个食物,经过按键盘上四个方向键控制蛇向上接着又出现食物,等候被蛇吃掉,假如蛇在移动过程中,撞到墙壁或身体交叉蛇头撞到自己身体游戏结束。而且能够在游戏开始前自由选择游戏难度,游戏过程中可暂停游戏,并有积分系统,且积分每满一定值,蛇运行速度会逐步增加。 2. 分工情况 为在设计过程中实现小组组员能力最大化,进行了以下分工: 1、 张施展:负责前期系统需求分析,系统结构设计,图标设计,界面美化调整工作,和课程设计汇报撰写。 2、 张清扬:负责关键程序编写工作,菜单设计及代码编写工作。 3、 资料搜集,程序调试共同进行。 3. 程序及系统结构设计 贪吃蛇程序设计思绪 1、 方案讨论 贪吃蛇游戏作为一款经典休闲类小游戏,深受同学喜爱,所以我们将贪吃蛇作为此次MFC课程设计题目。在最初方案中,我们倾向于单文档(SDI)形式设计,但最初尝试全部因缺乏部分文件等情况而失败。考虑到windows中自带小游戏大多采取对话框形式,为能愈加好和同学们使用习惯相一致,最终决定使用对话框(Dialogue)形式。 2、 数据结构 在数据结构选择,我们选择了链表,链表含有用多少空间就开多少空间优点,使程序实施更稳定,高效。 游戏控制模块框 开始游戏 暂停游戏 退出游戏 继续游戏 游戏控制模块 函数组员 void InitSnake() 设置初始时蛇和果子位置,及蛇头和一节蛇身运动 voidMoveSnake() 控制蛇运动状态 void AddSnake() 蛇取得食物,长度增加 void DrawSnake() 确定和画出蛇身,蛇头大小 Void UnDrawSnake() 蛇每向前运动一节需要重绘蛇及除去蛇运动轨迹 void DrawFood() 随机在指定区域出现果子 intGameOver() 当蛇撞到墙壁或自己游戏结束 InitSnake() DrawSnake() 设置自动移动定时器和增加食物定时器 游戏开始 CSnakeDlg::OnPaint() DrawFood () 桌面初始化 初始化蛇头和蛇移动方向 随机初始化一个食物到桌面 SetTimer() CTable::AddFood() 蛇移动 蛇吃食? 蛇增加 继续? 蛇死亡? 桌面上随机生成食物 MoveSnake () AddSnake() 退出程序 是 是 否 否 OnGameStart() GameOver() TB_STATE_SBLOCK 贪吃蛇程序整体间调用关系 4. 软件测试汇报 游戏初始界面 菜单栏 记分牌 操作说明 运动区域 游戏运行界面游戏结束界面 出现问题 1、 问题:蛇运动区域和边框不匹配,造成蛇运动出边框或未抵达边框而游戏结束。 原因:相关数据不匹配。 处理:重新对程序中矩形框绘制函数数据进行修改,并修改蛇运动边界判定条件。 2、 问题:食物出现在边框外,造成游戏无法进行。 原因:控制事物出现随机函数出现问题,随机坐标超出蛇运动区域。 处理:重新计算边界条件,修改随机函数rand()%x中x值。 3、 问题:记分牌有时会出现记分错误。 原因:尚不明确。 参考书籍: 1)C++程序设计实践教程第2版吴乃陵李海文高等教育出版社 2)深入浅出MFC第2版候俊杰华中科技大学出版社 3)Visual C++从入门到实践葛亮清华大学出版社
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服