- //<editor-fold defaultstate="collapsed" desc="Imports">
- import org.rsbot.script.wrappers.*;
- import org.rsbot.script.methods.*;
- import org.rsbot.script.util.*;
- import org.rsbot.event.listeners.*;
- import org.rsbot.script.Script;
- import org.rsbot.script.ScriptManifest;
- import org.rsbot.script.wrappers.RSNPC;
- import org.rsbot.script.util.WindowUtil;
- import org.rsbot.event.events.MessageEvent;
- import org.rsbot.util.GlobalConfiguration;
- import org.rsbot.script.wrappers.RSTile;
- import org.rsbot.script.wrappers.RSObject;
- import org.rsbot.script.wrappers.Web;
- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
- import java.awt.*;
- import java.lang.String.*;
- import java.io.*;
- import java.awt.Graphics;
- import java.awt.Graphics2D;
- import java.awt.Point;
- import java.awt.Rectangle;
- import java.awt.Color;
- import java.awt.Font;
- import java.awt.event.*;
- import java.io.BufferedReader;
- import java.io.InputStreamReader;
- import java.io.IOException;
- import java.net.URL;
- import java.net.URLConnection;
- //</editor-fold>
- @ScriptManifest(authors = "xScriptx", keywords = "Fisher AIO", name = "xScriptx Fisher", version = 1.21, description = "PowerFisher/Banks at Barbarian Village")
- public class xScriptxFisher extends Script implements PaintListener, MessageListener, MouseListener {
- Constants constants = new Constants();
- private class Constants {
- private RSTile BARBARIAN_VILLAGE_BANK_TILE = new RSTile(3094, 3490);
- private RSTile BARBARIAN_VILLAGE_SPOT_TILE = new RSTile(3109, 3433);
- private int BARBARIAN_VILLAGE_SPOT = 328;
- private RSArea BARBARIAN_VILLAGE_BANK_AREA = new RSArea(new RSTile(3092, 3489), new RSTile(3094, 3494));
- private RSArea BARBARIAN_VILLAGE_FISHING_AREA = new RSArea(new RSTile(3099, 3422), new RSTile(3110, 3437));
- private int BARBARIAN_VILLAGE_BANK = 26972;
- ////////////////////////////////////////////////////////////
- private int RESOURCE_FEATHER = 314;
- private int RESOURCE_BAIT = 313;
- ////////////////////////////////////////////////////////////
- private int FLY_FISHING_ANIMATION = 623;
- private int FLY_FISHING_DROP_EXCEPTIONS[] = {309, 314};
- private int FLY_FISHING_ROD = 309;
- ////////////////////////////////////////////////////////////
- private int FISHING_ROD = 307;
- private int FISHING_DROP_EXCEPTIONS[] = {307, 313};
- ////////////////////////////////////////////////////////////
- private String ACTION_LURE = "Lure";
- private String ACTION_BAIT = "Bait";
- char UP = KeyEvent.VK_UP;
- char DOWN = KeyEvent.VK_DOWN;
- }
- private enum State {
- Fish, AntiBan, Drop, Sleep, Bank
- };
- //<editor-fold defaultstate="collapsed" desc="Variables & etc">
- //<editor-fold defaultstate="collapsed" desc="String">
- private String version = "1.2";
- private String status = "Loading...";
- private static final String UPDATER_FILE_NAME = "xScriptxFisher.java"; //Updater Configuration
- private static final String UPDATER_URL = "http://xscriptx.atwebpages.com/fisher/xScriptxFisher.java"; //Updater Configuration
- private String ACTION;//Setting Variable
- //</editor-fold>
- //<editor-fold defaultstate="collapsed" desc="Long">
- private long millis;
- private long hours;
- private long minutes;
- private long seconds;
- private long lastCheck;
- private long startTime = 0;
- //</editor-fold>
- //<editor-fold defaultstate="collapsed" desc="Int">
- private int startlevel;
- private int timeToLevelHours = 0;
- private int timeToLevelMins = 0;
- private int levelsGained;
- private int timeToLevelSecs = 0;
- private int Catches = 0;
- private int startexp;
- private int SPOT;//Setting Variable
- private int DROPPING_EXCEPTIONS[];//Setting Variable
- private int RESOURCE;//Setting Variable
- private int BANK_ID; //Setting Variable
- private int TOOL; //Setting Variable
- private int ANIMATION;//Setting Variable
- //</editor-fold>
- //<editor-fold defaultstate="collapsed" desc="Boolean">
- private boolean hide = false;
- private boolean logout = false;
- private boolean AUTO_UPDATER = true; //Enable:True | Disable:False
- private boolean startScript = false;
- private boolean BANK;//Setting Variable
- //Setting Variable
- //</editor-fold>
- //<editor-fold defaultstate="collapsed" desc="float">
- private float expGained = 0;
- //</editor-fold>
- //<editor-fold defaultstate="collapsed" desc="Double">
- private double xpsec;
- private double xpmin;
- private double xphour;
- private double currentVer = xScriptxFisher.class.getAnnotation(ScriptManifest.class).version();
- //</editor-fold>
- //<editor-fold defaultstate="collapsed" desc="Misc">
- private static final Pattern UPDATER_VERSION_PATTERN = Pattern.compile("version\\s*=\\s*([0-9.]+)");
- private Rectangle closeFixed = new Rectangle(480, 459, 30, 13), close = new Rectangle(466, 111, 30, 13);
- private Point mousePoint;
- private RSArea areaBank;//Setting Variable
- private RSArea areaSpot;//Setting Variable
- private static Web web = null;
- private RSTile bankTile;
- private RSTile spotTile;
- private gui gui;
- //</editor-fold>
- //</editor-fold>
- //<editor-fold defaultstate="collapsed" desc="Paint">
- public void onRepaint(Graphics g1) {
- if (game.isLoggedIn()) {
- if (startexp == 0) {
- startexp = skills.getCurrentExp(Skills.FISHING);
- }
- if (startlevel == 0) {
- startlevel = skills.getCurrentLevel(Skills.FISHING);
- }
- int CurrentWcLevel = skills.getCurrentLevel(Skills.FISHING);
- expGained = skills.getCurrentExp(Skills.FISHING) - startexp;
- levelsGained = CurrentWcLevel - startlevel;
- millis = System.currentTimeMillis() - startTime;
- hours = millis / (1000 * 60 * 60);
- millis -= hours * (1000 * 60 * 60);
- minutes = millis / (1000 * 60);
- millis -= minutes * (1000 * 60);
- seconds = millis / 1000;
- xpsec = 0;
- long expToLevel = skills.getExpToNextLevel(Skills.FISHING);
- millis = System.currentTimeMillis() - startTime;
- final int percent = skills.getPercentToNextLevel(Skills.FISHING);
- int nextlevel = CurrentWcLevel + 1;
- if ((minutes > 0 || hours > 0 || seconds > 0) && expGained > 0) {
- xpsec = ((float) expGained) / (float) (seconds + (minutes * 60) + (hours * 60 * 60));
- xpmin = xpsec * 60;
- xphour = xpmin * 60;
- xphour = Math.round(xphour * 100.0) / 100.0;
- timeToLevelHours = (int) (expToLevel / xphour);
- timeToLevelMins = (int) (expToLevel / xpmin) % 60;
- timeToLevelSecs = (int) (expToLevel / xpsec) % 60;
- }
- Graphics2D g = (Graphics2D) g1;
- g.setColor(Color.blue);
- g.drawLine(0, (int) (mouse.getLocation().getY()), 2000, (int) (mouse.getLocation().getY()));
- g.drawLine((int) (mouse.getLocation().getX()), 0, (int) (mouse.getLocation().getX()), 2000);
- int yCoordBoost = game.isFixed() ? 340 : 0;
- if (!hide) {
- g.setColor(new Color(223, 214, 179, 240));
- g.setStroke(new BasicStroke(1));
- g.drawRect(9, yCoordBoost + 6, 500, 127);
- g.fillRect(9, yCoordBoost + 6, 500, 127);
- g.setFont(new Font("SansSerif", 0, 13));
- g.setColor(new Color(1, 1, 1));
- g.drawString("Runtime: " + c2(hours) + ":" + c2(minutes) + ":" + c2(seconds), 10, yCoordBoost + 20);
- drawStringRight(g, "v" + version, 505, yCoordBoost + 20);
- g.drawString("Current level: " + CurrentWcLevel, 10, yCoordBoost + 40);
- g.drawString("Exp gained: " + expGained, 10, yCoordBoost + 60);
- g.drawString("Exp/h: " + xphour, 10, yCoordBoost + 80);
- g.drawString("Levels gained: " + levelsGained, 10, yCoordBoost + 100);
- g.drawString("Catches: " + Catches, 10, yCoordBoost + 120);
- g.setFont(new Font("SansSerif", 1, 12));
- drawStringCentred(g, status, 300, yCoordBoost + 120);
- g.setColor(new Color(223, 214, 179));
- g.fillRoundRect(249, yCoordBoost + 77, 100, 11, 20, 0);
- g.setColor(Color.blue);
- g.fillRoundRect(249, yCoordBoost + 77, percent, 11, 20, 0);
- g.setColor(Color.black);
- g.drawRoundRect(249, yCoordBoost + 77, 100, 11, 20, 0);
- g.drawRoundRect(249, yCoordBoost + 77, percent, 11, 20, 0);
- drawStringCentred(g, percent + "% to level " + nextlevel + " (" + c2(timeToLevelHours) + ":" + c2(timeToLevelMins) + ":" + c2(timeToLevelSecs) + ")", 300, yCoordBoost + 105);
- g.setColor(Color.red);
- g.setFont(new Font("SansSerif", 1, 30));
- drawStringCentred(g, "xScriptx", 300, yCoordBoost + 40);
- g.setColor(new Color(38, 153, 67));
- g.setFont(new Font("SansSerif", 1, 15));
- drawStringCentred(g, "Universal Fisher", 300, yCoordBoost + 65);
- }
- if (game.isFixed()) {
- g.setColor(Color.BLACK);
- g.drawRect(closeFixed.x, closeFixed.y, closeFixed.width, closeFixed.height);
- g.setColor(hide ? Color.green : Color.red);
- g.fillRect(closeFixed.x + 1, closeFixed.y + 1, closeFixed.width - 1, closeFixed.height - 1);
- g.setColor(Color.white);
- g.setFont(new Font("SansSerif", 0, 20));
- g.drawString("_", 489, 467);
- } else {
- g.setColor(Color.BLACK);
- g.drawRect(close.x, close.y, close.width, close.height);
- g.setColor(hide ? Color.green : Color.red);
- g.fillRect(close.x + 1, close.y + 1, close.width - 1, close.height - 1);
- g.setColor(Color.white);
- g.setFont(new Font("SansSerif", 0, 20));
- g.drawString("_", 476, 118);
- }
- }
- }
- //</editor-fold>
- //<editor-fold defaultstate="collapsed" desc="Methods">
- public String c2(double d) {
- return (d < 10 ? "0" : "") + (int) d;
- }
- public void drawStringCentred(Graphics2D g, String s, double x, double y) {
- g.drawString(s, (float) (x - (new Canvas()).getFontMetrics(g.getFont()).stringWidth(s) / 2), (float) y);
- }
- public void drawStringRight(Graphics2D g, String s, double x, double y) {
- g.drawString(s, (float) (x - (new Canvas()).getFontMetrics(g.getFont()).stringWidth(s)), (float) y);
- }
- private State getState() {
- if (game.isLoggedIn()) {
- if (getMyPlayer().getAnimation() == ANIMATION) {
- status = "Fishing...";
- }
- mouse.setSpeed(random(5, 7));
- if (BANK && (inventory.isFull() || !atSpot())) {
- return State.Bank;
- } else if (!inventory.isFull() && getMyPlayer().isIdle() && !getMyPlayer().isMoving() && atSpot()) {
- status = "Looking for spot...";
- return State.Fish;
- } else if (inventory.isFull() && !BANK) {
- status = "Dropping...";
- return State.Drop;
- } else if (!atSpot() && !BANK && !inventory.isFull()) {
- status = "Walking to spot...";
- return State.Bank;
- }
- return State.AntiBan;
- }
- return State.Sleep;
- }
- private void walk(String x) {
- RSTile tile = null;
- if (x.equals("bank")) {
- tile = bankTile;
- } else if (x.equals("spot")) {
- tile = spotTile;
- }
- try {
- if (web == null) {
- web = walking.getWebPath(tile);
- } else {
- if (x.equals("bank")) {
- while (!atBank()) {
- status = "Walking to bank...";
- if (!web.traverse()) {
- web = null;
- }
- sleep(100);
- }
- web = null;
- } else if (x.equals("spot")) {
- while (!atSpot()) {
- status = "Walking to fishing spot...";
- if (!web.traverse()) {
- web = null;
- }
- sleep(100);
- }
- web = null;
- }
- }
- } catch (Exception e) {
- }
- }
- public void messageReceived(MessageEvent xScriptx) {
- try {
- String lastMessage = xScriptx.getMessage().toLowerCase();
- if (lastMessage.contains("you catch")) {
- Catches++;
- } else if (lastMessage.contains("you've just advanced a fishing")) {
- log(getMyPlayer().getName() + " has just advanced a fishing level.");
- }
- } catch (java.lang.Throwable e) {
- }
- }
- private boolean checkForUpdates() {
- try {
- double newVer = -1;
- URL url = new URL(UPDATER_URL);
- BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
- String line, lines = "";
- Matcher m;
- while ((line = in.readLine()) != null) {
- lines += line + "\n";
- if ((m = UPDATER_VERSION_PATTERN.matcher(line)).find()) {
- newVer = Double.parseDouble(m.group(1));
- break;
- }
- }
- if (newVer < 0) {
- in.close();
- log(Color.red, "Unable to find the new version - update failed");
- return false;
- }
- if (currentVer == newVer) {
- in.close();
- log(Color.green, "You have the latest script version");
- return false;
- }
- log(Color.BLUE, "Update found! Downloading version " + newVer);
- String scriptFilePath = GlobalConfiguration.Paths.getScriptsSourcesDirectory() + "\\" + UPDATER_FILE_NAME;
- PrintWriter out = new PrintWriter(scriptFilePath);
- out.print(lines);
- while ((line = in.readLine()) != null) {
- out.println(line);
- }
- out.close();
- in.close();
- log("Successfully saved " + UPDATER_FILE_NAME + " to " + GlobalConfiguration.Paths.getScriptsSourcesDirectory());
- log.warning("Please compile scripts to run the latest version.");
- logout = true;
- return true;
- } catch (IOException e) {
- log(e.toString());
- log("Update failed.");
- }
- return false;
- }
- public void messages() {
- URLConnection url = null;
- BufferedReader in = null;
- try {
- url = new URL("http://xscriptx.atwebpages.com/fisher/messages.txt").openConnection();
- in = new BufferedReader(new InputStreamReader(url.getInputStream()));
- String message = in.readLine();
- if (message != null) {
- log.warning(message);
- }
- in.close();
- } catch (IOException e) {
- }
- }
- private void bankHandler() {
- try {
- if (!atBank() && inventory.isFull() && !bank.isOpen()) {
- walk("bank");
- }
- if (atBank() && inventory.isFull()) {
- sleep(random(800, 1100));
- useBank();
- }
- if (!atSpot() && !inventory.isFull()) {
- walk("spot");
- }
- } catch (Exception e) {
- }
- }
- public void useBank() {
- try {
- status = "I am Banking";
- RSObject banker = objects.getNearest(BANK_ID);
- if (banker != null && !banker.isOnScreen()) {
- camera.turnTo(banker);
- }
- if (!bank.isOpen() && banker != null) {
- banker.doAction("Use-quickly");
- sleep(random(800, 1000));
- }
- if (bank.isOpen() && inventory.isFull()) {
- bank.depositAllExcept(DROPPING_EXCEPTIONS);
- sleep(random(500, 1000));
- }
- /*
- if (bank.isOpen() && !inventory.isFull()) {
- bank.close();
- sleep(random(800, 1000));
- }
- */
- } catch (Exception e) {
- sleep(random(1000, 2500));
- }
- }
- private boolean atBank() {
- return areaBank.contains(getMyPlayer().getLocation());
- }
- private boolean atSpot() {
- return areaSpot.contains(getMyPlayer().getLocation());
- }
- //</editor-fold>
- //<editor-fold defaultstate="collapsed" desc="Antiban Methods">
- private void CheckExp() {
- if (game.getCurrentTab() != 1 && (System.currentTimeMillis() - lastCheck > 900000)) {
- mouse.setSpeed(random(4, 7));
- game.openTab(1);
- sleep(random(350, 500));
- skills.doHover(Skills.INTERFACE_FISHING);
- sleep(random(1000, 2000));
- game.openTab(4);
- mouse.moveSlightly();
- mouse.setSpeed(random(5, 7));
- lastCheck = System.currentTimeMillis();
- }
- }
- private void cameraHandler() {
- try {
- int randomNum = random(0, 45);
- if (randomNum == 16 || randomNum == 12) {
- status = "Antiban...";
- if (random(0, 5) == 4) {
- keyboard.pressKey(constants.DOWN);
- sleep(random(20, 500));
- keyboard.releaseKey(constants.DOWN);
- } else {
- keyboard.pressKey(constants.UP);
- sleep(random(20, 500));
- keyboard.releaseKey(constants.UP);
- }
- camera.setAngle(random(100, 200));
- camera.setPitch(random(45, 90));
- camera.setAngle(random(100, 300));
- }
- if (randomNum == 10 || randomNum == 15) {
- status = "Antiban...";
- CheckExp();
- camera.setAngle(random(10, 100));
- }
- if (randomNum == 6) {
- status = "Antiban...";
- camera.setPitch(random(60, 90));
- camera.setAngle(random(50, 86));
- }
- if (randomNum == 17) {
- status = "Antiban...";
- camera.setPitch(random(50, 90));
- }
- if (randomNum == 38) {
- status = "Antiban...";
- CheckExp();
- camera.setPitch(random(68, 90));
- } else {
- sleep(random(50, 70));
- }
- } catch (Exception e) {
- }
- }
- private void mouseHandler() {
- try {
- if (random(0, 50) == 0) {
- int randomNUM = random(1, 3);
- for (int i = 0; i < randomNUM; i++) {
- status = "Antiban...";
- mouse.move(random(100, 800), random(100, 600));
- sleep(random(200, 700));
- }
- mouse.move(random(0, 800), 647, 50, 100);
- sleep(random(100, 1500));
- mouse.move(random(75, 400), random(75, 400), 30);
- }
- if (random(0, 50) == 0) {
- status = "Antiban...";
- Point currentPosition = mouse.getLocation();
- mouse.move(random(0, 700), random(0, 400), 20);
- sleep(random(100, 300));
- mouse.move(currentPosition, 40, 40);
- }
- int randomNum = random(0, 50);
- if (randomNum <= 6) {
- int randomNum2 = random(0, 10);
- if (randomNum2 == 3) {
- status = "Checking Level...";
- CheckExp();
- mouse.moveSlightly();
- cameraHandler();
- mouse.setSpeed(random(5, 7));
- } else {
- sleep(random(500, 800));
- }
- }
- if (randomNum == 30 || randomNum == 31) {
- status = "Antiban...";
- mouse.moveOffScreen();
- sleep(random(1000, 2500));
- }
- if (randomNum >= 55) {
- status = "Antiban...";
- mouse.setSpeed(random(4, 8));
- mouse.moveSlightly();
- mouse.moveRandomly(65, 250);
- mouse.setSpeed(random(6, 7));
- } else {
- sleep(random(50, 800));
- }
- sleep(random(100, 800));
- if (randomNum == 36) {
- status = "Antiban...";
- mouse.move(random(678, 728), random(213, 232));
- }
- } catch (Exception e) {
- }
- }
- //</editor-fold>
- //<editor-fold defaultstate="collapsed" desc="Events">
- public void mouseClicked(MouseEvent xScriptx) {
- mousePoint = xScriptx.getPoint();
- if (close.contains(mousePoint) && !hide) {
- hide = true;
- } else if (close.contains(mousePoint) && hide) {
- hide = false;
- }
- mousePoint = xScriptx.getPoint();
- if (closeFixed.contains(mousePoint) && !hide) {
- hide = true;
- } else if (closeFixed.contains(mousePoint) && hide) {
- hide = false;
- }
- }
- public void mouseEntered(MouseEvent xScriptx) {
- }
- public void mouseExited(MouseEvent xScriptx) {
- }
- public void mouseReleased(MouseEvent xScriptx) {
- }
- public void mousePressed(MouseEvent xScriptx) {
- }
- //</editor-fold>
- @Override
- public boolean onStart() {
- messages();
- if (AUTO_UPDATER) {
- checkForUpdates();
- }
- if (logout) {
- return false;
- }
- gui = new gui();
- gui.setVisible(true);
- while (!startScript) {
- sleep(100);
- }
- //SET UP THE VARIABLES
- if (gui.jComboBox3.getSelectedItem().equals("PowerFish")) {
- BANK = false;
- } else if (gui.jComboBox3.getSelectedItem().equals("Bank")) {
- BANK = true;
- }
- if (gui.jComboBox1.getSelectedItem().equals("Barbarian Village") ){
- SPOT = constants.BARBARIAN_VILLAGE_SPOT;
- areaBank = constants.BARBARIAN_VILLAGE_BANK_AREA;
- areaSpot = constants.BARBARIAN_VILLAGE_FISHING_AREA;
- BANK_ID = constants.BARBARIAN_VILLAGE_BANK;
- bankTile = constants.BARBARIAN_VILLAGE_BANK_TILE;
- spotTile = constants.BARBARIAN_VILLAGE_SPOT_TILE;
- }
- if (gui.jComboBox2.getSelectedItem().equals("Fly Fish Rod")){
- DROPPING_EXCEPTIONS = constants.FLY_FISHING_DROP_EXCEPTIONS;
- ANIMATION = constants.FLY_FISHING_ANIMATION;
- TOOL = constants.FLY_FISHING_ROD;
- RESOURCE = constants.RESOURCE_FEATHER;
- ACTION = constants.ACTION_LURE;
- }else if (gui.jComboBox2.getSelectedItem().equals("Fishing Rod")){
- DROPPING_EXCEPTIONS = constants.FISHING_DROP_EXCEPTIONS;
- ANIMATION = constants.FLY_FISHING_ANIMATION;
- TOOL = constants.FISHING_ROD;
- RESOURCE = constants.RESOURCE_BAIT;
- ACTION = constants.ACTION_BAIT;
- }
- ////////////////////////////////////////
- startTime = System.currentTimeMillis();
- mouse.setSpeed(random(5, 7));
- log("You have selected " + gui.jComboBox3.getSelectedItem() + " mode.");
- return true;
- }
- public int loop() {
- try {
- if (game.isLoggedIn()) {
- if (inventory.getCount(RESOURCE) == 0 && inventory.getInterface().isValid()) {
- game.logout(true);
- log.warning("Feather/Bait has finished!");
- return -1;
- }
- if (!inventory.contains(TOOL) && inventory.getInterface().isValid()) {
- game.logout(true);
- log.warning("No net/rod/cage/harpoon found.");
- return -1;
- }
- switch (getState()) {
- case Fish:
- sleep(random(300, 600));
- RSNPC FishingSpot = npcs.getNearest(SPOT);
- if (FishingSpot != null && FishingSpot.isOnScreen() && calc.distanceBetween(getMyPlayer().getLocation(), FishingSpot.getLocation()) > 3) {
- walking.walkTileOnScreen(FishingSpot.getLocation());
- FishingSpot.doAction(ACTION);
- mouse.moveRandomly(50, 300);
- }else
- if (FishingSpot != null && FishingSpot.isOnScreen() && calc.distanceBetween(getMyPlayer().getLocation(), FishingSpot.getLocation()) < 4) {
- FishingSpot.doAction(ACTION);
- mouse.moveRandomly(50, 300);
- } else if (FishingSpot != null && !FishingSpot.isOnScreen() && calc.distanceBetween(getMyPlayer().getLocation(), FishingSpot.getLocation()) > 6) {
- if (walking.getEnergy() > 30 && !walking.isRunEnabled()) {
- walking.setRun(true);
- }
- walking.walkTileMM(FishingSpot.getLocation());
- sleep(random(500, 800));
- } else if (FishingSpot != null) {
- camera.turnTo(FishingSpot);
- }
- sleep(random(1500, 2000));
- return (random(100, 200));
- case AntiBan:
- int rand = random(0, 20);
- if (rand == 0) {
- mouseHandler();
- cameraHandler();
- }
- sleep(random(800, 2000));
- if (getMyPlayer().getAnimation() == ANIMATION) {
- status = "Fishing...";
- }
- return (random(100, 200));
- case Drop:
- sleep(random(800, 1200));
- try {
- if (gui.jSlider1.getValue() == 1) {
- mouse.setSpeed(random(5, 7));
- }
- if (gui.jSlider1.getValue() == 2) {
- mouse.setSpeed(random(4, 6));
- }
- if (gui.jSlider1.getValue() == 3) {
- mouse.setSpeed(random(1, 3));
- }
- if (random(0, 8) != 2) {
- inventory.dropAllExcept(DROPPING_EXCEPTIONS);
- } else {
- inventory.dropAllExcept(true, DROPPING_EXCEPTIONS);
- }
- mouse.setSpeed(random(4, 6));
- } catch (Exception e) {
- }
- mouse.setSpeed(random(6, 7));
- sleep(random(500, 800));
- return (random(100, 200));
- case Bank:
- bankHandler();
- case Sleep:
- return (random(100, 200));
- }
- }
- } catch (Exception e) {
- }
- return (random(100, 200));
- }
- @Override
- public void onFinish() {
- }
- public class gui extends javax.swing.JFrame {
- /** Creates new form gui */
- public gui() {
- initComponents();
- }
- /** This method is called from within the constructor to
- * initialize the form.
- * WARNING: Do NOT modify this code. The content of this method is
- * always regenerated by the Form Editor.
- */
- @SuppressWarnings("unchecked")
- private void initComponents() {
- this.setTitle("xScriptx Fisher");
- WindowUtil.position(this);
- label5 = new java.awt.Label();
- jButton1 = new javax.swing.JButton();
- jComboBox1 = new javax.swing.JComboBox();
- label3 = new java.awt.Label();
- jComboBox2 = new javax.swing.JComboBox();
- label4 = new java.awt.Label();
- jComboBox3 = new javax.swing.JComboBox();
- label1 = new java.awt.Label();
- label2 = new java.awt.Label();
- jLabel1 = new javax.swing.JLabel();
- jLabel2 = new javax.swing.JLabel();
- jLabel3 = new javax.swing.JLabel();
- jSlider1 = new javax.swing.JSlider();
- jSeparator1 = new javax.swing.JSeparator();
- setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE);
- label5.setText("Fast");
- jButton1.setFont(new java.awt.Font("Verdana", 1, 14));
- jButton1.setForeground(new java.awt.Color(255, 0, 0));
- jButton1.setText("Start!");
- jButton1.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- jButton1ActionPerformed(evt);
- }
- });
- // jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Barbarian Village", "MORE LOCATIONS", "Item 3", "Item 4" }));
- jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Barbarian Village"}));
- jComboBox1.addItemListener(new java.awt.event.ItemListener() {
- public void itemStateChanged(java.awt.event.ItemEvent evt) {
- jComboBox1ItemStateChanged(evt);
- }
- });
- label3.setText("Human");
- jComboBox2.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Fly Fish Rod", "Fishing Rod"}));
- label4.setText("Optimal");
- jComboBox3.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "PowerFish", "Bank"}));
- label1.setAlignment(java.awt.Label.CENTER);
- label1.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
- label1.setFont(new java.awt.Font("Verdana", 1, 24));
- label1.setForeground(new java.awt.Color(0, 204, 204));
- label1.setText("xScriptx Fisher");
- label2.setFont(new java.awt.Font("Verdana", 2, 12));
- label2.setText("Version " + version);
- jLabel1.setFont(new java.awt.Font("Verdana", 0, 14));
- jLabel1.setText("Fishing Location:");
- jLabel2.setFont(new java.awt.Font("Verdana", 0, 14));
- jLabel2.setText("Fishing Style: ");
- jLabel3.setFont(new java.awt.Font("Verdana", 0, 14));
- jLabel3.setText("Fishing Mode:");
- jSlider1.setMaximum(3);
- jSlider1.setMinimum(1);
- jSlider1.setValue(2);
- javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
- getContentPane().setLayout(layout);
- layout.setHorizontalGroup(
- layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGap(0, 414, Short.MAX_VALUE)
- .addComponent(label1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 414, Short.MAX_VALUE)
- .addGroup(layout.createSequentialGroup()
- .addContainerGap()
- .addComponent(label2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addContainerGap(331, Short.MAX_VALUE))
- .addGroup(layout.createSequentialGroup()
- .addContainerGap()
- .addComponent(jLabel1)
- .addContainerGap(285, Short.MAX_VALUE))
- .addGroup(layout.createSequentialGroup()
- .addContainerGap()
- .addComponent(jComboBox1, 0, 394, Short.MAX_VALUE)
- .addContainerGap())
- .addGroup(layout.createSequentialGroup()
- .addContainerGap()
- .addComponent(jLabel2)
- .addContainerGap(304, Short.MAX_VALUE))
- .addGroup(layout.createSequentialGroup()
- .addContainerGap()
- .addComponent(jComboBox2, 0, 394, Short.MAX_VALUE)
- .addContainerGap())
- .addGroup(layout.createSequentialGroup()
- .addContainerGap()
- .addComponent(jLabel3)
- .addContainerGap(307, Short.MAX_VALUE))
- .addGroup(layout.createSequentialGroup()
- .addContainerGap()
- .addComponent(jComboBox3, 0, 394, Short.MAX_VALUE)
- .addContainerGap())
- .addGroup(layout.createSequentialGroup()
- .addContainerGap()
- .addComponent(jSlider1, javax.swing.GroupLayout.DEFAULT_SIZE, 394, Short.MAX_VALUE)
- .addContainerGap())
- .addGroup(layout.createSequentialGroup()
- .addContainerGap()
- .addComponent(label3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addGap(129, 129, 129)
- .addComponent(label4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 145, Short.MAX_VALUE)
- .addComponent(label5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addContainerGap())
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
- .addContainerGap()
- .addComponent(jSeparator1, javax.swing.GroupLayout.DEFAULT_SIZE, 394, Short.MAX_VALUE)
- .addContainerGap())
- .addGroup(layout.createSequentialGroup()
- .addContainerGap()
- .addComponent(jButton1)
- .addContainerGap(327, Short.MAX_VALUE))
- );
- layout.setVerticalGroup(
- layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGap(0, 390, Short.MAX_VALUE)
- .addGroup(layout.createSequentialGroup()
- .addComponent(label1, javax.swing.GroupLayout.PREFERRED_SIZE, 54, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(label2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addGap(15, 15, 15)
- .addComponent(jLabel1)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(jLabel2)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(jComboBox2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(jLabel3)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(jComboBox3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addGap(18, 18, 18)
- .addComponent(jSlider1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(label4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(label3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(label5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(jButton1)
- .addContainerGap(21, Short.MAX_VALUE))
- );
- pack();
- }
- private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
- gui.setVisible(false);
- startScript = true;
- }
- private void jComboBox1ItemStateChanged(java.awt.event.ItemEvent evt) {
- jComboBox2.removeAllItems();
- if (jComboBox1.getSelectedItem().equals("Barbarian Village")){
- jComboBox2.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Fly Fish Rod", "Fishing Rod"}));
- }
- }
- /**
- * @param args the command line arguments
- */
- // Variables declaration - do not modify
- private javax.swing.JButton jButton1;
- private javax.swing.JComboBox jComboBox1;
- private javax.swing.JComboBox jComboBox2;
- private javax.swing.JComboBox jComboBox3;
- private javax.swing.JLabel jLabel1;
- private javax.swing.JLabel jLabel2;
- private javax.swing.JLabel jLabel3;
- private javax.swing.JSeparator jSeparator1;
- private javax.swing.JSlider jSlider1;
- private java.awt.Label label1;
- private java.awt.Label label2;
- private java.awt.Label label3;
- private java.awt.Label label4;
- private java.awt.Label label5;
- // End of variables declaration
- }
- //<editor-fold defaultstate="collapsed" desc="OLD GUI">
- /*
- * OLD GUI - NO LOCATION SUPPORT
- */
- /*
- public class gui extends javax.swing.JFrame {
- public gui() {
- initComponents();
- }
- @SuppressWarnings("unchecked")
- private void initComponents() {
- this.setTitle("xScriptx - Barbarian Village Fisher");
- WindowUtil.position(this);
- label1 = new java.awt.Label();
- label2 = new java.awt.Label();
- jComboBox1 = new javax.swing.JComboBox();
- jLabel1 = new javax.swing.JLabel();
- jSlider1 = new javax.swing.JSlider();
- jLabel2 = new javax.swing.JLabel();
- jLabel3 = new javax.swing.JLabel();
- jLabel4 = new javax.swing.JLabel();
- button1 = new java.awt.Button();
- setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE);
- setResizable(false);
- label1.setAlignment(java.awt.Label.CENTER);
- label1.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
- label1.setFont(new java.awt.Font("Verdana", 1, 36));
- label1.setForeground(new java.awt.Color(255, 51, 51));
- label1.setText("xScriptx");
- label2.setAlignment(java.awt.Label.CENTER);
- label2.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
- label2.setFont(new java.awt.Font("Verdana", 1, 24));
- label2.setForeground(new java.awt.Color(102, 255, 102));
- label2.setText("Barbarian Village Fisher");
- jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[]{"PowerFish", "Bank"}));
- jComboBox1.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- jComboBox1ActionPerformed(evt);
- }
- });
- jLabel1.setText("Select Mode:");
- jSlider1.setMaximum(3);
- jSlider1.setMinimum(1);
- jSlider1.setPaintTicks(true);
- jSlider1.setSnapToTicks(true);
- jSlider1.setValue(2);
- jLabel2.setText("Optimized");
- jLabel3.setText("Human");
- jLabel4.setText("Fast");
- button1.setFont(new java.awt.Font("Verdana", 1, 18));
- button1.setLabel("Start");
- button1.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- button1ActionPerformed(evt);
- }
- });
- javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
- getContentPane().setLayout(layout);
- layout.setHorizontalGroup(
- layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(layout.createSequentialGroup().addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(label1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 273, Short.MAX_VALUE).addGroup(layout.createSequentialGroup().addContainerGap().addComponent(label2, javax.swing.GroupLayout.DEFAULT_SIZE, 263, Short.MAX_VALUE)).addGroup(layout.createSequentialGroup().addContainerGap().addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(layout.createSequentialGroup().addGap(10, 10, 10).addComponent(jSlider1, javax.swing.GroupLayout.DEFAULT_SIZE, 253, Short.MAX_VALUE)).addGroup(layout.createSequentialGroup().addComponent(jLabel1).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED).addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, 152, javax.swing.GroupLayout.PREFERRED_SIZE)))).addGroup(layout.createSequentialGroup().addContainerGap().addComponent(jLabel3).addGap(78, 78, 78).addComponent(jLabel2).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 84, Short.MAX_VALUE).addComponent(jLabel4)).addGroup(layout.createSequentialGroup().addGap(93, 93, 93).addComponent(button1, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE))).addContainerGap()));
- layout.setVerticalGroup(
- layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(layout.createSequentialGroup().addComponent(label1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(label2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE).addComponent(jLabel1).addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(jSlider1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE).addGap(4, 4, 4).addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE).addComponent(jLabel3).addComponent(jLabel2).addComponent(jLabel4)).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(button1, javax.swing.GroupLayout.PREFERRED_SIZE, 37, javax.swing.GroupLayout.PREFERRED_SIZE).addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
- pack();
- }
- private void jComboBox1ActionPerformed(java.awt.event.ActionEvent evt) {
- }
- private void button1ActionPerformed(java.awt.event.ActionEvent evt) {
- gui.setVisible(false);
- startScript = true;
- }
- private java.awt.Button button1;
- private javax.swing.JComboBox jComboBox1;
- private javax.swing.JLabel jLabel1;
- private javax.swing.JLabel jLabel2;
- private javax.swing.JLabel jLabel3;
- private javax.swing.JLabel jLabel4;
- private javax.swing.JSlider jSlider1;
- private java.awt.Label label1;
- private java.awt.Label label2;
- }
- */
- //</editor-fold>
- }