From 04634bc5b9bf12add6af1a5e12712e63265c3fe4 Mon Sep 17 00:00:00 2001 From: Jonatino Date: Sun, 21 Mar 2021 13:46:37 -0400 Subject: [PATCH 01/12] Added some refactoring around cache path logic --- runescape-client/src/main/java/Client.java | 4 +-- .../java/DesktopPlatformInfoProvider.java | 8 ++--- .../src/main/java/GZipDecompressor.java | 5 +-- .../src/main/java/JagexCache.java | 5 +-- .../src/main/java/Projectile.java | 33 ++++++++++--------- runescape-client/src/main/java/Timer.java | 5 +-- runescape-client/src/main/java/Varcs.java | 11 ++++--- runescape-client/src/main/java/class224.java | 6 ++-- runescape-client/src/main/java/class23.java | 7 ++-- runescape-client/src/main/java/class3.java | 5 +-- 10 files changed, 49 insertions(+), 40 deletions(-) diff --git a/runescape-client/src/main/java/Client.java b/runescape-client/src/main/java/Client.java index 798fe8b676..4f8ebb49ae 100644 --- a/runescape-client/src/main/java/Client.java +++ b/runescape-client/src/main/java/Client.java @@ -2000,7 +2000,7 @@ public final class Client extends GameEngine implements Usernamed { byte var9 = 0; // L: 775 try { - Projectile.method2255("oldschool", var8, var9, 21); // L: 777 + Projectile.findAndLoadCache("oldschool", var8, var9, 21); // L: 777 } catch (Exception var10) { // L: 779 SequenceDefinition.RunException_sendStackTrace((String)null, var10); // L: 780 } @@ -5984,4 +5984,4 @@ public final class Client extends GameEngine implements Usernamed { } } } -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/DesktopPlatformInfoProvider.java b/runescape-client/src/main/java/DesktopPlatformInfoProvider.java index 65c6029681..849b5b3cb0 100644 --- a/runescape-client/src/main/java/DesktopPlatformInfoProvider.java +++ b/runescape-client/src/main/java/DesktopPlatformInfoProvider.java @@ -31,11 +31,11 @@ public class DesktopPlatformInfoProvider implements PlatformInfoProvider { @Export("get") public PlatformInfo get() { byte var1; - if (GZipDecompressor.field4046.startsWith("win")) { // L: 15 + if (GZipDecompressor.formattedOperatingSystemName.startsWith("win")) { // L: 15 var1 = 1; - } else if (GZipDecompressor.field4046.startsWith("mac")) { // L: 16 + } else if (GZipDecompressor.formattedOperatingSystemName.startsWith("mac")) { // L: 16 var1 = 2; - } else if (GZipDecompressor.field4046.startsWith("linux")) { + } else if (GZipDecompressor.formattedOperatingSystemName.startsWith("linux")) { var1 = 3; } else { var1 = 4; // L: 18 @@ -210,4 +210,4 @@ public class DesktopPlatformInfoProvider implements PlatformInfoProvider { public static StudioGame[] method6478() { return new StudioGame[]{StudioGame.stellardawn, StudioGame.game5, StudioGame.oldscape, StudioGame.game4, StudioGame.runescape, StudioGame.game3}; // L: 17 } -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/GZipDecompressor.java b/runescape-client/src/main/java/GZipDecompressor.java index a24dd0d9a5..628887632a 100644 --- a/runescape-client/src/main/java/GZipDecompressor.java +++ b/runescape-client/src/main/java/GZipDecompressor.java @@ -8,7 +8,8 @@ import net.runelite.mapping.ObfuscatedSignature; @Implements("GZipDecompressor") public class GZipDecompressor { @ObfuscatedName("t") - public static String field4046; + @Export("formattedOperatingSystemName") + public static String formattedOperatingSystemName; @ObfuscatedName("n") @Export("inflater") Inflater inflater; @@ -49,4 +50,4 @@ public class GZipDecompressor { throw new RuntimeException(""); } } // L: 27 -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/JagexCache.java b/runescape-client/src/main/java/JagexCache.java index d39fc53654..41afb54e66 100644 --- a/runescape-client/src/main/java/JagexCache.java +++ b/runescape-client/src/main/java/JagexCache.java @@ -56,7 +56,8 @@ public class JagexCache { @Export("cacheGamebuild") static int cacheGamebuild; @ObfuscatedName("p") - static String field2065; + @Export("operatingSystemName") + static String operatingSystemName; @ObfuscatedName("m") @Export("userHomeDirectory") static String userHomeDirectory; @@ -225,4 +226,4 @@ public class JagexCache { return 2; // L: 2643 } } -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/Projectile.java b/runescape-client/src/main/java/Projectile.java index 3aef04557d..534a2bc413 100644 --- a/runescape-client/src/main/java/Projectile.java +++ b/runescape-client/src/main/java/Projectile.java @@ -246,17 +246,18 @@ public final class Projectile extends Renderable { descriptor = "(Ljava/lang/String;Ljava/lang/String;IIB)V", garbageValue = "23" ) - public static void method2255(String var0, String var1, int var2, int var3) throws IOException { + @Export("findAndLoadCache") + public static void findAndLoadCache(String var0, String var1, int var2, int var3) throws IOException { JagexCache.idxCount = var3; // L: 40 JagexCache.cacheGamebuild = var2; // L: 41 try { - JagexCache.field2065 = System.getProperty("os.name"); // L: 43 + JagexCache.operatingSystemName = System.getProperty("os.name"); // L: 43 } catch (Exception var28) { // L: 45 - JagexCache.field2065 = "Unknown"; // L: 46 + JagexCache.operatingSystemName = "Unknown"; // L: 46 } - GZipDecompressor.field4046 = JagexCache.field2065.toLowerCase(); // L: 48 + GZipDecompressor.formattedOperatingSystemName = JagexCache.operatingSystemName.toLowerCase(); // L: 48 try { JagexCache.userHomeDirectory = System.getProperty("user.home"); // L: 50 @@ -267,7 +268,7 @@ public final class Projectile extends Renderable { } try { - if (GZipDecompressor.field4046.startsWith("win")) { // L: 55 + if (GZipDecompressor.formattedOperatingSystemName.startsWith("win")) { // L: 55 if (JagexCache.userHomeDirectory == null) { // L: 56 JagexCache.userHomeDirectory = System.getenv("USERPROFILE"); } @@ -285,8 +286,8 @@ public final class Projectile extends Renderable { JagexCache.userHomeDirectory = "~/"; } - class224.field2576 = new String[]{"c:/rscache/", "/rscache/", "c:/windows/", "c:/winnt/", "c:/", JagexCache.userHomeDirectory, "/tmp/", ""}; // L: 65 - Timer.field3621 = new String[]{".jagex_cache_" + JagexCache.cacheGamebuild, ".file_store_" + JagexCache.cacheGamebuild}; // L: 66 + class224.cacheParentPaths = new String[]{"c:/rscache/", "/rscache/", "c:/windows/", "c:/winnt/", "c:/", JagexCache.userHomeDirectory, "/tmp/", ""}; // L: 65 + Timer.cacheSubPaths = new String[]{".jagex_cache_" + JagexCache.cacheGamebuild, ".file_store_" + JagexCache.cacheGamebuild}; // L: 66 int var18 = 0; label250: @@ -347,7 +348,7 @@ public final class Projectile extends Renderable { if (var7 != null) { // L: 109 var33 = new File(var7, "test.dat"); // L: 110 - if (!class23.method235(var33, true)) { // L: 111 + if (!class23.isWriteable(var33, true)) { // L: 111 var7 = null; // L: 112 } } @@ -355,10 +356,10 @@ public final class Projectile extends Renderable { if (var7 == null && var18 == 0) { // L: 116 label225: - for (int var19 = 0; var19 < Timer.field3621.length; ++var19) { // L: 117 - for (int var20 = 0; var20 < class224.field2576.length; ++var20) { // L: 118 - File var21 = new File(class224.field2576[var20] + Timer.field3621[var19] + File.separatorChar + var0 + File.separatorChar); // L: 119 - if (var21.exists() && class23.method235(new File(var21, "test.dat"), true)) { // L: 120 121 + for (int var19 = 0; var19 < Timer.cacheSubPaths.length; ++var19) { // L: 117 + for (int var20 = 0; var20 < class224.cacheParentPaths.length; ++var20) { // L: 118 + File var21 = new File(class224.cacheParentPaths[var20] + Timer.cacheSubPaths[var19] + File.separatorChar + var0 + File.separatorChar); // L: 119 + if (var21.exists() && class23.isWriteable(new File(var21, "test.dat"), true)) { // L: 120 121 var7 = var21.toString(); // L: 122 var9 = true; // L: 123 break label225; // L: 124 @@ -429,7 +430,7 @@ public final class Projectile extends Renderable { for (int var23 = 0; var23 < var34.length; ++var23) { // L: 184 File var24 = var34[var23]; // L: 185 - if (!class23.method235(var24, false)) { // L: 187 + if (!class23.isWriteable(var24, false)) { // L: 187 ++var18; // L: 67 continue label250; } @@ -438,8 +439,8 @@ public final class Projectile extends Renderable { break; } - class3.method36(JagexCache.cacheDir); // L: 194 - Varcs.method2346(); // L: 195 + class3.assetCacheDirExists(JagexCache.cacheDir); // L: 194 + Varcs.findOrCreateRandomDatFile(); // L: 195 JagexCache.JagexCache_dat2File = new BufferedFile(new AccessFile(GraphicsObject.getFile("main_file_cache.dat2"), "rw", 1048576000L), 5200, 0); // L: 196 JagexCache.JagexCache_idx255File = new BufferedFile(new AccessFile(GraphicsObject.getFile("main_file_cache.idx255"), "rw", 1048576L), 6000, 0); // L: 197 WorldMapEvent.JagexCache_idxFiles = new BufferedFile[JagexCache.idxCount]; // L: 198 @@ -690,4 +691,4 @@ public final class Projectile extends Renderable { } } // L: 9183 -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/Timer.java b/runescape-client/src/main/java/Timer.java index e31fe9f89a..08bf4d9b90 100644 --- a/runescape-client/src/main/java/Timer.java +++ b/runescape-client/src/main/java/Timer.java @@ -8,7 +8,8 @@ import net.runelite.mapping.ObfuscatedSignature; @Implements("Timer") public class Timer { @ObfuscatedName("f") - static String[] field3621; + @Export("cacheSubPaths") + static String[] cacheSubPaths; @ObfuscatedName("n") @ObfuscatedGetter( longValue = -2999131098664295081L @@ -175,4 +176,4 @@ public class Timer { var1.writeShort(this.field3613); // L: 76 var1.writeShort(this.field3619); // L: 77 } // L: 78 -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/Varcs.java b/runescape-client/src/main/java/Varcs.java index 5e154f2138..a695b7c88c 100644 --- a/runescape-client/src/main/java/Varcs.java +++ b/runescape-client/src/main/java/Varcs.java @@ -398,7 +398,8 @@ public class Varcs { descriptor = "(B)V", garbageValue = "0" ) - static void method2346() { + @Export("findOrCreateRandomDatFile") + static void findOrCreateRandomDatFile() { try { File var0 = new File(JagexCache.userHomeDirectory, "random.dat"); // L: 250 int var2; @@ -406,9 +407,9 @@ public class Varcs { JagexCache.JagexCache_randomDat = new BufferedFile(new AccessFile(var0, "rw", 25L), 24, 0); // L: 252 } else { label39: - for (int var1 = 0; var1 < Timer.field3621.length; ++var1) { // L: 255 - for (var2 = 0; var2 < class224.field2576.length; ++var2) { // L: 256 - File var3 = new File(class224.field2576[var2] + Timer.field3621[var1] + File.separatorChar + "random.dat"); // L: 257 + for (int var1 = 0; var1 < Timer.cacheSubPaths.length; ++var1) { // L: 255 + for (var2 = 0; var2 < class224.cacheParentPaths.length; ++var2) { // L: 256 + File var3 = new File(class224.cacheParentPaths[var2] + Timer.cacheSubPaths[var1] + File.separatorChar + "random.dat"); // L: 257 if (var3.exists()) { // L: 258 JagexCache.JagexCache_randomDat = new BufferedFile(new AccessFile(var3, "rw", 25L), 24, 0); // L: 259 break label39; // L: 260 @@ -430,4 +431,4 @@ public class Varcs { } } // L: 276 -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/class224.java b/runescape-client/src/main/java/class224.java index 8c73e5b23c..202a5d350e 100644 --- a/runescape-client/src/main/java/class224.java +++ b/runescape-client/src/main/java/class224.java @@ -1,3 +1,4 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; @@ -12,7 +13,8 @@ public class class224 { @ObfuscatedName("c") public static final short[][] field2574; @ObfuscatedName("x") - static String[] field2576; + @Export("cacheParentPaths") + static String[] cacheParentPaths; static { field2577 = new short[]{6798, 8741, 25238, 4626, 4550}; // L: 4 @@ -90,4 +92,4 @@ public class class224 { FileSystem.rasterProvider.apply(); // L: 5814 } // L: 5815 -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/class23.java b/runescape-client/src/main/java/class23.java index ca75bbb9f3..53d0bc055c 100644 --- a/runescape-client/src/main/java/class23.java +++ b/runescape-client/src/main/java/class23.java @@ -13,7 +13,8 @@ public class class23 { descriptor = "(Ljava/io/File;ZI)Z", garbageValue = "-1646838359" ) - static boolean method235(File var0, boolean var1) { + @Export("isWriteable") + static boolean isWriteable(File var0, boolean deleteAfterWrite) { try { RandomAccessFile var2 = new RandomAccessFile(var0, "rw"); // L: 206 int var3 = var2.read(); // L: 207 @@ -21,7 +22,7 @@ public class class23 { var2.write(var3); // L: 209 var2.seek(0L); // L: 210 var2.close(); // L: 211 - if (var1) { // L: 212 + if (deleteAfterWrite) { // L: 212 var0.delete(); } @@ -136,4 +137,4 @@ public class class23 { } } // L: 2665 -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/class3.java b/runescape-client/src/main/java/class3.java index e0284db0a9..b51285c477 100644 --- a/runescape-client/src/main/java/class3.java +++ b/runescape-client/src/main/java/class3.java @@ -119,7 +119,8 @@ public class class3 implements Enumerated { descriptor = "(Ljava/io/File;B)V", garbageValue = "1" ) - static void method36(File var0) { + @Export("assetCacheDirExists") + static void assetCacheDirExists(File var0) { FileSystem.FileSystem_cacheDir = var0; // L: 16 if (!FileSystem.FileSystem_cacheDir.exists()) { // L: 17 throw new RuntimeException(""); @@ -212,4 +213,4 @@ public class class3 implements Enumerated { return var2; // L: 100 } -} +} \ No newline at end of file From d8b5e78838c0437d0dac2ec78a274cb6cf2107b7 Mon Sep 17 00:00:00 2001 From: Jonatino Date: Sun, 21 Mar 2021 13:47:56 -0400 Subject: [PATCH 02/12] Typo --- runescape-client/src/main/java/Projectile.java | 2 +- runescape-client/src/main/java/class3.java | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/runescape-client/src/main/java/Projectile.java b/runescape-client/src/main/java/Projectile.java index 534a2bc413..56408e442c 100644 --- a/runescape-client/src/main/java/Projectile.java +++ b/runescape-client/src/main/java/Projectile.java @@ -439,7 +439,7 @@ public final class Projectile extends Renderable { break; } - class3.assetCacheDirExists(JagexCache.cacheDir); // L: 194 + class3.assertCacheDirExists(JagexCache.cacheDir); // L: 194 Varcs.findOrCreateRandomDatFile(); // L: 195 JagexCache.JagexCache_dat2File = new BufferedFile(new AccessFile(GraphicsObject.getFile("main_file_cache.dat2"), "rw", 1048576000L), 5200, 0); // L: 196 JagexCache.JagexCache_idx255File = new BufferedFile(new AccessFile(GraphicsObject.getFile("main_file_cache.idx255"), "rw", 1048576L), 6000, 0); // L: 197 diff --git a/runescape-client/src/main/java/class3.java b/runescape-client/src/main/java/class3.java index b51285c477..1dab51f37b 100644 --- a/runescape-client/src/main/java/class3.java +++ b/runescape-client/src/main/java/class3.java @@ -119,8 +119,8 @@ public class class3 implements Enumerated { descriptor = "(Ljava/io/File;B)V", garbageValue = "1" ) - @Export("assetCacheDirExists") - static void assetCacheDirExists(File var0) { + @Export("assertCacheDirExists") + static void assertCacheDirExists(File var0) { FileSystem.FileSystem_cacheDir = var0; // L: 16 if (!FileSystem.FileSystem_cacheDir.exists()) { // L: 17 throw new RuntimeException(""); From ecd6483fccbf7710f6b1aee20eb54d95f1a38ecd Mon Sep 17 00:00:00 2001 From: Jonatino Date: Sun, 21 Mar 2021 13:57:33 -0400 Subject: [PATCH 03/12] refactored port names --- .../src/main/java/ChatChannel.java | 8 +++--- runescape-client/src/main/java/Client.java | 28 +++++++++---------- .../src/main/java/DynamicObject.java | 6 ++-- .../src/main/java/MouseRecorder.java | 6 ++-- runescape-client/src/main/java/class171.java | 6 ++-- 5 files changed, 27 insertions(+), 27 deletions(-) diff --git a/runescape-client/src/main/java/ChatChannel.java b/runescape-client/src/main/java/ChatChannel.java index 9060a7e0ab..f060628a30 100644 --- a/runescape-client/src/main/java/ChatChannel.java +++ b/runescape-client/src/main/java/ChatChannel.java @@ -161,8 +161,8 @@ public class ChatChannel { MusicPatchNode.worldHost = var0.host; // L: 1555 Client.worldId = var0.id; // L: 1556 Client.worldProperties = var0.properties; // L: 1557 - MouseRecorder.port1 = Client.gameBuild == 0 ? 43594 : var0.id + 40000; // L: 1558 - class171.port2 = Client.gameBuild == 0 ? 443 : var0.id + 50000; // L: 1559 - DynamicObject.port3 = MouseRecorder.port1; // L: 1560 + MouseRecorder.worldPort = Client.gameBuild == 0 ? 43594 : var0.id + 40000; // L: 1558 + class171.js5Port = Client.gameBuild == 0 ? 443 : var0.id + 50000; // L: 1559 + DynamicObject.currentPort = MouseRecorder.worldPort; // L: 1560 } // L: 1561 -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/Client.java b/runescape-client/src/main/java/Client.java index 4f8ebb49ae..3fa3ff79d7 100644 --- a/runescape-client/src/main/java/Client.java +++ b/runescape-client/src/main/java/Client.java @@ -1566,9 +1566,9 @@ public final class Client extends GameEngine implements Usernamed { @Export("setUp") protected final void setUp() { Strings.method4329(new int[]{20, 260, 10000}, new int[]{1000, 100, 500}); // L: 791 - MouseRecorder.port1 = gameBuild == 0 ? 43594 : worldId + 40000; // L: 792 - class171.port2 = gameBuild == 0 ? 443 : worldId + 50000; // L: 793 - DynamicObject.port3 = MouseRecorder.port1; // L: 794 + MouseRecorder.worldPort = gameBuild == 0 ? 43594 : worldId + 40000; // L: 792 + class171.js5Port = gameBuild == 0 ? 443 : worldId + 50000; // L: 793 + DynamicObject.currentPort = MouseRecorder.worldPort; // L: 794 PlayerComposition.field2565 = class224.field2577; // L: 795 class105.field1339 = class224.field2573; // L: 796 HealthBar.field1143 = class224.field2575; // L: 797 @@ -2274,7 +2274,7 @@ public final class Client extends GameEngine implements Usernamed { if (--field761 + 1 <= 0) { // L: 1249 try { if (js5ConnectState == 0) { // L: 1251 - TaskHandler.js5SocketTask = GameEngine.taskHandler.newSocketTask(MusicPatchNode.worldHost, DynamicObject.port3); // L: 1252 + TaskHandler.js5SocketTask = GameEngine.taskHandler.newSocketTask(MusicPatchNode.worldHost, DynamicObject.currentPort); // L: 1252 ++js5ConnectState; // L: 1253 } @@ -2401,10 +2401,10 @@ public final class Client extends GameEngine implements Usernamed { TaskHandler.js5SocketTask = null; // L: 1356 WorldMapArea.js5Socket = null; // L: 1357 js5ConnectState = 0; // L: 1358 - if (DynamicObject.port3 == MouseRecorder.port1) { // L: 1359 - DynamicObject.port3 = class171.port2; + if (DynamicObject.currentPort == MouseRecorder.worldPort) { // L: 1359 + DynamicObject.currentPort = class171.js5Port; } else { - DynamicObject.port3 = MouseRecorder.port1; // L: 1360 + DynamicObject.currentPort = MouseRecorder.worldPort; // L: 1360 } ++js5Errors; // L: 1361 @@ -2462,7 +2462,7 @@ public final class Client extends GameEngine implements Usernamed { if (loginState == 1) { // L: 1815 if (NetSocket.socketTask == null) { // L: 1816 - NetSocket.socketTask = GameEngine.taskHandler.newSocketTask(MusicPatchNode.worldHost, DynamicObject.port3); // L: 1817 + NetSocket.socketTask = GameEngine.taskHandler.newSocketTask(MusicPatchNode.worldHost, DynamicObject.currentPort); // L: 1817 } if (NetSocket.socketTask.status == 2) { // L: 1819 @@ -2908,10 +2908,10 @@ public final class Client extends GameEngine implements Usernamed { ++field696; // L: 2395 if (field696 > 2000) { // L: 2396 if (field786 < 1) { // L: 2397 - if (MouseRecorder.port1 == DynamicObject.port3) { // L: 2398 - DynamicObject.port3 = class171.port2; + if (MouseRecorder.worldPort == DynamicObject.currentPort) { // L: 2398 + DynamicObject.currentPort = class171.js5Port; } else { - DynamicObject.port3 = MouseRecorder.port1; // L: 2399 + DynamicObject.currentPort = MouseRecorder.worldPort; // L: 2399 } ++field786; // L: 2400 @@ -3070,10 +3070,10 @@ public final class Client extends GameEngine implements Usernamed { } } catch (IOException var22) { // L: 2408 if (field786 < 1) { // L: 2409 - if (MouseRecorder.port1 == DynamicObject.port3) { // L: 2410 - DynamicObject.port3 = class171.port2; + if (MouseRecorder.worldPort == DynamicObject.currentPort) { // L: 2410 + DynamicObject.currentPort = class171.js5Port; } else { - DynamicObject.port3 = MouseRecorder.port1; // L: 2411 + DynamicObject.currentPort = MouseRecorder.worldPort; // L: 2411 } ++field786; // L: 2412 diff --git a/runescape-client/src/main/java/DynamicObject.java b/runescape-client/src/main/java/DynamicObject.java index 1543bed552..2514398472 100644 --- a/runescape-client/src/main/java/DynamicObject.java +++ b/runescape-client/src/main/java/DynamicObject.java @@ -16,8 +16,8 @@ public class DynamicObject extends Renderable { @ObfuscatedGetter( intValue = 1685580933 ) - @Export("port3") - static int port3; + @Export("currentPort") + static int currentPort; @ObfuscatedName("n") @ObfuscatedGetter( intValue = -1583763067 @@ -166,4 +166,4 @@ public class DynamicObject extends Renderable { return var12.getModelDynamic(this.type, this.orientation, var8, var10, var9, var11, this.sequenceDefinition, this.frame); // L: 83 } } -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/MouseRecorder.java b/runescape-client/src/main/java/MouseRecorder.java index 88120bccc8..b9551bde1a 100644 --- a/runescape-client/src/main/java/MouseRecorder.java +++ b/runescape-client/src/main/java/MouseRecorder.java @@ -10,8 +10,8 @@ public class MouseRecorder implements Runnable { @ObfuscatedGetter( intValue = -1626344665 ) - @Export("port1") - static int port1; + @Export("worldPort") + static int worldPort; @ObfuscatedName("n") @Export("isRunning") boolean isRunning; @@ -56,4 +56,4 @@ public class MouseRecorder implements Runnable { } } // L: 28 -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/class171.java b/runescape-client/src/main/java/class171.java index a4c8494ed1..8296fccfb8 100644 --- a/runescape-client/src/main/java/class171.java +++ b/runescape-client/src/main/java/class171.java @@ -9,8 +9,8 @@ public class class171 implements class170 { @ObfuscatedGetter( intValue = -853566565 ) - @Export("port2") - static int port2; + @Export("js5Port") + static int js5Port; @ObfuscatedName("n") @ObfuscatedSignature( @@ -286,4 +286,4 @@ public class class171 implements class170 { WorldMapSectionType.clientPreferences.soundEffectsVolume = var0; // L: 11113 class23.savePreferences(); // L: 11114 } // L: 11115 -} +} \ No newline at end of file From 050f399cdfb254709fbc031bcea323f5a67f856b Mon Sep 17 00:00:00 2001 From: Jonatino Date: Sun, 21 Mar 2021 15:56:20 -0400 Subject: [PATCH 04/12] Implemented currentPort --- .../src/main/java/net/runelite/api/DynamicObject.java | 4 +++- .../java/net/runelite/mixins/rsps/IPAddressMixin.java | 8 ++++++++ .../main/java/net/runelite/rs/api/RSDynamicObject.java | 8 +++++++- 3 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 runelite-mixins/src/main/java/net/runelite/mixins/rsps/IPAddressMixin.java diff --git a/runelite-api/src/main/java/net/runelite/api/DynamicObject.java b/runelite-api/src/main/java/net/runelite/api/DynamicObject.java index f34c20c8f0..8eab2f513e 100644 --- a/runelite-api/src/main/java/net/runelite/api/DynamicObject.java +++ b/runelite-api/src/main/java/net/runelite/api/DynamicObject.java @@ -13,4 +13,6 @@ public interface DynamicObject extends Renderable * Get the number of cycles that have elapsed in the whole animation. */ int getAnimCycleCount(); -} + + int getCurrentPort(); +} \ No newline at end of file diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/rsps/IPAddressMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/rsps/IPAddressMixin.java new file mode 100644 index 0000000000..08d559462c --- /dev/null +++ b/runelite-mixins/src/main/java/net/runelite/mixins/rsps/IPAddressMixin.java @@ -0,0 +1,8 @@ +package net.runelite.mixins.rsps; + +public class IPAddressMixin { + + //MouseRecorder.worldPort + //class171.js5Port + //DynamicObject.currentPort +} \ No newline at end of file diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSDynamicObject.java b/runescape-api/src/main/java/net/runelite/rs/api/RSDynamicObject.java index 1c375ed3a1..2d34032b35 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSDynamicObject.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSDynamicObject.java @@ -20,4 +20,10 @@ public interface RSDynamicObject extends RSRenderable, DynamicObject, Renderable @Import("sequenceDefinition") RSSequenceDefinition getSequenceDefinition(); -} + + @Import("currentPort") + int getCurrentPort(); + + @Import("currentPort") + void setCurrentPort(); +} \ No newline at end of file From bec41007a91c5e959a91043443f1674d9f7c4613 Mon Sep 17 00:00:00 2001 From: Jonatino Date: Sun, 21 Mar 2021 16:13:51 -0400 Subject: [PATCH 05/12] Implemented js5port, worldport, parent/sub cache paths --- .../net/runelite/rs/api/RSFrameLoader.java | 3 +++ .../net/runelite/rs/api/RSFrameProvider.java | 12 ++++++++++ .../runelite/rs/api/RSMinimapRenderer.java | 13 +++++++++++ .../net/runelite/rs/api/RSMouseRecorder.java | 8 ++++++- .../java/net/runelite/rs/api/RSTimer.java | 12 +++++++++- .../src/main/java/AbstractWorldMapIcon.java | 12 +++++----- .../main/java/ApproximateRouteStrategy.java | 4 ++-- .../src/main/java/ChatChannel.java | 2 +- runescape-client/src/main/java/Client.java | 18 +++++++-------- .../src/main/java/ClientPreferences.java | 4 ++-- .../src/main/java/FrameLoader.java | 7 ++++++ .../{class171.java => FrameProvider.java} | 10 +++++--- runescape-client/src/main/java/Login.java | 4 ++-- .../{class224.java => MinimapRenderer.java} | 23 +++++++++++-------- .../src/main/java/Projectile.java | 6 ++--- .../src/main/java/Renderable.java | 4 ++-- runescape-client/src/main/java/Varcs.java | 4 ++-- .../src/main/java/WorldMapRectangle.java | 4 ++-- runescape-client/src/main/java/class13.java | 4 ++-- runescape-client/src/main/java/class170.java | 5 ---- 20 files changed, 106 insertions(+), 53 deletions(-) create mode 100644 runescape-api/src/main/java/net/runelite/rs/api/RSFrameLoader.java create mode 100644 runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java create mode 100644 runescape-api/src/main/java/net/runelite/rs/api/RSMinimapRenderer.java create mode 100644 runescape-client/src/main/java/FrameLoader.java rename runescape-client/src/main/java/{class171.java => FrameProvider.java} (96%) rename runescape-client/src/main/java/{class224.java => MinimapRenderer.java} (81%) delete mode 100644 runescape-client/src/main/java/class170.java diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSFrameLoader.java b/runescape-api/src/main/java/net/runelite/rs/api/RSFrameLoader.java new file mode 100644 index 0000000000..ad3d3037a6 --- /dev/null +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSFrameLoader.java @@ -0,0 +1,3 @@ +package net.runelite.rs.api; + +public interface RSFrameLoader {} \ No newline at end of file diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java b/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java new file mode 100644 index 0000000000..5113e19d7f --- /dev/null +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java @@ -0,0 +1,12 @@ +package net.runelite.rs.api; + +import net.runelite.mapping.Import; + +public interface RSFrameProvider { + + @Import("js5Port") + int getJs5Port(); + + @Import("js5Port") + void setJs5Port(); +} \ No newline at end of file diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSMinimapRenderer.java b/runescape-api/src/main/java/net/runelite/rs/api/RSMinimapRenderer.java new file mode 100644 index 0000000000..4c35fc378d --- /dev/null +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSMinimapRenderer.java @@ -0,0 +1,13 @@ +package net.runelite.rs.api; + +import net.runelite.mapping.Import; + +public interface RSMinimapRenderer { + + @Import("cacheParentPaths") + String[] getCacheParentPaths(); + + @Import("cacheParentPaths") + void setCacheParentPaths(String[] cacheParentPaths); + +} \ No newline at end of file diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSMouseRecorder.java b/runescape-api/src/main/java/net/runelite/rs/api/RSMouseRecorder.java index d7eeba34d1..8ee24c1178 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSMouseRecorder.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSMouseRecorder.java @@ -16,4 +16,10 @@ public interface RSMouseRecorder extends MouseRecorder @Import("index") int getIndex(); -} + + @Import("worldPort") + int getWorldPort(); + + @Import("worldPort") + void setWorldPort(); +} \ No newline at end of file diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSTimer.java b/runescape-api/src/main/java/net/runelite/rs/api/RSTimer.java index c4ff6322f8..dfa5eeeb48 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSTimer.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSTimer.java @@ -1,3 +1,13 @@ package net.runelite.rs.api; -public interface RSTimer {} +import net.runelite.mapping.Import; + +public interface RSTimer { + + @Import("cacheSubPaths") + String[] getCacheSubPaths(); + + @Import("cacheSubPaths") + void setCacheSubPaths(String[] cacheSubPaths); + +} \ No newline at end of file diff --git a/runescape-client/src/main/java/AbstractWorldMapIcon.java b/runescape-client/src/main/java/AbstractWorldMapIcon.java index fc76684bd1..548440f69d 100644 --- a/runescape-client/src/main/java/AbstractWorldMapIcon.java +++ b/runescape-client/src/main/java/AbstractWorldMapIcon.java @@ -1188,23 +1188,23 @@ public abstract class AbstractWorldMapIcon { if (var3 == 4) { // L: 11146 if (var2 == 0) { // L: 11147 - class171.method3641(127); + FrameProvider.updateSoundEffectVolume(127); } if (var2 == 1) { // L: 11148 - class171.method3641(96); + FrameProvider.updateSoundEffectVolume(96); } if (var2 == 2) { // L: 11149 - class171.method3641(64); + FrameProvider.updateSoundEffectVolume(64); } if (var2 == 3) { // L: 11150 - class171.method3641(32); + FrameProvider.updateSoundEffectVolume(32); } if (var2 == 4) { // L: 11151 - class171.method3641(0); + FrameProvider.updateSoundEffectVolume(0); } } @@ -1270,4 +1270,4 @@ public abstract class AbstractWorldMapIcon { } } // L: 11178 -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/ApproximateRouteStrategy.java b/runescape-client/src/main/java/ApproximateRouteStrategy.java index f95c85e6ed..06cbab133b 100644 --- a/runescape-client/src/main/java/ApproximateRouteStrategy.java +++ b/runescape-client/src/main/java/ApproximateRouteStrategy.java @@ -121,7 +121,7 @@ public class ApproximateRouteStrategy extends RouteStrategy { return 1; // L: 1758 } else if (var0 == 3205) { // L: 1760 var3 = Math.min(Math.max(Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize], 0), 100); // L: 1761 - class171.method3641(Math.round(1.27F * (float)var3)); // L: 1762 + FrameProvider.updateSoundEffectVolume(Math.round(1.27F * (float)var3)); // L: 1762 return 1; // L: 1763 } else if (var0 == 3206) { // L: 1765 Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = Math.round((float)WorldMapSectionType.clientPreferences.soundEffectsVolume / 1.27F); // L: 1766 @@ -423,4 +423,4 @@ public class ApproximateRouteStrategy extends RouteStrategy { } } // L: 11081 -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/ChatChannel.java b/runescape-client/src/main/java/ChatChannel.java index f060628a30..ee4162b106 100644 --- a/runescape-client/src/main/java/ChatChannel.java +++ b/runescape-client/src/main/java/ChatChannel.java @@ -162,7 +162,7 @@ public class ChatChannel { Client.worldId = var0.id; // L: 1556 Client.worldProperties = var0.properties; // L: 1557 MouseRecorder.worldPort = Client.gameBuild == 0 ? 43594 : var0.id + 40000; // L: 1558 - class171.js5Port = Client.gameBuild == 0 ? 443 : var0.id + 50000; // L: 1559 + FrameProvider.js5Port = Client.gameBuild == 0 ? 443 : var0.id + 50000; // L: 1559 DynamicObject.currentPort = MouseRecorder.worldPort; // L: 1560 } // L: 1561 } \ No newline at end of file diff --git a/runescape-client/src/main/java/Client.java b/runescape-client/src/main/java/Client.java index 3fa3ff79d7..f37c3dde9c 100644 --- a/runescape-client/src/main/java/Client.java +++ b/runescape-client/src/main/java/Client.java @@ -1567,12 +1567,12 @@ public final class Client extends GameEngine implements Usernamed { protected final void setUp() { Strings.method4329(new int[]{20, 260, 10000}, new int[]{1000, 100, 500}); // L: 791 MouseRecorder.worldPort = gameBuild == 0 ? 43594 : worldId + 40000; // L: 792 - class171.js5Port = gameBuild == 0 ? 443 : worldId + 50000; // L: 793 + FrameProvider.js5Port = gameBuild == 0 ? 443 : worldId + 50000; // L: 793 DynamicObject.currentPort = MouseRecorder.worldPort; // L: 794 - PlayerComposition.field2565 = class224.field2577; // L: 795 - class105.field1339 = class224.field2573; // L: 796 - HealthBar.field1143 = class224.field2575; // L: 797 - WorldMapSprite.field259 = class224.field2574; // L: 798 + PlayerComposition.field2565 = MinimapRenderer.field2577; // L: 795 + class105.field1339 = MinimapRenderer.field2573; // L: 796 + HealthBar.field1143 = MinimapRenderer.field2575; // L: 797 + WorldMapSprite.field259 = MinimapRenderer.field2574; // L: 798 ScriptFrame.urlRequester = new UrlRequester(); // L: 799 this.setUpKeyboard(); // L: 800 this.setUpMouse(); // L: 801 @@ -2402,7 +2402,7 @@ public final class Client extends GameEngine implements Usernamed { WorldMapArea.js5Socket = null; // L: 1357 js5ConnectState = 0; // L: 1358 if (DynamicObject.currentPort == MouseRecorder.worldPort) { // L: 1359 - DynamicObject.currentPort = class171.js5Port; + DynamicObject.currentPort = FrameProvider.js5Port; } else { DynamicObject.currentPort = MouseRecorder.worldPort; // L: 1360 } @@ -2909,7 +2909,7 @@ public final class Client extends GameEngine implements Usernamed { if (field696 > 2000) { // L: 2396 if (field786 < 1) { // L: 2397 if (MouseRecorder.worldPort == DynamicObject.currentPort) { // L: 2398 - DynamicObject.currentPort = class171.js5Port; + DynamicObject.currentPort = FrameProvider.js5Port; } else { DynamicObject.currentPort = MouseRecorder.worldPort; // L: 2399 } @@ -3071,7 +3071,7 @@ public final class Client extends GameEngine implements Usernamed { } catch (IOException var22) { // L: 2408 if (field786 < 1) { // L: 2409 if (MouseRecorder.worldPort == DynamicObject.currentPort) { // L: 2410 - DynamicObject.currentPort = class171.js5Port; + DynamicObject.currentPort = FrameProvider.js5Port; } else { DynamicObject.currentPort = MouseRecorder.worldPort; // L: 2411 } @@ -3358,7 +3358,7 @@ public final class Client extends GameEngine implements Usernamed { var2 = npcIndices[var1]; // L: 2873 NPC var23 = npcs[var2]; // L: 2874 if (var23 != null) { // L: 2875 - class171.updateActorSequence(var23, var23.definition.size); // L: 2876 + FrameProvider.updateActorSequence(var23, var23.definition.size); // L: 2876 } } diff --git a/runescape-client/src/main/java/ClientPreferences.java b/runescape-client/src/main/java/ClientPreferences.java index b7330e0c2b..3f9c94f8d7 100644 --- a/runescape-client/src/main/java/ClientPreferences.java +++ b/runescape-client/src/main/java/ClientPreferences.java @@ -192,7 +192,7 @@ public class ClientPreferences { if (var1 != null) { // L: 188 return var1; } else { - var1 = class171.method3642(SequenceDefinition.SequenceDefinition_animationsArchive, SequenceDefinition.SequenceDefinition_skeletonsArchive, var0, false); // L: 189 + var1 = FrameProvider.loadFrames(SequenceDefinition.SequenceDefinition_animationsArchive, SequenceDefinition.SequenceDefinition_skeletonsArchive, var0, false); // L: 189 if (var1 != null) { // L: 190 SequenceDefinition.SequenceDefinition_cachedFrames.put(var1, (long)var0); } @@ -237,4 +237,4 @@ public class ClientPreferences { } } // L: 10003 -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/FrameLoader.java b/runescape-client/src/main/java/FrameLoader.java new file mode 100644 index 0000000000..179cab8ee5 --- /dev/null +++ b/runescape-client/src/main/java/FrameLoader.java @@ -0,0 +1,7 @@ +import net.runelite.mapping.Implements; +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("ff") +@Implements("FrameLoader") +public interface FrameLoader { +} \ No newline at end of file diff --git a/runescape-client/src/main/java/class171.java b/runescape-client/src/main/java/FrameProvider.java similarity index 96% rename from runescape-client/src/main/java/class171.java rename to runescape-client/src/main/java/FrameProvider.java index 8296fccfb8..670af39886 100644 --- a/runescape-client/src/main/java/class171.java +++ b/runescape-client/src/main/java/FrameProvider.java @@ -1,10 +1,12 @@ 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; @ObfuscatedName("fd") -public class class171 implements class170 { +@Implements("FrameProvider") +public class FrameProvider implements FrameLoader { @ObfuscatedName("ee") @ObfuscatedGetter( intValue = -853566565 @@ -17,7 +19,8 @@ public class class171 implements class170 { descriptor = "(Lig;Lig;IZI)Lel;", garbageValue = "-2064266261" ) - public static Frames method3642(AbstractArchive var0, AbstractArchive var1, int var2, boolean var3) { + @Export("loadFrames") + public static Frames loadFrames(AbstractArchive var0, AbstractArchive var1, int var2, boolean var3) { boolean var4 = true; // L: 11 int[] var5 = var0.getGroupFileIds(var2); // L: 12 @@ -281,7 +284,8 @@ public class class171 implements class170 { descriptor = "(IB)V", garbageValue = "0" ) - static final void method3641(int var0) { + @Export("updateSoundEffectVolume") + static final void updateSoundEffectVolume(int var0) { var0 = Math.min(Math.max(var0, 0), 127); // L: 11112 WorldMapSectionType.clientPreferences.soundEffectsVolume = var0; // L: 11113 class23.savePreferences(); // L: 11114 diff --git a/runescape-client/src/main/java/Login.java b/runescape-client/src/main/java/Login.java index f7c47a0d19..95e6752791 100644 --- a/runescape-client/src/main/java/Login.java +++ b/runescape-client/src/main/java/Login.java @@ -182,7 +182,7 @@ public class Login { worldSelectPage = 0; // L: 103 worldSelectPagesCount = 0; // L: 104 new DecimalFormat("##0.00"); // L: 107 - new class171(); + new FrameProvider(); field1213 = -1L; // L: 115 field1226 = -1L; // L: 116 } @@ -230,4 +230,4 @@ public class Login { return 1; // L: 1317 } } -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/class224.java b/runescape-client/src/main/java/MinimapRenderer.java similarity index 81% rename from runescape-client/src/main/java/class224.java rename to runescape-client/src/main/java/MinimapRenderer.java index 202a5d350e..f0872acb07 100644 --- a/runescape-client/src/main/java/class224.java +++ b/runescape-client/src/main/java/MinimapRenderer.java @@ -1,9 +1,11 @@ import net.runelite.mapping.Export; +import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("hn") -public class class224 { +@Implements("MinimapRenderer") +public class MinimapRenderer { @ObfuscatedName("n") public static final short[] field2577; @ObfuscatedName("v") @@ -28,7 +30,8 @@ public class class224 { descriptor = "(II)V", garbageValue = "2091444199" ) - static final void method4232(int var0) { + @Export("redrawMiniMapIcons") + static final void redrawMiniMapIcons(int plane) { int[] var1 = GrandExchangeOfferAgeComparator.sceneMinimapSprite.pixels; // L: 5775 int var2 = var1.length; // L: 5776 @@ -43,12 +46,12 @@ public class class224 { var4 = (103 - var3) * 2048 + 24628; // L: 5779 for (var5 = 1; var5 < 103; ++var5) { // L: 5780 - if ((Tiles.Tiles_renderFlags[var0][var5][var3] & 24) == 0) { // L: 5781 - MilliClock.scene.drawTileMinimap(var1, var4, 512, var0, var5, var3); + if ((Tiles.Tiles_renderFlags[plane][var5][var3] & 24) == 0) { // L: 5781 + MilliClock.scene.drawTileMinimap(var1, var4, 512, plane, var5, var3); } - if (var0 < 3 && (Tiles.Tiles_renderFlags[var0 + 1][var5][var3] & 8) != 0) { // L: 5782 - MilliClock.scene.drawTileMinimap(var1, var4, 512, var0 + 1, var5, var3); + if (plane < 3 && (Tiles.Tiles_renderFlags[plane + 1][var5][var3] & 8) != 0) { // L: 5782 + MilliClock.scene.drawTileMinimap(var1, var4, 512, plane + 1, var5, var3); } var4 += 4; // L: 5783 @@ -62,12 +65,12 @@ public class class224 { int var6; for (var5 = 1; var5 < 103; ++var5) { // L: 5789 for (var6 = 1; var6 < 103; ++var6) { // L: 5790 - if ((Tiles.Tiles_renderFlags[var0][var6][var5] & 24) == 0) { // L: 5791 - Username.drawObject(var0, var6, var5, var3, var4); + if ((Tiles.Tiles_renderFlags[plane][var6][var5] & 24) == 0) { // L: 5791 + Username.drawObject(plane, var6, var5, var3, var4); } - if (var0 < 3 && (Tiles.Tiles_renderFlags[var0 + 1][var6][var5] & 8) != 0) { // L: 5792 - Username.drawObject(var0 + 1, var6, var5, var3, var4); + if (plane < 3 && (Tiles.Tiles_renderFlags[plane + 1][var6][var5] & 8) != 0) { // L: 5792 + Username.drawObject(plane + 1, var6, var5, var3, var4); } } } diff --git a/runescape-client/src/main/java/Projectile.java b/runescape-client/src/main/java/Projectile.java index 56408e442c..dfd87bb923 100644 --- a/runescape-client/src/main/java/Projectile.java +++ b/runescape-client/src/main/java/Projectile.java @@ -286,7 +286,7 @@ public final class Projectile extends Renderable { JagexCache.userHomeDirectory = "~/"; } - class224.cacheParentPaths = new String[]{"c:/rscache/", "/rscache/", "c:/windows/", "c:/winnt/", "c:/", JagexCache.userHomeDirectory, "/tmp/", ""}; // L: 65 + MinimapRenderer.cacheParentPaths = new String[]{"c:/rscache/", "/rscache/", "c:/windows/", "c:/winnt/", "c:/", JagexCache.userHomeDirectory, "/tmp/", ""}; // L: 65 Timer.cacheSubPaths = new String[]{".jagex_cache_" + JagexCache.cacheGamebuild, ".file_store_" + JagexCache.cacheGamebuild}; // L: 66 int var18 = 0; @@ -357,8 +357,8 @@ public final class Projectile extends Renderable { if (var7 == null && var18 == 0) { // L: 116 label225: for (int var19 = 0; var19 < Timer.cacheSubPaths.length; ++var19) { // L: 117 - for (int var20 = 0; var20 < class224.cacheParentPaths.length; ++var20) { // L: 118 - File var21 = new File(class224.cacheParentPaths[var20] + Timer.cacheSubPaths[var19] + File.separatorChar + var0 + File.separatorChar); // L: 119 + for (int var20 = 0; var20 < MinimapRenderer.cacheParentPaths.length; ++var20) { // L: 118 + File var21 = new File(MinimapRenderer.cacheParentPaths[var20] + Timer.cacheSubPaths[var19] + File.separatorChar + var0 + File.separatorChar); // L: 119 if (var21.exists() && class23.isWriteable(new File(var21, "test.dat"), true)) { // L: 120 121 var7 = var21.toString(); // L: 122 var9 = true; // L: 123 diff --git a/runescape-client/src/main/java/Renderable.java b/runescape-client/src/main/java/Renderable.java index 06936740dc..9e34a29343 100644 --- a/runescape-client/src/main/java/Renderable.java +++ b/runescape-client/src/main/java/Renderable.java @@ -47,8 +47,8 @@ public abstract class Renderable extends DualNode { static final void method3417() { if (Client.field889 != class90.Client_plane) { // L: 3402 Client.field889 = class90.Client_plane; // L: 3403 - class224.method4232(class90.Client_plane); // L: 3404 + MinimapRenderer.redrawMiniMapIcons(class90.Client_plane); // L: 3404 } } // L: 3406 -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/Varcs.java b/runescape-client/src/main/java/Varcs.java index a695b7c88c..847b415bed 100644 --- a/runescape-client/src/main/java/Varcs.java +++ b/runescape-client/src/main/java/Varcs.java @@ -408,8 +408,8 @@ public class Varcs { } else { label39: for (int var1 = 0; var1 < Timer.cacheSubPaths.length; ++var1) { // L: 255 - for (var2 = 0; var2 < class224.cacheParentPaths.length; ++var2) { // L: 256 - File var3 = new File(class224.cacheParentPaths[var2] + Timer.cacheSubPaths[var1] + File.separatorChar + "random.dat"); // L: 257 + for (var2 = 0; var2 < MinimapRenderer.cacheParentPaths.length; ++var2) { // L: 256 + File var3 = new File(MinimapRenderer.cacheParentPaths[var2] + Timer.cacheSubPaths[var1] + File.separatorChar + "random.dat"); // L: 257 if (var3.exists()) { // L: 258 JagexCache.JagexCache_randomDat = new BufferedFile(new AccessFile(var3, "rw", 25L), 24, 0); // L: 259 break label39; // L: 260 diff --git a/runescape-client/src/main/java/WorldMapRectangle.java b/runescape-client/src/main/java/WorldMapRectangle.java index 791b1b8cda..cc1888a3d7 100644 --- a/runescape-client/src/main/java/WorldMapRectangle.java +++ b/runescape-client/src/main/java/WorldMapRectangle.java @@ -159,7 +159,7 @@ public final class WorldMapRectangle { for (int var2 = 0; var2 < var0; ++var2) { // L: 3495 Player var3 = Client.players[var1[var2]]; // L: 3496 if (var3 != null) { // L: 3497 - class171.updateActorSequence(var3, 1); // L: 3498 + FrameProvider.updateActorSequence(var3, 1); // L: 3498 } } @@ -184,4 +184,4 @@ public final class WorldMapRectangle { return var1.length() > 6 ? " " + FileSystem.colorStartTag(16777215) + var1.substring(0, var1.length() - 4) + "K" + " " + " (" + var1 + ")" + "" : " " + FileSystem.colorStartTag(16776960) + var1 + ""; // L: 9909 9910 } } -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/class13.java b/runescape-client/src/main/java/class13.java index 01297ab912..9b4bd25e88 100644 --- a/runescape-client/src/main/java/class13.java +++ b/runescape-client/src/main/java/class13.java @@ -71,7 +71,7 @@ public final class class13 { if (!Client.isCameraLocked) { // L: 4014 var4 = AbstractWorldMapIcon.method712(); } else { - var4 = class171.method3639(); // L: 4015 + var4 = FrameProvider.method3639(); // L: 4015 } var28 = SecureRandomFuture.cameraX; // L: 4016 @@ -340,4 +340,4 @@ public final class class13 { } } // L: 11640 -} +} \ No newline at end of file diff --git a/runescape-client/src/main/java/class170.java b/runescape-client/src/main/java/class170.java deleted file mode 100644 index 6e6d5d5e8a..0000000000 --- a/runescape-client/src/main/java/class170.java +++ /dev/null @@ -1,5 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; - -@ObfuscatedName("ff") -public interface class170 { -} From 3540fd83b23ac25b98cde09db4d4c0d128e08075 Mon Sep 17 00:00:00 2001 From: Jonatino Date: Sun, 21 Mar 2021 16:19:21 -0400 Subject: [PATCH 06/12] Fixed setters missing arguments --- .../src/main/java/net/runelite/rs/api/RSDynamicObject.java | 2 +- .../src/main/java/net/runelite/rs/api/RSFrameProvider.java | 2 +- .../src/main/java/net/runelite/rs/api/RSMouseRecorder.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSDynamicObject.java b/runescape-api/src/main/java/net/runelite/rs/api/RSDynamicObject.java index 2d34032b35..96f7c5280c 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSDynamicObject.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSDynamicObject.java @@ -25,5 +25,5 @@ public interface RSDynamicObject extends RSRenderable, DynamicObject, Renderable int getCurrentPort(); @Import("currentPort") - void setCurrentPort(); + void setCurrentPort(int currentPort); } \ No newline at end of file diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java b/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java index 5113e19d7f..1887f99e00 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java @@ -8,5 +8,5 @@ public interface RSFrameProvider { int getJs5Port(); @Import("js5Port") - void setJs5Port(); + void setJs5Port(int js5Port); } \ No newline at end of file diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSMouseRecorder.java b/runescape-api/src/main/java/net/runelite/rs/api/RSMouseRecorder.java index 8ee24c1178..bef45169b8 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSMouseRecorder.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSMouseRecorder.java @@ -21,5 +21,5 @@ public interface RSMouseRecorder extends MouseRecorder int getWorldPort(); @Import("worldPort") - void setWorldPort(); + void setWorldPort(int worldPort); } \ No newline at end of file From 63aa0cda1a21c2617a68a999a853b165b7b58743 Mon Sep 17 00:00:00 2001 From: Jonatino Date: Mon, 22 Mar 2021 22:28:25 -0400 Subject: [PATCH 07/12] Removed unused mixin --- .../java/net/runelite/mixins/rsps/IPAddressMixin.java | 8 -------- 1 file changed, 8 deletions(-) delete mode 100644 runelite-mixins/src/main/java/net/runelite/mixins/rsps/IPAddressMixin.java diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/rsps/IPAddressMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/rsps/IPAddressMixin.java deleted file mode 100644 index 08d559462c..0000000000 --- a/runelite-mixins/src/main/java/net/runelite/mixins/rsps/IPAddressMixin.java +++ /dev/null @@ -1,8 +0,0 @@ -package net.runelite.mixins.rsps; - -public class IPAddressMixin { - - //MouseRecorder.worldPort - //class171.js5Port - //DynamicObject.currentPort -} \ No newline at end of file From 8b40493e541d9138cf21e975c443376dcc83f05c Mon Sep 17 00:00:00 2001 From: Jonatino Date: Mon, 22 Mar 2021 23:16:54 -0400 Subject: [PATCH 08/12] Fix checkstyle errors --- .../src/main/java/net/runelite/rs/api/RSFrameProvider.java | 4 ++-- .../src/main/java/net/runelite/rs/api/RSMinimapRenderer.java | 5 ++--- runescape-api/src/main/java/net/runelite/rs/api/RSTimer.java | 5 ++--- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java b/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java index 1887f99e00..72e9989d24 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java @@ -2,8 +2,8 @@ package net.runelite.rs.api; import net.runelite.mapping.Import; -public interface RSFrameProvider { - +public interface RSFrameProvider +{ @Import("js5Port") int getJs5Port(); diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSMinimapRenderer.java b/runescape-api/src/main/java/net/runelite/rs/api/RSMinimapRenderer.java index 4c35fc378d..63edeb35c1 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSMinimapRenderer.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSMinimapRenderer.java @@ -2,12 +2,11 @@ package net.runelite.rs.api; import net.runelite.mapping.Import; -public interface RSMinimapRenderer { - +public interface RSMinimapRenderer +{ @Import("cacheParentPaths") String[] getCacheParentPaths(); @Import("cacheParentPaths") void setCacheParentPaths(String[] cacheParentPaths); - } \ No newline at end of file diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSTimer.java b/runescape-api/src/main/java/net/runelite/rs/api/RSTimer.java index dfa5eeeb48..f22f0b4cde 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSTimer.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSTimer.java @@ -2,12 +2,11 @@ package net.runelite.rs.api; import net.runelite.mapping.Import; -public interface RSTimer { - +public interface RSTimer +{ @Import("cacheSubPaths") String[] getCacheSubPaths(); @Import("cacheSubPaths") void setCacheSubPaths(String[] cacheSubPaths); - } \ No newline at end of file From 01c80e93a3d43063bdf1b9bb4eea1ef7b65d34d1 Mon Sep 17 00:00:00 2001 From: Jonatino Date: Thu, 25 Mar 2021 18:19:08 -0400 Subject: [PATCH 09/12] Remove static imports --- .../src/main/java/net/runelite/api/DynamicObject.java | 4 +--- .../java/net/runelite/rs/api/RSDynamicObject.java | 8 +------- .../java/net/runelite/rs/api/RSFrameProvider.java | 11 +---------- .../java/net/runelite/rs/api/RSMouseRecorder.java | 8 +------- .../src/main/java/net/runelite/rs/api/RSTimer.java | 11 +---------- 5 files changed, 5 insertions(+), 37 deletions(-) diff --git a/runelite-api/src/main/java/net/runelite/api/DynamicObject.java b/runelite-api/src/main/java/net/runelite/api/DynamicObject.java index 8eab2f513e..f34c20c8f0 100644 --- a/runelite-api/src/main/java/net/runelite/api/DynamicObject.java +++ b/runelite-api/src/main/java/net/runelite/api/DynamicObject.java @@ -13,6 +13,4 @@ public interface DynamicObject extends Renderable * Get the number of cycles that have elapsed in the whole animation. */ int getAnimCycleCount(); - - int getCurrentPort(); -} \ No newline at end of file +} diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSDynamicObject.java b/runescape-api/src/main/java/net/runelite/rs/api/RSDynamicObject.java index 96f7c5280c..1c375ed3a1 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSDynamicObject.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSDynamicObject.java @@ -20,10 +20,4 @@ public interface RSDynamicObject extends RSRenderable, DynamicObject, Renderable @Import("sequenceDefinition") RSSequenceDefinition getSequenceDefinition(); - - @Import("currentPort") - int getCurrentPort(); - - @Import("currentPort") - void setCurrentPort(int currentPort); -} \ No newline at end of file +} diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java b/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java index 72e9989d24..0914281d4b 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java @@ -1,12 +1,3 @@ package net.runelite.rs.api; -import net.runelite.mapping.Import; - -public interface RSFrameProvider -{ - @Import("js5Port") - int getJs5Port(); - - @Import("js5Port") - void setJs5Port(int js5Port); -} \ No newline at end of file +public interface RSFrameProvider {} \ No newline at end of file diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSMouseRecorder.java b/runescape-api/src/main/java/net/runelite/rs/api/RSMouseRecorder.java index bef45169b8..d7eeba34d1 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSMouseRecorder.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSMouseRecorder.java @@ -16,10 +16,4 @@ public interface RSMouseRecorder extends MouseRecorder @Import("index") int getIndex(); - - @Import("worldPort") - int getWorldPort(); - - @Import("worldPort") - void setWorldPort(int worldPort); -} \ No newline at end of file +} diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSTimer.java b/runescape-api/src/main/java/net/runelite/rs/api/RSTimer.java index f22f0b4cde..c4ff6322f8 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSTimer.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSTimer.java @@ -1,12 +1,3 @@ package net.runelite.rs.api; -import net.runelite.mapping.Import; - -public interface RSTimer -{ - @Import("cacheSubPaths") - String[] getCacheSubPaths(); - - @Import("cacheSubPaths") - void setCacheSubPaths(String[] cacheSubPaths); -} \ No newline at end of file +public interface RSTimer {} From 257103dbcd075f77f2f3f38aceae7b2ecc62ba24 Mon Sep 17 00:00:00 2001 From: Jonatino Date: Thu, 25 Mar 2021 18:19:48 -0400 Subject: [PATCH 10/12] Remove more static imports --- .../java/net/runelite/rs/api/RSMinimapRenderer.java | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSMinimapRenderer.java b/runescape-api/src/main/java/net/runelite/rs/api/RSMinimapRenderer.java index 63edeb35c1..93c89bfa51 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSMinimapRenderer.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSMinimapRenderer.java @@ -1,12 +1,3 @@ package net.runelite.rs.api; -import net.runelite.mapping.Import; - -public interface RSMinimapRenderer -{ - @Import("cacheParentPaths") - String[] getCacheParentPaths(); - - @Import("cacheParentPaths") - void setCacheParentPaths(String[] cacheParentPaths); -} \ No newline at end of file +public interface RSMinimapRenderer {} \ No newline at end of file From 284b5bea32aa7e25bce6b7fc7c4e44dd6477169e Mon Sep 17 00:00:00 2001 From: Jonatino Date: Thu, 25 Mar 2021 18:24:59 -0400 Subject: [PATCH 11/12] Undo class refactor changes --- .../net/runelite/rs/api/RSFrameLoader.java | 3 --- .../net/runelite/rs/api/RSFrameProvider.java | 3 --- .../net/runelite/rs/api/RSMinimapRenderer.java | 3 --- .../src/main/java/AbstractWorldMapIcon.java | 10 +++++----- .../main/java/ApproximateRouteStrategy.java | 2 +- .../src/main/java/ChatChannel.java | 2 +- runescape-client/src/main/java/Client.java | 18 +++++++++--------- .../src/main/java/ClientPreferences.java | 2 +- .../src/main/java/FrameLoader.java | 7 ------- runescape-client/src/main/java/Login.java | 2 +- runescape-client/src/main/java/Projectile.java | 6 +++--- runescape-client/src/main/java/Renderable.java | 2 +- runescape-client/src/main/java/Varcs.java | 4 ++-- .../src/main/java/WorldMapRectangle.java | 2 +- runescape-client/src/main/java/class13.java | 2 +- runescape-client/src/main/java/class170.java | 5 +++++ .../java/{FrameProvider.java => class171.java} | 5 ++--- .../{MinimapRenderer.java => class224.java} | 3 +-- 18 files changed, 34 insertions(+), 47 deletions(-) delete mode 100644 runescape-api/src/main/java/net/runelite/rs/api/RSFrameLoader.java delete mode 100644 runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java delete mode 100644 runescape-api/src/main/java/net/runelite/rs/api/RSMinimapRenderer.java delete mode 100644 runescape-client/src/main/java/FrameLoader.java create mode 100644 runescape-client/src/main/java/class170.java rename runescape-client/src/main/java/{FrameProvider.java => class171.java} (98%) rename runescape-client/src/main/java/{MinimapRenderer.java => class224.java} (98%) diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSFrameLoader.java b/runescape-api/src/main/java/net/runelite/rs/api/RSFrameLoader.java deleted file mode 100644 index ad3d3037a6..0000000000 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSFrameLoader.java +++ /dev/null @@ -1,3 +0,0 @@ -package net.runelite.rs.api; - -public interface RSFrameLoader {} \ No newline at end of file diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java b/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java deleted file mode 100644 index 0914281d4b..0000000000 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSFrameProvider.java +++ /dev/null @@ -1,3 +0,0 @@ -package net.runelite.rs.api; - -public interface RSFrameProvider {} \ No newline at end of file diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSMinimapRenderer.java b/runescape-api/src/main/java/net/runelite/rs/api/RSMinimapRenderer.java deleted file mode 100644 index 93c89bfa51..0000000000 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSMinimapRenderer.java +++ /dev/null @@ -1,3 +0,0 @@ -package net.runelite.rs.api; - -public interface RSMinimapRenderer {} \ No newline at end of file diff --git a/runescape-client/src/main/java/AbstractWorldMapIcon.java b/runescape-client/src/main/java/AbstractWorldMapIcon.java index 548440f69d..a6a1fd5758 100644 --- a/runescape-client/src/main/java/AbstractWorldMapIcon.java +++ b/runescape-client/src/main/java/AbstractWorldMapIcon.java @@ -1188,23 +1188,23 @@ public abstract class AbstractWorldMapIcon { if (var3 == 4) { // L: 11146 if (var2 == 0) { // L: 11147 - FrameProvider.updateSoundEffectVolume(127); + class171.updateSoundEffectVolume(127); } if (var2 == 1) { // L: 11148 - FrameProvider.updateSoundEffectVolume(96); + class171.updateSoundEffectVolume(96); } if (var2 == 2) { // L: 11149 - FrameProvider.updateSoundEffectVolume(64); + class171.updateSoundEffectVolume(64); } if (var2 == 3) { // L: 11150 - FrameProvider.updateSoundEffectVolume(32); + class171.updateSoundEffectVolume(32); } if (var2 == 4) { // L: 11151 - FrameProvider.updateSoundEffectVolume(0); + class171.updateSoundEffectVolume(0); } } diff --git a/runescape-client/src/main/java/ApproximateRouteStrategy.java b/runescape-client/src/main/java/ApproximateRouteStrategy.java index 06cbab133b..8c58520ebe 100644 --- a/runescape-client/src/main/java/ApproximateRouteStrategy.java +++ b/runescape-client/src/main/java/ApproximateRouteStrategy.java @@ -121,7 +121,7 @@ public class ApproximateRouteStrategy extends RouteStrategy { return 1; // L: 1758 } else if (var0 == 3205) { // L: 1760 var3 = Math.min(Math.max(Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize], 0), 100); // L: 1761 - FrameProvider.updateSoundEffectVolume(Math.round(1.27F * (float)var3)); // L: 1762 + class171.updateSoundEffectVolume(Math.round(1.27F * (float)var3)); // L: 1762 return 1; // L: 1763 } else if (var0 == 3206) { // L: 1765 Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = Math.round((float)WorldMapSectionType.clientPreferences.soundEffectsVolume / 1.27F); // L: 1766 diff --git a/runescape-client/src/main/java/ChatChannel.java b/runescape-client/src/main/java/ChatChannel.java index ee4162b106..f060628a30 100644 --- a/runescape-client/src/main/java/ChatChannel.java +++ b/runescape-client/src/main/java/ChatChannel.java @@ -162,7 +162,7 @@ public class ChatChannel { Client.worldId = var0.id; // L: 1556 Client.worldProperties = var0.properties; // L: 1557 MouseRecorder.worldPort = Client.gameBuild == 0 ? 43594 : var0.id + 40000; // L: 1558 - FrameProvider.js5Port = Client.gameBuild == 0 ? 443 : var0.id + 50000; // L: 1559 + class171.js5Port = Client.gameBuild == 0 ? 443 : var0.id + 50000; // L: 1559 DynamicObject.currentPort = MouseRecorder.worldPort; // L: 1560 } // L: 1561 } \ No newline at end of file diff --git a/runescape-client/src/main/java/Client.java b/runescape-client/src/main/java/Client.java index f37c3dde9c..3fa3ff79d7 100644 --- a/runescape-client/src/main/java/Client.java +++ b/runescape-client/src/main/java/Client.java @@ -1567,12 +1567,12 @@ public final class Client extends GameEngine implements Usernamed { protected final void setUp() { Strings.method4329(new int[]{20, 260, 10000}, new int[]{1000, 100, 500}); // L: 791 MouseRecorder.worldPort = gameBuild == 0 ? 43594 : worldId + 40000; // L: 792 - FrameProvider.js5Port = gameBuild == 0 ? 443 : worldId + 50000; // L: 793 + class171.js5Port = gameBuild == 0 ? 443 : worldId + 50000; // L: 793 DynamicObject.currentPort = MouseRecorder.worldPort; // L: 794 - PlayerComposition.field2565 = MinimapRenderer.field2577; // L: 795 - class105.field1339 = MinimapRenderer.field2573; // L: 796 - HealthBar.field1143 = MinimapRenderer.field2575; // L: 797 - WorldMapSprite.field259 = MinimapRenderer.field2574; // L: 798 + PlayerComposition.field2565 = class224.field2577; // L: 795 + class105.field1339 = class224.field2573; // L: 796 + HealthBar.field1143 = class224.field2575; // L: 797 + WorldMapSprite.field259 = class224.field2574; // L: 798 ScriptFrame.urlRequester = new UrlRequester(); // L: 799 this.setUpKeyboard(); // L: 800 this.setUpMouse(); // L: 801 @@ -2402,7 +2402,7 @@ public final class Client extends GameEngine implements Usernamed { WorldMapArea.js5Socket = null; // L: 1357 js5ConnectState = 0; // L: 1358 if (DynamicObject.currentPort == MouseRecorder.worldPort) { // L: 1359 - DynamicObject.currentPort = FrameProvider.js5Port; + DynamicObject.currentPort = class171.js5Port; } else { DynamicObject.currentPort = MouseRecorder.worldPort; // L: 1360 } @@ -2909,7 +2909,7 @@ public final class Client extends GameEngine implements Usernamed { if (field696 > 2000) { // L: 2396 if (field786 < 1) { // L: 2397 if (MouseRecorder.worldPort == DynamicObject.currentPort) { // L: 2398 - DynamicObject.currentPort = FrameProvider.js5Port; + DynamicObject.currentPort = class171.js5Port; } else { DynamicObject.currentPort = MouseRecorder.worldPort; // L: 2399 } @@ -3071,7 +3071,7 @@ public final class Client extends GameEngine implements Usernamed { } catch (IOException var22) { // L: 2408 if (field786 < 1) { // L: 2409 if (MouseRecorder.worldPort == DynamicObject.currentPort) { // L: 2410 - DynamicObject.currentPort = FrameProvider.js5Port; + DynamicObject.currentPort = class171.js5Port; } else { DynamicObject.currentPort = MouseRecorder.worldPort; // L: 2411 } @@ -3358,7 +3358,7 @@ public final class Client extends GameEngine implements Usernamed { var2 = npcIndices[var1]; // L: 2873 NPC var23 = npcs[var2]; // L: 2874 if (var23 != null) { // L: 2875 - FrameProvider.updateActorSequence(var23, var23.definition.size); // L: 2876 + class171.updateActorSequence(var23, var23.definition.size); // L: 2876 } } diff --git a/runescape-client/src/main/java/ClientPreferences.java b/runescape-client/src/main/java/ClientPreferences.java index 3f9c94f8d7..e310c8533e 100644 --- a/runescape-client/src/main/java/ClientPreferences.java +++ b/runescape-client/src/main/java/ClientPreferences.java @@ -192,7 +192,7 @@ public class ClientPreferences { if (var1 != null) { // L: 188 return var1; } else { - var1 = FrameProvider.loadFrames(SequenceDefinition.SequenceDefinition_animationsArchive, SequenceDefinition.SequenceDefinition_skeletonsArchive, var0, false); // L: 189 + var1 = class171.loadFrames(SequenceDefinition.SequenceDefinition_animationsArchive, SequenceDefinition.SequenceDefinition_skeletonsArchive, var0, false); // L: 189 if (var1 != null) { // L: 190 SequenceDefinition.SequenceDefinition_cachedFrames.put(var1, (long)var0); } diff --git a/runescape-client/src/main/java/FrameLoader.java b/runescape-client/src/main/java/FrameLoader.java deleted file mode 100644 index 179cab8ee5..0000000000 --- a/runescape-client/src/main/java/FrameLoader.java +++ /dev/null @@ -1,7 +0,0 @@ -import net.runelite.mapping.Implements; -import net.runelite.mapping.ObfuscatedName; - -@ObfuscatedName("ff") -@Implements("FrameLoader") -public interface FrameLoader { -} \ No newline at end of file diff --git a/runescape-client/src/main/java/Login.java b/runescape-client/src/main/java/Login.java index 95e6752791..06fe1cbb4e 100644 --- a/runescape-client/src/main/java/Login.java +++ b/runescape-client/src/main/java/Login.java @@ -182,7 +182,7 @@ public class Login { worldSelectPage = 0; // L: 103 worldSelectPagesCount = 0; // L: 104 new DecimalFormat("##0.00"); // L: 107 - new FrameProvider(); + new class171(); field1213 = -1L; // L: 115 field1226 = -1L; // L: 116 } diff --git a/runescape-client/src/main/java/Projectile.java b/runescape-client/src/main/java/Projectile.java index dfd87bb923..56408e442c 100644 --- a/runescape-client/src/main/java/Projectile.java +++ b/runescape-client/src/main/java/Projectile.java @@ -286,7 +286,7 @@ public final class Projectile extends Renderable { JagexCache.userHomeDirectory = "~/"; } - MinimapRenderer.cacheParentPaths = new String[]{"c:/rscache/", "/rscache/", "c:/windows/", "c:/winnt/", "c:/", JagexCache.userHomeDirectory, "/tmp/", ""}; // L: 65 + class224.cacheParentPaths = new String[]{"c:/rscache/", "/rscache/", "c:/windows/", "c:/winnt/", "c:/", JagexCache.userHomeDirectory, "/tmp/", ""}; // L: 65 Timer.cacheSubPaths = new String[]{".jagex_cache_" + JagexCache.cacheGamebuild, ".file_store_" + JagexCache.cacheGamebuild}; // L: 66 int var18 = 0; @@ -357,8 +357,8 @@ public final class Projectile extends Renderable { if (var7 == null && var18 == 0) { // L: 116 label225: for (int var19 = 0; var19 < Timer.cacheSubPaths.length; ++var19) { // L: 117 - for (int var20 = 0; var20 < MinimapRenderer.cacheParentPaths.length; ++var20) { // L: 118 - File var21 = new File(MinimapRenderer.cacheParentPaths[var20] + Timer.cacheSubPaths[var19] + File.separatorChar + var0 + File.separatorChar); // L: 119 + for (int var20 = 0; var20 < class224.cacheParentPaths.length; ++var20) { // L: 118 + File var21 = new File(class224.cacheParentPaths[var20] + Timer.cacheSubPaths[var19] + File.separatorChar + var0 + File.separatorChar); // L: 119 if (var21.exists() && class23.isWriteable(new File(var21, "test.dat"), true)) { // L: 120 121 var7 = var21.toString(); // L: 122 var9 = true; // L: 123 diff --git a/runescape-client/src/main/java/Renderable.java b/runescape-client/src/main/java/Renderable.java index 9e34a29343..8c44ff112d 100644 --- a/runescape-client/src/main/java/Renderable.java +++ b/runescape-client/src/main/java/Renderable.java @@ -47,7 +47,7 @@ public abstract class Renderable extends DualNode { static final void method3417() { if (Client.field889 != class90.Client_plane) { // L: 3402 Client.field889 = class90.Client_plane; // L: 3403 - MinimapRenderer.redrawMiniMapIcons(class90.Client_plane); // L: 3404 + class224.redrawMiniMapIcons(class90.Client_plane); // L: 3404 } } // L: 3406 diff --git a/runescape-client/src/main/java/Varcs.java b/runescape-client/src/main/java/Varcs.java index 847b415bed..a695b7c88c 100644 --- a/runescape-client/src/main/java/Varcs.java +++ b/runescape-client/src/main/java/Varcs.java @@ -408,8 +408,8 @@ public class Varcs { } else { label39: for (int var1 = 0; var1 < Timer.cacheSubPaths.length; ++var1) { // L: 255 - for (var2 = 0; var2 < MinimapRenderer.cacheParentPaths.length; ++var2) { // L: 256 - File var3 = new File(MinimapRenderer.cacheParentPaths[var2] + Timer.cacheSubPaths[var1] + File.separatorChar + "random.dat"); // L: 257 + for (var2 = 0; var2 < class224.cacheParentPaths.length; ++var2) { // L: 256 + File var3 = new File(class224.cacheParentPaths[var2] + Timer.cacheSubPaths[var1] + File.separatorChar + "random.dat"); // L: 257 if (var3.exists()) { // L: 258 JagexCache.JagexCache_randomDat = new BufferedFile(new AccessFile(var3, "rw", 25L), 24, 0); // L: 259 break label39; // L: 260 diff --git a/runescape-client/src/main/java/WorldMapRectangle.java b/runescape-client/src/main/java/WorldMapRectangle.java index cc1888a3d7..601ee9fc43 100644 --- a/runescape-client/src/main/java/WorldMapRectangle.java +++ b/runescape-client/src/main/java/WorldMapRectangle.java @@ -159,7 +159,7 @@ public final class WorldMapRectangle { for (int var2 = 0; var2 < var0; ++var2) { // L: 3495 Player var3 = Client.players[var1[var2]]; // L: 3496 if (var3 != null) { // L: 3497 - FrameProvider.updateActorSequence(var3, 1); // L: 3498 + class171.updateActorSequence(var3, 1); // L: 3498 } } diff --git a/runescape-client/src/main/java/class13.java b/runescape-client/src/main/java/class13.java index 9b4bd25e88..532561996d 100644 --- a/runescape-client/src/main/java/class13.java +++ b/runescape-client/src/main/java/class13.java @@ -71,7 +71,7 @@ public final class class13 { if (!Client.isCameraLocked) { // L: 4014 var4 = AbstractWorldMapIcon.method712(); } else { - var4 = FrameProvider.method3639(); // L: 4015 + var4 = class171.method3639(); // L: 4015 } var28 = SecureRandomFuture.cameraX; // L: 4016 diff --git a/runescape-client/src/main/java/class170.java b/runescape-client/src/main/java/class170.java new file mode 100644 index 0000000000..f249dc6672 --- /dev/null +++ b/runescape-client/src/main/java/class170.java @@ -0,0 +1,5 @@ +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("ff") +public interface class170 { +} \ No newline at end of file diff --git a/runescape-client/src/main/java/FrameProvider.java b/runescape-client/src/main/java/class171.java similarity index 98% rename from runescape-client/src/main/java/FrameProvider.java rename to runescape-client/src/main/java/class171.java index 670af39886..141e10fee2 100644 --- a/runescape-client/src/main/java/FrameProvider.java +++ b/runescape-client/src/main/java/class171.java @@ -1,12 +1,11 @@ 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; @ObfuscatedName("fd") -@Implements("FrameProvider") -public class FrameProvider implements FrameLoader { +public class class171 implements class170 +{ @ObfuscatedName("ee") @ObfuscatedGetter( intValue = -853566565 diff --git a/runescape-client/src/main/java/MinimapRenderer.java b/runescape-client/src/main/java/class224.java similarity index 98% rename from runescape-client/src/main/java/MinimapRenderer.java rename to runescape-client/src/main/java/class224.java index f0872acb07..31bb70ca44 100644 --- a/runescape-client/src/main/java/MinimapRenderer.java +++ b/runescape-client/src/main/java/class224.java @@ -4,8 +4,7 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("hn") -@Implements("MinimapRenderer") -public class MinimapRenderer { +public class class224 { @ObfuscatedName("n") public static final short[] field2577; @ObfuscatedName("v") From af1166c690d083bca76e22c45466a22fe09a652e Mon Sep 17 00:00:00 2001 From: Jonatino Date: Fri, 26 Mar 2021 11:51:01 -0400 Subject: [PATCH 12/12] Applied suggested code review changes --- runescape-client/src/main/java/Login.java | 2 +- runescape-client/src/main/java/Renderable.java | 2 +- runescape-client/src/main/java/WorldMapRectangle.java | 2 +- runescape-client/src/main/java/class13.java | 2 +- runescape-client/src/main/java/class170.java | 2 +- runescape-client/src/main/java/class171.java | 3 +-- runescape-client/src/main/java/class224.java | 4 ++-- 7 files changed, 8 insertions(+), 9 deletions(-) diff --git a/runescape-client/src/main/java/Login.java b/runescape-client/src/main/java/Login.java index 06fe1cbb4e..f7c47a0d19 100644 --- a/runescape-client/src/main/java/Login.java +++ b/runescape-client/src/main/java/Login.java @@ -230,4 +230,4 @@ public class Login { return 1; // L: 1317 } } -} \ No newline at end of file +} diff --git a/runescape-client/src/main/java/Renderable.java b/runescape-client/src/main/java/Renderable.java index 8c44ff112d..58f720f844 100644 --- a/runescape-client/src/main/java/Renderable.java +++ b/runescape-client/src/main/java/Renderable.java @@ -47,7 +47,7 @@ public abstract class Renderable extends DualNode { static final void method3417() { if (Client.field889 != class90.Client_plane) { // L: 3402 Client.field889 = class90.Client_plane; // L: 3403 - class224.redrawMiniMapIcons(class90.Client_plane); // L: 3404 + class224.createMinimapSprite(class90.Client_plane); // L: 3404 } } // L: 3406 diff --git a/runescape-client/src/main/java/WorldMapRectangle.java b/runescape-client/src/main/java/WorldMapRectangle.java index 601ee9fc43..791b1b8cda 100644 --- a/runescape-client/src/main/java/WorldMapRectangle.java +++ b/runescape-client/src/main/java/WorldMapRectangle.java @@ -184,4 +184,4 @@ public final class WorldMapRectangle { return var1.length() > 6 ? " " + FileSystem.colorStartTag(16777215) + var1.substring(0, var1.length() - 4) + "K" + " " + " (" + var1 + ")" + "" : " " + FileSystem.colorStartTag(16776960) + var1 + ""; // L: 9909 9910 } } -} \ No newline at end of file +} diff --git a/runescape-client/src/main/java/class13.java b/runescape-client/src/main/java/class13.java index 532561996d..01297ab912 100644 --- a/runescape-client/src/main/java/class13.java +++ b/runescape-client/src/main/java/class13.java @@ -340,4 +340,4 @@ public final class class13 { } } // L: 11640 -} \ No newline at end of file +} diff --git a/runescape-client/src/main/java/class170.java b/runescape-client/src/main/java/class170.java index f249dc6672..6e6d5d5e8a 100644 --- a/runescape-client/src/main/java/class170.java +++ b/runescape-client/src/main/java/class170.java @@ -2,4 +2,4 @@ import net.runelite.mapping.ObfuscatedName; @ObfuscatedName("ff") public interface class170 { -} \ No newline at end of file +} diff --git a/runescape-client/src/main/java/class171.java b/runescape-client/src/main/java/class171.java index 141e10fee2..c384e7e0ee 100644 --- a/runescape-client/src/main/java/class171.java +++ b/runescape-client/src/main/java/class171.java @@ -4,8 +4,7 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("fd") -public class class171 implements class170 -{ +public class class171 implements class170 { @ObfuscatedName("ee") @ObfuscatedGetter( intValue = -853566565 diff --git a/runescape-client/src/main/java/class224.java b/runescape-client/src/main/java/class224.java index 31bb70ca44..fbaf3b5c4b 100644 --- a/runescape-client/src/main/java/class224.java +++ b/runescape-client/src/main/java/class224.java @@ -29,8 +29,8 @@ public class class224 { descriptor = "(II)V", garbageValue = "2091444199" ) - @Export("redrawMiniMapIcons") - static final void redrawMiniMapIcons(int plane) { + @Export("createMinimapSprite") + static final void createMinimapSprite(int plane) { int[] var1 = GrandExchangeOfferAgeComparator.sceneMinimapSprite.pixels; // L: 5775 int var2 = var1.length; // L: 5776