diff --git a/runescape-client/runescape-client.gradle.kts b/runescape-client/runescape-client.gradle.kts index 43aede0b59..ccafd1e9c6 100644 --- a/runescape-client/runescape-client.gradle.kts +++ b/runescape-client/runescape-client.gradle.kts @@ -35,6 +35,12 @@ dependencies { } tasks { + java { + // Needs 1.8 because of lambdas in reflection + sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_1_8 + disableAutoTargetJvm() + } withType { options.compilerArgs.addAll(arrayOf("-g:source,vars,lines", "-Xlint:-unchecked")) } diff --git a/runescape-client/src/main/java/class117.java b/runescape-client/src/main/java/class117.java new file mode 100644 index 0000000000..070cba189e --- /dev/null +++ b/runescape-client/src/main/java/class117.java @@ -0,0 +1,152 @@ +import java.lang.reflect.Field; +import java.lang.reflect.Method; +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.Reflection; + +@ObfuscatedName("db") +public class class117 { + @ObfuscatedName("f") + @ObfuscatedSignature( + signature = "Ljl;" + ) + @Export("reflectionChecks") + static IterableNodeDeque reflectionChecks; + @ObfuscatedName("dy") + @ObfuscatedSignature( + signature = "Lif;" + ) + @Export("archive14") + static Archive archive14; + + static { + reflectionChecks = new IterableNodeDeque(); + } + + @ObfuscatedName("w") + @ObfuscatedSignature( + signature = "(Lkq;IB)V", + garbageValue = "-86" + ) + @Export("readReflectionCheck") + public static void readReflectionCheck(Buffer var0, int var1) { + ReflectionCheck var2 = new ReflectionCheck(); + var2.size = var0.readUnsignedByte(); + var2.id = var0.readInt(); + var2.operations = new int[var2.size]; + var2.creationErrors = new int[var2.size]; + var2.fields = new Field[var2.size]; + var2.intReplaceValues = new int[var2.size]; + var2.methods = new Method[var2.size]; + var2.arguments = new byte[var2.size][][]; + + for (int var3 = 0; var3 < var2.size; ++var3) { + try { + int var4 = var0.readUnsignedByte(); + String var5; + String var6; + int var7; + if (var4 != 0 && var4 != 1 && var4 != 2) { + if (var4 == 3 || var4 == 4) { + var5 = var0.readStringCp1252NullTerminated(); + var6 = var0.readStringCp1252NullTerminated(); + var7 = var0.readUnsignedByte(); + String[] var8 = new String[var7]; + + for (int var9 = 0; var9 < var7; ++var9) { + var8[var9] = var0.readStringCp1252NullTerminated(); + } + + String var20 = var0.readStringCp1252NullTerminated(); + byte[][] var10 = new byte[var7][]; + int var12; + if (var4 == 3) { + for (int var11 = 0; var11 < var7; ++var11) { + var12 = var0.readInt(); + var10[var11] = new byte[var12]; + var0.readBytes(var10[var11], 0, var12); + } + } + + var2.operations[var3] = var4; + Class[] var21 = new Class[var7]; + + for (var12 = 0; var12 < var7; ++var12) { + var21[var12] = WorldMapDecoration.loadClassFromDescriptor(var8[var12]); + } + + Class var22 = WorldMapDecoration.loadClassFromDescriptor(var20); + if (WorldMapDecoration.loadClassFromDescriptor(var5).getClassLoader() == null) { + throw new SecurityException(); + } + + Method[] var13 = WorldMapDecoration.loadClassFromDescriptor(var5).getDeclaredMethods(); + Method[] var14 = var13; + + for (int var15 = 0; var15 < var14.length; ++var15) { + Method var16 = var14[var15]; + if (Reflection.getMethodName(var16).equals(var6)) { + Class[] var17 = Reflection.getParameterTypes(var16); + if (var21.length == var17.length) { + boolean var18 = true; + + for (int var19 = 0; var19 < var21.length; ++var19) { + if (var21[var19] != var17[var19]) { + var18 = false; + break; + } + } + + if (var18 && var22 == var16.getReturnType()) { + var2.methods[var3] = var16; + } + } + } + } + + var2.arguments[var3] = var10; + } + } else { + var5 = var0.readStringCp1252NullTerminated(); + var6 = var0.readStringCp1252NullTerminated(); + var7 = 0; + if (var4 == 1) { + var7 = var0.readInt(); + } + + var2.operations[var3] = var4; + var2.intReplaceValues[var3] = var7; + if (WorldMapDecoration.loadClassFromDescriptor(var5).getClassLoader() == null) { + throw new SecurityException(); + } + + var2.fields[var3] = Reflection.findField(WorldMapDecoration.loadClassFromDescriptor(var5), var6); + } + } catch (ClassNotFoundException var24) { + var2.creationErrors[var3] = -1; + } catch (SecurityException var25) { + var2.creationErrors[var3] = -2; + } catch (NullPointerException var26) { + var2.creationErrors[var3] = -3; + } catch (Exception var27) { + var2.creationErrors[var3] = -4; + } catch (Throwable var28) { + var2.creationErrors[var3] = -5; + } + } + + reflectionChecks.addFirst(var2); + } + + @ObfuscatedName("p") + @ObfuscatedSignature( + signature = "(IB)I", + garbageValue = "120" + ) + public static int method2760(int var0) { + long var2 = ViewportMouse.ViewportMouse_entityTags[var0]; + int var1 = (int)(var2 >>> 7 & 127L); + return var1; + } +} diff --git a/runescape-client/src/main/java/class155.java b/runescape-client/src/main/java/class155.java new file mode 100644 index 0000000000..83ffd375a8 --- /dev/null +++ b/runescape-client/src/main/java/class155.java @@ -0,0 +1,7 @@ +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("em") +public interface class155 { + @ObfuscatedName("f") + void method3386(Object var1); +} diff --git a/runescape-client/src/main/java/class175.java b/runescape-client/src/main/java/class175.java new file mode 100644 index 0000000000..5ea58b2f74 --- /dev/null +++ b/runescape-client/src/main/java/class175.java @@ -0,0 +1,5 @@ +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("fb") +public interface class175 { +} diff --git a/runescape-client/src/main/java/class179.java b/runescape-client/src/main/java/class179.java new file mode 100644 index 0000000000..de62efd780 --- /dev/null +++ b/runescape-client/src/main/java/class179.java @@ -0,0 +1,136 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("fi") +public class class179 { + @ObfuscatedName("f") + @ObfuscatedSignature( + signature = "Lfi;" + ) + public static final class179 field2291; + @ObfuscatedName("i") + @ObfuscatedSignature( + signature = "Lfi;" + ) + public static final class179 field2290; + @ObfuscatedName("y") + @ObfuscatedSignature( + signature = "Lfi;" + ) + public static final class179 field2292; + @ObfuscatedName("w") + @ObfuscatedSignature( + signature = "Lfi;" + ) + public static final class179 field2289; + @ObfuscatedName("p") + @ObfuscatedSignature( + signature = "Lfi;" + ) + public static final class179 field2293; + @ObfuscatedName("b") + @ObfuscatedSignature( + signature = "Lfi;" + ) + public static final class179 field2294; + @ObfuscatedName("e") + @ObfuscatedSignature( + signature = "Lfi;" + ) + public static final class179 field2295; + @ObfuscatedName("x") + @ObfuscatedSignature( + signature = "Lfi;" + ) + public static final class179 field2296; + @ObfuscatedName("a") + @ObfuscatedSignature( + signature = "Lfi;" + ) + public static final class179 field2297; + @ObfuscatedName("d") + @ObfuscatedSignature( + signature = "Lfi;" + ) + public static final class179 field2298; + + static { + field2291 = new class179(3); + field2290 = new class179(6); + field2292 = new class179(4); + field2289 = new class179(15); + field2293 = new class179(4); + field2294 = new class179(7); + field2295 = new class179(5); + field2296 = new class179(2); + field2297 = new class179(5); + field2298 = new class179(14); + } + + @ObfuscatedSignature( + signature = "(I)V", + garbageValue = "3" + ) + class179(int var1) { + } + + @ObfuscatedName("i") + @ObfuscatedSignature( + signature = "(IIB)I", + garbageValue = "-60" + ) + public static int method3580(int var0, int var1) { + int var2; + if (var1 > var0) { + var2 = var0; + var0 = var1; + var1 = var2; + } + + while (var1 != 0) { + var2 = var0 % var1; + var0 = var1; + var1 = var2; + } + + return var0; + } + + @ObfuscatedName("i") + @ObfuscatedSignature( + signature = "(CI)Z", + garbageValue = "-1453878926" + ) + public static boolean method3581(char var0) { + if (var0 >= ' ' && var0 < 127 || var0 > 127 && var0 < 160 || var0 > 160 && var0 <= 255) { + return true; + } else { + if (var0 != 0) { + char[] var1 = class287.cp1252AsciiExtension; + + for (int var2 = 0; var2 < var1.length; ++var2) { + char var3 = var1[var2]; + if (var0 == var3) { + return true; + } + } + } + + return false; + } + } + + @ObfuscatedName("w") + @ObfuscatedSignature( + signature = "(I)V", + garbageValue = "-340612518" + ) + public static void method3579() { + if (KeyHandler.KeyHandler_instance != null) { + synchronized(KeyHandler.KeyHandler_instance) { + KeyHandler.KeyHandler_instance = null; + } + } + + } +} diff --git a/runescape-client/src/main/java/class180.java b/runescape-client/src/main/java/class180.java new file mode 100644 index 0000000000..332e2c726c --- /dev/null +++ b/runescape-client/src/main/java/class180.java @@ -0,0 +1,13 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedGetter; +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("fj") +public class class180 { + @ObfuscatedName("y") + @ObfuscatedGetter( + intValue = 376801611 + ) + @Export("WorldMapElement_count") + public static int WorldMapElement_count; +} diff --git a/runescape-client/src/main/java/class206.java b/runescape-client/src/main/java/class206.java new file mode 100644 index 0000000000..45248ed77f --- /dev/null +++ b/runescape-client/src/main/java/class206.java @@ -0,0 +1,188 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; + +@ObfuscatedName("gg") +public class class206 { + @ObfuscatedName("f") + @ObfuscatedSignature( + signature = "Lgo;" + ) + @Export("huffman") + static Huffman huffman; + @ObfuscatedName("y") + @ObfuscatedSignature( + signature = "Lhz;" + ) + @Export("HitSplatDefinition_fontsArchive") + public static AbstractArchive HitSplatDefinition_fontsArchive; + @ObfuscatedName("am") + @Export("client") + @ObfuscatedSignature( + signature = "Lclient;" + ) + static Client client; + + @ObfuscatedName("f") + @ObfuscatedSignature( + signature = "(IIII)I", + garbageValue = "-2034421458" + ) + public static int method3926(int var0, int var1, int var2) { + var2 &= 3; + if (var2 == 0) { + return var1; + } else if (var2 == 1) { + return 7 - var0; + } else { + return var2 == 2 ? 7 - var1 : var0; + } + } + + @ObfuscatedName("as") + @ObfuscatedSignature( + signature = "(ILcu;ZI)I", + garbageValue = "-2142702532" + ) + static int method3919(int var0, Script var1, boolean var2) { + if (var0 == ScriptOpcodes.CLIENTCLOCK) { + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = Client.cycle; + return 1; + } else { + int var3; + int var4; + if (var0 == ScriptOpcodes.INV_GETOBJ) { + class188.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[class188.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[class188.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = MilliClock.method3447(var3, var4); + return 1; + } else if (var0 == ScriptOpcodes.INV_GETNUM) { + class188.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[class188.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[class188.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = GrandExchangeEvents.ItemContainer_getCount(var3, var4); + return 1; + } else if (var0 == ScriptOpcodes.INV_TOTAL) { + class188.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[class188.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[class188.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = GrandExchangeOfferUnitPriceComparator.method118(var3, var4); + return 1; + } else if (var0 == ScriptOpcodes.INV_SIZE) { + var3 = Interpreter.Interpreter_intStack[--class188.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = class197.getInvDefinition(var3).size; + return 1; + } else if (var0 == ScriptOpcodes.STAT) { + var3 = Interpreter.Interpreter_intStack[--class188.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = Client.currentLevels[var3]; + return 1; + } else if (var0 == ScriptOpcodes.STAT_BASE) { + var3 = Interpreter.Interpreter_intStack[--class188.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = Client.levels[var3]; + return 1; + } else if (var0 == ScriptOpcodes.STAT_XP) { + var3 = Interpreter.Interpreter_intStack[--class188.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = Client.experience[var3]; + return 1; + } else { + int var5; + if (var0 == ScriptOpcodes.COORD) { + var3 = UrlRequest.Client_plane; + var4 = MusicPatchPcmStream.baseX * 64 + (Message.localPlayer.x >> 7); + var5 = ScriptEvent.baseY * 64 + (Message.localPlayer.y >> 7); + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = (var4 << 14) + var5 + (var3 << 28); + return 1; + } else if (var0 == ScriptOpcodes.COORDX) { + var3 = Interpreter.Interpreter_intStack[--class188.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = var3 >> 14 & 16383; + return 1; + } else if (var0 == ScriptOpcodes.COORDZ) { + var3 = Interpreter.Interpreter_intStack[--class188.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = var3 >> 28; + return 1; + } else if (var0 == ScriptOpcodes.COORDY) { + var3 = Interpreter.Interpreter_intStack[--class188.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = var3 & 16383; + return 1; + } else if (var0 == ScriptOpcodes.MAP_MEMBERS) { + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = Client.isMembersWorld ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.INVOTHER_GETOBJ) { + class188.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[class188.Interpreter_intStackSize] + 32768; + var4 = Interpreter.Interpreter_intStack[class188.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = MilliClock.method3447(var3, var4); + return 1; + } else if (var0 == ScriptOpcodes.INVOTHER_GETNUM) { + class188.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[class188.Interpreter_intStackSize] + 32768; + var4 = Interpreter.Interpreter_intStack[class188.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = GrandExchangeEvents.ItemContainer_getCount(var3, var4); + return 1; + } else if (var0 == ScriptOpcodes.INVOTHER_TOTAL) { + class188.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[class188.Interpreter_intStackSize] + 32768; + var4 = Interpreter.Interpreter_intStack[class188.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = GrandExchangeOfferUnitPriceComparator.method118(var3, var4); + return 1; + } else if (var0 == ScriptOpcodes.STAFFMODLEVEL) { + if (Client.staffModLevel >= 2) { + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = Client.staffModLevel; + } else { + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == ScriptOpcodes.REBOOTTIMER) { + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = Client.rebootTimer; + return 1; + } else if (var0 == ScriptOpcodes.MAP_WORLD) { + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = Client.worldId; + return 1; + } else if (var0 == ScriptOpcodes.RUNENERGY_VISIBLE) { + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = Client.runEnergy; + return 1; + } else if (var0 == ScriptOpcodes.RUNWEIGHT_VISIBLE) { + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = Client.weight; + return 1; + } else if (var0 == ScriptOpcodes.PLAYERMOD) { + if (Client.playerMod) { + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = 1; + } else { + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == ScriptOpcodes.WORLDFLAGS) { + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = Client.worldProperties; + return 1; + } else if (var0 == ScriptOpcodes.MOVECOORD) { + class188.Interpreter_intStackSize -= 4; + var3 = Interpreter.Interpreter_intStack[class188.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[class188.Interpreter_intStackSize + 1]; + var5 = Interpreter.Interpreter_intStack[class188.Interpreter_intStackSize + 2]; + int var6 = Interpreter.Interpreter_intStack[class188.Interpreter_intStackSize + 3]; + var3 += var4 << 14; + var3 += var5 << 28; + var3 += var6; + Interpreter.Interpreter_intStack[++class188.Interpreter_intStackSize - 1] = var3; + return 1; + } else { + return 2; + } + } + } + } + + @ObfuscatedName("hh") + @ObfuscatedSignature( + signature = "(Lbv;II)V", + garbageValue = "-1115818539" + ) + @Export("getActorScreenLocation") + static final void getActorScreenLocation(Actor var0, int var1) { + KeyHandler.worldToScreen(var0.x, var0.y, var1); + } +} diff --git a/runescape-client/src/main/java/class268.java b/runescape-client/src/main/java/class268.java new file mode 100644 index 0000000000..bdb186fe78 --- /dev/null +++ b/runescape-client/src/main/java/class268.java @@ -0,0 +1,68 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedGetter; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("jz") +public class class268 { + @ObfuscatedName("p") + @ObfuscatedGetter( + intValue = -1635748915 + ) + public static int field3524; + @ObfuscatedName("x") + @Export("SpriteBuffer_spritePalette") + public static int[] SpriteBuffer_spritePalette; + @ObfuscatedName("v") + @ObfuscatedSignature( + signature = "Ldx;" + ) + @Export("soundCache") + public static SoundCache soundCache; + + @ObfuscatedName("f") + @ObfuscatedSignature( + signature = "(Ljava/lang/Object;ZI)[B", + garbageValue = "-1997721504" + ) + @Export("serialize") + public static byte[] serialize(Object var0, boolean var1) { + if (var0 == null) { + return null; + } else if (var0 instanceof byte[]) { + byte[] var6 = (byte[])((byte[])var0); + int var4 = var6.length; + byte[] var5 = new byte[var4]; + System.arraycopy(var6, 0, var5, 0, var4); + return var5; + } else if (var0 instanceof AbstractByteArrayCopier) { + AbstractByteArrayCopier var2 = (AbstractByteArrayCopier)var0; + return var2.get(); + } else { + throw new IllegalArgumentException(); + } + } + + @ObfuscatedName("e") + static int method5012(long var0) { + return (int)(var0 >>> 14 & 3L); + } + + @ObfuscatedName("fh") + @ObfuscatedSignature( + signature = "(IIII)V", + garbageValue = "-1968592284" + ) + @Export("queueSoundEffect") + static void queueSoundEffect(int var0, int var1, int var2) { + if (Client.soundEffectVolume != 0 && var1 != 0 && Client.soundEffectCount < 50) { + Client.soundEffectIds[Client.soundEffectCount] = var0; + Client.queuedSoundEffectLoops[Client.soundEffectCount] = var1; + Client.queuedSoundEffectDelays[Client.soundEffectCount] = var2; + Client.soundEffects[Client.soundEffectCount] = null; + Client.soundLocations[Client.soundEffectCount] = 0; + ++Client.soundEffectCount; + } + + } +} diff --git a/runescape-client/src/main/java/class295.java b/runescape-client/src/main/java/class295.java new file mode 100644 index 0000000000..1685ca1257 --- /dev/null +++ b/runescape-client/src/main/java/class295.java @@ -0,0 +1,16 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("ka") +public class class295 { + @ObfuscatedName("jm") + @ObfuscatedSignature( + signature = "(ZB)V", + garbageValue = "-34" + ) + @Export("setTapToDrop") + static void setTapToDrop(boolean var0) { + Client.tapToDrop = var0; + } +} diff --git a/runescape-client/src/main/java/class339.java b/runescape-client/src/main/java/class339.java new file mode 100644 index 0000000000..54c58cc3e4 --- /dev/null +++ b/runescape-client/src/main/java/class339.java @@ -0,0 +1,14 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("mp") +public class class339 { + @ObfuscatedName("i") + @ObfuscatedSignature( + signature = "(II)I", + garbageValue = "321161362" + ) + public static int method6563(int var0) { + return var0 >> 17 & 7; + } +} diff --git a/runescape-client/src/main/java/class46.java b/runescape-client/src/main/java/class46.java new file mode 100644 index 0000000000..6b1e284d17 --- /dev/null +++ b/runescape-client/src/main/java/class46.java @@ -0,0 +1,16 @@ +import java.applet.Applet; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; +import netscape.javascript.JSObject; + +@ObfuscatedName("at") +public class class46 { + @ObfuscatedName("f") + @ObfuscatedSignature( + signature = "(Ljava/applet/Applet;Ljava/lang/String;I)V", + garbageValue = "273320241" + ) + public static void method846(Applet var0, String var1) throws Throwable { + JSObject.getWindow(var0).eval(var1); + } +} diff --git a/runescape-client/src/main/java/class48.java b/runescape-client/src/main/java/class48.java new file mode 100644 index 0000000000..ea3ab0bae1 --- /dev/null +++ b/runescape-client/src/main/java/class48.java @@ -0,0 +1,149 @@ +import java.util.Date; +import javax.imageio.ImageIO; +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("ap") +public class class48 { + @ObfuscatedName("bw") + @ObfuscatedSignature( + signature = "Lhi;" + ) + static ServerBuild field402; + @ObfuscatedName("du") + @ObfuscatedSignature( + signature = "Lif;" + ) + @Export("archive11") + static Archive archive11; + + static { + ImageIO.setUseCache(false); + } + + @ObfuscatedName("f") + public static String method864(long var0) { + Calendar.Calendar_calendar.setTime(new Date(var0)); + int var2 = Calendar.Calendar_calendar.get(7); + int var3 = Calendar.Calendar_calendar.get(5); + int var4 = Calendar.Calendar_calendar.get(2); + int var5 = Calendar.Calendar_calendar.get(1); + int var6 = Calendar.Calendar_calendar.get(11); + int var7 = Calendar.Calendar_calendar.get(12); + int var8 = Calendar.Calendar_calendar.get(13); + return Calendar.DAYS_OF_THE_WEEK[var2 - 1] + ", " + var3 / 10 + var3 % 10 + "-" + Calendar.MONTH_NAMES_ENGLISH_GERMAN[0][var4] + "-" + var5 + " " + var6 / 10 + var6 % 10 + ":" + var7 / 10 + var7 % 10 + ":" + var8 / 10 + var8 % 10 + " GMT"; + } + + @ObfuscatedName("y") + @ObfuscatedSignature( + signature = "(Lif;IB)V", + garbageValue = "114" + ) + static void method862(Archive var0, int var1) { + if (NetCache.NetCache_reference != null) { + NetCache.NetCache_reference.offset = var1 * 8 + 5; + int var2 = NetCache.NetCache_reference.readInt(); + int var3 = NetCache.NetCache_reference.readInt(); + var0.loadIndex(var2, var3); + } else { + class226.requestNetFile((Archive)null, 255, 255, 0, (byte)0, true); + NetCache.NetCache_archives[var1] = var0; + } + } + + @ObfuscatedName("w") + @ObfuscatedSignature( + signature = "([BIIIIIII[Lfp;I)V", + garbageValue = "264841801" + ) + static final void method858(byte[] var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, CollisionMap[] var8) { + int var10; + for (int var9 = 0; var9 < 8; ++var9) { + for (var10 = 0; var10 < 8; ++var10) { + if (var9 + var2 > 0 && var9 + var2 < 103 && var3 + var10 > 0 && var3 + var10 < 103) { + int[] var10000 = var8[var1].flags[var9 + var2]; + var10000[var10 + var3] &= -16777217; + } + } + } + + Buffer var20 = new Buffer(var0); + + for (var10 = 0; var10 < 4; ++var10) { + for (int var11 = 0; var11 < 64; ++var11) { + for (int var12 = 0; var12 < 64; ++var12) { + if (var10 == var4 && var11 >= var5 && var11 < var5 + 8 && var12 >= var6 && var12 < var6 + 8) { + int var17 = var11 & 7; + int var18 = var12 & 7; + int var19 = var7 & 3; + int var16; + if (var19 == 0) { + var16 = var17; + } else if (var19 == 1) { + var16 = var18; + } else if (var19 == 2) { + var16 = 7 - var17; + } else { + var16 = 7 - var18; + } + + PrivateChatMode.loadTerrain(var20, var1, var16 + var2, var3 + class206.method3926(var11 & 7, var12 & 7, var7), 0, 0, var7); + } else { + PrivateChatMode.loadTerrain(var20, 0, -1, -1, 0, 0, 0); + } + } + } + } + + } + + @ObfuscatedName("fo") + @ObfuscatedSignature( + signature = "(I)I", + garbageValue = "-767929178" + ) + static int method861() { + if (Client.archiveLoaders != null && Client.archiveLoadersDone < Client.archiveLoaders.size()) { + int var0 = 0; + + for (int var1 = 0; var1 <= Client.archiveLoadersDone; ++var1) { + var0 += ((ArchiveLoader)Client.archiveLoaders.get(var1)).loadedCount; + } + + return var0 * 10000 / Client.field629; + } else { + return 10000; + } + } + + @ObfuscatedName("fy") + @ObfuscatedSignature( + signature = "(IZZZI)Lif;", + garbageValue = "959698373" + ) + @Export("newArchive") + static Archive newArchive(int var0, boolean var1, boolean var2, boolean var3) { + ArchiveDisk var4 = null; + if (JagexCache.JagexCache_dat2File != null) { + var4 = new ArchiveDisk(var0, JagexCache.JagexCache_dat2File, AttackOption.JagexCache_idxFiles[var0], 1000000); + } + + return new Archive(var4, WorldMapRectangle.masterDisk, var0, var1, var2, var3); + } + + @ObfuscatedName("lf") + @ObfuscatedSignature( + signature = "(Lkq;II)V", + garbageValue = "197920071" + ) + static void method859(Buffer var0, int var1) { + byte[] var2 = var0.array; + if (Client.randomDatData == null) { + Client.randomDatData = new byte[24]; + } + + class300.writeRandomDat(var2, var1, Client.randomDatData, 0, 24); + class160.method3432(var0, var1); + } +} diff --git a/runescape-client/src/main/java/class50.java b/runescape-client/src/main/java/class50.java new file mode 100644 index 0000000000..b57a6330be --- /dev/null +++ b/runescape-client/src/main/java/class50.java @@ -0,0 +1,37 @@ +import java.applet.Applet; +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("am") +public class class50 { + @ObfuscatedName("f") + @Export("applet") + static Applet applet; + @ObfuscatedName("i") + static String field410; + + static { + applet = null; + field410 = ""; + } + + @ObfuscatedName("f") + @ObfuscatedSignature( + signature = "(II)Lku;", + garbageValue = "-1375036887" + ) + public static PrivateChatMode method893(int var0) { + PrivateChatMode[] var1 = new PrivateChatMode[]{PrivateChatMode.field3791, PrivateChatMode.field3790, PrivateChatMode.field3792}; + PrivateChatMode[] var2 = var1; + + for (int var3 = 0; var3 < var2.length; ++var3) { + PrivateChatMode var4 = var2[var3]; + if (var0 == var4.field3793) { + return var4; + } + } + + return null; + } +} diff --git a/runescape-client/src/main/java/class54.java b/runescape-client/src/main/java/class54.java new file mode 100644 index 0000000000..30b0585393 --- /dev/null +++ b/runescape-client/src/main/java/class54.java @@ -0,0 +1,47 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedGetter; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("bw") +public final class class54 { + @ObfuscatedName("bo") + @ObfuscatedSignature( + signature = "Lli;" + ) + static IndexedSprite field483; + @ObfuscatedName("eo") + @ObfuscatedGetter( + intValue = -460965205 + ) + static int field482; + @ObfuscatedName("kc") + @ObfuscatedGetter( + intValue = -612545979 + ) + @Export("menuHeight") + static int menuHeight; + + @ObfuscatedName("b") + @ObfuscatedSignature( + signature = "(I)V", + garbageValue = "-2012474432" + ) + static void method1105() { + Messages.Messages_channels.clear(); + Messages.Messages_hashTable.clear(); + Messages.Messages_queue.clear(); + Messages.Messages_count = 0; + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + signature = "(I)V", + garbageValue = "-396551795" + ) + public static void method1104() { + ItemDefinition.ItemDefinition_cached.clear(); + ItemDefinition.ItemDefinition_cachedModels.clear(); + ItemDefinition.ItemDefinition_cachedSprites.clear(); + } +} diff --git a/runescape-client/src/main/java/class97.java b/runescape-client/src/main/java/class97.java new file mode 100644 index 0000000000..20341edd09 --- /dev/null +++ b/runescape-client/src/main/java/class97.java @@ -0,0 +1,14 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("cz") +public interface class97 { + @ObfuscatedName("f") + @ObfuscatedSignature( + signature = "(I)Lcw;", + garbageValue = "479224621" + ) + @Export("player") + PcmPlayer player(); +}