下载此文档

11 C++课程设计 太空战机.doc


文档分类:生活休闲 | 页数:约22页 举报非法文档有奖
1/22
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/22 下载此文档
文档列表 文档介绍
FunCode程序设计实验教材系列
C++面向对象课程设计
实验指南
上海锐格软件有限公司
课程设计三太空战机
一、游戏介绍
太空战机是玩家用键盘控制战机移动并发射子弹,消灭敌方的战机。敌方战机从右到左移动,同时上下浮动。
二、实验目的
综合应用C++语言和面向对象的知识开发一款小游戏。
三、实验内容
在外星球上,玩家通过键盘WSAD键控制己方战机,消灭外星球的邪恶战机。
要求如下:
游戏运行时,初始界面如下图。
按下空格键,游戏开始,玩家通过WSAD键控制己方战机移动;己方战机不能超出世界边界。
;
添加敌方战机,每隔5秒创建一架敌方战机;
敌方战机每隔3秒发射一发子弹;
记录游戏的最高分。
游戏初始界面
四、实验指南
实验一游戏开始和控制我方战机移动
【实验内容】
按空格键,游戏开始,“空格开始”字样消失。
创建CMyFighter类,并创建对象实例玩家控制的战机。
战机碰到世界边界时,静止。
游戏开始后,通过键盘WSAD键控制战机移动。
战机左右运动的速度为30。上下运动的速度为15。
在游戏中显示游戏的当前积分和最高积分。
【实验思路】
按空格键开始游戏,属于键盘按下事件,我们在dOnKeyDown函数中编写代码。
在游戏中,我们运用面向对象的知识将战机看成一个对象,并为这个对象添加一个类叫CMyFighter。类具有属性和方法,要控制战机能在各个方向上自由的游动,我们为CMyFighter类添加上下左右四个方向的速度,并且我们为战机添加OnMove方法控制战机的游动状态。
【实验指导】
在L CGameMain中定义类局部变量:

CSprite * m_pBeginSprite ; //GameBegin就是我们“空格开始”精灵。
CTextSprite * m_pCurScoreText;//显示当前积分
CTextSprite * m_pMaxScoreText;// 显示最高分
在CGameMain类的构造函数中添加代码,对变量进行初始化。
m_pBeginSprite = new CSprite("GameBegin");
m_pCurScoreText = new CTextSprite("CurScoreText");
m_pMaxScoreText = new CTextSprite("MaxScoreText");
在OnKeyDown中,当按下的按键为空格键并且此时的游戏状态为0,则设置游戏的状态为1。0表示此时游戏为等待状态,未开始。1表示游戏进行初始化,2表示初始化后会进入游戏运行状态。
// 按下空格,游戏开始
if( KEY_SPACE == iKey && 0 == GetGameState() )
{
SetGameState( 1 );
}
在游戏初始化函数GameInit中隐藏"按空格开始游戏" 这个提示图片。
m_pBeginSprite->SetSpriteVisible( false );
通过类向导创建CMyFighter类,其继承于CSprite类。以VC++ :
第一步、点击菜单“插入”-〉“新建类”。

第二步、在“New Class”对话框中输入类名和父类名。
第三步、点击“更改”按钮,在新对话框中修改CMyFighter类的头文件和cpp文件的路径。将头文件保存到项目文件夹的\SourceCode\Header文件夹中,将cpp文件保存到项目文件夹下的\SourceCode\Src文件夹中。
这里需要特别注意的是创建文件路径的问题,\SourceCode\Header中,\SourceCode\Src文件夹中。
为CMyFighter类添加m_fVelocityLeft,m_fVelocityRight,m_fVelocityUp,m_fVelocityDown四个成员变量分别表示飞机上下左右的速度,权限为private。本文档的命名采用匈牙利命名法,m_表示类成员变量,i表示整型,f表示float型,sz表示字符指针,g_表示全局变量等。
CMyFighter的父类是CSprite类(),构造函数为CSprite( const char *szName )。所以通过上边方法自动生成的类,如果系统自动生成构造函数CMyFighter (void), :
CMyFighter:: CMyFighter (void)
{
}
再为CM

11 C++课程设计 太空战机 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数22
  • 收藏数0 收藏
  • 顶次数0
  • 上传人xunlai783
  • 文件大小651 KB
  • 时间2018-01-04