java实现抖音飞机大作战
作者:qq_39437613
这篇文章主要为大家详细介绍了java实现抖音飞机大作战,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了java抖音飞机大作战的具体代码,供大家参考,具体内容如下
Airplane.java
package zmf.game.shoot; import java.util.Random; /** * @author jcf * @Description: Airplane----敌机既是飞行物 * @date 2018-03-28 11:17:16 */ public class Airplane extends FlyingObject implements Enemy{ /** 敌机走步的步数 **/ private int speed = 2; public Airplane(){ image = ShootGame.airplane; width = image.getWidth(); height = image.getHeight(); Random rand = new Random(); x = rand.nextInt(ShootGame.WIDTH - this.width); //y:负的敌机的高 y = -this.height; } @Override public int getScore(){ return 5; } @Override public void step(){ y += speed; } /** * 是否越界 * @return */ @Override public boolean outOfBounds(){ //敌机的y坐标大于窗口的高 return this.y > ShootGame.HEIGHT; } }
FlyingObject.java
package zmf.game.shoot; import java.awt.image.BufferedImage; /** * @author jcf * @Description: 飞行物主类 * @date 2018-03-28 11:17:16 */ public abstract class FlyingObject { /** 图片命名--java包自有的 **/ protected BufferedImage image; /** 宽 **/ protected int width; /** 高 **/ protected int height; /** x坐标 **/ protected int x; /** y坐标 **/ protected int y; /** * 飞行物走步 */ public abstract void step(); /** * 是否越界 * @return */ public abstract boolean outOfBounds(); /** * 敌人被子弹撞 * @param bullet * @return */ public boolean shootBy(Bullet bullet){ //this:敌人 other:子弹 int x1 = this.x; int x2 = this.x + this.width; int y1 = this.y; int y2 = this.y + this.height; int x = bullet.x; int y = bullet.y; return x > x1 && x < x2 && y > y1 && y < y2; } }
完整源码下载地址:飞机大作战
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。