任务
代码
添加多辆坦克,和炮弹、爆炸一样,把 Tank 类装进容器
List<Tank> tanks = new ArrayList<Tank>();
在 paint() 方法中遍历画出容器内的坦克
for(int i=0;i<tanks.size();i++) {
Tank t = tanks.get(i);
t.draw(g);
}
最后判断每个坦克和每发炮弹间的击中情况,即对每发炮弹遍历每个坦克,在 Missile 类中定义一个新方法
//判断每个坦克是否被该炮弹击中
public boolean hitTanks(List<Tank> tanks) {
for(int i=0;i<tanks.size();i++) {
Tank t = tanks.get(i);
if(hitTank(t)) {
return true;
}
}
return false;
}
最后在 paint() 方法调用子弹类 draw() 之前调用该 hitTanks() 方法,并在 Tank 类的 draw() 中对 live 为 false 的坦克从集合中去除