Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.scripts;
- import java.awt.Color;
- import java.awt.Graphics;
- import java.awt.Point;
- import com.kbot2.handlers.eventSystem.eventListeners.PaintListener;
- import com.kbot2.scriptable.Script;
- import com.kbot2.scriptable.methods.Calculations;
- import com.kbot2.scriptable.methods.data.Skills;
- import com.kbot2.scriptable.methods.wrappers.GroundItem;
- import com.kbot2.scriptable.methods.wrappers.NPC;
- public class WarbosFighter extends Script implements PaintListener {
- // GUI VARIABLES \\
- boolean CAN_START = false;
- private SETTINGS SETTINGS;
- boolean FOOD_B2P = false;
- // NPC VARIABLES \\
- int NPC_ID[];
- // PICKUP VARIABLES \\
- boolean DO_PICKUP = true;
- boolean DO_WALK = true;
- int PICKUP_ID[];
- int ARROW_ID[];
- // FOOD VARIABLES \\
- int[] FOOD_ID = { 1895, 1893, 1891, 4293, 2142, 291, 2140, 3228, 9980,
- 7223, 6297, 6293, 6295, 6299, 7521, 9988, 7228, 2878, 7568, 2343,
- 1861, 13433, 315, 325, 319, 3144, 347, 355, 333, 339, 351, 329,
- 3381, 361, 10136, 5003, 379, 365, 373, 7946, 385, 397, 391, 3369,
- 3371, 3373, 2309, 2325, 2333, 2327, 2331, 2323, 2335, 7178, 7180,
- 7188, 7190, 7198, 7200, 7208, 7210, 7218, 7220, 2003, 2011, 2289,
- 2291, 2293, 2295, 2297, 2299, 2301, 2303, 1891, 1893, 1895, 1897,
- 1899, 1901, 7072, 7062, 7078, 7064, 7084, 7082, 7066, 7068, 1942,
- 6701, 6703, 7054, 6705, 7056, 7060, 2130, 1985, 1993, 1989, 1978,
- 5763, 5765, 1913, 5747, 1905, 5739, 1909, 5743, 1907, 1911, 5745,
- 2955, 5749, 5751, 5753, 5755, 5757, 5759, 5761, 2084, 2034, 2048,
- 2036, 2217, 2213, 2205, 2209, 2054, 2040, 2080, 2277, 2225, 2255,
- 2221, 2253, 2219, 2281, 2227, 2223, 2191, 2233, 2092, 2032, 2074,
- 2030, 2281, 2235, 2064, 2028, 2187, 2185, 2229, 6883, 1971, 4608,
- 1883, 1885, 1942 };
- int EAT_AT = 20;
- int B2P_ID = 8015;
- int BONES_ID = 526;
- // OTHER VARIABLES \\
- String Status;
- long startTime;
- // SKILL VARIABLES \\
- int STR_START_XP;
- int ATK_START_XP;
- int DEF_START_XP;
- int HP_START_XP;
- int RNG_START_XP;
- public boolean active() {
- return true;
- }
- @Override
- public boolean onStart() {
- Status = "Starting Up";
- log("Welcome to Warbos Fighter");
- SETTINGS = new SETTINGS();
- SETTINGS.setVisible(true);
- startTime = System.currentTimeMillis();
- return true;
- }
- public String getName() {
- return "Warbos Fighter";
- }
- public String getAuthor() {
- return "xWaRbOx";
- }
- public String getDescription() {
- return "Kills Monsters";
- }
- /* Your created methods, specific for this script goes under here */
- /* Main Loop */
- @SuppressWarnings("static-access")
- public int loop() {
- if (CAN_START) {
- if (interfaces.canContinue()) {
- interfaces.clickContinue();
- }
- if (random(1, 20) >= 15) {
- setMouseSpeed(Calculations.random(0.5, 2.0));
- }
- if (getMyPlayer().getInteracting() == null) {
- GroundItem Pickup = groundItems.getClosestItem(10, PICKUP_ID);
- if (Pickup != null) {
- if (DO_PICKUP) {
- Status = "Picking Up Items";
- if (Pickup == null) {
- return 1;
- }
- if (Pickup != null) {
- if (DO_WALK) {
- if (distanceTo(Pickup.getLocation()) > 5) {
- walking.walkToMM(Pickup.getLocation());
- }
- }
- if (getMyPlayer().isMoving())
- return random(100, 200);
- Pickup.doAction("Take");
- sleep(100, 200);
- }
- }
- } else {
- Status = "Attacking NPC";
- NPC monster = npcs.getClosest(35, NPC_ID);
- if (monster == null) {
- return random(1, 2);
- }
- if (monster != null && !monster.isInCombat()) {
- if (DO_WALK) {
- if (distanceTo(monster.getLocation()) > 8) {
- walking.walkToMM(monster.getLocation());
- }
- }
- if (getMyPlayer().isMoving()) {
- return random(100, 200);
- }
- clickNpc(monster);
- if (getMyPlayer().isInCombat())
- return random(100, 200);
- }
- }
- if (skills.getLevel(Skills.SKILL_HITPOINTS) <= random(
- EAT_AT + 2, EAT_AT - 2)) {
- log("Eating | Hitpoints Is Currently At"
- + skills.getLevel(Skills.SKILL_HITPOINTS));
- if (inventory.contains(FOOD_ID) && !FOOD_B2P) {
- gameScreen.openTab(gameScreen.TAB_INVENTORY);
- inventory.atItem("Eat", FOOD_ID);
- } else if (!inventory.contains(FOOD_ID)) {
- stopAllScripts();
- } else if (inventory.contains(B2P_ID) && FOOD_B2P) {
- gameScreen.openTab(gameScreen.TAB_INVENTORY);
- if (inventory.contains(FOOD_ID)) {
- inventory.atItem("Eat", FOOD_ID);
- } else if (!inventory.contains(FOOD_ID)
- && inventory.contains(BONES_ID)) {
- inventory.atItem("Break", B2P_ID);
- sleep(2000, 3000);
- inventory.atItem("Eat", FOOD_ID);
- } else if (!inventory.contains(BONES_ID)) {
- stopAllScripts();
- } else if (!inventory.contains(B2P_ID)) {
- stopAllScripts();
- }
- }
- }
- return random(100, 200);
- }
- }
- return random(100, 200);
- }
- int clickNpc(NPC j) {
- if (j == null)
- return random(100, 200);
- if (!getMyPlayer().isInCombat() && j != null && !j.isInCombat()
- && j.getInteracting() == null) {
- Point p = j.getScreenPos();
- mouse.clickMouse(p, 5, 5, true);
- }
- return random(100, 200);
- }
- public void onRepaint(Graphics w) {
- int STR_CURR_XP = skills.getExperience(Skills.SKILL_STRENGTH);
- int STR_XP_GAIN = STR_CURR_XP - STR_START_XP;
- if (STR_START_XP == 0) {
- STR_START_XP = skills.getExperience(Skills.SKILL_STRENGTH);
- }
- int ATK_CURR_XP = skills.getExperience(Skills.SKILL_ATTACK);
- int ATK_XP_GAIN = ATK_CURR_XP - ATK_START_XP;
- if (ATK_START_XP == 0) {
- ATK_START_XP = skills.getExperience(Skills.SKILL_ATTACK);
- }
- int HP_CURR_XP = skills.getExperience(Skills.SKILL_HITPOINTS);
- int HP_XP_GAIN = HP_CURR_XP - HP_START_XP;
- if (HP_START_XP == 0) {
- HP_START_XP = skills.getExperience(Skills.SKILL_HITPOINTS);
- }
- int DEF_CURR_XP = skills.getExperience(Skills.SKILL_DEFENSE);
- int DEF_XP_GAIN = DEF_CURR_XP - DEF_START_XP;
- if (DEF_START_XP == 0) {
- DEF_START_XP = skills.getExperience(Skills.SKILL_DEFENSE);
- }
- int RNG_CURR_XP = skills.getExperience(Skills.SKILL_RANGE);
- int RNG_XP_GAIN = RNG_CURR_XP - RNG_START_XP;
- if (RNG_START_XP == 0) {
- RNG_START_XP = skills.getExperience(Skills.SKILL_RANGE);
- }
- // Timing
- 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;
- long minutes2 = minutes + (hours * 60);
- // Exp Per Hour
- int exp = DEF_XP_GAIN + ATK_XP_GAIN + STR_XP_GAIN + HP_XP_GAIN;
- float xpsec = 0;
- if ((minutes > 0 || hours > 0 || seconds > 0) && exp > 0) {
- xpsec = ((float) exp)
- / (float) (seconds + (minutes * 60) + (hours * 60 * 60));
- }
- float xpmin = xpsec * 60;
- float xphour = xpmin * 60;
- int heightR = 65;
- w.setColor(new Color(255, 0, 102, 100));
- w.fill3DRect(25, 25, 218, heightR, true);
- w.setColor(new Color(255, 0, 102, 100));
- w.fill3DRect(30, 30, 208, heightR - 10, true);
- w.setColor(Color.white);
- int y = 43;
- w.drawString("Status: " + Status, 34, y);
- y += 18;
- w
- .drawString(
- "Runtime: " + hours + ":" + minutes + ":" + seconds,
- 34, y);
- y += 18;
- w.drawString("XP Per Hour: " + xphour, 34, y);
- if (STR_XP_GAIN > 0) {
- y += 18;
- heightR += 18;
- w.drawString("Strength XP Gain: " + STR_XP_GAIN, 34, y);
- }
- if (ATK_XP_GAIN > 0) {
- y += 18;
- heightR += 18;
- w.drawString("Attack XP Gain: " + ATK_XP_GAIN, 34, y);
- }
- if (DEF_XP_GAIN > 0) {
- y += 18;
- heightR += 18;
- w.drawString("Defense XP Gain: " + DEF_XP_GAIN, 34, y);
- }
- if (HP_XP_GAIN > 0) {
- y += 18;
- heightR += 18;
- w.drawString("Hitpoints XP Gain: " + HP_XP_GAIN, 34, y);
- }
- }
- // Methods ######################### \\
- public int[] extractIntegers(String text) {
- int[] ints = null;
- try {
- text = text.replaceAll(" ", "");
- String[] strInts = text.split(",");
- ints = new int[strInts.length];
- for (int a = 0; a < strInts.length; a++) {
- ints[a] = Integer.parseInt(strInts[a]);
- }
- } catch (Exception e) {
- System.out.print("extractIntegers(String) error: " + e);
- }
- return ints;
- }
- public class SETTINGS extends javax.swing.JFrame {
- private static final long serialVersionUID = -5896374116248081302L;
- public SETTINGS() {
- initComponents();
- }
- private void initComponents() {
- jScrollBar1 = new javax.swing.JScrollBar();
- jPanel1 = new javax.swing.JPanel();
- jLabel1 = new javax.swing.JLabel();
- jTextField1 = new javax.swing.JTextField();
- myStartButton = new javax.swing.JButton();
- jPanel2 = new javax.swing.JPanel();
- jTextField3 = new javax.swing.JTextField();
- jLabel3 = new javax.swing.JLabel();
- jCheckBox1 = new javax.swing.JCheckBox();
- jPanel3 = new javax.swing.JPanel();
- jLabel5 = new javax.swing.JLabel();
- jTextField5 = new javax.swing.JTextField();
- jCheckBox2 = new javax.swing.JCheckBox();
- jCheckBox3 = new javax.swing.JCheckBox();
- jLabel2 = new javax.swing.JLabel();
- jLabel4 = new javax.swing.JLabel();
- setTitle("Warbos Fighter GUI");
- setResizable(false);
- jPanel1.setBorder(javax.swing.BorderFactory
- .createTitledBorder("Settings"));
- jLabel1.setText("NPC ID(s)");
- javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(
- jPanel1);
- jPanel1.setLayout(jPanel1Layout);
- jPanel1Layout
- .setHorizontalGroup(jPanel1Layout
- .createParallelGroup(
- javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(
- jPanel1Layout
- .createSequentialGroup()
- .addContainerGap()
- .addComponent(jLabel1)
- .addPreferredGap(
- javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(
- jTextField1,
- javax.swing.GroupLayout.DEFAULT_SIZE,
- 301, Short.MAX_VALUE)
- .addContainerGap()));
- jPanel1Layout
- .setVerticalGroup(jPanel1Layout
- .createParallelGroup(
- javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(
- jPanel1Layout
- .createSequentialGroup()
- .addContainerGap(
- javax.swing.GroupLayout.DEFAULT_SIZE,
- Short.MAX_VALUE)
- .addGroup(
- jPanel1Layout
- .createParallelGroup(
- javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(
- jLabel1)
- .addComponent(
- jTextField1,
- javax.swing.GroupLayout.PREFERRED_SIZE,
- javax.swing.GroupLayout.DEFAULT_SIZE,
- javax.swing.GroupLayout.PREFERRED_SIZE))
- .addGap(62, 62, 62)));
- myStartButton.setText("Start Script");
- myStartButton
- .addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(
- java.awt.event.ActionEvent evt) {
- startActionPerformed(evt);
- }
- });
- jPanel2.setBorder(javax.swing.BorderFactory
- .createTitledBorder("Eating"));
- jLabel3.setText("EAT AT HP");
- jCheckBox1.setText("Enable B2P");
- javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(
- jPanel2);
- jPanel2.setLayout(jPanel2Layout);
- jPanel2Layout
- .setHorizontalGroup(jPanel2Layout
- .createParallelGroup(
- javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(
- jPanel2Layout
- .createSequentialGroup()
- .addComponent(jLabel3)
- .addPreferredGap(
- javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addGroup(
- jPanel2Layout
- .createParallelGroup(
- javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(
- jPanel2Layout
- .createSequentialGroup()
- .addComponent(
- jCheckBox1)
- .addContainerGap())
- .addComponent(
- jTextField3,
- javax.swing.GroupLayout.DEFAULT_SIZE,
- 317,
- Short.MAX_VALUE))));
- jPanel2Layout
- .setVerticalGroup(jPanel2Layout
- .createParallelGroup(
- javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(
- jPanel2Layout
- .createSequentialGroup()
- .addGroup(
- jPanel2Layout
- .createParallelGroup(
- javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(
- jLabel3)
- .addComponent(
- jTextField3,
- javax.swing.GroupLayout.PREFERRED_SIZE,
- javax.swing.GroupLayout.DEFAULT_SIZE,
- javax.swing.GroupLayout.PREFERRED_SIZE))
- .addPreferredGap(
- javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(jCheckBox1)));
- jPanel3.setBorder(javax.swing.BorderFactory
- .createTitledBorder("Settings"));
- jLabel5.setText("PICKUP ID(s)");
- jCheckBox2.setText("Disable Pickup");
- jCheckBox3.setText("Disable Minimap Walking?");
- javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(
- jPanel3);
- jPanel3.setLayout(jPanel3Layout);
- jPanel3Layout
- .setHorizontalGroup(jPanel3Layout
- .createParallelGroup(
- javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(
- jPanel3Layout
- .createSequentialGroup()
- .addContainerGap()
- .addGroup(
- jPanel3Layout
- .createParallelGroup(
- javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(
- jCheckBox3)
- .addGroup(
- jPanel3Layout
- .createSequentialGroup()
- .addComponent(
- jLabel5)
- .addPreferredGap(
- javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(
- jTextField5,
- javax.swing.GroupLayout.DEFAULT_SIZE,
- 279,
- Short.MAX_VALUE))
- .addComponent(
- jCheckBox2))
- .addContainerGap()));
- jPanel3Layout
- .setVerticalGroup(jPanel3Layout
- .createParallelGroup(
- javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(
- jPanel3Layout
- .createSequentialGroup()
- .addComponent(jCheckBox2)
- .addGap(9, 9, 9)
- .addGroup(
- jPanel3Layout
- .createParallelGroup(
- javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(
- jLabel5)
- .addComponent(
- jTextField5,
- javax.swing.GroupLayout.PREFERRED_SIZE,
- javax.swing.GroupLayout.DEFAULT_SIZE,
- javax.swing.GroupLayout.PREFERRED_SIZE))
- .addPreferredGap(
- javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(jCheckBox3)));
- jLabel2.setText("Warbos Fighter v2");
- jLabel4
- .setText("Welcome To Warbos Fghter v2 - Fill Out The Fields Below To Begin Autofighting");
- javax.swing.GroupLayout layout = new javax.swing.GroupLayout(
- getContentPane());
- getContentPane().setLayout(layout);
- layout
- .setHorizontalGroup(layout
- .createParallelGroup(
- javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(
- layout
- .createSequentialGroup()
- .addContainerGap()
- .addGroup(
- layout
- .createParallelGroup(
- javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(
- javax.swing.GroupLayout.Alignment.TRAILING,
- layout
- .createSequentialGroup()
- .addGap(
- 10,
- 10,
- 10)
- .addComponent(
- jLabel2)
- .addPreferredGap(
- javax.swing.LayoutStyle.ComponentPlacement.RELATED,
- 202,
- Short.MAX_VALUE)
- .addComponent(
- myStartButton))
- .addComponent(
- jPanel3,
- javax.swing.GroupLayout.DEFAULT_SIZE,
- javax.swing.GroupLayout.DEFAULT_SIZE,
- Short.MAX_VALUE)
- .addComponent(
- jPanel2,
- javax.swing.GroupLayout.DEFAULT_SIZE,
- javax.swing.GroupLayout.DEFAULT_SIZE,
- Short.MAX_VALUE)
- .addComponent(
- jPanel1,
- javax.swing.GroupLayout.DEFAULT_SIZE,
- javax.swing.GroupLayout.DEFAULT_SIZE,
- Short.MAX_VALUE)
- .addComponent(
- jLabel4))
- .addContainerGap()));
- layout
- .setVerticalGroup(layout
- .createParallelGroup(
- javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(
- javax.swing.GroupLayout.Alignment.TRAILING,
- layout
- .createSequentialGroup()
- .addContainerGap(15,
- Short.MAX_VALUE)
- .addComponent(jLabel4)
- .addPreferredGap(
- javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(
- jPanel1,
- javax.swing.GroupLayout.PREFERRED_SIZE,
- 73,
- javax.swing.GroupLayout.PREFERRED_SIZE)
- .addGap(1, 1, 1)
- .addComponent(
- jPanel2,
- javax.swing.GroupLayout.PREFERRED_SIZE,
- javax.swing.GroupLayout.DEFAULT_SIZE,
- javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(
- javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(
- jPanel3,
- javax.swing.GroupLayout.PREFERRED_SIZE,
- javax.swing.GroupLayout.DEFAULT_SIZE,
- javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(
- javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addGroup(
- layout
- .createParallelGroup(
- javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(
- myStartButton)
- .addComponent(
- jLabel2))
- .addContainerGap()));
- pack();
- }
- private javax.swing.JCheckBox jCheckBox1;
- private javax.swing.JCheckBox jCheckBox2;
- private javax.swing.JCheckBox jCheckBox3;
- private javax.swing.JLabel jLabel1;
- private javax.swing.JLabel jLabel2;
- private javax.swing.JLabel jLabel3;
- private javax.swing.JLabel jLabel4;
- private javax.swing.JLabel jLabel5;
- private javax.swing.JPanel jPanel1;
- private javax.swing.JPanel jPanel2;
- private javax.swing.JPanel jPanel3;
- private javax.swing.JScrollBar jScrollBar1;
- private javax.swing.JTextField jTextField1;
- private javax.swing.JTextField jTextField3;
- private javax.swing.JTextField jTextField5;
- private javax.swing.JButton myStartButton;
- public void startActionPerformed(java.awt.event.ActionEvent evt) {
- setVisible(false);
- CAN_START = true;
- NPC_ID = extractIntegers(SETTINGS.jTextField1.getText());
- PICKUP_ID = extractIntegers(SETTINGS.jTextField5.getText());
- EAT_AT = Integer.parseInt(SETTINGS.jTextField3.getText());
- if (SETTINGS.jCheckBox1.isSelected()) {
- log("B2P Enabled!");
- FOOD_B2P = true;
- }
- if (SETTINGS.jCheckBox2.isSelected()) {
- log("Pickup Disabled!");
- DO_PICKUP = false;
- }
- if (SETTINGS.jCheckBox3.isSelected()) {
- log("Minimap Walking Disabled!");
- DO_WALK = false;
- }
- }
- }
- }
Add Comment
Please, Sign In to add comment