Advertisement
Leffen

Untitled

Aug 10th, 2019
329
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.94 KB | None | 0 0
  1. import org.dreambot.api.methods.Calculations;
  2. import org.dreambot.api.methods.container.impl.bank.BankLocation;
  3. import org.dreambot.api.methods.container.impl.equipment.EquipmentSlot;
  4. import org.dreambot.api.methods.filter.Filter;
  5. import org.dreambot.api.methods.map.Area;
  6. import org.dreambot.api.methods.map.Tile;
  7. import org.dreambot.api.methods.skills.Skill;
  8. import org.dreambot.api.script.AbstractScript;
  9. import org.dreambot.api.script.Category;
  10. import org.dreambot.api.script.ScriptManifest;
  11. import org.dreambot.api.wrappers.interactive.GameObject;
  12. import org.dreambot.api.wrappers.interactive.NPC;
  13. import org.dreambot.api.wrappers.items.GroundItem;
  14. import org.dreambot.api.wrappers.widgets.WidgetChild;
  15.  
  16.  
  17. import java.awt.event.KeyEvent;
  18.  
  19.  
  20. @ScriptManifest(
  21.         author = "ZeddyBoi",
  22.         description = "Kills Cows, burys bones, will bank when inv full",
  23.         category = Category.COMBAT,
  24.         version = 1.1,
  25.         name = "FallyCowKiller"
  26. )
  27.  
  28.  
  29. public class Main extends AbstractScript {
  30. Area KillArea = new Area(3024, 3310, 3041, 3298 );
  31. public static int ID_Cowhide = 1739;
  32. public static int ID_Bones = 526;
  33. public static final String COW = "Cow";
  34.  
  35.     public static final Filter<NPC> COW_FILTER = new Filter<NPC>() {
  36.         @Override
  37.         public boolean match(NPC npc) {
  38.             if (npc == null ){
  39.                 return false;
  40.             }
  41.             return npc.getName().equals(COW) && !npc.isHealthBarVisible();
  42.  
  43.         }
  44.     };
  45.  
  46.  
  47.     @Override
  48.     public int onLoop() {
  49.         log("this script is running");
  50.         //Check if the user has a full inventory
  51.         if (getInventory().isFull()){
  52.             if (getBank().isOpen()){
  53.                 getBank().depositAllItems();
  54.             }
  55.             else {
  56.                     sleep(2000);
  57.                     walk();
  58.                     getBank().open(BankLocation.FALADOR_EAST);
  59.             }
  60.         }
  61.         //Check is user is in cow pen, then check if there's loot on the floor already
  62.         else{
  63.             //Check if the user is in the kill areas
  64.             if (KillArea.contains(getLocalPlayer())){
  65.                 //check if there is bones and cowhide near
  66.                 GroundItem groundItemsToLoot = getGroundItems().closest(ID_Cowhide, ID_Bones);
  67.                 if (groundItemsToLoot != null&&groundItemsToLoot.exists())
  68.                 {
  69.                     log("Cowhide take");
  70.                     groundItemsToLoot.interact("Take");
  71.                     sleep(2500);
  72.                     if (getInventory().contains(ID_Bones)){
  73.                         getInventory().get(ID_Bones).interact("Bury");
  74.                         sleep(1000);
  75.                         return 1;
  76.                     }
  77.                 }
  78.  
  79.                 else{
  80.  
  81.                     NPC cow = getNpcs().closest(COW_FILTER);
  82.                     if (cow != null) {
  83.                         cow.interact("Attack");
  84.                         log("killing some cow");
  85.                         sleepUntil(() -> !getLocalPlayer().isInCombat(), 13500);
  86.                     }
  87.                 }
  88.             }
  89.             else{
  90.                 walk();
  91.                 sleep(5000);
  92.             }
  93.         }
  94.  
  95.         return 0;
  96.     }
  97.     private void walk(){
  98.         if (getWalking().isRunEnabled()) {
  99.             getWalking().walk(KillArea.getRandomTile());
  100.             sleep(1500, 2000);
  101.             randomSleep();
  102.         } else {
  103.             getWalking().walk(KillArea.getRandomTile());
  104.             sleep(3500, 6000);
  105.             randomSleep();
  106.         }
  107.     }
  108.     private void randomSleep(){
  109.         int randomSleepNumber = Calculations.random(0,20);
  110.         if (randomSleepNumber<=4) {
  111.             sleep(1200,1600);
  112.         } else if (randomSleepNumber<=9) {
  113.             sleep(1000,1400);
  114.         } else if (randomSleepNumber<=16) {
  115.             sleep(1300,1800);
  116.         } else if (randomSleepNumber<=20) {
  117.             sleep(2100,2500);
  118.         }
  119.     }
  120. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement