Merge pull request #70 from Parabot/feature/getlongid

[FEATURE] Added getLongId
This commit is contained in:
Jeroen Ketelaar
2017-02-06 16:58:07 +01:00
committed by GitHub
59 changed files with 313 additions and 291 deletions
+2 -2
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+8 -6
View File
@@ -23,8 +23,8 @@ import java.io.File;
import java.net.URL;
/**
* @author Everel, JKetelaar
*/
* @author Everel, JKetelaar
*/
@ServerManifest(author = "Everel & JKetelaar", name = "Server name here", type = Type.INJECTION, version = 2.1)
public class Loader extends ServerProvider {
private boolean extended = true;
@@ -40,9 +40,11 @@ public class Loader extends ServerProvider {
final ASMClassLoader classLoader = context.getASMClassLoader();
final Class<?> clientClass = classLoader.loadClass(Context.getInstance().getServerProviderInfo().getClientClass());
Object instance = clientClass.newInstance();
return (Applet) instance;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
@@ -70,7 +72,7 @@ public class Loader extends ServerProvider {
try {
super.injectHooks();
} catch (Exception e) {
if (Core.inVerboseMode()){
if (Core.inVerboseMode()) {
e.printStackTrace();
}
this.extended = false;
@@ -86,9 +88,9 @@ public class Loader extends ServerProvider {
@Override
public HookFile getHookFile() {
if (this.extended){
if (this.extended) {
return new HookFile(Context.getInstance().getServerProviderInfo().getExtendedHookFile(), HookFile.TYPE_XML);
}else{
} else {
return new HookFile(Context.getInstance().getServerProviderInfo().getHookFile(), HookFile.TYPE_XML);
}
}
@@ -100,4 +102,4 @@ public class Loader extends ServerProvider {
@Override
public void init() {
}
}
}
@@ -44,7 +44,6 @@ public interface Client {
CollisionMap[] getCollisionMap();
// args switched
boolean walkTo(int clickType, int sizeX, int sizeY, int startX, int startY, int destX, int destY, int type, int face, boolean arbitrary, int rotation);
boolean walkToPKH(boolean flag1, boolean flag2, int clickType, int sizeX, int sizeY, int startX, int startY, int destX, int destY, int type, int face, boolean arbitrary, int rotation);
@@ -4,6 +4,5 @@ package org.rev317.min.accessors;
public interface CollisionMap {
int[][] getFlags();
}
@@ -5,5 +5,4 @@ public interface Deque {
Node getHead();
Node getCurrent();
}
@@ -8,8 +8,7 @@ public interface Ground {
SceneObjectTile getGroundDecoration();
SceneObjectTile getGroundItem();
SceneObjectTile[] getInteractiveObjects();
SceneObjectTile getGroundItem();
SceneObjectTile[] getInteractiveObjects();
}
@@ -7,12 +7,9 @@ public interface Interface {
int[] getStackSizes();
/**
* This is meant for the clients that have a long value as their stacksizes, simply because they have no logic...
*
* @return long version of #getStackSizes
*/
long[] getLongStackSizes();
String getMessage();
}
@@ -3,6 +3,5 @@ package org.rev317.min.accessors;
public interface Item {
int getId();
}
@@ -3,5 +3,4 @@ package org.rev317.min.accessors;
public interface Node {
Node getNext();
}
@@ -3,5 +3,4 @@ package org.rev317.min.accessors;
public interface Npc extends Character {
NpcDef getDef();
}
@@ -4,4 +4,5 @@ public interface NpcDef {
int getId();
long getLongId();
}
@@ -1,5 +1,6 @@
package org.rev317.min.accessors;
public interface Player extends Character {
String getName();
}
@@ -3,5 +3,4 @@ package org.rev317.min.accessors;
public interface Scene {
Ground[][][] getGroundArray();
}
@@ -3,5 +3,4 @@ package org.rev317.min.accessors;
public interface SceneObjectTile {
int getHash();
}
@@ -38,5 +38,4 @@ public final class GameActionEvent {
public int getIndex() {
return index;
}
}
@@ -29,5 +29,4 @@ public final class MessageEvent {
public final String getSender() {
return name;
}
}
}
@@ -20,5 +20,4 @@ public interface Locatable {
* @return distance from player to locatable
*/
int distanceTo();
}
@@ -14,5 +14,4 @@ public interface TileFlags {
int UNKNOWN = 0x80000;
int BLOCKED_TILE = 0x200000;
int UNLOADED_TILE = 0x1000000;
}
@@ -63,10 +63,10 @@ public class Bank {
* @return <b>true</b> if successfully interacted
*/
public static boolean open() {
if (isOpen()) {
return false;
}
SceneObject bank = getBank();
Npc banker = getBanker();
@@ -100,7 +100,6 @@ public class Bank {
}
Item b = getItem(id);
if (b == null) {
return;
}
@@ -124,7 +123,6 @@ public class Bank {
* Gets bank item with given id
*
* @param id
*
* @return bank item
*/
public static Item getItem(int id) {
@@ -140,6 +138,7 @@ public class Bank {
}
}
}
return null;
}
@@ -147,7 +146,6 @@ public class Bank {
* Counts the amount of items with given id in bank
*
* @param id
*
* @return count
*/
public static int getCount(int id) {
@@ -155,6 +153,7 @@ public class Bank {
return 0;
}
Item item;
return ((item = getItem(id)) != null ? item.getStackSize() : 0);
}
@@ -167,7 +166,6 @@ public class Bank {
if (isOpen()) {
return;
}
if (bank.getLocation().distanceTo() > 8) {
bank.getLocation().walkTo();
Time.sleep(new SleepCondition() {
@@ -178,6 +176,7 @@ public class Bank {
}, 5000);
return;
}
bank.interact(SceneObjects.Option.USE);
}
@@ -189,6 +188,7 @@ public class Bank {
if (!isOpen()) {
return;
}
Menu.sendAction(200, -1, -1, settings.get("button_close_bank"));
}
@@ -231,6 +231,7 @@ public class Bank {
if (!isOpen()) {
return null;
}
return Loader.getClient().getInterfaceCache()[settings.get("item_interface_id")].getItems();
}
@@ -243,6 +244,7 @@ public class Bank {
if (!isOpen()) {
return null;
}
return Loader.getClient().getInterfaceCache()[settings.get("item_interface_id")].getStackSizes();
}
@@ -255,6 +257,7 @@ public class Bank {
if (!isOpen()) {
return null;
}
ArrayList<Item> items = new ArrayList<Item>();
int[] ids = getBankItemIDs();
int[] stacks = getBankStacks();
@@ -265,6 +268,7 @@ public class Bank {
}
}
}
return items.toArray(new Item[items.size()]);
}
@@ -277,6 +281,7 @@ public class Bank {
if (!isOpen()) {
return 0;
}
int[] items;
return ((items = getBankItemIDs()) != null ? items.length : 0);
}
@@ -289,5 +294,4 @@ public class Bank {
public static boolean isOpen() {
return Loader.getClient().getOpenInterfaceId() == settings.get("bank_interface_id");
}
}
@@ -28,6 +28,7 @@ public class Calculations {
public static final double distanceBetween(Tile a, Tile b) {
int x = b.getX() - a.getX();
int y = b.getY() - a.getY();
return Math.sqrt((x * x) + (y * y));
}
@@ -145,6 +146,7 @@ public class Calculations {
dist[curr_x + 1][curr_y + 1] = cost;
}
}
return foundPath ? dist[curr_x][curr_y] : -1;
} catch (Exception e) {
return -1;
@@ -185,6 +187,7 @@ public class Calculations {
if (foundPath(from, to)) {
return dijkstraDist(from.getX(), from.getY(), to.getX(), to.getY(), false);
}
return -1;
}
@@ -200,6 +203,7 @@ public class Calculations {
if (foundPath(from, to)) {
return dijkstraDist(from.getX(), from.getY(), to.getX(), to.getY(), isObject);
}
return -1;
}
@@ -267,5 +271,4 @@ public class Calculations {
public static int gainedPerHour(Timer runtime, int start, int current) {
return runtime.getPerHour(gained(start, current));
}
}
}
@@ -69,6 +69,7 @@ public class Equipment {
return true;
}
}
return false;
}
@@ -115,8 +116,8 @@ public class Equipment {
RING(12),
AMMO(13);
private int slot;
private final int INTERFACE_ID = 1688;
private int slot;
Slot(int slot) {
this.slot = slot;
@@ -146,16 +146,18 @@ public class Game {
Time.sleep(new SleepCondition() {
@Override
public boolean isValid() {
return isLoggedIn();
return !isLoggedIn();
}
}, 2500);
return !isLoggedIn();
}
/**
* Login to a server
* @param username String
* @param password String
*
* @param username String
* @param password String
* @param reconnecting True if it's a retry, false if not
*/
public static void login(String username, String password, boolean reconnecting) {
@@ -164,6 +166,7 @@ public class Game {
/**
* Login to a server
*
* @param username String
* @param password String
*/
@@ -173,6 +176,7 @@ public class Game {
/**
* Adds friend
*
* @param username String
*/
public static void addFriend(String username) {
@@ -181,6 +185,7 @@ public class Game {
/**
* Deletes friend
*
* @param username String
*/
public static void deleteFriend(String username) {
@@ -19,12 +19,10 @@ import java.util.HashMap;
*/
public class GroundItems {
private static final Comparator<GroundItem> NEAREST_SORTER = new Comparator<GroundItem>() {
@Override
public int compare(GroundItem n1, GroundItem n2) {
return n1.distanceTo() - n2.distanceTo();
}
};
private static final Filter<GroundItem> ALL_FILTER = new Filter<GroundItem>() {
@@ -60,6 +58,7 @@ public class GroundItems {
}
}
}
return items.toArray(new GroundItem[items.size()]);
}
@@ -68,7 +67,6 @@ public class GroundItems {
*
* @param x - local region x
* @param y - local region y
*
* @return GroundItems Array of the Nearest GroundItems with the first index to be the nearest.
*/
public static final GroundItem[] getGroundItemsAt(final int x, final int y) {
@@ -76,10 +74,12 @@ public class GroundItems {
if (client == null) {
client = Loader.getClient();
}
final Deque deque = client.getGroundItems()[Game.getPlane()][x][y];
if (deque == null) {
return null;
}
ArrayList<GroundItem> list = new ArrayList<>();
final Node holder = deque.getHead();
Node curNode = holder.getNext();
@@ -89,10 +89,12 @@ public class GroundItems {
list.add(new GroundItem(groundItem, x, y));
curNode = curNode.getNext();
}
return list.toArray(new GroundItem[list.size()]);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@@ -103,7 +105,7 @@ public class GroundItems {
* @return GroundItems Array of the Nearest GroundItems with the first index to be the nearest.
*/
public static final GroundItem[] getGroundItemsAt(final Tile tile) {
return getGroundItemsAt(tile.getX(),tile.getY());
return getGroundItemsAt(tile.getX(), tile.getY());
}
/**
@@ -119,7 +121,6 @@ public class GroundItems {
* Gets the closest GroundItem which matches the given filter.
*
* @param filter Filter that should be applied to the GroundItem.
*
* @return closest GroundItem
*/
public static final GroundItem getClosest(final Filter<GroundItem> filter) {
@@ -127,6 +128,7 @@ public class GroundItems {
if (objects == null || objects.length == 0) {
return null;
}
return objects[0];
}
@@ -134,7 +136,6 @@ public class GroundItems {
* Gets the closest GroundItems which matches the given ids.
*
* @param ids ID's of the GroundItems to look for.
*
* @return closest GroundItems
*/
public static final GroundItem getClosest(int... ids) {
@@ -142,6 +143,7 @@ public class GroundItems {
if (objects == null || objects.length == 0) {
return null;
}
return objects[0];
}
@@ -149,12 +151,12 @@ public class GroundItems {
* Returns Array of GroundItems with the first index to be the nearest.
*
* @param filter Filter that should be applied to the GroundItem.
*
* @return GroundItems Array of the Nearest GroundItems with the first index to be the nearest.
*/
public static final GroundItem[] getNearest(Filter<GroundItem> filter) {
final GroundItem[] objects = getGroundItems(filter);
Arrays.sort(objects, NEAREST_SORTER);
return objects;
}
@@ -171,12 +173,10 @@ public class GroundItems {
* Returns Array of GroundItems with the first index to be the nearest.
*
* @param ids GroundItem ID's to look for.
*
* @return GroundItems Array of the Nearest GroundItems with the first index to be the nearest.
*/
public static final GroundItem[] getNearest(final int... ids) {
return getNearest(new Filter<GroundItem>() {
@Override
public boolean accept(GroundItem object) {
for (final int id : ids) {
@@ -184,13 +184,13 @@ public class GroundItems {
return true;
}
}
return false;
}
});
}
public enum Option{
public enum Option {
FIRST(settings.get("menu_ground_item_first_interaction")),
SECOND(settings.get("menu_ground_item_second_interaction")),
@@ -204,7 +204,7 @@ public class GroundItems {
EXAMINE(settings.get("menu_ground_item_examine_interaction"));
int actionId;
private int actionId;
Option(int actionId) {
this.actionId = actionId;
@@ -17,8 +17,6 @@ import java.util.HashMap;
*/
public class Inventory {
private static HashMap<String, Integer> settings = Context.getInstance().getServerProviderInfo().getSettings();
private static final Filter<Item> ALL_FILTER = new Filter<Item>() {
@Override
@@ -27,6 +25,7 @@ public class Inventory {
}
};
private static HashMap<String, Integer> settings = Context.getInstance().getServerProviderInfo().getSettings();
/**
* Clears the inventory
@@ -75,7 +74,6 @@ public class Inventory {
* Gets the amount of items with given ids in inventory, excludes the stack sizes
*
* @param ids
*
* @return amount of items
*/
public static int getCount(int... ids) {
@@ -86,7 +84,6 @@ public class Inventory {
* Gets the amount of items in inventory
*
* @param includeStack - true for including stack sizes to the counting
*
* @return amount of items
*/
public static int getCount(final boolean includeStack) {
@@ -110,7 +107,6 @@ public class Inventory {
*
* @param includeStack - true for including stack sizes to the counting
* @param ids
*
* @return amount of items
*/
public static int getCount(final boolean includeStack, int... ids) {
@@ -148,7 +144,6 @@ public class Inventory {
* Gets all items with given ids
*
* @param ids
*
* @return items
*/
public static Item[] getItems(final int... ids) {
@@ -171,7 +166,6 @@ public class Inventory {
* Gets all items accepted by filter
*
* @param filter
*
* @return items
*/
public static Item[] getItems(final Filter<Item> filter) {
@@ -218,7 +212,6 @@ public class Inventory {
* Checks if an item exists in the inventory
*
* @param id The item id that will be looked for
*
* @return True if the item exists in the inventory
*/
public static boolean contains(int... id) {
@@ -234,7 +227,6 @@ public class Inventory {
* Returns the item in the inventory based on the given id
*
* @param id The item id that will be used to find the item in the inventory
*
* @return First found item in the inventory
*/
public static Item getItem(int id) {
@@ -251,7 +243,6 @@ public class Inventory {
*
* @param itemOne The first item id that will be used to combine
* @param itemTwo The second item id that will be used to combine
*
* @return True if nothing unexpected happened
*/
public static boolean combine(int itemOne, int itemTwo) {
@@ -273,10 +264,9 @@ public class Inventory {
/**
* Combines two items by using it on each other
*
* @param itemOne The first item id that will be used to combine
* @param itemTwo The second item id that will be used to combine
* @param itemOne The first item id that will be used to combine
* @param itemTwo The second item id that will be used to combine
* @param sleepCondition The sleep condition that will be used to check and wait until the condition is valid
*
* @return True if the condition was true and nothing unexpected happened
*/
public static boolean combine(int itemOne, int itemTwo, SleepCondition sleepCondition) {
@@ -24,11 +24,11 @@ public class Items {
private static HashMap<Integer, Long> prices = new HashMap<>();
private static HashMap<Integer, String> names = new HashMap<>();
public static String getName(int id){
public static String getName(int id) {
String name;
if ((name = names.get(id)) != null){
if ((name = names.get(id)) != null) {
return name;
}else {
} else {
try {
String content = WebUtil.getContents(Configuration.ITEM_API + id);
if (content.length() > 0) {
@@ -40,80 +40,93 @@ public class Items {
return name;
}
}
} catch (MalformedURLException | ParseException ignored) {
} catch (MalformedURLException | ParseException e) {
e.printStackTrace();
}
}
return null;
}
public static int[] getIds(String name){
public static int[] getIds(String name) {
try {
String content = WebUtil.getContents(Configuration.ITEM_API + name);
if (content.length() > 0) {
JSONObject jsonObject = (JSONObject) jsonParser.parse(content);
JSONArray array = (JSONArray) jsonObject.get("result");
if (array.size() > 0){
if (array.size() > 0) {
int[] ids = new int[array.size()];
for (int i = 0; i < array.size(); i++){
for (int i = 0; i < array.size(); i++) {
ids[i] = Integer.parseInt((String) array.get(i));
}
return ids;
}
}
} catch (MalformedURLException | ParseException ignored) {}
} catch (MalformedURLException | ParseException e) {
e.printStackTrace();
}
return new int[0];
}
/**
* Returns an int array based on the string it starts with. getIdsStart(dragon) will return an int array with all items starting with dragon
*
* @param name
* @return
*/
public static int[] getIdsStart(String name){
public static int[] getIdsStart(String name) {
try {
String content = WebUtil.getContents(Configuration.ITEM_API + "starts/" + name);
if (content.length() > 0) {
JSONObject jsonObject = (JSONObject) jsonParser.parse(content);
JSONArray array = (JSONArray) jsonObject.get("result");
if (array.size() > 0){
if (array.size() > 0) {
int[] ids = new int[array.size()];
for (int i = 0; i < array.size(); i++){
for (int i = 0; i < array.size(); i++) {
ids[i] = Integer.parseInt((String) array.get(i));
}
return ids;
}
}
} catch (MalformedURLException | ParseException ignored) {}
} catch (MalformedURLException | ParseException e) {
e.printStackTrace();
}
return new int[0];
}
/**
* Returns an int array based on the string it contains. getIdsContain(dragon) will return an int array with all items containingdragon
*
* @param name
* @return
*/
public static int[] getIdsContain(String name){
public static int[] getIdsContain(String name) {
try {
String content = WebUtil.getContents(Configuration.ITEM_API + "contains/" + name);
if (content.length() > 0) {
JSONObject jsonObject = (JSONObject) jsonParser.parse(content);
JSONArray array = (JSONArray) jsonObject.get("result");
if (array.size() > 0){
if (array.size() > 0) {
int[] ids = new int[array.size()];
for (int i = 0; i < array.size(); i++){
for (int i = 0; i < array.size(); i++) {
ids[i] = Integer.parseInt((String) array.get(i));
}
return ids;
}
}
} catch (MalformedURLException | ParseException ignored) {}
} catch (MalformedURLException | ParseException e) {
e.printStackTrace();
}
return new int[0];
}
public static long getPrice(int id){
if (prices.containsKey(id)){
public static long getPrice(int id) {
if (prices.containsKey(id)) {
return prices.get(id);
}else {
} else {
try {
String content = WebUtil.getContents(Configuration.ITEM_API + id + "/" + Context.getInstance().getServerProviderInfo().getServerName());
if (content.length() > 0) {
@@ -125,13 +138,14 @@ public class Items {
return price;
}
}
} catch (MalformedURLException | ParseException ignored) {
} catch (MalformedURLException | ParseException e) {
e.printStackTrace();
}
}
return 0;
}
public enum Option{
public enum Option {
TRANSFORM_FIRST(settings.get("menu_transform_one_interaction")),
VALUE(settings.get("menu_transform_one_interaction")),
TRANSFORM_ONE(settings.get("menu_transform_one_interaction")),
@@ -176,7 +190,7 @@ public class Items {
SEVENTH(settings.get("menu_item_seventh_interaction")),
USE_WITH(settings.get("menu_item_seventh_interaction"));
int actionId;
private int actionId;
Option(int actionId) {
this.actionId = actionId;
@@ -108,6 +108,7 @@ public class Menu {
actionId = 478;
break;
}
sendAction(actionId, character.getIndex(), 0, 0);
}
@@ -118,10 +119,8 @@ public class Menu {
* @param action
* @param interfaceParentId
*/
public static void transformItem(Item item, Items.Option action,
int interfaceParentId) {
sendAction(action.getActionId(), item.getId() - 1, item.getSlot(),
interfaceParentId);
public static void transformItem(Item item, Items.Option action, int interfaceParentId) {
sendAction(action.getActionId(), item.getId() - 1, item.getSlot(), interfaceParentId);
}
/**
@@ -132,8 +131,7 @@ public class Menu {
* @param interfaceParentId
* @deprecated
*/
public static void transformItem(Item item, int actionIndex,
int interfaceParentId) {
public static void transformItem(Item item, int actionIndex, int interfaceParentId) {
int actionId = Items.Option.TRANSFORM_FIRST.getActionId();
switch (actionIndex) {
case 0:
@@ -264,8 +262,7 @@ public class Menu {
* @param item
*/
public static void drop(Item item) {
sendAction(settings.get("button_drop_item"), item.getId() - 1, item.getSlot(),
settings.get("inventory_index"));
sendAction(settings.get("button_drop_item"), item.getId() - 1, item.getSlot(), settings.get("inventory_index"));
}
/**
@@ -323,7 +320,6 @@ public class Menu {
}
client.getMenuActionId()[index] = action;
client.doAction(index);
}
}
@@ -6,7 +6,10 @@ import org.rev317.min.Loader;
import org.rev317.min.accessors.Client;
import org.rev317.min.api.wrappers.Npc;
import java.util.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
import java.util.HashMap;
/**
* @author Everel, JKetelaar
@@ -36,7 +39,6 @@ public class Npcs {
* Gets all Npcs except local Npc
*
* @param filter
*
* @return all Npcs
*/
public static final Npc[] getNpcs(final Filter<Npc> filter) {
@@ -52,6 +54,7 @@ public class Npcs {
npcList.add(npc);
}
}
return npcList.toArray(new Npc[npcList.size()]);
}
@@ -68,7 +71,6 @@ public class Npcs {
* Gets the closest npc which matches the given filter
*
* @param filter
*
* @return closest npc
*/
public static final Npc getClosest(final Filter<Npc> filter) {
@@ -76,6 +78,7 @@ public class Npcs {
if (npcs == null || npcs.length == 0) {
return null;
}
return npcs[0];
}
@@ -83,7 +86,6 @@ public class Npcs {
* Gets the closest npc which matches the given ids
*
* @param ids
*
* @return closest npc
*/
public static final Npc getClosest(int... ids) {
@@ -91,6 +93,7 @@ public class Npcs {
if (npcs == null || npcs.length == 0) {
return null;
}
return npcs[0];
}
@@ -98,12 +101,12 @@ public class Npcs {
* Returns array with the first index to be the nearest Npc
*
* @param filter
*
* @return nearest Npcs
*/
public static final Npc[] getNearest(final Filter<Npc> filter) {
final Npc[] npcs = getNpcs(filter);
Arrays.sort(npcs, NEAREST_SORTER);
return npcs;
}
@@ -111,7 +114,6 @@ public class Npcs {
* Gets nearest npcs which hold given id(s)
*
* @param ids
*
* @return array of npcs with the first index to be the nearest
*/
public static final Npc[] getNearest(final int... ids) {
@@ -119,18 +121,20 @@ public class Npcs {
@Override
public boolean accept(Npc npc) {
if (npc.getDef() != null){
if (npc.getDef() != null) {
for (final int id : ids) {
if (id == npc.getDef().getId()) {
return true;
}
}
}
return false;
}
});
Arrays.sort(npcs, NEAREST_SORTER);
return npcs;
}
@@ -143,7 +147,7 @@ public class Npcs {
return getNearest(ALL_FILTER);
}
public enum Option{
public enum Option {
FIRST(settings.get("menu_character_first_interaction")),
ATTACK(settings.get("menu_character_first_interaction")),
@@ -170,7 +174,7 @@ public class Npcs {
EXAMINE(settings.get("menu_character_examine"));
int actionId;
private int actionId;
Option(int actionId) {
this.actionId = actionId;
@@ -6,7 +6,10 @@ import org.rev317.min.Loader;
import org.rev317.min.accessors.Client;
import org.rev317.min.api.wrappers.Player;
import java.util.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
import java.util.HashMap;
/**
* @author Everel, JKetelaar
@@ -36,12 +39,11 @@ public class Players {
* Gets all players except local player
*
* @param filter
*
* @return all players
*/
public static final Player[] getPlayers(final Filter<Player> filter) {
final Client client = Loader.getClient();
ArrayList<Player> playerList = new ArrayList<Player>();
ArrayList<Player> playerList = new ArrayList<>();
final org.rev317.min.accessors.Player[] accPlayers = client.getPlayers();
for (int i = 0; i < accPlayers.length; i++) {
if (accPlayers[i] == null) {
@@ -52,6 +54,7 @@ public class Players {
playerList.add(player);
}
}
return playerList.toArray(new Player[playerList.size()]);
}
@@ -68,7 +71,6 @@ public class Players {
* Returns array with the first index to be the nearest player
*
* @param filter
*
* @return nearest players
*/
public static final Player[] getNearest(final Filter<Player> filter) {
@@ -95,7 +97,7 @@ public class Players {
return new Player(Loader.getClient().getMyPlayer(), -1);
}
public enum Option{
public enum Option {
FIRST(settings.get("menu_character_first_interaction")),
SECOND(settings.get("menu_character_second_interaction")),
@@ -115,7 +117,7 @@ public class Players {
EXAMINE(settings.get("menu_character_examine"));
int actionId;
private int actionId;
Option(int actionId) {
this.actionId = actionId;
@@ -12,14 +12,63 @@ import java.util.ArrayList;
*/
public class Prayer {
public interface Book {
public int getSetting();
public static boolean isEnabled(Book book) {
return Game.getSetting(book.getSetting()) == 1;
}
public int getAction();
public static void enable(final Book book) {
if (!isEnabled(book)) {
Menu.sendAction(169, -1, -1, book.getAction());
Time.sleep(new SleepCondition() {
@Override
public boolean isValid() {
return isEnabled(book);
}
}, 1500);
}
}
public int getLevel();
public static void disable(final Book book) {
if (isEnabled(book)) {
Menu.sendAction(169, -1, -1, book.getAction());
Time.sleep(new SleepCondition() {
@Override
public boolean isValid() {
return !isEnabled(book);
}
}, 1500);
}
}
public String getName();
public static Book[] getActivePrayers() {
ArrayList<Book> prayers = new ArrayList<>();
for (Book normal : Normal.values()) {
if (isEnabled(normal)) {
prayers.add(normal);
}
}
for (Book curse : Curse.values()) {
if (isEnabled(curse)) {
prayers.add(curse);
}
}
return prayers.toArray(new Book[prayers.size()]);
}
public static void setActivePrayers(Book[] prayers) {
for (Book book : prayers) {
for (Book normal : Normal.values()) {
if (!isEnabled(normal) && normal.equals(book)) {
enable(normal);
}
}
for (Book curse : Curse.values()) {
if (!isEnabled(curse) && curse.equals(book)) {
enable(curse);
}
}
}
}
public enum Normal implements Book {
@@ -176,62 +225,13 @@ public class Prayer {
}
public interface Book {
int getSetting();
public static boolean isEnabled(Book book) {
return Game.getSetting(book.getSetting()) == 1;
}
int getAction();
public static void enable(final Book book) {
if (!isEnabled(book)) {
Menu.sendAction(169, -1, -1, book.getAction());
Time.sleep(new SleepCondition() {
@Override
public boolean isValid() {
return isEnabled(book);
}
}, 1500);
}
}
int getLevel();
public static void disable(final Book book) {
if (isEnabled(book)) {
Menu.sendAction(169, -1, -1, book.getAction());
Time.sleep(new SleepCondition() {
@Override
public boolean isValid() {
return !isEnabled(book);
}
}, 1500);
}
}
public static Book[] getActivePrayers() {
ArrayList<Book> prayers = new ArrayList<>();
for (Book normal : Normal.values()) {
if (isEnabled(normal)) {
prayers.add(normal);
}
}
for (Book curse : Curse.values()) {
if (isEnabled(curse)) {
prayers.add(curse);
}
}
return prayers.toArray(new Book[prayers.size()]);
}
public static void setActivePrayers(Book[] prayers) {
for (Book book : prayers) {
for (Book normal : Normal.values()) {
if (!isEnabled(normal) && normal.equals(book)) {
enable(normal);
}
}
for (Book curse : Curse.values()) {
if (!isEnabled(curse) && curse.equals(book)) {
enable(curse);
}
}
}
String getName();
}
}
@@ -40,16 +40,17 @@ public class SceneObjects {
* @return scene objects
*/
public static final SceneObject[] getSceneObjects(Filter<SceneObject> filter) {
ArrayList<SceneObject> sceneObjects = new ArrayList<SceneObject>();
ArrayList<SceneObject> sceneObjects = new ArrayList<>();
for (int x = 0; x < 104; x++) {
for (int y = 0; y < 104; y++) {
final SceneObject sceneObjectAtTile = getSceneObjectAtTile(x, y, true);
final SceneObject sceneObjectAtTile = getSceneObjectAtTile(x, y);
if (sceneObjectAtTile != null && filter.accept(sceneObjectAtTile)) {
sceneObjects.add(sceneObjectAtTile);
}
}
}
return sceneObjects.toArray(new SceneObject[sceneObjects.size()]);
}
@@ -66,12 +67,12 @@ public class SceneObjects {
* Returns array of sceneobjects with the first index to be the nearest
*
* @param filter
*
* @return sceneobjects
*/
public static final SceneObject[] getNearest(Filter<SceneObject> filter) {
final SceneObject[] objects = getSceneObjects(filter);
Arrays.sort(objects, NEAREST_SORTER);
return objects;
}
@@ -88,7 +89,6 @@ public class SceneObjects {
* Returns nearest objects with given id
*
* @param ids
*
* @return sceneobjects
*/
public static final SceneObject[] getNearest(final int... ids) {
@@ -101,6 +101,7 @@ public class SceneObjects {
return true;
}
}
return false;
}
@@ -109,7 +110,6 @@ public class SceneObjects {
public static final SceneObject getClosest(final int... ids) {
SceneObject[] nearestObjects = getNearest(new Filter<SceneObject>() {
@Override
public boolean accept(SceneObject object) {
for (final int id : ids) {
@@ -117,34 +117,37 @@ public class SceneObjects {
return true;
}
}
return false;
}
});
if (nearestObjects == null || nearestObjects.length == 0) {
return null;
}
return nearestObjects[0];
}
private static SceneObject getSceneObjectAtTile(int x, int y, boolean useCached) {
private static SceneObject getSceneObjectAtTile(int x, int y) {
Ground sceneTile = Loader.getClient().getScene().getGroundArray()[Game.getPlane()][x][y];
if (sceneTile == null) {
return null;
}
final SceneObjectTile[] interactiveObjects = sceneTile.getInteractiveObjects();
if (interactiveObjects != null) {
for (final SceneObjectTile interactiveObject : interactiveObjects) {
// get top
if (interactiveObject != null) {
return new SceneObject(interactiveObject, SceneObject.TYPE_INTERACTIVE);
}
}
}
SceneObjectTile sceneObjectTile = sceneTile.getWallObject();
if (sceneObjectTile != null) {
return new SceneObject(sceneObjectTile, SceneObject.TYPE_WALL);
}
return null;
}
@@ -154,15 +157,16 @@ public class SceneObjects {
* @return every loaded scene object in game
*/
public static final SceneObject[] getAllSceneObjects() {
ArrayList<SceneObject> sceneObjects = new ArrayList<SceneObject>();
ArrayList<SceneObject> sceneObjects = new ArrayList<>();
for (int x = 0; x < 104; x++) {
for (int y = 0; y < 104; y++) {
final Collection<SceneObject> sceneObjectsAtTile = getSceneObjectsAtTile(x, y, true);
final Collection<SceneObject> sceneObjectsAtTile = getSceneObjectsAtTile(x, y);
if (sceneObjectsAtTile != null && !sceneObjectsAtTile.isEmpty()) {
sceneObjects.addAll(sceneObjectsAtTile);
}
}
}
return sceneObjects.toArray(new SceneObject[sceneObjects.size()]);
}
@@ -171,11 +175,9 @@ public class SceneObjects {
*
* @param x
* @param y
* @param useCached
*
* @return array of sceneobjects, or null if there aren't any
*/
public static final Collection<SceneObject> getSceneObjectsAtTile(int x, int y, boolean useCached) {
public static final Collection<SceneObject> getSceneObjectsAtTile(int x, int y) {
Ground sceneTile = Loader.getClient().getScene().getGroundArray()[Game.getPlane()][x][y];
ArrayList<SceneObject> sceneObjects = null;
if (sceneTile != null) {
@@ -222,10 +224,12 @@ public class SceneObjects {
sceneObjects.add(new SceneObject(sceneObjectTile, SceneObject.TYPE_GROUNDITEM));
}
}
return sceneObjects;
}
public enum Option{
public enum Option {
FIRST(settings.get("menu_scene_object_first_interaction")),
TALK_TO(settings.get("menu_scene_object_first_interaction")),
CHOP_DOWN(settings.get("menu_scene_object_first_interaction")),
@@ -256,7 +260,7 @@ public class SceneObjects {
EXAMINE(settings.get("menu_scene_object_examine"));
int actionId;
private int actionId;
Option(int actionId) {
this.actionId = actionId;
@@ -266,6 +270,4 @@ public class SceneObjects {
return actionId;
}
}
}
@@ -30,7 +30,6 @@ public enum Skill {
* Returns the experience of the provided skill.
*
* @param index the skill index.
*
* @return the experience.
*/
public static final int getCurrentExperience(int index) {
@@ -41,7 +40,6 @@ public enum Skill {
* Returns the real level of the provided skill.
*
* @param index the skill index.
*
* @return the real skill level.
*/
public static final int getRealLevel(int index) {
@@ -52,7 +50,6 @@ public enum Skill {
* Returns the current level of the provided skill. (Will return de-buffed/buffed levels)
*
* @param index the skill index.
*
* @return the current skill level. Done by Bears
*/
public static final int getCurrentLevel(int index) {
@@ -63,13 +60,13 @@ public enum Skill {
* Returns the exact experience at the provided level.
*
* @param level the level.
*
* @return the experience at the provided level.
*/
public static final int getExperienceByLevel(int level) {
if (level > 99 || level < 1) {
return 0;
}
return EXPERIENCE[level];
}
@@ -77,7 +74,6 @@ public enum Skill {
* Returns the exact level with the provided experience.
*
* @param experience the experience.
*
* @return the level at the provided experience.
*/
public static final int getLevelByExperience(int experience) {
@@ -86,6 +82,7 @@ public enum Skill {
return i;
}
}
return 1;
}
@@ -93,7 +90,6 @@ public enum Skill {
* Returns the remaining experience for the provided skill to level up.
*
* @param index the skill index.
*
* @return the remaining experience.
*/
public static final int getRemainingExperience(int index) {
@@ -101,6 +97,7 @@ public enum Skill {
if (level >= 99 || level < 1) {
return 0;
}
return EXPERIENCE[(level + 1)] - getCurrentExperience(index);
}
@@ -108,7 +105,6 @@ public enum Skill {
* Returns the percentage to the next level for the provided skill.
*
* @param index the skill index.
*
* @return the remaining percentage.
*/
public static final int getPercentToNextLevel(int index) {
@@ -118,11 +114,12 @@ public enum Skill {
|| nextLevel < 1) {
return 0;
}
return (int) (100f * ((float) getCurrentExperience(index) / (float) EXPERIENCE[nextLevel]));
}
/**
* @Deprecated use Skill.ordinal() instead Returns the skill's index.
* @deprecated use Skill.ordinal() instead Returns the skill's index.
*/
public int getIndex() {
return ordinal();
@@ -132,22 +129,21 @@ public enum Skill {
* Returns the name of the skill.
*/
public final String getName() {
return Character.toUpperCase(name().charAt(0))
+ name().toLowerCase().substring(1);
return Character.toUpperCase(name().charAt(0)) + name().toLowerCase().substring(1);
}
/**
* Returns the current experience.
*/
public final int getExperience() {
return Skill.getCurrentExperience(this.getIndex());
return Skill.getCurrentExperience(this.ordinal());
}
/**
* Returns the real level.
*/
public final int getRealLevel() {
return Skill.getRealLevel(this.getIndex());
return Skill.getRealLevel(this.ordinal());
}
/**
@@ -155,21 +151,21 @@ public enum Skill {
* stat; it will return the buffed level.) Done by Bears
*/
public final int getLevel() {
return Skill.getCurrentLevel(this.getIndex());
return Skill.getCurrentLevel(this.ordinal());
}
/**
* Returns the remaining experience until the next level.
*/
public final int getRemaining() {
return Skill.getRemainingExperience(this.getIndex());
return Skill.getRemainingExperience(this.ordinal());
}
/**
* Returns the percentage until the next level.
*/
public final int getPercentage() {
return Skill.getPercentToNextLevel(this.getIndex());
return Skill.getPercentToNextLevel(this.ordinal());
}
/**
@@ -177,7 +173,6 @@ public enum Skill {
*/
@Override
public final String toString() {
return "Skill: [" + this.getName() + ": " + this.getLevel() + " / "
+ this.getRealLevel() + "]";
return "Skill: [" + this.getName() + ": " + this.getLevel() + " / " + this.getRealLevel() + "]";
}
}
@@ -2,9 +2,7 @@ package org.rev317.min.api.methods;
import org.parabot.core.Context;
import org.parabot.environment.api.utils.Time;
import org.parabot.environment.input.Mouse;
import org.parabot.environment.scripts.framework.SleepCondition;
import org.rev317.min.Loader;
import org.rev317.min.accessors.Interface;
import org.rev317.min.api.wrappers.Item;
@@ -20,26 +18,28 @@ public class Trading {
/**
* Checks if the first or the second screen is open, based on the given boolean
*
* @param first If true, the first trade screen will be checked. If false, the second screen will be checked
* @return True if the requested screen is open
*/
public static boolean isOpen(boolean first){
public static boolean isOpen(boolean first) {
return Interfaces.getOpenInterfaceId() == (first ? settings.get("first_trade_interface_id") : settings.get("second_trade_interface_id"));
}
/**
* Checks if any of the trade screens are open
*
* @return True if open, false if not open
*/
public static boolean isOpen(){
public static boolean isOpen() {
return Interfaces.getOpenInterfaceId() == settings.get("first_trade_interface_id") || Interfaces.getOpenInterfaceId() == settings.get("second_trade_interface_id");
}
/**
* Still in development
* For now it simply walks away from the trade by walking to the location of the player
* For now it simply walks away from the trade by walking to the location of the player
*/
public static void close(){
public static void close() {
Players.getMyPlayer().getLocation().walkTo();
Time.sleep(new SleepCondition() {
@Override
@@ -98,7 +98,7 @@ public class Trading {
/**
* TODO: Add the id into the settings
*
* <p>
* Accepts the offer and hits the button to continue to the second screen
*/
public static void acceptOffer() {
@@ -113,7 +113,7 @@ public class Trading {
/**
* TODO: Add the id into the settings
*
* <p>
* Accepts the trade and hits the button to complete the trade
*/
public static void acceptTrade() {
@@ -42,6 +42,7 @@ public class Walking {
if (tilePath.hasReached()) {
return true;
}
tilePath.traverse();
return false;
}
@@ -61,8 +62,7 @@ public class Walking {
tile = new Tile((loc.getX() + tile.getX()) / 2,
(loc.getY() + tile.getY()) / 2);
}
return null;
}
}
@@ -4,9 +4,7 @@ import java.awt.*;
import java.util.ArrayList;
/**
*
* @author Matt, JKetelaar
*
*/
public class Area {
private Polygon p;
@@ -14,8 +12,7 @@ public class Area {
/**
* Initializes a PolygonArea with the tiles given
*
* @param tiles
* tiles to use in the area
* @param tiles tiles to use in the area
*/
public Area(Tile... tiles) {
this.p = new Polygon();
@@ -27,8 +24,7 @@ public class Area {
/**
* Adds a tile to the area
*
* @param t
* The tile to add the area
* @param t The tile to add the area
*/
public void addTile(Tile t) {
p.addPoint(t.getX(), t.getY());
@@ -41,8 +37,10 @@ public class Area {
*/
public Tile[] getPoints() {
Tile[] tiles = new Tile[p.npoints];
for (int i = 0; i < tiles.length; i++)
for (int i = 0; i < tiles.length; i++) {
tiles[i] = new Tile(p.xpoints[i], p.ypoints[i]);
}
return tiles;
}
@@ -80,14 +78,14 @@ public class Area {
}
}
}
return t.toArray(new Tile[t.size()]);
}
/**
* Checks if a tile is in the area
*
* @param tile
* The tile to check
* @param tile The tile to check
* @return <b>true</b> if area does contain the tile, otherwise <b>false</b>
*/
public boolean contains(Tile tile) {
@@ -99,7 +97,6 @@ public class Area {
*
* @param x The x-axis from the tile
* @param y The y-axis from the tile
*
* @return True if the area does contain the tile, otherwise false
*/
public boolean contains(int x, int y) {
@@ -113,7 +110,7 @@ public class Area {
result = !result;
}
}
return result;
}
}
@@ -142,6 +142,7 @@ public class Character implements Locatable {
return Players.getMyPlayer();
}
}
return null;
}
@@ -161,26 +162,32 @@ public class Character implements Locatable {
result = prime * result
+ ((accessor == null) ? 0 : accessor.hashCode());
result = prime * result + index;
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
if (this == obj) {
return true;
if (obj == null)
}
if (obj == null) {
return false;
if (getClass() != obj.getClass())
}
if (getClass() != obj.getClass()) {
return false;
}
Character other = (Character) obj;
if (accessor == null) {
if (other.accessor != null)
if (other.accessor != null) {
return false;
} else if (!accessor.equals(other.accessor))
}
} else if (!accessor.equals(other.accessor)) {
return false;
if (index != other.index)
return false;
return true;
}
return index == other.index;
}
public org.rev317.min.accessors.Character getAccessor() {
@@ -2,7 +2,10 @@ package org.rev317.min.api.wrappers;
import org.parabot.core.reflect.RefClass;
import org.rev317.min.api.interfaces.Locatable;
import org.rev317.min.api.methods.*;
import org.rev317.min.api.methods.Calculations;
import org.rev317.min.api.methods.Game;
import org.rev317.min.api.methods.GroundItems;
import org.rev317.min.api.methods.Menu;
/**
* @author Everel
@@ -57,9 +60,8 @@ public class GroundItem implements Locatable {
/**
* Interacts with this ground item
*
* @deprecated
*
* @param actionIndex
* @deprecated
*/
public void interact(int actionIndex) {
Menu.interact(this, actionIndex);
@@ -98,5 +100,4 @@ public class GroundItem implements Locatable {
public RefClass getRefClass() {
return new RefClass(this.accessor);
}
}
@@ -60,7 +60,6 @@ public class Item {
}
/**
*
* @param option
* @param interfaceParentId
*/
@@ -71,9 +70,8 @@ public class Item {
/**
* Interacts with this item
*
* @deprecated
*
* @param i
* @deprecated
*/
public void interact(int i) {
Menu.interact(this, i);
@@ -82,19 +80,17 @@ public class Item {
/**
* Interacts with this item
*
* @deprecated
*
* @param s
* @deprecated
*/
public void interact(String s){
public void interact(String s) {
Menu.interact(this, s);
}
/**
* @deprecated
*
* @param actionIndex
* @param interfaceParentId
* @deprecated
*/
public void transform(int actionIndex, int interfaceParentId) {
Menu.transformItem(this, actionIndex, interfaceParentId);
@@ -42,5 +42,4 @@ public final class Npc extends Character {
public void interact(Npcs.Option option) {
Menu.interact(this, option);
}
}
@@ -3,7 +3,7 @@ package org.rev317.min.api.wrappers;
import org.parabot.core.reflect.RefClass;
/**
* @author Everel
* @author Everel, JKetelaar, EmmaStone
*/
public class NpcDef {
private org.rev317.min.accessors.NpcDef accessor;
@@ -18,10 +18,43 @@ public class NpcDef {
* @return id of this item
*/
public int getId() {
if (accessor != null) {
return getId(false);
}
/**
* Gets id of this item
*
* @param avoidLong defines if it should check if long id exists
* @return id of this item
*/
private int getId(boolean avoidLong) {
if (avoidLong) {
return accessor.getId();
} else {
try {
long id = getLongId();
if (id > Integer.MAX_VALUE){
throw new NoSuchMethodException("This server only supports long ids; change NpcDef#getId to NpcDef#getLongId");
}
return (int) id;
} catch (Exception e) {
return accessor.getId();
}
}
}
/**
* Gets id of this item
* Meant for servers with longs as ids, instead of ints
*
* @return id of this item
*/
private long getLongId() {
try {
return accessor.getLongId();
} catch (Exception e) {
return getId(true);
}
return -1;
}
/**
@@ -32,6 +65,4 @@ public class NpcDef {
public RefClass getRefClass() {
return new RefClass(this.accessor);
}
}
@@ -12,7 +12,7 @@ public class Player extends Character {
super(accessor, index);
}
public String getName(){
public String getName() {
return getAccessor().getName();
}
@@ -101,9 +101,8 @@ public class SceneObject implements Locatable {
/**
* Interacts with this object
*
* @deprecated
*
* @param actionIndex
* @deprecated
*/
public void interact(int actionIndex) {
Menu.interact(this, actionIndex);
@@ -122,5 +121,4 @@ public class SceneObject implements Locatable {
public String toString() {
return String.format("[ID: %d, X: %d, Y: %d]", getId(), getLocalRegionX(), getLocalRegionY());
}
}
@@ -27,11 +27,12 @@ public class TilePath {
*/
public final Tile getNextTile() {
Tile next = null;
for (int x = 0; x < tiles.length; x++) {
if (tiles[x].isOnMinimap()) {
next = tiles[x];
for (Tile tile : tiles) {
if (tile.isOnMinimap()) {
next = tile;
}
}
return next;
}
@@ -61,6 +62,7 @@ public class TilePath {
if (next == null) {
return;
}
next.walkTo();
}
@@ -71,10 +73,10 @@ public class TilePath {
*/
public final TilePath reverse() {
Tile[] newTiles = new Tile[tiles.length];
for (int i = 0; i < tiles.length; i++)
for (int i = 0; i < tiles.length; i++) {
newTiles[i] = tiles[tiles.length - i - 1];
}
return new TilePath(newTiles);
}
}
@@ -8,9 +8,7 @@ import org.rev317.min.debug.DActions;
import org.rev317.min.script.ScriptEngine;
/**
* @author Everel
* @author JKetelaar
* @author Matt123337
* @author Everel, JKetelaar, Matt123337
*/
public class MenuAction {
@@ -10,5 +10,4 @@ public class MessageCallback {
final MessageEvent messageEvent = new MessageEvent(type, name, message);
ScriptEngine.getInstance().dispatch(messageEvent);
}
}
@@ -24,5 +24,4 @@ public class DActions extends AbstractDebugger {
public void toggle() {
enabled = !enabled;
}
}
@@ -23,5 +23,4 @@ public class DAnimation extends AbstractDebugger {
public void toggle() {
enabled = !enabled;
}
}
@@ -23,6 +23,7 @@ public class DBank extends AbstractDebugger {
if (!Bank.isOpen()) {
return;
}
Item[] items;
if ((items = Bank.getBankItems()) != null) {
for (int i = items.length - 1; i >= 0; i--) {
@@ -32,5 +33,4 @@ public class DBank extends AbstractDebugger {
}
}
}
}
@@ -35,5 +35,4 @@ public class DCollisionFlags extends AbstractDebugger {
public void toggle() {
enabled = !enabled;
}
}
@@ -28,5 +28,4 @@ public class DGroundItems extends AbstractDebugger {
System.out.println("ID: " + item.getId() + " Location: " + item.getLocation());
}
}
}
@@ -26,5 +26,4 @@ public class DInterfaces extends AbstractDebugger {
public void toggle() {
enabled = !enabled;
}
}
@@ -41,12 +41,13 @@ public class DInventory extends AbstractDebugger {
}
}
public int getSlotItemID(int slot){
for (Item item : Inventory.getItems()){
if (item.getSlot() == slot){
public int getSlotItemID(int slot) {
for (Item item : Inventory.getItems()) {
if (item.getSlot() == slot) {
return item.getId();
}
}
return 0;
}
}
@@ -27,5 +27,4 @@ public class DMap extends AbstractDebugger {
public void toggle() {
enabled = !enabled;
}
}
@@ -22,9 +22,9 @@ public class DMessages extends AbstractDebugger implements MessageListener {
@Override
public void toggle() {
enabled = !enabled;
if (enabled){
if (enabled) {
ScriptEngine.getInstance().addMessageListener(this);
}else{
} else {
ScriptEngine.getInstance().removeMessageListener(this);
}
}
@@ -24,5 +24,4 @@ public class DMouse extends AbstractDebugger {
public void toggle() {
enabled = !enabled;
}
}
@@ -23,7 +23,5 @@ public class DNpcs extends AbstractDebugger {
for (Npc n : Npcs.getNearest()) {
System.out.println("ID: " + n.getDef().getId() + " Distance: " + n.distanceTo() + " Location: " + n.getLocation().toString());
}
}
}
@@ -12,7 +12,7 @@ import java.awt.*;
public class DPlayers extends AbstractDebugger {
@Override
public void toggle() {
for (Player player : Players.getNearest()){
for (Player player : Players.getNearest()) {
System.out.println("Username: " + player.getName() + " Index: " + player.getIndex() + " Distance: " + player.distanceTo() + " Location: " + player.getLocation().toString());
}
}
@@ -24,6 +24,5 @@ public class DPlayers extends AbstractDebugger {
@Override
public void paint(Graphics graphics) {
}
}
@@ -31,5 +31,4 @@ public class DSceneObjects extends AbstractDebugger {
" Distance: " + objects[i].distanceTo());
}
}
}
@@ -20,7 +20,7 @@ import java.util.HashMap;
* @author matt123337
*/
public class ScriptEngine {
private static HashMap<Context, ScriptEngine> instances = new HashMap<Context, ScriptEngine>();
private static HashMap<Context, ScriptEngine> instances = new HashMap<>();
private ArrayList<MouseListener> mouseListeners;
private ArrayList<MouseMotionListener> mouseMotionListeners;
private ArrayList<MessageListener> messageListeners;
@@ -29,10 +29,10 @@ public class ScriptEngine {
private Script script = null;
private ScriptEngine() {
this.mouseListeners = new ArrayList<MouseListener>();
this.mouseMotionListeners = new ArrayList<MouseMotionListener>();
this.messageListeners = new ArrayList<MessageListener>();
this.actionListeners = new ArrayList<GameActionListener>();
this.mouseListeners = new ArrayList<>();
this.mouseMotionListeners = new ArrayList<>();
this.messageListeners = new ArrayList<>();
this.actionListeners = new ArrayList<>();
instances.put(Context.getInstance(), this);
}
@@ -103,6 +103,7 @@ public class ScriptEngine {
if (script instanceof Paintable) {
Context.getInstance().removePaintable((Paintable) script);
}
this.script = null;
}
@@ -134,6 +135,7 @@ public class ScriptEngine {
if (!(event instanceof MouseEvent)) {
return;
}
final MouseEvent e = (MouseEvent) event;
for (final MouseListener m : mouseListeners) {
switch (e.getID()) {
@@ -176,6 +178,4 @@ public class ScriptEngine {
a.onGameAction(event);
}
}
}
+2 -2
View File
@@ -67,7 +67,7 @@ public class BotMenu implements ActionListener {
actions.addSeparator();
ButtonGroup group = new ButtonGroup();
for (int i = 0; i < MenuAction.getOutputs().length; i++){
for (int i = 0; i < MenuAction.getOutputs().length; i++) {
final int index = i;
JMenuItem debugOutput = new JRadioButtonMenuItem("Output: " + index);
debugOutput.addActionListener(new ActionListener() {
@@ -87,6 +87,7 @@ public class BotMenu implements ActionListener {
private JMenuItem newItem(String name) {
JMenuItem item = new JCheckBoxMenuItem(name);
item.addActionListener(this);
return item;
}
@@ -94,5 +95,4 @@ public class BotMenu implements ActionListener {
public void actionPerformed(ActionEvent e) {
Context.getInstance().getPaintDebugger().toggle(e.getActionCommand());
}
}