chore: revision 189
This commit is contained in:
@@ -1,92 +1,103 @@
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.io.InvalidClassException;
|
||||
import java.io.ObjectInputStream;
|
||||
import java.io.OptionalDataException;
|
||||
import java.io.StreamCorruptedException;
|
||||
import java.lang.reflect.Field;
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
import java.lang.reflect.Method;
|
||||
import net.runelite.mapping.Export;
|
||||
import net.runelite.mapping.Implements;
|
||||
import net.runelite.mapping.ObfuscatedGetter;
|
||||
import net.runelite.mapping.ObfuscatedName;
|
||||
import net.runelite.mapping.ObfuscatedSignature;
|
||||
import net.runelite.rs.Reflection;
|
||||
|
||||
@ObfuscatedName("ea")
|
||||
@ObfuscatedName("ek")
|
||||
@Implements("GameObject")
|
||||
public final class GameObject {
|
||||
@ObfuscatedName("c")
|
||||
@ObfuscatedName("x")
|
||||
@ObfuscatedGetter(
|
||||
intValue = -940773831
|
||||
)
|
||||
@Export("plane")
|
||||
int plane;
|
||||
@ObfuscatedName("t")
|
||||
@ObfuscatedGetter(
|
||||
intValue = 2132625949
|
||||
)
|
||||
@Export("height")
|
||||
int height;
|
||||
@ObfuscatedName("o")
|
||||
@ObfuscatedGetter(
|
||||
intValue = -2072532473
|
||||
)
|
||||
@Export("centerX")
|
||||
int centerX;
|
||||
@ObfuscatedName("e")
|
||||
@ObfuscatedGetter(
|
||||
intValue = 1479439291
|
||||
intValue = -1812382241
|
||||
)
|
||||
@Export("centerY")
|
||||
int centerY;
|
||||
@ObfuscatedName("i")
|
||||
@ObfuscatedSignature(
|
||||
signature = "Leq;"
|
||||
)
|
||||
@Export("entity")
|
||||
public Entity entity;
|
||||
@ObfuscatedName("g")
|
||||
@ObfuscatedName("m")
|
||||
@ObfuscatedGetter(
|
||||
intValue = -638708115
|
||||
intValue = 1894508257
|
||||
)
|
||||
@Export("orientation")
|
||||
int orientation;
|
||||
@ObfuscatedName("k")
|
||||
@ObfuscatedGetter(
|
||||
intValue = -67995329
|
||||
)
|
||||
@Export("plane")
|
||||
int plane;
|
||||
@ObfuscatedName("d")
|
||||
@ObfuscatedGetter(
|
||||
intValue = -1848719161
|
||||
intValue = -1055464323
|
||||
)
|
||||
@Export("height")
|
||||
int height;
|
||||
@ObfuscatedName("w")
|
||||
@ObfuscatedGetter(
|
||||
intValue = 733420337
|
||||
)
|
||||
@Export("centerX")
|
||||
int centerX;
|
||||
@ObfuscatedName("v")
|
||||
@ObfuscatedSignature(
|
||||
signature = "Lee;"
|
||||
)
|
||||
@Export("entity")
|
||||
public Entity entity;
|
||||
@ObfuscatedName("q")
|
||||
@ObfuscatedGetter(
|
||||
intValue = 1786771811
|
||||
)
|
||||
@Export("startX")
|
||||
int startX;
|
||||
@ObfuscatedName("l")
|
||||
@ObfuscatedName("z")
|
||||
@ObfuscatedGetter(
|
||||
intValue = 1367330545
|
||||
intValue = 983334103
|
||||
)
|
||||
@Export("endX")
|
||||
int endX;
|
||||
@ObfuscatedName("j")
|
||||
@ObfuscatedName("t")
|
||||
@ObfuscatedGetter(
|
||||
intValue = 170965517
|
||||
intValue = 364744081
|
||||
)
|
||||
@Export("startY")
|
||||
int startY;
|
||||
@ObfuscatedName("m")
|
||||
@ObfuscatedName("e")
|
||||
@ObfuscatedGetter(
|
||||
intValue = -281386629
|
||||
intValue = 1023700223
|
||||
)
|
||||
@Export("endY")
|
||||
int endY;
|
||||
@ObfuscatedName("s")
|
||||
@ObfuscatedGetter(
|
||||
intValue = 1872697875
|
||||
)
|
||||
int field1950;
|
||||
@ObfuscatedName("p")
|
||||
@ObfuscatedGetter(
|
||||
intValue = 459315211
|
||||
)
|
||||
int field1931;
|
||||
@ObfuscatedName("h")
|
||||
@ObfuscatedGetter(
|
||||
intValue = 1057625291
|
||||
intValue = -623014369
|
||||
)
|
||||
@Export("lastDrawn")
|
||||
int lastDrawn;
|
||||
@ObfuscatedName("v")
|
||||
@ObfuscatedName("n")
|
||||
@ObfuscatedGetter(
|
||||
longValue = 3023307687483633369L
|
||||
longValue = 1416033697273847883L
|
||||
)
|
||||
@Export("tag")
|
||||
public long tag;
|
||||
@ObfuscatedName("n")
|
||||
@ObfuscatedName("u")
|
||||
@ObfuscatedGetter(
|
||||
intValue = -1037464563
|
||||
intValue = 837500395
|
||||
)
|
||||
@Export("flags")
|
||||
int flags;
|
||||
@@ -96,120 +107,292 @@ public final class GameObject {
|
||||
this.flags = 0;
|
||||
}
|
||||
|
||||
@ObfuscatedName("c")
|
||||
@ObfuscatedName("x")
|
||||
@ObfuscatedSignature(
|
||||
signature = "(II)Liw;",
|
||||
garbageValue = "-1799291125"
|
||||
signature = "(Ljava/io/File;Ljava/io/File;S)V",
|
||||
garbageValue = "1603"
|
||||
)
|
||||
@Export("getEnum")
|
||||
public static EnumDefinition getEnum(int var0) {
|
||||
EnumDefinition var1 = (EnumDefinition)EnumDefinition.EnumDefinition_cached.get((long)var0);
|
||||
if (var1 != null) {
|
||||
return var1;
|
||||
} else {
|
||||
byte[] var2 = GrandExchangeOfferAgeComparator.EnumDefinition_archive.takeFile(8, var0);
|
||||
var1 = new EnumDefinition();
|
||||
if (var2 != null) {
|
||||
var1.decode(new Buffer(var2));
|
||||
public static void method3408(File var0, File var1) {
|
||||
try {
|
||||
AccessFile var2 = new AccessFile(JagexCache.JagexCache_locationFile, "rw", 10000L);
|
||||
Buffer var3 = new Buffer(500);
|
||||
var3.writeByte(3);
|
||||
var3.writeByte(var1 != null ? 1 : 0);
|
||||
var3.writeCESU8(var0.getPath());
|
||||
if (var1 != null) {
|
||||
var3.writeCESU8("");
|
||||
}
|
||||
|
||||
EnumDefinition.EnumDefinition_cached.put(var1, (long)var0);
|
||||
return var1;
|
||||
var2.write(var3.array, 0, var3.offset);
|
||||
var2.close();
|
||||
} catch (IOException var4) {
|
||||
var4.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ObfuscatedName("fk")
|
||||
@ObfuscatedSignature(
|
||||
signature = "(Lip;IIII)V",
|
||||
garbageValue = "-1299121306"
|
||||
)
|
||||
@Export("addSequenceSoundEffect")
|
||||
static void addSequenceSoundEffect(SequenceDefinition var0, int var1, int var2, int var3) {
|
||||
if (Client.soundEffectCount < 50 && Client.areaSoundEffectVolume != 0) {
|
||||
if (var0.soundEffects != null && var1 < var0.soundEffects.length) {
|
||||
int var4 = var0.soundEffects[var1];
|
||||
if (var4 != 0) {
|
||||
int var5 = var4 >> 8;
|
||||
int var6 = var4 >> 4 & 7;
|
||||
int var7 = var4 & 15;
|
||||
Client.soundEffectIds[Client.soundEffectCount] = var5;
|
||||
Client.queuedSoundEffectLoops[Client.soundEffectCount] = var6;
|
||||
Client.queuedSoundEffectDelays[Client.soundEffectCount] = 0;
|
||||
Client.soundEffects[Client.soundEffectCount] = null;
|
||||
int var8 = (var2 - 64) / 128;
|
||||
int var9 = (var3 - 64) / 128;
|
||||
Client.soundLocations[Client.soundEffectCount] = var7 + (var9 << 8) + (var8 << 16);
|
||||
++Client.soundEffectCount;
|
||||
@ObfuscatedName("m")
|
||||
public static String method3405(long var0) {
|
||||
if (var0 > 0L && var0 < 6582952005840035281L) {
|
||||
if (var0 % 37L == 0L) {
|
||||
return null;
|
||||
} else {
|
||||
int var2 = 0;
|
||||
|
||||
for (long var3 = var0; var3 != 0L; var3 /= 37L) {
|
||||
++var2;
|
||||
}
|
||||
|
||||
StringBuilder var5 = new StringBuilder(var2);
|
||||
|
||||
while (var0 != 0L) {
|
||||
long var6 = var0;
|
||||
var0 /= 37L;
|
||||
var5.append(class298.base37Table[(int)(var6 - 37L * var0)]);
|
||||
}
|
||||
|
||||
return var5.reverse().toString();
|
||||
}
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@ObfuscatedName("ij")
|
||||
@ObfuscatedName("m")
|
||||
@ObfuscatedSignature(
|
||||
signature = "(B)V",
|
||||
garbageValue = "101"
|
||||
signature = "(Lkj;I)V",
|
||||
garbageValue = "-137749117"
|
||||
)
|
||||
static void method3360() {
|
||||
int var0;
|
||||
int var2;
|
||||
int var3;
|
||||
for (var0 = 0; var0 < Client.menuOptionsCount; ++var0) {
|
||||
var2 = Client.menuOpcodes[var0];
|
||||
boolean var1 = var2 == 57 || var2 == 58 || var2 == 1007 || var2 == 25 || var2 == 30;
|
||||
if (var1) {
|
||||
if (var0 < Client.menuOptionsCount - 1) {
|
||||
for (var3 = var0; var3 < Client.menuOptionsCount - 1; ++var3) {
|
||||
Client.menuActions[var3] = Client.menuActions[var3 + 1];
|
||||
Client.menuTargets[var3] = Client.menuTargets[var3 + 1];
|
||||
Client.menuOpcodes[var3] = Client.menuOpcodes[var3 + 1];
|
||||
Client.menuIdentifiers[var3] = Client.menuIdentifiers[var3 + 1];
|
||||
Client.menuArguments1[var3] = Client.menuArguments1[var3 + 1];
|
||||
Client.menuArguments2[var3] = Client.menuArguments2[var3 + 1];
|
||||
Client.menuShiftClick[var3] = Client.menuShiftClick[var3 + 1];
|
||||
@Export("performReflectionCheck")
|
||||
public static void performReflectionCheck(PacketBuffer var0) {
|
||||
ReflectionCheck var1 = (ReflectionCheck)class105.reflectionChecks.last();
|
||||
if (var1 != null) {
|
||||
int var2 = var0.offset;
|
||||
var0.writeInt(var1.id);
|
||||
|
||||
for (int var3 = 0; var3 < var1.size; ++var3) {
|
||||
if (var1.creationErrors[var3] != 0) {
|
||||
var0.writeByte(var1.creationErrors[var3]);
|
||||
} else {
|
||||
try {
|
||||
int var4 = var1.operations[var3];
|
||||
Field var5;
|
||||
int var6;
|
||||
if (var4 == 0) {
|
||||
var5 = var1.fields[var3];
|
||||
var6 = Reflection.getInt(var5, (Object)null);
|
||||
var0.writeByte(0);
|
||||
var0.writeInt(var6);
|
||||
} else if (var4 == 1) {
|
||||
var5 = var1.fields[var3];
|
||||
Reflection.setInt(var5, (Object)null, var1.intReplaceValues[var3]);
|
||||
var0.writeByte(0);
|
||||
} else if (var4 == 2) {
|
||||
var5 = var1.fields[var3];
|
||||
var6 = var5.getModifiers();
|
||||
var0.writeByte(0);
|
||||
var0.writeInt(var6);
|
||||
}
|
||||
|
||||
Method var25;
|
||||
if (var4 != 3) {
|
||||
if (var4 == 4) {
|
||||
var25 = var1.methods[var3];
|
||||
var6 = var25.getModifiers();
|
||||
var0.writeByte(0);
|
||||
var0.writeInt(var6);
|
||||
}
|
||||
} else {
|
||||
var25 = var1.methods[var3];
|
||||
byte[][] var10 = var1.arguments[var3];
|
||||
Object[] var7 = new Object[var10.length];
|
||||
|
||||
for (int var8 = 0; var8 < var10.length; ++var8) {
|
||||
ObjectInputStream var9 = new ObjectInputStream(new ByteArrayInputStream(var10[var8]));
|
||||
var7[var8] = var9.readObject();
|
||||
}
|
||||
|
||||
Object var11 = Reflection.invoke(var25, (Object)null, var7);
|
||||
if (var11 == null) {
|
||||
var0.writeByte(0);
|
||||
} else if (var11 instanceof Number) {
|
||||
var0.writeByte(1);
|
||||
var0.writeLong(((Number)var11).longValue());
|
||||
} else if (var11 instanceof String) {
|
||||
var0.writeByte(2);
|
||||
var0.writeStringCp1252NullTerminated((String)var11);
|
||||
} else {
|
||||
var0.writeByte(4);
|
||||
}
|
||||
}
|
||||
} catch (ClassNotFoundException var13) {
|
||||
var0.writeByte(-10);
|
||||
} catch (InvalidClassException var14) {
|
||||
var0.writeByte(-11);
|
||||
} catch (StreamCorruptedException var15) {
|
||||
var0.writeByte(-12);
|
||||
} catch (OptionalDataException var16) {
|
||||
var0.writeByte(-13);
|
||||
} catch (IllegalAccessException var17) {
|
||||
var0.writeByte(-14);
|
||||
} catch (IllegalArgumentException var18) {
|
||||
var0.writeByte(-15);
|
||||
} catch (InvocationTargetException var19) {
|
||||
var0.writeByte(-16);
|
||||
} catch (SecurityException var20) {
|
||||
var0.writeByte(-17);
|
||||
} catch (IOException var21) {
|
||||
var0.writeByte(-18);
|
||||
} catch (NullPointerException var22) {
|
||||
var0.writeByte(-19);
|
||||
} catch (Exception var23) {
|
||||
var0.writeByte(-20);
|
||||
} catch (Throwable var24) {
|
||||
var0.writeByte(-21);
|
||||
}
|
||||
}
|
||||
|
||||
--var0;
|
||||
--Client.menuOptionsCount;
|
||||
}
|
||||
|
||||
var0.writeCrc(var2);
|
||||
var1.remove();
|
||||
}
|
||||
}
|
||||
|
||||
var0 = InterfaceParent.menuWidth / 2 + ArchiveDiskAction.menuX;
|
||||
int var6 = SecureRandomCallable.menuY;
|
||||
var2 = class1.fontBold12.stringWidth("Choose Option");
|
||||
@ObfuscatedName("fw")
|
||||
@ObfuscatedSignature(
|
||||
signature = "(Lih;Ljava/lang/String;B)V",
|
||||
garbageValue = "-1"
|
||||
)
|
||||
static void method3404(Archive var0, String var1) {
|
||||
ArchiveLoader var2 = new ArchiveLoader(var0, var1);
|
||||
Client.archiveLoaders.add(var2);
|
||||
Client.field898 += var2.groupCount;
|
||||
}
|
||||
|
||||
@ObfuscatedName("hy")
|
||||
@ObfuscatedSignature(
|
||||
signature = "(ZLkj;I)V",
|
||||
garbageValue = "1045938723"
|
||||
)
|
||||
@Export("loadRegions")
|
||||
static final void loadRegions(boolean var0, PacketBuffer var1) {
|
||||
Client.isInInstance = var0;
|
||||
int var3;
|
||||
int var4;
|
||||
for (var3 = 0; var3 < Client.menuOptionsCount; ++var3) {
|
||||
var4 = class1.fontBold12.stringWidth(VerticalAlignment.method4426(var3));
|
||||
if (var4 > var2) {
|
||||
var2 = var4;
|
||||
int var5;
|
||||
int var6;
|
||||
int var7;
|
||||
int var8;
|
||||
if (!Client.isInInstance) {
|
||||
int var2 = var1.readUnsignedShort();
|
||||
var3 = var1.method5564();
|
||||
var4 = var1.readUnsignedShort();
|
||||
UrlRequester.xteaKeys = new int[var4][4];
|
||||
|
||||
for (var5 = 0; var5 < var4; ++var5) {
|
||||
for (var6 = 0; var6 < 4; ++var6) {
|
||||
UrlRequester.xteaKeys[var5][var6] = var1.readInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var2 += 8;
|
||||
var3 = Client.menuOptionsCount * 15 + 22;
|
||||
var4 = var0 - var2 / 2;
|
||||
if (var4 + var2 > Username.canvasWidth) {
|
||||
var4 = Username.canvasWidth - var2;
|
||||
}
|
||||
StructDefinition.regions = new int[var4];
|
||||
KeyHandler.regionMapArchiveIds = new int[var4];
|
||||
WorldMapArea.regionLandArchiveIds = new int[var4];
|
||||
WorldMapData_0.regionLandArchives = new byte[var4][];
|
||||
class23.regionMapArchives = new byte[var4][];
|
||||
boolean var16 = false;
|
||||
if ((var3 / 8 == 48 || var3 / 8 == 49) && var2 / 8 == 48) {
|
||||
var16 = true;
|
||||
}
|
||||
|
||||
if (var3 / 8 == 48 && var2 / 8 == 148) {
|
||||
var16 = true;
|
||||
}
|
||||
|
||||
if (var4 < 0) {
|
||||
var4 = 0;
|
||||
}
|
||||
|
||||
int var5 = var6;
|
||||
if (var3 + var6 > WorldMapData_1.canvasHeight) {
|
||||
var5 = WorldMapData_1.canvasHeight - var3;
|
||||
}
|
||||
for (var6 = (var3 - 6) / 8; var6 <= (var3 + 6) / 8; ++var6) {
|
||||
for (var7 = (var2 - 6) / 8; var7 <= (var2 + 6) / 8; ++var7) {
|
||||
var8 = var7 + (var6 << 8);
|
||||
if (!var16 || var7 != 49 && var7 != 149 && var7 != 147 && var6 != 50 && (var6 != 49 || var7 != 47)) {
|
||||
StructDefinition.regions[var4] = var8;
|
||||
KeyHandler.regionMapArchiveIds[var4] = WorldMapIcon_0.archive5.getGroupId("m" + var6 + "_" + var7);
|
||||
WorldMapArea.regionLandArchiveIds[var4] = WorldMapIcon_0.archive5.getGroupId("l" + var6 + "_" + var7);
|
||||
++var4;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (var5 < 0) {
|
||||
GrandExchangeOfferNameComparator.method237(var3, var2, true);
|
||||
} else {
|
||||
boolean var15 = var1.readUnsignedByte() == 1;
|
||||
var3 = var1.method5564();
|
||||
var4 = var1.method5614();
|
||||
var5 = var1.readUnsignedShort();
|
||||
var1.importIndex();
|
||||
|
||||
int var9;
|
||||
for (var6 = 0; var6 < 4; ++var6) {
|
||||
for (var7 = 0; var7 < 13; ++var7) {
|
||||
for (var8 = 0; var8 < 13; ++var8) {
|
||||
var9 = var1.readBits(1);
|
||||
if (var9 == 1) {
|
||||
Client.instanceChunkTemplates[var6][var7][var8] = var1.readBits(26);
|
||||
} else {
|
||||
Client.instanceChunkTemplates[var6][var7][var8] = -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var1.exportIndex();
|
||||
UrlRequester.xteaKeys = new int[var5][4];
|
||||
|
||||
for (var6 = 0; var6 < var5; ++var6) {
|
||||
for (var7 = 0; var7 < 4; ++var7) {
|
||||
UrlRequester.xteaKeys[var6][var7] = var1.readInt();
|
||||
}
|
||||
}
|
||||
|
||||
StructDefinition.regions = new int[var5];
|
||||
KeyHandler.regionMapArchiveIds = new int[var5];
|
||||
WorldMapArea.regionLandArchiveIds = new int[var5];
|
||||
WorldMapData_0.regionLandArchives = new byte[var5][];
|
||||
class23.regionMapArchives = new byte[var5][];
|
||||
var5 = 0;
|
||||
|
||||
for (var6 = 0; var6 < 4; ++var6) {
|
||||
for (var7 = 0; var7 < 13; ++var7) {
|
||||
for (var8 = 0; var8 < 13; ++var8) {
|
||||
var9 = Client.instanceChunkTemplates[var6][var7][var8];
|
||||
if (var9 != -1) {
|
||||
int var10 = var9 >> 14 & 1023;
|
||||
int var11 = var9 >> 3 & 2047;
|
||||
int var12 = (var10 / 8 << 8) + var11 / 8;
|
||||
|
||||
int var13;
|
||||
for (var13 = 0; var13 < var5; ++var13) {
|
||||
if (StructDefinition.regions[var13] == var12) {
|
||||
var12 = -1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (var12 != -1) {
|
||||
StructDefinition.regions[var5] = var12;
|
||||
var13 = var12 >> 8 & 255;
|
||||
int var14 = var12 & 255;
|
||||
KeyHandler.regionMapArchiveIds[var5] = WorldMapIcon_0.archive5.getGroupId("m" + var13 + "_" + var14);
|
||||
WorldMapArea.regionLandArchiveIds[var5] = WorldMapIcon_0.archive5.getGroupId("l" + var13 + "_" + var14);
|
||||
++var5;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
GrandExchangeOfferNameComparator.method237(var3, var4, !var15);
|
||||
}
|
||||
|
||||
ArchiveDiskAction.menuX = var4;
|
||||
SecureRandomCallable.menuY = var5;
|
||||
InterfaceParent.menuWidth = var2;
|
||||
Message.menuHeight = Client.menuOptionsCount * 15 + 22;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user