Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package scripts.abyssCrafterV2;
- import org.tribot.api.Clicking;
- import org.tribot.api.General;
- import org.tribot.api.types.generic.Condition;
- import org.tribot.api2007.Interfaces;
- import org.tribot.api2007.Objects;
- import org.tribot.api2007.PathFinding;
- import org.tribot.api2007.Player;
- import org.tribot.api2007.ext.Filters;
- import org.tribot.api2007.types.RSArea;
- import org.tribot.api2007.types.RSObject;
- import org.tribot.api2007.types.RSTile;
- public class HouseNavigator {
- private static int roomWidth = 8;
- private static int roomLength = 8;
- private static int TELEPORT_INDEX;
- private static int LOC_INDEX;
- public static void traverseToDestination(String name) {
- if (!Player.isMoving()) {
- if (Player.getRSPlayer().getPosition().distanceTo(getTargetLocation(name)) > 3) {
- final RSObject[] door = Objects.findNearest(20, Filters.Objects.nameEquals("Door")
- .combine(Filters.Objects.inArea(createArea(getTargetLocation("Door"))), false)
- .combine(Filters.Objects.actionsContains("Open"), false));
- if (door.length > 0) {
- DezUtils.interactObject(door[0].getPosition(), null, new Condition(){
- @Override
- public boolean active() {
- return door.length < 1;
- }
- }, General.random(3400, 5400));
- }
- else if (PathFinding.aStarWalk(getTargetLocation(name))) {
- General.sleep(1200, 1800);
- }
- }
- else if (!Interfaces.isInterfaceValid(TELEPORT_INDEX)){
- DezUtils.interactObject(name, null, 10, new Condition(){
- @Override
- public boolean active() {
- return Interfaces.isInterfaceValid(TELEPORT_INDEX);
- }
- }, General.random(3500, 5400));
- }
- else {
- Clicking.click(Interfaces.get(TELEPORT_INDEX, LOC_INDEX));
- }
- }
- }
- private static RSArea createArea(RSTile dest) {
- return new RSArea(new RSTile(dest.getX() - roomWidth/2, dest.getY()),
- new RSTile (dest.getX() + roomWidth/2, dest.getY() - roomLength));
- }
- private static RSTile getTargetLocation(String name) {
- RSObject[] obj = Objects.findNearest(100, name);
- return obj.length > 0 ? obj[0].getPosition() : null;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement