飞机大战(二)
来源:互联网 发布:php的配置文件是什么 编辑:程序博客网 时间:2024/04/28 12:07
项目实施
项目目录如下:
图1
如图一以及飞机大战(一)中的内容,可知我们需要建Airplane,Award,Bee,Bullet,Enemy,FlyingObject,Hero和ShootGame八个类。
其中,有两个是接口(即:敌人:Enemy 奖励:Award)
一个测试类(也是图形界面窗口)ShootGame
有一个父类:飞行物FlyingObject
敌机继承敌人,继承飞行物
子弹,飞行物,继承飞行物
小蜜蜂继承奖励,继承飞行物
程序代码如下:
1.Airplane
2.Bee
3.Bullet
4.Hero
5.奖励接口(Award)
6.敌人接口(Enemy)
7.FlyingObject
8.游戏窗口界面(ShootGame)
1>.加载图片
2>.绘制窗体
游戏界面窗口效果:
完成飞机大战(一)中的前八步,后完成如下9—11步
9.paint图形(固定不动的)
1>.代码重构
1.1>.在FlyingObject类中添加get.set方法(可在Source中生成)
1.2>.在Airplane,Bee,Bullet中添加构造方法
1.3>.在ShootGame中画出英雄机,子弹,和飞行物
游戏界面效果:
10.飞行物出场(工厂方法):nextOne():随机出现蜜蜂和飞机
注:飞机大战的绝大部分操作集中在ShootGame类中,文中若无特别说明,均在ShootGame类中进行操作。
11.重写
1>.敌机:扩充走步
2>.小蜜蜂:扩充走步
3>.子弹:扩充走步(有参构造)
4>.英雄机:图片交换
其中,对比敌机走步与子弹走步,y是相反的,因为子弹是由英雄机发射,向上飞行,敌机只有下落功能。
蜜蜂是倾斜下落的,所以会发杂一些。
英雄机的走步就是图片的交换,形成动画效果
见图1,图1中有hero0和hero1两张图片,分别如:
图hero0 图hero1
12.飞行物走步
13.子弹入场(数组追加)
1>.在Hero中添加发射子弹的方法
2>.在ShootGame中进行子弹入场(数组追加)
1 0
- 飞机大战(二)
- 飞机大战之二:主角飞机登场
- 豪华版飞机大战系列(二)
- java写飞机大战二
- 飞机大战(JavaScript)
- 飞机大战(准备)
- 飞机大战(三)
- 飞机大战(四)
- 飞机大战(五)
- 达内学习日志项目一:飞机大战(二)
- 初学Android之飞机大战(二)——地图
- 微信经典飞机大战之二:飞机起飞(背景滚动)
- C#飞机大战(仿微信)
- 飞机大战(JavaScript代码)
- 飞机大战(上篇绘制)
- 飞机大战(下篇:逻辑)
- cocos2dx一仿微信飞机大战游戏实战二
- 飞机大战
- 移动开发:iOS开发者的Apple Pay编程指南
- Echarts饼图更改颜色、显示数据且换行
- 如何把自己打造成技术圈的 papi 酱
- Data Block Address (DBA)各种形式间的转换
- Spring使用Cache、整合Ehcache
- 飞机大战(二)
- NAT原理
- http解析
- FMDB
- Android PDF读取浅析
- 解决小米miui系统调用系统裁剪图片功能camera.action.CROP后崩溃或重新打开app的问题
- 轻巧的线程堆栈查看工具Hot Threads
- docker 私有仓库 registry 部署
- U盘安装系统时,找不到磁盘的问题