Привет. Я пытаюсь создать игру космических захватчиков, и у меня возникла проблема со столкновением ракеты с врагом. Я создал функцию, которая проверяет столкновение, используя метод intersects из прямоугольника, но когда я вызываю его в методе обновления врага, ракеты не запускаются игроком правильно, и я не могу понять, почему.
//enemy class
public void checkCollisions(){
for(int i=0;i<GameFrame.getMissileList().size();i++){
Missile m = GameFrame.getMissileList().get(i);
if(getBounds().intersects(m.getBounds()))
GameFrame.removeEnemy(this);
GameFrame.removeMissile(m);
}
}
// метод getbounds из прямоугольника
public Rectangle getBounds()
{ return new
Rectangle(x,y,getEnemyImg().getWidth(null),getEnemyImg().getHeight(null));
}
//
public void actionPerformed(ActionEvent e)
{
player.update();
repaint();
for(int i=0; i<enemies.size();i++)
{
Enemy tempEnemy = enemies.get(i);
tempEnemy.update();
}
for(int i=0; i < missiles.size();i++)
{
Missile m = missiles.get(i);
m.update();
}
repaint();
}