diff --git a/runelite-api/src/main/java/net/runelite/api/Client.java b/runelite-api/src/main/java/net/runelite/api/Client.java index dbef169a68..4e0fc24130 100644 --- a/runelite-api/src/main/java/net/runelite/api/Client.java +++ b/runelite-api/src/main/java/net/runelite/api/Client.java @@ -135,6 +135,13 @@ public interface Client extends GameShell */ GameState getGameState(); + /** + * Gets the current game state as an int + * + * @return the game state + */ + int getRSGameState(); + /** * Sets the current game state * @@ -142,6 +149,15 @@ public interface Client extends GameShell */ void setGameState(GameState gameState); + /** + * Sets the current game state + * This takes an int instead of a {@link GameState} so it can + * can handle states that aren't in the enum yet + * + * @param gameState + */ + void setGameState(int gameState); + /** * Causes the client to shutdown. It is faster than * {@link java.applet.Applet#stop()} because it doesn't wait for 4000ms. @@ -2053,7 +2069,7 @@ public interface Client extends GameShell * Sets the status of client mirror */ void setMirrored(boolean isMirrored); - + /** * Sets the image to be used for the login screen, provided as SpritePixels * If the image is larger than half the width of fixed mode, @@ -2073,6 +2089,7 @@ public interface Client extends GameShell /** * Test if a key is pressed + * * @param keycode the keycode * @return * @see KeyCode diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java index a720baffc9..ccd80a811c 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java @@ -525,6 +525,7 @@ public abstract class RSClientMixin implements RSClient } @Inject + @Override public void setGameState(int state) { assert this.isClientThread() : "setGameState must be called on client thread"; diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java b/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java index 5ce614dc45..31e806beac 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java @@ -138,6 +138,7 @@ public interface RSClient extends RSGameShell, Client void setChangedSkillsCount(int i); @Import("gameState") + @Override int getRSGameState(); @Import("updateGameState")