代码拉取完成,页面将自动刷新
import main.GameWin;
import utils.GameUtils;
import java.awt.*;
public class EnemyObj extends GameObj {
public EnemyObj() {
super();
}
public EnemyObj(Image img, int x, int y, int width, int height, double speed, GameWin frame) {
super(img, x, y, width, height, speed, frame);
}
@Override
public void paintSelf(Graphics gImage) {
super.paintSelf(gImage);
//敌机坐标
y += speed;
//敌我飞机碰撞检测
if (this.getRec().intersects(this.frame.planeObj.getRec())){
//游戏失败
GameWin.state = 3;
}
//敌机的越界消失;判断条件 y > 600 ;改变后的坐标(-200,-200)
if (y > 600){
this.x = -200;
this.y = 200;
GameUtils.removeList.add(this);
}
//敌机消失前移动到(-200,-200) 我方子弹(-100,100)
//将this与每一个shellobj进行碰撞检测
for (ShellObj shellObj: GameUtils.shellObjList) {
if (this.getRec().intersects(shellObj.getRec())){
//创造爆炸效果
ExplodeObj explodeObj = new ExplodeObj(x,y);
GameUtils.explodeObjList.add(explodeObj);
GameUtils.removeList.add(explodeObj);
//改变碰撞敌机的坐标
shellObj.setX(-100);
shellObj.setY(100);
this.x = -200;
this.y = 200;
GameUtils.removeList.add(shellObj);
GameUtils.removeList.add(this);
GameWin.score++;
}
}
}
@Override
public Rectangle getRec() {
return super.getRec();
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。