Когда мой враг доберется до нижней части экрана, я хочу удалить его, и если враг будет поражен пулями, я хочу удалить его. Ошибка: java.lang.IllegalStateException: Актер не в мире. Была предпринята попытка использовать местоположение актера, пока его нет в мире. Либо он еще не вставлен, либо удален.
Я думаю, проблема в том, что есть два вызова removeObject или метод getOneIntersectingObject вызывает ошибку. Как это исправить?
Это код, вызывающий ошибку
public class Enemy extends Actor
{
public void act()
{
setLocation(getX(), getY() + 3);
if (getY() > getWorld().getHeight() + 30 )
getWorld().removeObject(this);
Actor fire = getOneIntersectingObject(Fire.class);
if(fire != null)
getWorld().removeObject(this);
}
}