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 90451c2ec7..02267e2415 100644 --- a/runelite-api/src/main/java/net/runelite/api/Client.java +++ b/runelite-api/src/main/java/net/runelite/api/Client.java @@ -659,6 +659,28 @@ public interface Client extends GameEngine @VisibleForDevtools int getVarbitValue(int[] varps, int varbitId); + /** + * Gets the value of a given VarPlayer. + * + * @param varps passed varps + * @param varpId the VarpPlayer id + * @return the value + * @see VarPlayer#id + */ + @VisibleForDevtools + int getVarpValue(int[] varps, int varpId); + + /** + * Sets the value of a given VarPlayer. + * + * @param varps passed varps + * @param varpId the VarpPlayer id + * @param value the value + * @see VarPlayer#id + */ + @VisibleForDevtools + void setVarpValue(int[] varps, int varpId, int value); + /** * Sets the value of a given variable. * 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 48b37398e1..6b251b62f0 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java @@ -385,6 +385,20 @@ public abstract class RSClientMixin implements RSClient return varps[varPlayer.getId()]; } + @Inject + @Override + public int getVarpValue(int[] varps, int varpId) + { + return varps[varpId]; + } + + @Inject + @Override + public void setVarpValue(int[] varps, int varpId, int value) + { + varps[varpId] = value; + } + @Inject @Override public boolean isPrayerActive(Prayer prayer)