Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.awt.*;
- import java.io.IOException;
- import java.net.URL;
- import javax.imageio.ImageIO;
- import org.rsbot.event.listeners.PaintListener;
- import org.rsbot.script.Script;
- import org.rsbot.script.ScriptManifest;
- import org.rsbot.script.wrappers.RSNPC;
- import org.rsbot.script.wrappers.RSObject;
- import org.rsbot.script.wrappers.RSTile;
- import org.rsbot.script.wrappers.RSTilePath;
- @ScriptManifest(
- authors = {"Rudie"},
- version = 1.0,
- keywords = ("money, moneymaking, shield, rudie"),
- description = "Takes Anti-Dragon Shields from The duke dude",
- name = "ShieldTaker3000"
- )
- public class ShieldTaker extends Script implements PaintListener {
- private final static int duke_ID = 741;
- private final static int door_ID = 36844;
- public int wtf = 1;
- private final static int dstairID = 36778;
- private final static int ustairID = 36777;
- private final static int booth_ID = 36786;
- private final static int shield_ID = 1540;
- long startTime;
- int oresMined = 0;
- private int shieldPrice = 0;
- RSTile[] duke = {new RSTile(3210, 3222, 1), new RSTile(3205, 3228, 1)};
- RSTilePath toDuke;
- RSTile[] toBank = {new RSTile(3205, 3228, 2), new RSTile(3208, 3220, 2)};
- RSTilePath toStairs;
- public boolean onStart() {
- mouse.setSpeed(random(3, 5));
- toStairs = walking.newTilePath(toBank);
- toDuke = walking.newTilePath(duke);
- startTime = System.currentTimeMillis();
- shieldPrice = grandExchange.lookup(shield_ID).getGuidePrice();
- log(new Color (255, 102, 0), "Welcome to ShieldTaker3000.");
- log(new Color (255, 102, 0), "Current Anti-Dragon shield price is: " + shieldPrice);
- log(new Color (255, 102, 0), "Please report bugs.");
- log(new Color (255, 102, 0), "Happy Botting");
- return true;
- }
- public int loop() {
- if(!inventory.isFull()) {
- if(atDuke()) {
- takeShield();
- } else if(atDown()) {
- goDown();
- } else {
- duke();
- stairs();
- }
- } else {
- if(inventory.isFull()) {
- if(atBank()) {
- doBank();
- } else if(atDoor()) {
- openDoor();
- } else if(atUp()) {
- goUp();
- } else {
- toDuke();
- toStairs();
- }
- }
- }
- return random(600, 800);
- }
- public void takeShield() {
- RSNPC duke = npcs.getNearest(duke_ID);
- if (duke != null) {
- if (interfaces.get(241).isValid()) {
- interfaces.clickContinue();
- sleep(800+(200 * wtf), 1000+(200 * wtf));
- AntiBanCamera();
- } else if (interfaces.get(230).getComponent(2).isValid()) {
- interfaces.get(230).getComponent(2).doClick();
- sleep(800+(200 * wtf), 1000+(200 * wtf));
- AntiBanCamera();
- } else if (interfaces.get(64).getComponent(5).isValid()) {
- interfaces.get(64).getComponent(5).doClick();
- sleep(800+(200 * wtf), 1000+(200 * wtf));
- AntiBanCamera();
- } else if (interfaces.get(242).getComponent(6).isValid()) {
- interfaces.get(242).getComponent(6).doClick();
- sleep(800+(200 * wtf), 1000+(200 * wtf));
- AntiBanCamera();
- } else if (interfaces.get(65).getComponent(6).isValid()) {
- interfaces.get(65).getComponent(6).doClick();
- sleep(800+(200 * wtf), 1000+(200 * wtf));
- oresMined++;
- AntiBanCamera();
- } else {
- duke.doAction("Talk-to");
- sleep(600+(200 * wtf), 800+(200 * wtf));
- AntiBanCamera();
- }
- }
- }
- private boolean atDuke() {
- RSNPC duke = npcs.getNearest(duke_ID);
- if(duke != null) {
- if(duke.isOnScreen()) {
- return true;
- }
- }
- return false;
- }
- private void duke() {
- toDuke.reverse();
- toDuke.traverse();
- toDuke.reverse();
- AntiBanCamera();
- }
- private void toDuke() {
- toDuke.traverse();
- AntiBanCamera();
- }
- private void stairs() {
- toStairs.reverse();
- toStairs.traverse();
- toStairs.reverse();
- AntiBanCamera();
- }
- private void toStairs() {
- toStairs.traverse();
- AntiBanCamera();
- }
- private void openDoor() {
- RSObject door = objects.getNearest(door_ID);
- if (door != null && getMyPlayer().getAnimation() == -1) {
- door.doAction("Open");
- AntiBanCamera();
- }
- sleep(1000, 2500);
- }
- private void goDown() {
- RSObject ladder = objects.getNearest(dstairID);
- if (ladder != null && getMyPlayer().getAnimation() == -1) {
- ladder.doAction("Climb-down");
- AntiBanCamera();
- }
- sleep(1000, 2500);
- }
- private void goUp() {
- RSObject ladder = objects.getNearest(ustairID);
- if (ladder != null && getMyPlayer().getAnimation() == -1) {
- ladder.doAction("Climb-up");
- AntiBanCamera();
- }
- sleep(1000, 2500);
- }
- private boolean atDoor() {
- RSObject door = objects.getNearest(door_ID);
- if(door != null) {
- if(door.isOnScreen()) {
- return true;
- }
- }
- return false;
- }
- private void doBank() {
- if(bank.isOpen()) {
- bank.depositAll();
- sleep(800, 1200);
- } else {
- bank.open();
- sleep(1800, 2200);
- }
- }
- private boolean atBank() {
- RSObject bank = objects.getNearest(booth_ID);
- if(bank != null) {
- if(bank.isOnScreen()) {
- return true;
- }
- }
- return false;
- }
- private boolean atDown() {
- RSObject ladder = objects.getNearest(dstairID);
- if(ladder != null) {
- if(ladder.isOnScreen()) {
- return true;
- }
- }
- return false;
- }
- private boolean atUp() {
- RSObject ladder = objects.getNearest(ustairID);
- if(ladder != null) {
- if(ladder.isOnScreen()) {
- return true;
- }
- }
- return false;
- }
- public void onFinish() {
- log(new Color (255, 102, 0), "Thank you for using ShieldTaker3000 By Rudie");
- }
- ////////////////////
- ///////paint///////
- //////////////////
- private Image getImage(String url) {
- try {
- return ImageIO.read(new URL(url));
- } catch(IOException e) {
- return null;
- }
- }
- private final Color color1 = new Color(255, 102, 0);
- private final Color color2 = new Color(255, 102, 0, 158);
- private final Color color3 = new Color(255, 255, 255);
- private final BasicStroke stroke1 = new BasicStroke(1);
- private final Font font1 = new Font("Comic Sans MS", 2, 32);
- private final Font font2 = new Font("Comic Sans MS", 0, 15);
- private final Font font3 = new Font("Comic Sans MS", 2, 23);
- private final Image img1 = getImage("http://i52.tinypic.com/2yx3nva.gif");
- public void onRepaint(Graphics g) {
- drawModel(g, npcs.getNearest(duke_ID), new Color (255, 102, 0), "Duke Horacio", Color.WHITE);
- drawModell(g, objects.getNearest(booth_ID), new Color (255, 102, 0), "Bank Booth", Color.WHITE);
- drawModell(g, objects.getNearest(dstairID), new Color (255, 102, 0), "Stairs", Color.WHITE);
- drawModell(g, objects.getNearest(ustairID), new Color (255, 102, 0), "Stairs", Color.WHITE);
- drawModell(g, objects.getNearest(door_ID), new Color (255, 102, 0), "Door", Color.WHITE);
- long millis = System.currentTimeMillis() - startTime;
- long hours = millis / (1000 * 60 * 60);
- millis -= hours * (1000 * 60 * 60);
- long minutes = millis / (1000 * 60);
- millis -= minutes * (1000 * 60);
- long seconds = millis / 1000;
- float oresec = 0;
- if((minutes > 0 || hours > 0 || seconds > 0)&& oresMined > 0) {
- oresec = ((float) oresMined)/(float)(seconds + (minutes*60) + (hours*60*60));
- }
- float oremin = oresec * 60;
- float orehour = oremin * 60;
- float profitsec = 0;
- if((minutes > 0 || hours > 0 || seconds > 0)&& oresMined*shieldPrice > 0) {
- profitsec = ((float) oresMined*shieldPrice)/(float)(seconds + (minutes*60) + (hours*60*60));
- }
- float profitmin = profitsec * 60;
- float profithour = profitmin * 60;
- Graphics2D g1 = (Graphics2D)g;
- g1.setFont(font1);
- g1.setColor(color1);
- g1.drawString("ShieldTaker3000", 2, 338);
- g1.setColor(color2);
- g1.fillRoundRect(546, 205, 190, 185, 16, 16);
- g1.setColor(color3);
- g1.setStroke(stroke1);
- g1.drawRoundRect(546, 205, 190, 185, 16, 16);
- g1.setFont(font2);
- g1.drawString("Shields Taked: " + oresMined, 547, 260);
- g1.drawString("Shields/H: " + (int) orehour, 547, 275);
- g1.drawString("Profit: " + oresMined*shieldPrice, 547, 290);
- g1.drawString("Profit/H: " + (int) profithour, 547, 305);
- g1.drawImage(img1, 579, 306, null);
- g1.setFont(font3);
- g1.setColor(color1);
- g1.drawString("ShieldTaker3000", 545, 225);
- g1.setFont(font2);
- g1.setColor(color3);
- g1.drawString("RunTime: " + hours + ":" + minutes + ":" + seconds, 547, 245);
- g1.setColor(new Color (255, 102, 0));
- g1.drawLine(0, (int)(mouse.getLocation().getY()), 800, (int)(mouse.getLocation().getY()));
- g1.drawLine((int)(mouse.getLocation().getX()), 0, (int)(mouse.getLocation().getX()), 800);
- }
- public void drawModel(Graphics g, RSNPC rsnpc, Color c, String s, Color tc) {
- if(rsnpc != null) {
- Polygon[] model = rsnpc.getModel().getTriangles();
- Point point = calc.tileToScreen(rsnpc.getLocation());
- for(Polygon p : model) {
- g.setColor(c);
- g.fillPolygon(p);
- g.setColor(c.darker());
- g.drawPolygon(p);
- }
- g.setColor(tc);
- g.drawString(s, point.x - 75, point.y - 35);
- }
- }
- public RSTile[] reversePath(RSTile[] other) {
- RSTile[] t = new RSTile[other.length];
- for (int i = 0; i < t.length; i++) {
- t[i] = other[other.length - i - 1];
- }
- return t;
- }
- public void drawModell(Graphics g, RSObject o, Color c, String s, Color tc) {
- if(o != null) {
- Polygon[] model = o.getModel().getTriangles();
- Point point = calc.tileToScreen(o.getLocation());
- for(Polygon p : model) {
- g.setColor(c);
- g.fillPolygon(p);
- g.setColor(c.darker());
- g.drawPolygon(p);
- }
- g.setColor(tc);
- g.drawString(s, point.x - 75, point.y - 35);
- }
- }
- public RSTile[] reversePath1(RSTile[] other) {
- RSTile[] t = new RSTile[other.length];
- for (int i = 0; i < t.length; i++) {
- t[i] = other[other.length - i - 1];
- }
- return t;
- }
- private void AntiBanCamera() {
- int randomNum = random(1, 50);
- if (randomNum == 1 || randomNum == 2 || randomNum == 3) {
- camera.moveRandomly(random(2000, 5500));
- }
- if (randomNum == 4 || randomNum == 5) {
- camera.setAngle(random(10, 40));
- }
- if (randomNum == 6) {
- camera.setPitch(random(40, 68));
- }
- if (randomNum == 7) {
- camera.setPitch(random(20, 45));
- }
- if (randomNum == 8) {
- camera.setPitch(random(68, 90));
- } else
- sleep(50, 70);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement