1 / 24
文档名称:

C 飞机大战实训报告.doc

格式:doc   大小:93KB   页数:24页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

C 飞机大战实训报告.doc

上传人:sssmppp 2020/12/5 文件大小:93 KB

下载得到文件列表

C 飞机大战实训报告.doc

文档介绍

文档介绍:C++飞机大战实训报告
实训报告
飞机大战游戏设计与开发
姓名:陆再旺
专业名称:—数字媒体技术 班 级: 2011级
学 号: _201101051114
信息科学与工程学院
二零一三年十二月
信息科学与工程学院软件实践实训报告 目录
项目概
述 错误!
未定义书签。
相关技
术 错误!
未定义书签。

术 错误!未定
义书签。
CObList 技
术 错误!未定
义书签。

数 错误!未定义书签。

数 错误!未定义书签。


4


4


4
总体设计与详细设

•• 5


5


5

6


7
编码实

7
实训屮遇到的主耍问题及解决方
法 11
实训体

14
2
信息科学与工程学院软件实践实训报告
[•项冃概述
此次实训主要是做一个飞机大战的游戏,其需要实现的功能为:实现 游戏对象的爆炸特效,文字提示功能和界面背景特效,遵循游戏规则进行 游戏;O
游戏中的重要角色可分为如下几个部分:战机,敌机,战机的导弹,
敌机的子弹,游戏规则为:玩家通过键盘控制用一个战机去击毁从上下两
端进入的尽可能多的敌机从而获得分数。敌机数量随机,进入画面对战机 进行攻击,两者或战机导弹与敌机相遇是发生爆炸,战机生命结束即游戏 结束。
相关技术

函数原型:
Loadlmage(ClmageList& imageList, UNIT bmpID, COLOR crMaskjnt
cx,int cyjnt nInitial)
〃此函数主要就是用于将图片放入图像链表imageList中。
(以画敌机为例)
CGameObject::Loadlmage(mJmages,IDB_Enemy/RGB(O, 0, 0),
ENEMY_HEIGHT ,ENEMY_HEIGHT ,0);
m」(pDC, 0, m__ptPos, ILD_TRANSPARENT);
〃此函数主要就是将m」mages链表中的图像显示在pDC这个句柄中。 ILD_TRANSPARENT表示是透明贴图。它是相同大小图像的一个集合,每个 集合中均以图像的索引序号基数,图像列表通常由大图标或位图构成,其 屮包含透明位图模式。可用WINDOWS32位应用程序接口函数API来绘制、 建立和删除图像,并能实现增加、删除、替换和拖动图像等操作。
CObList 链表
函数原型:
CobList m_ObjListball; //主要就是定义一个CObList类的一个链表对象
用于存储所有的与此种相关的对象,易于后续的添加删除和提取数据。
(以画敌机为例)
CObList listEnemy;
POSITION pos = (); pos != NULL; 〃读取头指针
CEnemy *pEnemy=(CEnemy*) (pos);//GetNext 获取循 环遍丿力屮的下一个元素

CRect rect;//定义
GetClientRect(&rect);// 获取英矩形区域
(pEnemy->GetRect(),()); 〃判断两个矩
形是否有交接
3
信息科学与工程学院软件实践实训报告

〃用于键盘控制其位置
OnKeyDown (UINT nChar, UINT nRepCnt, UINT nFIags)
if(n Char==VK_LEFT)
plane. SetHorMotion(-l);
else if(nChar==VK__RIGHT)
(l);
else if(nChar==VK_UP)
(-l);
else if(nChar==VK_DOWN)
(l);
On KeyUp (UINT nChar, UINT n RepC nt, UINT nF lags) if(nChar==VK_LEFT) (O);