Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import org.dreambot.api.methods.Calculations;
- import org.dreambot.api.methods.container.impl.bank.BankLocation;
- import org.dreambot.api.methods.container.impl.equipment.EquipmentSlot;
- import org.dreambot.api.methods.filter.Filter;
- import org.dreambot.api.methods.map.Area;
- import org.dreambot.api.methods.map.Tile;
- import org.dreambot.api.methods.skills.Skill;
- import org.dreambot.api.script.AbstractScript;
- import org.dreambot.api.script.Category;
- import org.dreambot.api.script.ScriptManifest;
- import org.dreambot.api.wrappers.interactive.GameObject;
- import org.dreambot.api.wrappers.interactive.NPC;
- import org.dreambot.api.wrappers.items.GroundItem;
- import org.dreambot.api.wrappers.widgets.WidgetChild;
- import java.awt.event.KeyEvent;
- @ScriptManifest(
- author = "ZeddyBoi",
- description = "Kills Cows, burys bones, will bank when inv full",
- category = Category.COMBAT,
- version = 1.1,
- name = "FallyCowKiller"
- )
- public class Main extends AbstractScript {
- Area KillArea = new Area(3024, 3310, 3041, 3298 );
- public static int ID_Cowhide = 1739;
- public static int ID_Bones = 526;
- public static final String COW = "Cow";
- public static final Filter<NPC> COW_FILTER = new Filter<NPC>() {
- @Override
- public boolean match(NPC npc) {
- if (npc == null ){
- return false;
- }
- return npc.getName().equals(COW) && !npc.isHealthBarVisible();
- }
- };
- @Override
- public int onLoop() {
- log("this script is running");
- //Check if the user has a full inventory
- if (getInventory().isFull()){
- if (getBank().isOpen()){
- getBank().depositAllItems();
- }
- else {
- sleep(2000);
- walk();
- getBank().open(BankLocation.FALADOR_EAST);
- }
- }
- //Check is user is in cow pen, then check if there's loot on the floor already
- else{
- //Check if the user is in the kill areas
- if (KillArea.contains(getLocalPlayer())){
- //check if there is bones and cowhide near
- GroundItem groundItemsToLoot = getGroundItems().closest(ID_Cowhide, ID_Bones);
- if (groundItemsToLoot != null&&groundItemsToLoot.exists())
- {
- log("Cowhide take");
- groundItemsToLoot.interact("Take");
- sleep(2500);
- if (getInventory().contains(ID_Bones)){
- getInventory().get(ID_Bones).interact("Bury");
- sleep(1000);
- return 1;
- }
- }
- else{
- NPC cow = getNpcs().closest(COW_FILTER);
- if (cow != null) {
- cow.interact("Attack");
- log("killing some cow");
- sleepUntil(() -> !getLocalPlayer().isInCombat(), 13500);
- }
- }
- }
- else{
- walk();
- sleep(5000);
- }
- }
- return 0;
- }
- private void walk(){
- if (getWalking().isRunEnabled()) {
- getWalking().walk(KillArea.getRandomTile());
- sleep(1500, 2000);
- randomSleep();
- } else {
- getWalking().walk(KillArea.getRandomTile());
- sleep(3500, 6000);
- randomSleep();
- }
- }
- private void randomSleep(){
- int randomSleepNumber = Calculations.random(0,20);
- if (randomSleepNumber<=4) {
- sleep(1200,1600);
- } else if (randomSleepNumber<=9) {
- sleep(1000,1400);
- } else if (randomSleepNumber<=16) {
- sleep(1300,1800);
- } else if (randomSleepNumber<=20) {
- sleep(2100,2500);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement