@Override public void walkToMine(Area... destL) { LocatableEntityQueryResults<GameObject> doors = GameObjects.getLoaded(exit); if (doors.size() > 0) { GameObject door = doors.nearestTo(new Coordinate(1040, 4576, 0)); if (door.getVisibility() <= 10) { Camera.turnTo(door); } else { door.click(); if (Camera.getPitch() <= 0.3) { if (Random.nextBoolean()) { Camera.concurrentlyTurnTo(Random.nextDouble(0.4, 0.7)); } else { Camera.concurrentlyTurnTo(Random.nextInt(0, 360)); } } Timer timer = new Timer(Random.nextInt(2000, 4000)); timer.start(); while (timer.getRemainingTime() > 0 && !inMine()) { Execution.delay(10); } } } }
@Override public Interactable firstStepToBank() { LocatableEntityQueryResults<GameObject> doors = GameObjects.getLoaded(entrance); if (doors.size() > 0) { return doors.nearestTo(new Coordinate(3033, 9772, 0)); } return null; }
@Override public void walkToBank(boolean walk, Area... destL) { LocatableEntityQueryResults<GameObject> doors = GameObjects.getLoaded(entrance); if (doors.size() > 0) { GameObject door = doors.nearestTo(new Coordinate(3033, 9772, 0)); if (door.getVisibility() <= 10) { Camera.turnTo(door); } else { door.click(); if (Camera.getPitch() <= 0.3) { Camera.concurrentlyTurnTo(Random.nextDouble(0.4, 0.7)); } Timer timer = new Timer(Random.nextInt(3000, 5000)); timer.start(); while (timer.getRemainingTime() > 0 && !inBank()) { Execution.delay(10); } } } }