- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于VC++的游戏“贪吃小龙”的设计和实现
内容提要:
“贪吃蛇”游戏是一个经典的游戏,它因操作简单、娱乐性强而广受欢迎。我模仿了“贪吃蛇”做了一个贪吃小龙的游戏。本文基于MFC技术和VC++6.0开发环境,开发了一个操作简单、界面美观、功能较齐全的“贪吃小龙”游戏。整个游戏程序分为三个功能模块,六个基本功能,实现了游戏的暂停、继续、计录当前分数、记录最高分、重新开始、退出、设置游戏级别、游戏规则等。通过本游戏的开发,达到学习MFC技术和熟悉软件开发流程的目的。
一 系统描述
1.1 本设计的目的和意义
贪吃蛇游戏一款非常经典的手机游戏
2.2需求分析
2.2.1 用户的特点
游戏开发成功后,最终用户为各个年龄段的人群,用户范围相当广泛。本游戏友好的用户界面,在可使用性方面,要求各个功能实现简单,操作方便,系统处理正确;整个恢复性能好,速度快,以确保可使用性好。另外,还要求的可扩展性、可维护性、可移植性良好。
2.3.3 游戏主界面模块
游戏界面主要包括游戏的视图界面(游戏当前的分数的显示和更新、贪吃小龙的显示、食物的显示)、功能菜单的显示,对话框的界面,游戏界面主界面的主要结构图如图3所示。
2.3.4 游戏控制模块
游戏控制模块主要通过主界面上的菜单来控制游戏的重新开始、游戏的暂停、游戏的继续、游戏的退出、查看最高分、设置龙速度等功能。在这个模块中,需要给各个菜单选加入代码,来对上述的功能加以进一步的实现。
游戏控制模块的主要框架如图4所示。
游戏开始控制:单击“游戏重新开始”菜单,游戏画布即有移动的贪吃蛇出现,游戏重新开始。
游戏暂停控制:单击“暂停游戏”菜单,游戏暂停。
游戏继续控制:单击“游戏继续”菜单,游戏继续。
游戏速度控制:单击“游戏级别”菜单,设置游戏速度。
游戏最高分查看:单击“最贪吃分数”,显示游戏最高分。
游戏退出控制:单击“退出游戏”按钮,退出该游戏。
2.3.5 类模块设计
2.3.5.1类模块之间关系
通过对功能要求的分析,将贪吃蛇游戏功能划分为6个类模块,他们的关系如图5所示。
2.3.6 各类模块设计概要
CMainFram类
该类MFC应用程序的主框架类。该类用来创建游戏的主框架界面,但是游戏编写中隐藏了主窗口的显示。
CPROGRAM1View类
该类为游戏视图类,设置随机块的位置移动以及分数更新判断游戏是否出界,以及出界后的处理,设置方向的更新。设置初始化的和运行方向,得到坐标,设置坐标以及判断运行方向相同或相反方向的。类类主要包括随机的显示更新、进行中和游戏结束时的分数更新和游戏图形区域界面的清除控制的移动和转向,以便于覆盖随机块
2.4.2 类模块程序流程图
CMainFram类
CHelptDlg类
CAboutDlg类
CPROGRAM1View类
DRAGON类
2.4.3 类模块具体设计
MainFrm.cpp程序
CMainFram类是从CFrameWnd派生而来的,用来管理应用程序的主框架窗口,它是应用程序中负责创建和控制菜单、工具菜单和状态栏等界面元素最主要的类。
表1 CMainFram类成员变量表
成员变表
变量名称 变量属性 说明 CStatusBar Protected 状态栏变量 CToolBar Protected 工具栏变量
成员方法
表 2 CMainFram类成员方法
方法名称 方法功能 备注 PreCreateWindow() 创建了窗口类的一个实例 cs.style=WS_POPUPWINDOW|WS_DLGFRAME;
PROGRAM1View.cpp程序
PROGRAM1View类对象代表了应用程序的窗口客户区,是文档信息的一个显示窗口,它是用户与程序之间信息交互的桥梁,用户对数据的编辑和修改需要通过键盘或鼠标进行,这些消息都是由视图类接受后再反映到文档类.。设计如下:
成员变量表
表3 PROGRAM1View类程序成员变量表
变量名称 变量属性 说明 theDRAGON DRAGON 小龙类 Food BOOL 标志是否有食物 FoodX,FoodY int 食物出现的坐标 Score int 游戏的当前分数 stop int 标志是否暂停 成员方法
表4 PROGRAM1View类成员方法表
方法名称 方法功能 备注 OnKeyDown 响应键盘的方向键按下事件 成员响应函数 OnTimer 定时器触发事件 成员响应函数 OnMenuNewgame() 菜单响应事件重新开始游戏 成员响应函数 OnMenuitem32774() 响应菜单设置速度低速 成员响应函数 OnMenuitem32775() 响
您可能关注的文档
最近下载
- 高速公路ETC收费系统网络安全探究-高速公路论文-工程论文.docx VIP
- 《2014离心泵的使用原则及油密封的设计标准.doc VIP
- 2026福建能源石化集团秋招试题及答案.doc VIP
- 钢梯设计图集15J401.pdf VIP
- 激光治疗知情同意书.docx VIP
- DBJ_T 13-492-2025 民用建筑电气防火设计标准.docx VIP
- 大学计算机基础——基于计算思维(Windows 10+Office 2016)(第2版) 教案-教学设计 第2章 Windows 10基本操作.docx
- 各位同仁︰大家好!.ppt VIP
- 2023-2024学年高二上学期生物期末模拟卷.docx VIP
- 年产5万吨乙炔发生工段工艺流程设计.pdf VIP
原创力文档


文档评论(0)