package scripts; import org.tribot.api.DynamicClicking; import org.tribot.api.General; import org.tribot.api.input.Mouse; import org.tribot.api2007.types.RSNPC; import org.tribot.api2007.types.RSObject; import org.tribot.api2007.types.RSTile; import org.tribot.script.Script; import org.tribot.api2007.NPCs; import org.tribot.api2007.Objects; import org.tribot.api2007.PathFinding; import org.tribot.api2007.Player; import scripts.CyphCakeStealer.State; public class CyphChickenKiller extends Script { public enum State { ATTACK_CHICKEN, WALKING ; } private State SCRIPT_STATE; public RSTile ChickenLoc = new RSTile (3233, 3295, 0); final int ChickenID[] = {2280, 2281}; final int CookingPot = 2097; public int ClosedGate[] = {2506, 2504}; RSNPC[] chicken = NPCs.findNearest(ChickenID); RSObject[] cgate = Objects.findNearest(20, ClosedGate); @Override public void run() { Mouse.setSpeed(General.random(150, 175)); while (true) { SCRIPT_STATE = getState(); switch (SCRIPT_STATE) { case ATTACK_CHICKEN: attackChicken(); break; case WALKING: walk(); break; } sleep(20, 40); } } private void walk() { if(ClosedGate != null){ DynamicClicking.clickRSObject(cgate[0], "Open"); }else{ println("We are not near chickens, moving to chickens."); Mouse.setSpeed(General.random(250, 300)); PathFinding.aStarWalk(ChickenLoc); DynamicClicking.clickRSObject(cgate[0], "Open"); } } private void attackChicken() { if(chicken.length > 0) if(chicken[0].isOnScreen() && !chicken[0].isInCombat() && !Player.isMoving() && !Player.getRSPlayer().isInCombat() ){ println("Attacking Chicken"); chicken[0].click("Attack"); } } public boolean atSpot(){ if(chicken.length > 0) if (chicken[0].isOnScreen()){ return true; } return false; } public State getState() { if(atSpot()){ return State.ATTACK_CHICKEN; }else{ return State.WALKING; } } }