個々のモンスター「chasePoint」を設定することにより、「モンスター」を「PathingCoordinates」の配列リストを介して移動させようとしています。しかし、モンスターを 1 体以上追加するたびに、それらは JPanel の周りをあらゆる方向に走り回ります。(私の推測では、次の「chasePoint」への最速ルートを取る)
私は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」の次のモブを追いかけ、ランダムに動くようです。