diff --git a/.travis/release.sh b/.travis/release.sh old mode 100644 new mode 100755 diff --git a/pom.xml b/pom.xml index 8a41e1e..ed59980 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ org.parabot 317-api-minified - 1.201 + 1.202 Parabot 317-API-Minified @@ -35,7 +35,19 @@ org.parabot client - 2.6.0 + 2.6.1 + + + * + * + + + provided + + + org.parabot + internal-api + 1.4.45 @@ -75,6 +87,74 @@ + + + org.apache.maven.plugins + maven-javadoc-plugin + 2.10.4 + + + attach-javadocs + + jar + + deploy + + + + ${project.name} V${project.version} + false + true + ${project.build.directory}/apidocs/${project.version} + -Xdoclint:none + + + + + maven-site-plugin + 3.5.1 + + + attach-descriptor + + attach-descriptor + + + + + + + + org.apache.maven.wagon + wagon-ftp + 2.10 + + + + + https://maven.parabot.org/ + + false + parabot-maven + Custom Maven Repository + ftp://maven.parabot.org + default + + + parabot-maven + Frontend Parabot Maven + ftp://maven.parabot.org/docs/${artifactId}/ + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + + + \ No newline at end of file diff --git a/src/main/java/org/rev317/min/accessors/Client.java b/src/main/java/org/rev317/min/accessors/Client.java index 9fbed8f..ecffb6d 100644 --- a/src/main/java/org/rev317/min/accessors/Client.java +++ b/src/main/java/org/rev317/min/accessors/Client.java @@ -30,8 +30,6 @@ public interface Client { int getBackDialogId(); - int getInputDialogState(); - int getPlane(); int[] getMenuActionId(); @@ -62,4 +60,12 @@ public interface Client { int[] getSettings(); boolean isLoggedIn(); + + int getInputDialogState(); + + long[] getFriendsListAsLong(); + + void addFriend(long id); + + void deleteFriend(long id); } diff --git a/src/main/java/org/rev317/min/api/methods/Game.java b/src/main/java/org/rev317/min/api/methods/Game.java index 462fceb..27856fb 100644 --- a/src/main/java/org/rev317/min/api/methods/Game.java +++ b/src/main/java/org/rev317/min/api/methods/Game.java @@ -1,11 +1,12 @@ package org.rev317.min.api.methods; +import org.parabot.api.misc.TextUtils; import org.parabot.environment.api.utils.Time; import org.parabot.environment.scripts.framework.SleepCondition; import org.rev317.min.Loader; /** - * @author Everel, JKetelaar + * @author Everel, JKetelaar, EmmaStone */ public class Game { @@ -77,6 +78,15 @@ public class Game { return Loader.getClient().getPlane(); } + /** + * Gets the friends list long values + * + * @return long values of friends list + */ + public static long[] getFriendsListAsLong() { + return Loader.getClient().getFriendsListAsLong(); + } + /** * Determines whether this client has action 4 hooked * @@ -160,4 +170,20 @@ public class Game { public static void login(String username, String password) { login(username, password, false); } + + /** + * Adds friend + * @param username String + */ + public static void addFriend(String username) { + Loader.getClient().addFriend(TextUtils.longForName(TextUtils.fixName(username))); + } + + /** + * Deletes friend + * @param username String + */ + public static void deleteFriend(String username) { + Loader.getClient().deleteFriend(TextUtils.longForName(TextUtils.fixName(username))); + } } diff --git a/src/main/java/org/rev317/min/api/methods/Trading.java b/src/main/java/org/rev317/min/api/methods/Trading.java index 26c89e0..89f98c0 100644 --- a/src/main/java/org/rev317/min/api/methods/Trading.java +++ b/src/main/java/org/rev317/min/api/methods/Trading.java @@ -24,7 +24,7 @@ public class Trading { * @return True if the requested screen is open */ public static boolean isOpen(boolean first){ - return Loader.getClient().getOpenInterfaceId() == (first ? settings.get("first_trade_interface_id") : settings.get("second_trade_interface_id")); + return Interfaces.getOpenInterfaceId() == (first ? settings.get("first_trade_interface_id") : settings.get("second_trade_interface_id")); } /** @@ -32,7 +32,7 @@ public class Trading { * @return True if open, false if not open */ public static boolean isOpen(){ - return Loader.getClient().getOpenInterfaceId() == settings.get("first_trade_interface_id") || Loader.getClient().getOpenInterfaceId() == settings.get("second_trade_interface_id"); + return Interfaces.getOpenInterfaceId() == settings.get("first_trade_interface_id") || Interfaces.getOpenInterfaceId() == settings.get("second_trade_interface_id"); } /** @@ -75,7 +75,7 @@ public class Trading { private static int[] getItemIDs(int interfaceID) { Interface i; - if ((i = Loader.getClient().getInterfaceCache()[interfaceID]) != null) { + if ((i = Interfaces.getInterfaces()[interfaceID]) != null) { int[] items; if ((items = i.getItems()) != null && items.length > 0) { return items; @@ -87,7 +87,7 @@ public class Trading { private static int[] getItemStacks(int interfaceID) { Interface i; - if ((i = Loader.getClient().getInterfaceCache()[interfaceID]) != null) { + if ((i = Interfaces.getInterfaces()[interfaceID]) != null) { int[] stacks; if ((stacks = i.getStackSizes()) != null && stacks.length > 0) { return stacks; @@ -97,22 +97,32 @@ public class Trading { } /** - * TODO Figure a way to use packets instead + * TODO: Add the id into the settings + * * Accepts the offer and hits the button to continue to the second screen */ public static void acceptOffer() { - Time.sleep(500, 750); - Mouse.getInstance().click(260, 190, true); - Time.sleep(500, 750); + Menu.clickButton(3420); + Time.sleep(new SleepCondition() { + @Override + public boolean isValid() { + return Interfaces.getOpenInterfaceId() == settings.get("second_trade_interface_id"); + } + }, 2500); } /** - * TODO Figure a way to use packets instead + * TODO: Add the id into the settings + * * Accepts the trade and hits the button to complete the trade */ public static void acceptTrade() { - Time.sleep(500, 750); - Mouse.getInstance().click(230, 310, true); - Time.sleep(500, 750); + Menu.clickButton(3546); + Time.sleep(new SleepCondition() { + @Override + public boolean isValid() { + return !isOpen(); + } + }, 2500); } }