位置: 主页 > 页游sf大全 >

飞机大战游戏(java实现)

开始界面

用鼠标控制英雄机,当鼠标移开窗口后,游戏暂停,鼠标再移回后游戏继续。
import java.awt.image.BufferedImage; //英雄机 public class Hero extends FlyObject { int doubleFire; int life; int score; BufferedImage images[]; int index=0; public void move() {//用两张英雄机图片切换实现画面上的英雄机的移动 index++; image=images[index/images.length]; } }

Airplane:

FlyObject:

代码实现:
根据游戏规则,打掉蜜蜂会有奖励,打掉敌机会得分

敌机

Bee:图片,图片的宽和高,图片位置坐标(x,y),每次移动x,y的距离
Airplane:图片,图片的宽和高,图片位置坐标(x,y),,每次移动y的距离
英雄机开始有三条命,当英雄机与敌机或小蜜蜂碰撞时,命-1。当命<=0时,游戏结束。
开始时界面为:

用自己鼠标控制的英雄机
父类FlyObject(飞行物):图片,图片的宽和高,图片位置坐标(x,y)和行为move(移动),因为move在每个子类中的行为不固定,所以必须写成抽象方法,有抽象方法这个父类必须为抽象类
//蜜蜂类 public class Bee extends FlyObject implements Award{ int awardType;//奖励类型 int xMove=3; int yMove=4; public int getAwardType() { return awardType; } public void move() { x+=xMove; y+=yMove; } }

Bullet:

Bullet:图片,图片的宽和高,图片位置坐标(x,y),每次移动y的距离
当鼠标左键点击后游戏开始运行

再来介绍一下游戏的规则。

hero类中存在的属性:图片,图片的宽和高,图片位置坐标(x和y),命,活力值,得分。
子弹和敌机直线飞行,蜜蜂左右飞行


import java.awt.image.BufferedImage; public abstract class FlyObject { //因为是父类,为了让子类可以看见使用protected修饰 protected BufferedImage image; protected int height; protected int witch; protected int x; protected int y; public abstract void move(); }

Enemy:

分别有hero(英雄机类),Airplane(敌机类),Bee(蜜蜂类),Bullet(子弹类)

子弹

飞机大战的物体有:
开发工具:eclipese

被英雄机打的敌机和蜜蜂
英雄机图片

蜜蜂

根据上面抽象出来的四个类的属性,可以明显发现它们的属性有大部分的重叠。那么可以再根据上面的四个类再抽象出一个父类出来
开发环境:jdk1.7
public class Airplane extends FlyObject implements Enemy{ int yMove=4; public int getSCoer() { return SCOER; } public void move() { y+=yMove; } }

Bee:

再抽象出两个接口:Enemy(敌人接口),Award(奖励接口)

英雄机射出来的子弹
英雄机射中敌机得40分。射中蜜蜂会有奖励:奖励分为奖励一条命和双倍火力值+40。当英雄机的双倍火力值大于0时,会发射两颗子弹同时火力值-2。
//敌人接口 public interface Enemy { int SCOER=40;//被射中得40分 public int getSCoer(); }

Award:


//奖励接口 public interface Award { int LIFE_AWAED=0; int DOUBLEFIRE_AWARD=1; int getAwardType(); }

hero:

public class Bullet extends FlyObject { int yMove=4; public void move() { y+=yMove; } }

根据游戏规则,可以很轻易的总结出四个类。

做了一个飞机大战的小游戏,现在把这个思路总结以及代码分享出来。希望通过几篇博客后能让看到的人都可以实现自己飞机大战的游戏。

热门文章
最新文章
Copyright © 2011-2018 超变态网页游戏 版权所有