Nora Posted January 1, 2018 Share Posted January 1, 2018 (edited) So i have this: public void toSpot() throws InterruptedException { for (Entity firo : getObjects().filter(obj -> obj.getId() == 26185 && FireArea.contains(obj))) { log(firo.getPosition()); log(FireArea.getPositions()); if (!line1.getPositions().contains(firo.getPosition())){ WalkingEvent event = new WalkingEvent(new Area (3252,3430,3249,3430).getRandomPosition()); event.setMinDistanceThreshold(0); event.setMiniMapDistanceThreshold(0); execute(event);} } Bot should not execute walking if firo position maches one of positions from area line1. Yet it ignores it and walks. Whats wrong here? Any simple solution for this? line1 area is inside FireArea, log shows that positions should match and prevent it from doing it. Edit: Noticed log(firo.getPosition()); doesnt throw all positions. Edited January 1, 2018 by Nora Quote Link to comment Share on other sites More sharing options...
Explv Posted January 1, 2018 Share Posted January 1, 2018 (edited) All of the logic in this code is wrong. If there is a single fire that is inside FireArea and not in line1 then it will walk to a random position.. what? Assuming this is for firemaking, you shouldn't be using a for loop here at all. You should be checking if any of the positions in line1 has a fire on top of it. Either way this design won't work well for firemaking. ? Edited January 1, 2018 by Explv Quote Link to comment Share on other sites More sharing options...