Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.awt.Color;
- import java.awt.Graphics;
- import java.awt.Graphics2D;
- import java.awt.Point;
- import java.awt.Toolkit;
- import java.lang.reflect.Field;
- import java.text.DecimalFormat;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.Random;
- import org.parabot.core.Context;
- import org.parabot.core.asm.wrappers.Interface;
- import org.parabot.environment.api.interfaces.Paintable;
- import org.parabot.environment.api.utils.Time;
- import org.parabot.environment.input.Keyboard;
- import org.parabot.environment.input.Mouse;
- import org.parabot.environment.scripts.Script;
- import org.parabot.environment.scripts.ScriptManifest;
- import org.parabot.environment.scripts.framework.LoopTask;
- import org.parabot.environment.scripts.framework.Strategy;
- import org.parabot.environment.scripts.Category;
- import org.rev317.min.Loader;
- import org.rev317.min.accessors.Client;
- import org.rev317.min.api.methods.Game;
- import org.rev317.min.api.methods.Inventory;
- import org.rev317.min.api.methods.Menu;
- import org.rev317.min.api.methods.Npcs;
- import org.rev317.min.api.methods.Players;
- import org.rev317.min.api.methods.SceneObjects;
- import org.rev317.min.api.methods.Skill;
- import org.rev317.min.api.wrappers.Item;
- import org.rev317.min.api.wrappers.Npc;
- import org.rev317.min.api.wrappers.Player;
- import org.rev317.min.api.wrappers.SceneObject;
- import org.rev317.min.api.wrappers.Tile;
- @ScriptManifest(author = ", ", category = Category.UTILITY, description = "", name = "Cannonball Maker", servers = { "" }, version = 2.0)
- public class CannonballMaker extends Script implements Paintable, LoopTask {
- enum State {
- IDLE, mine, smelt, makeBalls
- }
- State state = State.IDLE;
- public int iron = 441;
- public int coal = 454;
- public int bar = 2354;
- public int ballsMade = 0;
- long rTimer = 0;
- public void getState() {
- try {
- if (Inventory.getCount(coal) < 10 || Inventory.getCount(iron) < 10) {
- if (Inventory.getCount(bar) <= 0) {
- state = State.mine;
- return;
- }
- }
- if (Inventory.getCount(coal) == 10
- && Inventory.getCount(iron) == 10
- || Inventory.getCount(bar) != 10) {
- state = State.smelt;
- return;
- }
- if (Inventory.getCount(bar) > 0 && Inventory.getCount(coal) == 0
- && Inventory.getCount(iron) == 0) {
- state = State.makeBalls;
- return;
- }
- } catch (Exception e) {
- }
- }
- public void handleState() {
- try {
- if (state == State.mine) {
- mine();
- return;
- }
- if (state == State.smelt) {
- smelt();
- return;
- }
- if (state == State.makeBalls) {
- makeBalls();
- return;
- }
- } catch (Exception e) {
- }
- }
- public void makeBalls() {
- if (Game.getOpenBackDialogId() == 2492) {
- Mouse.getInstance().click(265, 430, true);
- sleep(2000);
- ballsMade += 200;
- return;
- }
- for (Item i : Inventory.getItems()) {
- if (i.getId() == bar) {
- Menu.sendAction(447, 2353, i.getSlot(), 3214);
- sleep(1000);
- Mouse.getInstance().click(385, 165, true);
- sleep(2000);
- return;
- }
- }
- }
- public void smelt() {
- final Player me = Players.getMyPlayer();
- if (!atFurnace()) {
- teleFurnace();
- return;
- }
- if (me.getAnimation() == 899) {
- sleep(4000);
- return;
- }
- if (Game.getOpenBackDialogId() == 2400) {
- Mouse.getInstance().click(230, 400, false);
- sleep(500);
- Mouse.getInstance().click(230, 464, true);
- sleep(2000);
- return;
- }
- SceneObject[] obj = SceneObjects.getNearest(11666);
- SceneObject fur = obj[0];
- fur.interact(0);
- sleep(2500);
- }
- public boolean atMine() {
- final Player me = Players.getMyPlayer();
- if (me.getLocation().getY() > 9730 && me.getLocation().getY() < 9800) {
- return true;
- }
- return false;
- }
- public boolean atFurnace() {
- final Player me = Players.getMyPlayer();
- if (me.getLocation().getY() > 3360 && me.getLocation().getY() < 3390) {
- return true;
- }
- return false;
- }
- public void teleMine() {
- final Player me = Players.getMyPlayer();
- if (me.getAnimation() == 8939) {
- sleep(2000);
- return;
- }
- if (Game.getOpenBackDialogId() == 2492) {
- Mouse.getInstance().click(265, 415, true);
- sleep(3000);
- return;
- }
- /*
- * for (Item i : Inventory.getItems()) { if (i.getId() == 14605) {
- * Menu.sendAction(454, i.getId() - 1, i.getSlot(), 3214); sleep(2000);
- * return;
- *
- * } }
- */
- Mouse.getInstance().click(new Point(745, 185));// tab
- sleep(200);
- Mouse.getInstance().click(715, 290, true);
- sleep(750);
- Mouse.getInstance().click(635, 190, true);// backpack
- // sleep(2000);
- }
- public void teleFurnace() {
- final Player me = Players.getMyPlayer();
- if (me.getAnimation() == 8939) {
- sleep(2000);
- return;
- }
- if (Game.getOpenBackDialogId() == 2492) {
- Mouse.getInstance().click(265, 430, true);
- sleep(3000);
- return;
- }
- /*
- * for (Item i : Inventory.getItems()) { if (i.getId() == 14605) {
- * Menu.sendAction(454, i.getId() - 1, i.getSlot(), 3214); sleep(2000);
- * return;
- *
- * } }
- */
- Mouse.getInstance().click(new Point(745, 185));// tab
- sleep(200);
- Mouse.getInstance().click(715, 290, true);
- sleep(750);
- Mouse.getInstance().click(635, 190, true);// backpack
- // sleep(2000);
- }
- public int[] rockID() {
- if (Inventory.getCount(iron) < 10)
- return ironRocks;
- if (Inventory.getCount(coal) < 10)
- return coalRocks;
- return coalRocks;
- }
- public int[] ironRocks = { 2093 };
- public int[] coalRocks = { 2097, 2096 };
- public void mine() {
- final Player me = Players.getMyPlayer();
- if (!atMine()) {
- teleMine();
- return;
- }
- SceneObject[] obj = SceneObjects.getNearest(rockID());
- SceneObject rock = obj[0];
- if (rock.getLocation().distanceTo() > 1) {
- rock.interact(0);
- sleep(1500);
- return;
- }
- if (me.getAnimation() == 6746 || me.getAnimation() == 12188) {
- // sleep(1500);
- return;
- }
- rock.interact(0);
- sleep(1500);
- }
- Npc rNPC;
- public boolean atIsland() {
- final Player me = Players.getMyPlayer();
- if (me.getLocation().getX() >= 2500 && me.getLocation().getX() <= 2600) {
- if (me.getLocation().getY() >= 4730
- && me.getLocation().getX() <= 4800) {
- return true;
- }
- }
- return false;
- }
- public void handleRandom() {
- if (Game.getOpenInterfaceId() == 23350) {
- Mouse.getInstance().click(486, 27, true);
- sleep(400);
- return;
- }
- if (atIsland()) {
- for (SceneObject o : SceneObjects.getSceneObjects()) {
- if (o != null) {
- if (o.getId() == 8987) {
- o.interact(0);
- sleep(5000);
- }
- }
- }
- System.out.println("AT BOBS ISLAND!");
- return;
- }
- if (!atIsland()) {
- if (rNPC.getDef().getId() == 3022 || rNPC.getDef().getId() == 3351
- || rNPC.getDef().getId() == 409) {
- System.out.println("Genie called on us. EXITING.");
- System.exit(0);
- return;
- }
- if (rNPC != null) {
- rNPC.interact(0);
- rTimer = System.currentTimeMillis();
- // randCount++;
- sleep(3000);
- System.out.println("INTERACTING WITH " + rNPC.getDef().getId()
- + "");
- return;
- }
- return;
- }
- }
- @Override
- public void paint(Graphics g1) {
- Graphics2D g = (Graphics2D) g1;
- g.setColor(Color.WHITE);
- g.drawString("GP/HR: " + perHour(ballsMade * 9000) + "", 595, 310);
- g.drawString("loc: " + Players.getMyPlayer().getLocation().getX()
- + ", " + Players.getMyPlayer().getLocation().getY() + "", 595,
- 330);
- g.drawString("State: " + state + "", 595, 350);
- g.drawString("Mouse: " + Mouse.getInstance().getPoint().x + ", "
- + Mouse.getInstance().getPoint().y + "", 595, 370);
- // TODO Auto-generated method stub
- }
- public String runTime(long i) {
- DecimalFormat nf = new DecimalFormat("00");
- long millis = System.currentTimeMillis() - i;
- long hours = millis / (1000 * 60 * 60);
- millis -= hours * (1000 * 60 * 60);
- long minutes = millis / (1000 * 60);
- millis -= minutes * (1000 * 60);
- long seconds = millis / 1000;
- return nf.format(hours) + ":" + nf.format(minutes) + ":"
- + nf.format(seconds);
- }
- public static long startTime = 0;
- public String perHour(int gained) {
- return formatNumber((int) ((gained) * 3600000D / (System
- .currentTimeMillis() - startTime)));
- }
- public String formatNumber(int start) {
- DecimalFormat nf = new DecimalFormat("0.0");
- double i = start;
- if (i >= 1000000) {
- return nf.format((i / 1000000)) + "m";
- }
- if (i >= 1000) {
- return nf.format((i / 1000)) + "k";
- }
- return "" + start;
- }
- public boolean inRandom() {
- if (atIsland()) {
- return true;
- }
- for (Npc n : Npcs.getNearest(randoms)) {
- if (n != null && n.getLocation().distanceTo() <= 1) {
- return true;
- }
- }
- for (Npc n : Npcs.getNpcs()) {
- if (n.getDef().getId() > 8000 && n.getLocation().distanceTo() <= 1) {
- return true;
- }
- }
- return false;
- }
- private int[] randoms = { 410, 3117, 3022, 3351, 409, 18169, 13817 };
- @Override
- public int loop() {
- final Player me = Players.getMyPlayer();
- if (startTime == 0) {
- startTime = System.currentTimeMillis();
- }
- if (rTimer > 0) {
- if (System.currentTimeMillis() - rTimer > 50000) {
- rTimer = 0;
- }
- }
- if (inRandom() && rTimer == 0) {
- handleRandom();
- return 0;
- }
- for (Npc n : Npcs.getNpcs()) {
- if (n != null && n.getLocation().distanceTo() <= 1) {
- if (n.getDef().getId() > 8000) {
- rNPC = n;
- // sleep(500);
- Runnable runnable1 = (Runnable) Toolkit.getDefaultToolkit()
- .getDesktopProperty("win.sound.exclamation");
- if (runnable1 != null)
- runnable1.run();
- }
- }
- }
- for (Npc n : Npcs.getNearest(randoms)) {
- if (n != null && n.getLocation().distanceTo() <= 1) {
- rNPC = n;
- // sleep(500);
- Runnable runnable1 = (Runnable) Toolkit.getDefaultToolkit()
- .getDesktopProperty("win.sound.exclamation");
- if (runnable1 != null)
- runnable1.run();
- }
- }
- for (Item i : Inventory.getItems()) {
- if (i.getId() > 1610 && i.getId() < 1635) {
- Menu.sendAction(847, i.getId() - 1, i.getSlot(), 3214);
- sleep(1000);
- return 0;
- }
- if (Inventory.getCount(bar) == 10 && i.getId() == coal) {
- Menu.sendAction(847, i.getId() - 1, i.getSlot(), 3214);
- sleep(1000);
- return 0;
- }
- if (Inventory.getCount(bar) == 10 && i.getId() == iron) {
- Menu.sendAction(847, i.getId() - 1, i.getSlot(), 3214);
- sleep(1000);
- return 0;
- }
- if (Inventory.getCount(coal) > 10 && i.getId() == coal) {
- Menu.sendAction(847, i.getId() - 1, i.getSlot(), 3214);
- sleep(1000);
- return 0;
- }
- if (Inventory.getCount(iron) > 10 && i.getId() == iron) {
- Menu.sendAction(847, i.getId() - 1, i.getSlot(), 3214);
- sleep(1000);
- return 0;
- }
- }
- getState();
- handleState();
- // TODO Auto-generated method stub
- return 0;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement