runelite-client: add methods for externals (plugin-hub) (#2286)

* Merge pull request #/10524 from Trevor159/get-var

Add getVar methods for external plugins

* Add the mixins

* fix dumb yaml error

recommend https://yaml-online-parser.appspot.com/

Co-authored-by: Adam <adam@sigterm.info>
This commit is contained in:
ThatGamerBlue
2020-01-26 02:33:46 +00:00
committed by Kyle
parent 6cca168162
commit 014d1f095c
5 changed files with 106 additions and 3 deletions

View File

@@ -591,6 +591,13 @@ public abstract class RSClientMixin implements RSClient
return varps[varpId];
}
@Inject
@Override
public int getVarpValue(int varpId)
{
return getVarpValue(getVarps(), varpId);
}
@Inject
@Override
public void setVarpValue(int[] varps, int varpId, int value)

View File

@@ -37,6 +37,13 @@ public abstract class VarbitMixin implements RSClient
return getVarbitValue(getVarps(), varbitId);
}
@Inject
@Override
public int getVarbitValue(int varbitId)
{
return getVarbitValue(getVarps(), varbitId);
}
@Inject
@Override
public void setVarbit(Varbits varbit, int value)
@@ -94,18 +101,32 @@ public abstract class VarbitMixin implements RSClient
@Inject
@Override
public int getVar(VarClientInt varClientInt)
{
return getVarcIntValue(varClientInt.getIndex());
}
@Inject
@Override
public int getVarcIntValue(int varcIntId)
{
Map<Integer, Object> varcmap = getVarcMap();
Object object = varcmap.get(varClientInt.getIndex());
Object object = varcmap.get(varcIntId);
return object instanceof Integer ? (Integer) object : 0;
}
@Inject
@Override
public String getVar(VarClientStr varClientStr)
{
return getVarcStrValue(varClientStr.getIndex());
}
@Inject
@Override
public String getVarcStrValue(int varcStrId)
{
Map<Integer, Object> varcmap = getVarcMap();
Object var2 = varcmap.get(varClientStr.getIndex());
Object var2 = varcmap.get(varcStrId);
return var2 instanceof String ? (String) var2 : "";
}