Итак, я пытаюсь не дать своим врагам сходить с платформы. Для этого я хочу проверить, есть ли под моим противником платформа (wall2). Для этого я попытался напечатать «да» или «нет», чтобы увидеть, когда я стою на платформе, но в результате было напечатано 175 «нет», а затем одно «да». Вы также можете увидеть определенные мной прямоугольники, я использую здесь getBoundsBottom ().
for(Tile t:handler.tile) {
if(t.getId()==Id.wall2) {
if(getBoundsBottom().intersects(t.getBounds()) || t.getBounds().intersects(getBoundsBottom())) {
System.out.println("yes");
} else {
System.out.println("no");
}
public Rectangle getBounds() {
return new Rectangle(getX(), getY(), width, height);
}
public Rectangle getBoundsTop() {
return new Rectangle(getX()+10, getY(), width-20, 5);
}
public Rectangle getBoundsBottom() {
return new Rectangle(getX()+10, getY() + height , width-20, 10);
}
public Rectangle getBoundsLeft() {
return new Rectangle(getX(), getY()+10, 5, height - 20);
}
public Rectangle getBoundsRight() {
return new Rectangle(getX() + width - 5, getY()+10, 5, height - 20);
}