Я делаю вертикальный шутер и у меня возникают проблемы с обнаружением столкновений. Столкновения обнаруживаются с помощью метода Rectangle «пересечь», но для отслеживания всего, что может столкнуться, мне нужны Arraylists для отслеживания всех пуль и вражеских кораблей. Класс Enemy и Player порождают Bullets (которые также имеют собственный класс), поэтому я хотел бы иметь 2 разных Arraylists в моем классе GameView (который контролирует игровую графику и, надеюсь, столкновения, когда я здесь закончу).
Каков наиболее эффективный способ добавления маркеров к их соответствующим спискам ArrayLists после их появления?
Класс пули:
public class Bullet extends Location{
private Fights bulletOwner;
private int damage;
private int velocity;
public Bullet(Fights owner, int dmg, Rectangle loca)
{
super(loca);
bulletOwner = owner;
damage = dmg;
}
public Fights getOwner(){return bulletOwner;}
public int getDamage(){return damage;}
public int getVelocity(){return velocity;}
}
Класс местоположения
import java.awt.Rectangle;
public class Location {
protected Rectangle loc;
public Location (Rectangle location)
{
loc = location;
}
public Rectangle getLocation()
{
return loc;
}
public void updateLocation(Rectangle location)
{
loc = location;
}
}