Update ClientTransform.java

Finished setMenuEntries, "Whoops"
This commit is contained in:
zeruth
2019-04-21 00:52:06 -04:00
parent 6a73c6f8e6
commit a99efc343d

View File

@@ -147,24 +147,45 @@ public class ClientTransform implements Transform {
public void transformSetMenuEntries() { public void transformSetMenuEntries() {
CtMethod setMenuEntries; CtMethod setMenuEntries;
try { try {
setMenuEntries = ct.getDeclaredMethods("setMenuEntries"/*, works for now */)[0]; setMenuEntries = ct.getDeclaredMethod("setMenuEntries");
ct.removeMethod(setMenuEntries); ct.removeMethod(setMenuEntries);
String src; String src;
setMenuEntries = CtNewMethod.make( setMenuEntries = CtNewMethod.make(
"public void setMenuEntries(net.runelite.api.MenuEntry[] paramArrayOfMenuEntry) {" + "public void setMenuEntries(net.runelite.api.MenuEntry[] arrmenuEntry) {" +
"int i = 0;" + "int n2 = 0;" +
"String[] arrayOfString1 = this.getMenuOptions();" + "String[] arrstring = this.getMenuOptions();" +
"String[] arrayOfString2 = this.getMenuTargets();" + "String[] arrstring2 = this.getMenuTargets();" +
"int[] arrayOfInt1 = this.getMenuIdentifiers();" + "int[] arrn = this.getMenuIdentifiers();" +
"int[] arrayOfInt2 = this.getMenuTypes();" + "int[] arrn2 = this.getMenuTypes();" +
"int[] arrayOfInt3 = this.getMenuActionParams0();" + "int[] arrn3 = this.getMenuActionParams0();" +
"int[] arrayOfInt4 = this.getMenuActionParams1();" + "int[] arrn4 = this.getMenuActionParams1();" +
"boolean[] arrayOfBoolean = getMenuForceLeftClick();" + "boolean[] arrbl = getMenuForceLeftClick();" +
"int testingInt[] = {1,2,3,4,5,6};" + "net.runelite.api.MenuEntry[] arrmenuEntry2 = arrmenuEntry;" +
"for (int m = 0 ; m < paramArrayOfMenuEntry.length ; m++) {" + "int n3 = arrmenuEntry2.length;" +
"net.runelite.api.MenuEntry menuEntry = paramArrayOfMenuEntry[m];" + "int n4 = 0;" +
"do {" +
"String string;" +
"if (n4 >= n3) {" +
"this.setMenuOptionCount(n2);" +
"oldMenuEntryCount = n2;" +
"return;" +
"}" + "}" +
"}" "net.runelite.api.MenuEntry menuEntry = arrmenuEntry2[n4];" +
"int n5 = menuEntry.getType();" +
"if (!(n5 != net.runelite.api.MenuAction.NPC_THIRD_OPTION.getId() && n5 != net.runelite.api.MenuAction.NPC_FIFTH_OPTION.getId() || n2 != arrmenuEntry.length - 1 || "+ByteCodePatcher.clientInstance+".getLocalPlayer().getWorldLocation().getRegionID() != 13358 || (string = menuEntry.getOption().toLowerCase()).hashCode() != 974723797 && string.hashCode() != -1108625161)) {" +
"n5 = net.runelite.api.MenuAction.CANCEL.getId();" +
"}" +
"arrstring[n2] = menuEntry.getOption();" +
"arrstring2[n2] = menuEntry.getTarget();" +
"arrn[n2] = menuEntry.getIdentifier();" +
"arrn2[n2] = n5;" +
"arrn3[n2] = menuEntry.getParam0();" +
"arrn4[n2] = menuEntry.getParam1();" +
"arrbl[n2] = menuEntry.isForceLeftClick();" +
"++n2;" +
"++n4;" +
"} while (true);" +
"}"
, ct); , ct);
ct.addMethod(setMenuEntries); ct.addMethod(setMenuEntries);
} catch (Exception e) { } catch (Exception e) {
@@ -172,6 +193,44 @@ public class ClientTransform implements Transform {
} }
} }
/*
public void setMenuEntries(MenuEntry[] arrmenuEntry) {
int n2 = 0;
String[] arrstring = this.1protect$getMenuOptions();
String[] arrstring2 = this.1protect$getMenuTargets();
int[] arrn = this.1protect$getMenuIdentifiers();
int[] arrn2 = this.1protect$getMenuTypes();
int[] arrn3 = this.1protect$getMenuActionParams0();
int[] arrn4 = this.1protect$getMenuActionParams1();
boolean[] arrbl = this.getMenuForceLeftClick();
MenuEntry[] arrmenuEntry2 = arrmenuEntry;
int n3 = arrmenuEntry2.length;
int n4 = 0;
do {
String string;
if (n4 >= n3) {
this.setMenuOptionCount(n2);
oldMenuEntryCount = n2;
return;
}
MenuEntry menuEntry = arrmenuEntry2[n4];
int n5 = menuEntry.getType();
if (!(n5 != MenuAction.NPC_THIRD_OPTION.getId() && n5 != MenuAction.NPC_FIFTH_OPTION.getId() || n2 != arrmenuEntry.length - 1 || bv.ak.getLocalPlayer().getWorldLocation().getRegionID() != 13358 || (string = menuEntry.getOption().toLowerCase()).hashCode() != 974723797 && string.hashCode() != -1108625161)) {
n5 = MenuAction.CANCEL.getId();
}
arrstring[n2] = menuEntry.getOption();
arrstring2[n2] = menuEntry.getTarget();
arrn[n2] = menuEntry.getIdentifier();
arrn2[n2] = n5;
arrn3[n2] = menuEntry.getParam0();
arrn4[n2] = menuEntry.getParam1();
arrbl[n2] = menuEntry.isForceLeftClick();
++n2;
++n4;
} while (true);
}
*/
public void transformOnMenuOptionsChanged() { public void transformOnMenuOptionsChanged() {
CtMethod onMenuOptionsChanged; CtMethod onMenuOptionsChanged;
try { try {