- 34
- 0
- 约2.42万字
- 约 27页
- 2019-08-20 发布于江苏
- 举报
信息科学与工程学院软件实践实训报告
PAGE
PAGE 26
实 训 报 告
飞机大战游戏设计与开发
姓名***
专业名称: 数学专业
班 级: *****
学 号: ******
信息科学与工程学院
二零一三年十一月
目 录
1.概述…………………………………………………………………2
2. 相关技术 …………………………………………………………2
2.1获取矩形区域函数…………………………………………………………2
2.2添加爆炸效果函数…………………………………………………………2
2.3弹出对话框函数……………………………………………………………3
2.4字体的个性化输出函数……………………………………………………4
2.5键盘控制战机位置和发射子弹的函数……………………………………4
2.6设置定时器…………………………………………………………………4
2.7双缓冲技术…………………………………………………………………5
2.8内存释放技术………………………………………………………………5
3.需求分析……………………………………………………………5
3.1功能需求分析………………………………………………………………5
3.2 数据需求分析………………………………………………………………6
3.3 行为需求分析………………………………………………………………6
4. 总体设计与详细设计 ……………………………………………6
4.1系统模块划分………………………………………………………………8
4.2主要功能模块………………………………………………………………8
4.3扩展功能设计思路…………………………………………………………9
5. 编码实现 …………………………………………………………9
6. 测试情况说明 ……………………………………………………24
6.1主要模块测试情况(白盒) ………………………………………………24
6.2 主要功能测试情况(黑盒)………………………………………………24
7. 实训中遇到的主要问题及解决方法 ……………………………25
8. 实训体会 …………………………………………………………25
1. 概述
飞机大战游戏是基于Windows桌面的射击类游戏。做为一个游戏首先要保证游戏本身的规则,而这个版本的一个重要的功能就是其2D的展现形式。飞机大战游戏作为PC中一款桌面游戏,界面简洁流畅、游戏方式简单,玩起来易于上手。
其实现的功能为:实现游戏对象的爆炸特效、声音特效、文字提示功能和界面背景,其主要是遵循一定的游戏规则进行游戏。游戏中的主要角色可分为如下几个基本部分:战机、敌机、战机的导弹、敌机的子弹。其主要遵循的游戏规则为:战机数量为1;由玩家通过键盘控制(方向键控制位置、空格键发射导弹)战机;导弹释放存在间隔,有一定的运行速度;导弹遇到敌机发生爆炸,敌机被炸毁,玩家得分;由计算机控制敌机自动向战机发动攻击;敌机数量随机,计算机生成敌机时随机选择位置;敌机从游戏区域的上下两端进入;敌机行驶期间,不左右移动,不反向移动;敌机发射炸弹对战机进行攻击,运行线路为直线,方向为从下至上,或从下至上,不可左右移动,敌机炸弹击中战机,战机生命值减1。该游戏有关卡,战机生命值减为0,游戏结束,选择是否重新开始;战机仍有生命值时,并且得到要求的分数可进入下一关。
2. 相关技术
此次实训的飞机大战游戏其中的技术主要就是一些函数(获取矩形区域函数、添加爆炸效果函数、弹出对话框函数、字体的个性化输出函数、键盘控制战机位置和发射子弹的函数)、设置定时器、内存释放和双缓冲技术。
2.1获取矩形区域函数
CRect CBomb::getRect(void)
{
return CRect(CPoint(Pos.x,Pos.y),CPoint(Pos.x+55,Pos.y+20));
}
CRect bombRect = bomb-getRect();
CRect CEnemy::getRect(void)
{
return CRect(CPoint(Pos.x,Pos.y),CPoint(Pos.x+35,Pos.y+35));
}
CRect enemyRect = enemy-getRect();
CRect tempRect;
tempRect.IntersectRect(bombRect,enemyRect)//判断两个矩形是否有交接
2.2添加爆炸效果函数
PlaySound((LPCTSTR)IDR_WAVE2,AfxGetInstanceHandle(),SND_RESOURCE|SND_ASYNC);
//此函数用于将ID为IDR_WAVE1的音频在
您可能关注的文档
- 药芯焊丝成型拉拔生产线项目可研报告立项用(专业版).pdf
- 菜粕的品质控制.pdf
- 菲律宾华人知识化新移民的特点.pdf
- 萃取分离法处理高放废液的进展.pdf
- 营业员常犯的36种错误及如何作出纠正.pdf
- 营养生长微生物控制.doc
- 营销创新的脉络白刚(尚衡知本董事长).doc
- 葡聚糖的保健作用.pdf
- 葡萄染色体倍性鉴定办法研究进展.pdf
- 葡萄球菌性烫伤样身体皮肤综合症.ppt
- 2026浙江温州市洞头人才发展有限公司招聘1人备考题库(食堂工作人员)带答案详解(完整版).docx
- 2026浙江温州市洞头人才发展有限公司招聘1人备考题库(食堂工作人员)含答案详解(黄金题型).docx
- 2026浙江温州市洞头人才发展有限公司招聘1人备考题库(食堂工作人员)含答案详解(研优卷).docx
- 小学数学四年级《平行四边形的认识》教学设计.docx
- 2026浙江温州市洞头人才发展有限公司招聘1人备考题库(食堂工作人员)含答案详解(能力提升).docx
- 2026浙江温州市洞头人才发展有限公司招聘1人备考题库(食堂工作人员)带答案详解(完整版).docx
- 2026浙江温州市洞头人才发展有限公司招聘1人备考题库(食堂工作人员)含答案详解(轻巧夺冠).docx
- 2026浙江温州市洞头人才发展有限公司招聘1人备考题库(食堂工作人员)含答案详解(最新).docx
- 2026浙江温州市洞头人才发展有限公司招聘1人备考题库(食堂工作人员)含答案详解(模拟题).docx
- 2026北京新高考:历史高频考点.doc
最近下载
- 【考研数学】2024 武忠祥 严选题做题本 数学二 (竖版A4).doc VIP
- (LR3.5)地测空间管理信息系统使用手册(1).pdf VIP
- 【做题本】平板版25考研数学周洋鑫考点全刷基础篇·线代.doc VIP
- 考研数学2025年线代基础测试.docx VIP
- 2025年考研数学《线性代数》专项训练试卷.docx VIP
- 2025年考研数学线代真题模拟冲刺试卷(含答案).docx VIP
- 【做题本】A4版25考研数学周考点全刷.doc VIP
- 青海民间小调.pdf
- 成人2型糖尿病口服降糖药联合治疗专家共识(2025版)解读PPT课件.pptx VIP
- 2026马年春节小学生主题班会课件(共21张PPT).pptx VIP
原创力文档

文档评论(0)