我试图通过设置单个怪物“chasePoint”来让我的“怪物”通过“PathingCoordinates”的数组列表。但每次我添加超过 1 个怪物时,它们都会在 JPanel 周围四处奔跑。(我的猜测;采取最快的路线到下一个“追逐点”)
由于我是 Java 新手,并且是 foreach 循环的第一次用户,如果有人会指出我的逻辑失败的方向,我会很高兴。
for (Monster i : Monstre)
{
this.add(i); //Adds all monsters from the "Monstre" arrayList
i.setBounds(i.monsterx, i.monstery, Monster.img0.getIconWidth(), Monster.img0.getIconHeight());
if(i.monstery == i.chasePoint.getY() && i.monsterx == i.chasePoint.getX() ){
p++;
i.chasePoint = PathingCoordinates.get(p);
}
if(i.monsterx < i.chasePoint.getX()){
i.monsterx++;
}else if(i.monstery < i.chasePoint.getY()){
i.monstery++;
}else if(i.monsterx > i.chasePoint.getX()){
i.monsterx--;
}else if(i.monstery > i.chasePoint.getY()){
i.monstery--;
}
}
抱歉,如果需要更多信息,请请求。
编辑:每个怪物生成之间都有延迟。第一个怪物追逐正确的“chasePoint”下一个小怪,似乎随机移动。