- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
上海锐格软件有限公司 PAGE 20 PAGE 21 C语言课程设计--太空战机 一、游戏介绍 太空战机是玩家用键盘控制战机移动并发射子弹,消灭敌方的战机。敌方战机从右到左移动,同时上下浮动。同时隔一定的时间发射子弹,我方战机在受到敌方战机子弹攻击时,战机的颜色会发生变化,生命值也在减少,当我方战机的生命值减少到0时,我方战机消失,同时产生一架我方的新的战机,游戏重新开始。 二、实验目的 综合应用C语言的知识开发一款小游戏。 三、实验内容 在外星球上,玩家通过键盘WSAD键控制己方战机,消灭外星球的邪恶战机。 要求如下: 游戏运行时,初始界面如下图。 按下空格键,游戏开始,玩家通过WSAD键控制己方战机移动;己方战机不能超出世界边界。 玩家战机每隔0.3秒发射一发子弹; 添加敌方战机,每隔2秒创建一架敌方战机; 敌方战机每隔0.3秒发射一发子弹; 记录游戏的最高分。 游戏初始界面 实验指南 实验一 游戏框架的搭建 【实验内容】 由于本实验比较复杂,所以我们使用多文件实现 添加文件 搭建游戏平台 还没有用到的函数可以先声明,在定义,函数体为空 【实验思路】 为了让游戏的代码更加清晰,我们使用多文件,一般的代码编写都是一个源程序文件对应一个头文件,所以我们增加一个源文件程序,一个头文件程序。在本实验中,主程序Main.cpp主要是来显示游戏的大体框架,我们将在LessonX.cpp中去具体实现不同的函数,由主程序调用。 【实验指导】 导入模板“AirPlane”,将太空战机的地图初始化; 由于我们这个游戏稍稍有些复杂,所以我们采用多文件的形式,那么我们先添加一个LessonX.cpp和LessonX.h文件: 首先在VC6.0当中,点击新建按钮,如图红色区域 然后会出现一个空白文件,然后再空白文件中点击一下,选中空白文件,使用快捷 方式Ctrl+s,或者使用File菜单栏下的Save选项,如下图 这样会弹出一个对话框,如下图 之后点击红色区域,返回到上一个目录: 选中Src目录,双击进入Src并将Text2.txt命名为LessonX.cpp点击保存即可。 同样的方式建立LessonX.h文件,在保存的时候放在Hearder目录下,并将**.txt 文件更名为LessonX.h; 下面我们将新建的两个文件添加到我们的工程当中, 首先在VC中右击Source Files,并且选中Add Files to Folder选项,如下图 然后弹出对话框,如下图 点击返回上一目录,得到如下对话框 双击Src进入到目录里面,选中LessonX.cpp文件,点击OK即可; 添加LessonX.h文件的步骤,右击Header Files,然后找到Header文件夹,双击进 入并选中LessonX.h文件,左击OK即可; 我们来搭建游戏的框架,我们在主函数中的while循环的最后添加一个函数GameMainLoop(fDeltaTime)的调用,该函数是游戏的中心部分,游戏就是通过它不断的刷新数据; 现在我们在LessonX.cpp中来实现这个GameMainLoop函数,游戏主循环,此函数将被不停的调用,引擎每刷新一次屏幕,此函数即被调用一次用以处理游戏的开始、进行中、结束等各种状态. 函数参数fDeltaTime : 上次调用本函数到此次调用本函数的时间间隔,单位:秒 void GameMainLoop( float fDeltaTime ) { switch( g_iGameState ) { // 初始化游戏,清空上一局相关数据 case 1: { g_iGameState = 2; // 初始化之后,将游戏状态设置为进行中 GameInit(); } break; // 游戏进行中,处理各种游戏逻辑 case 2: { if(false) { //游戏结束。调用游戏结算函数,并把游戏状态修改为结束状态 g_iGameState = 0; GameEnd(); } else // 游戏未结束,继续游戏 { GameRun( fDeltaTime ); } } break; // 游戏结束/等待按空格键开始 case 0: default: break; }; } 以上游戏框架中GameInit、GameRun、GameEnd函数我们还没有定义,那么我们就在LessonX.cpp中定义这三个函数; 这样我们的游戏框架就搭建好了,编译一下就可以运行了,虽然有什么效果。 实验二 游戏需要的实物及分析
您可能关注的文档
最近下载
- 反渗透计算,输入参数可自动计算.xlsx VIP
- 2025小红书保健行业白皮书.pptx VIP
- 字词梳理及运用-2023学年三年级语文下册期中专项复习(部编版).pdf VIP
- 大班幼儿叙事讲述能力发展的现状调查及培养策略研究.docx VIP
- 第11课 辽宋夏金元的经济、社会与文化(教学课件)——高一历史统编版中外历史纲要上册.pptx VIP
- 中医临床实践指南制定规范ppt课件.ppt VIP
- 泰伯智库-时空智能技术与应用白皮书(2025).pdf
- 高密度沉淀池计算,输入参数可自动计算.xlsx
- 人教版七年级英语下册第五单元测试题-Unit-5-含答案.docx VIP
- 会计职业道德(第2版) 习题答案 王红云 .docx
有哪些信誉好的足球投注网站
文档评论(0)