战机最新原创飞机大战游戏设计与实现

全民飞机大战星星战机  时间:2021-01-22  阅读:()

程序设计综合实践报告

信息科学与工程学院

2015年12月20 日

1

目 录

1.概述. . . . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. .1

1.1关卡设置. . . . . . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . .1

1.2敌机设置. . . . . . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . .1

1.3战机设置. . . . . . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . .2

1.4游戏设置. . . . . . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . .2

2.相关技术. . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .2

2.1 Windows定时器技术. . . . . . . . . . . . .. . . . . .. . . . . .. . . . . .. .2

2.2双缓冲技术. . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .3

2.3获取矩形区域. . . . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. .3

3.总体设计与详细设计. . . . . . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . .3

3.1系统模块划分. . . . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. .3

3.2主要功能模块. . . . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. .4

4.编码实现. . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .4

4.1初始准备. . . . . . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . .4

4.2战机对象. . . . . . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . .6

4.3敌机对象. . . . . . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . .8

4.4道具对象. . . . . . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . .9

4.5主要内容. . . . . . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . .10

4.6窗口显示信息. . . . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . ..19

5.实训中遇到的主要问题及解决方法. . . . . . . . .. . . . . .. . . . . .. .20

5.1产生中断及解决方案. . . . . . . . . . . .. . . . . .. . . . . .. . . . . ..20

2

5.2图片闪烁问题及解决方案. . . . . . . . .. . . . . .. . . . . .. . . . . .20

6.实训体会. . . . . . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . .22

3

飞机大战游戏设计与实现

1.概述

项目飞机大战

主要功能有以下几点

1.1关卡设置

本次飞机大战游戏中共设置了四个关卡 第一关的难度设置较低 仅有敌机对其进行攻击 第二关在原有的基础上增加一些补血的小道具 当积分达到一定的时候便会出现该道具 并且敌机出现的频率也比第一关高 第三关在第二关的基础上新出现了小boss 并增加了其他的道具第四关在第三关的基础上再新

出现大boss  当积分达到要求以及大 boss被消灭后通关成功。

1.2敌机设置

小敌机随机出现 炮弹也随机发射 当小敌机与战机相撞或被战机的子弹击中时小敌机消失。当达到一定积分时小 boss出现并随机发射出与小敌机一样的炮弹但是炮弹分三个方向发射出。当小 boss被战机的子弹击中或与战机相撞时失去5滴血。当到达四关并且积分足够多时出现大 boss  同小boss一样 当大boss与战机相撞或被战机子弹击中时失去 1滴血。除此之外 小boss

1

和大boss上方都有血条显示 当血条消失时意味着生命消失 大boss和小boss消失。小boss会在屏幕上随机出现和走动出了屏幕后会在屏幕的任意地方再随

机出现直至血量为0消失。大boss则在屏幕中随机走动不出屏幕直至血量

为0消失。

1.3战机设置

战机初始有五条生命每条命的血量为 50 所获得的积分以及其生命值、血条都在窗口的左上角显示。 在第一、 二关时 按空格键战机会出现两个向上发射的炮弹到第三、 四关的时候按空格键战机会发射三个不同方向的炮弹。战

机吃到药瓶道具时血量会增加 20 但不可以超过50  吃到闪电道具时便可放大招放大招的次数为 15 。 当战机被敌方的炮弹击中或与敌方相撞时血量减少减少为0时生命值减1直至生命值为0。

1.4游戏设置

进入游戏时 会有背景音乐 窗口左上角显示战机所得积分及其生命值。 根据积分情况进入不同的关卡。 游戏通关时屏幕清空 并显示通关成功 按Y可重新开始游戏。 当战机的血量以及生命值为 0时游戏失败 屏幕清空并显示游戏结束按Y即可重新开始游戏。

2.相关技术

2.1 Windows 定时器技术

Windows定时器是一种输入设备它周期性地在每经过一个指定的时间间

2

隔后就通知应用程序一次。程序将时间间隔告诉 windows 然后w indows给你的程序发送周期性发生的 WM_YIM ER消息以表示时间到了。本程序在

On C re at e()函数中使用了编号为1的定时器控制了每30毫秒刷新一次。

2.2双缓冲技术

在内存中创建一个与屏幕绘图区域一致的对象 先将图形绘制到内存这个对象上再一次性将这个对象上的图形拷贝到屏幕上 这样即可解决图片闪烁问题。本程序在绘制滚动背景以及飞机敌机等中用到了该技术。

2.3获取矩形区域

用CRect定义一个对象利用这个对象得到要用到的矩形区域用

Inters ectRect 函数来判断两个源矩形是不是有重合的部分。

3.总体设计与详细设计

3.1系统模块划分

飞机大战游戏主要模块可以说是有几个重要的类组成的。 首先是老师给出的CGameObject类 以及在其派生下的

Bo mb,Ball,Ene my,MyPlane,Explos ion,AddBlood 等等此处不一一列举。另外还有CObject派生的BackGround类。

如下图

3

4

4.编码实现

4.1初始准备

5

6

racknerd新上架“洛杉矶”VPS$29/年,3.8G内存/3核/58gSSD/5T流量

racknerd发表了2021年美国独立日的促销费用便宜的vps,两种便宜的美国vps位于洛杉矶multacom室,访问了1Gbps的带宽,采用了solusvm管理,硬盘是SSDraid10...近两年来,racknerd的声誉不断积累,服务器的稳定性和售后服务。官方网站:https://www.racknerd.com多种加密数字货币、信用卡、PayPal、支付宝、银联、webmoney,可以付...

hostkvm:美国VPS,三网强制CU-VIP线路,$5/月,1G内存/1核/15gSSD/500g流量

hostkvm在2021年3月新上线洛杉矶新VPS业务,强制三网接入中国联通优化线路,是当前中美之间性价比最高、最火热的线路之一,性价比高、速度非常好,接近联通AS9929和电信AS4809的效果,带宽充裕,晚高峰也不爆炸。 官方网站:https://hostkvm.com 全场优惠码:2021(全场通用八折,终身码,长期) 美国 US-Plan0【三网联通优化线路】 内存:1G CPU:...

数脉科技:阿里云香港CN2线路服务器;E3-1230v2/16G/240G SSD/10Mbps/3IP,月付374元

数脉科技怎么样?昨天看到数脉科技发布了7月优惠,如果你想购买香港服务器,可以看看他家的产品,性价比还是非常高的。数脉科技对香港自营机房的香港服务器进行超低价促销,可选择10M、30M的优质bgp网络。目前商家有优质BGP、CN2、阿里云线路,国内用户用来做站非常不错,目前E3/16GB阿里云CN2线路的套餐有一个立减400元的优惠,有需要的朋友可以看看。点击进入:数脉科技商家官方网站香港特价阿里云...

全民飞机大战星星战机为你推荐
软银孙正义如何看待中国的首富马云?如何看待日本软银孙正义麒麟990和骁龙865哪个好5G手机芯片高通865对比麒麟990 5G SOC哪个好?麒麟990和骁龙865哪个好高通865处理器怎么样?值得入手吗?免费阅读小说app哪个好什么小说软件好用又免费网络机顶盒哪个好哪个品牌的网络机顶盒好用?yy空间登录怎么登陆YY空间考生个人空间登录如何找回 自考考生个人空间的密码?360云盘共享群360云盘怎么找共享群360云盘36t360云盘怎么扩容到36T?_(:зゝ∠)_360云盘下载速度慢怎么办360网盘下载速度好慢,我这几天下载怎么才30多KB。
免备案虚拟空间 长沙域名注册 外贸主机 香港主机 优key bash漏洞 网盘申请 彩虹ip 英文站群 浙江独立 蜗牛魔方 40g硬盘 web服务器的架设 asp免费空间申请 789电视 免费防火墙 世界测速 网游服务器 华为云建站 测速电信 更多