diff --git a/src/main/java/org/rev317/min/accessors/Client.java b/src/main/java/org/rev317/min/accessors/Client.java index f9555de..430797f 100644 --- a/src/main/java/org/rev317/min/accessors/Client.java +++ b/src/main/java/org/rev317/min/accessors/Client.java @@ -20,6 +20,8 @@ public interface Client { void setInterface(int id); + void setAmountOrNameInput(int amount); + int[] getCurrentExp(); Deque[][][] getGroundItems(); @@ -28,6 +30,8 @@ public interface Client { int getBackDialogId(); + int getInputDialogState(); + int getPlane(); int[] getMenuActionId(); 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 e1f0419..cf728e7 100644 --- a/src/main/java/org/rev317/min/api/methods/Game.java +++ b/src/main/java/org/rev317/min/api/methods/Game.java @@ -45,6 +45,14 @@ public class Game { return Loader.getClient().getBackDialogId(); } + /** + * Get current input dialog state + * @return input dialog state + */ + public static int getInputDialogState() { + return Loader.getClient().getInputDialogState(); + } + /** * Gets loop cycle * diff --git a/src/main/java/org/rev317/min/api/methods/Interfaces.java b/src/main/java/org/rev317/min/api/methods/Interfaces.java index 4e038c9..12e1142 100644 --- a/src/main/java/org/rev317/min/api/methods/Interfaces.java +++ b/src/main/java/org/rev317/min/api/methods/Interfaces.java @@ -36,6 +36,14 @@ public class Interfaces { Loader.getClient().setInterface(id); } + /** + * Sets the int by the given Amount + * @param amount Amount to set + */ + public static void setAmountOrNameInput(int amount) { + Loader.getClient().setAmountOrNameInput(amount); + } + /** * Get's the Open Interface ID. * @return The ID of the Open Interface , will be -1 if all Interfaces are closed. diff --git a/src/main/java/org/rev317/min/api/methods/Inventory.java b/src/main/java/org/rev317/min/api/methods/Inventory.java index bc925e6..86015b7 100644 --- a/src/main/java/org/rev317/min/api/methods/Inventory.java +++ b/src/main/java/org/rev317/min/api/methods/Inventory.java @@ -296,4 +296,3 @@ public class Inventory { return false; } } - diff --git a/src/main/java/org/rev317/min/api/methods/Menu.java b/src/main/java/org/rev317/min/api/methods/Menu.java index c069c70..b964c3b 100644 --- a/src/main/java/org/rev317/min/api/methods/Menu.java +++ b/src/main/java/org/rev317/min/api/methods/Menu.java @@ -6,6 +6,8 @@ import org.rev317.min.accessors.Client; import org.rev317.min.api.wrappers.Character; import org.rev317.min.api.wrappers.*; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; import java.util.HashMap; /** @@ -320,6 +322,17 @@ public class Menu { Client client = Loader.getClient(); + try { + Method doAction = client.getClass().getDeclaredMethod("doAction", int.class); + doAction.setAccessible(true); + + doAction.invoke(client, 0); + + } catch (NoSuchMethodException | InvocationTargetException | IllegalAccessException e) { + e.printStackTrace(); + } + + client.getMenuAction1()[index] = cmd1; client.getMenuAction2()[index] = cmd2; client.getMenuAction3()[index] = cmd3;