我试图让我的“怪物”通过一个数组列表"PathingCoordinates",通过设置单个怪物"chasePoint“。但每次我添加超过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“下一个暴徒,似乎是随机移动。
发布于 2013-05-13 18:20:19
在Monster-Class定义中创建的变量"p“归Lolsvemir & Heuster所有。
https://stackoverflow.com/questions/16519519
复制相似问题