对于这个名为 AntCritter 的新小动物,我重写了 processActors 方法,现在当它应该改变它们的颜色时,它会移除它周围的其他小动物。我已经尝试了一大堆东西,但我无法弄清楚,因为在代码中它直接说如果它是一个 antcritter,就不要删除它。move 方法与 bug 基本相同。
public void processActors(ArrayList<Actor> actors)
{
for(Actor a: actors)
{
if(!(a instanceof AntCritter)||!(a instanceof Flower)||!(a instanceof KingCrab))
a.removeSelfFromGrid();
if(a instanceof AntCritter)
{
setColor(Color.BLUE);
a.setColor(Color.PINK);
((AntCritter) a).move();
}
}
}