diff --git a/buildSrc/src/main/kotlin/Dependencies.kt b/buildSrc/src/main/kotlin/Dependencies.kt index c53ab3db18..299664294b 100644 --- a/buildSrc/src/main/kotlin/Dependencies.kt +++ b/buildSrc/src/main/kotlin/Dependencies.kt @@ -29,6 +29,6 @@ object ProjectVersions { const val openosrsVersion = "3.5.4" - const val rsversion = 192 + const val rsversion = 193 const val cacheversion = 165 } diff --git a/runelite-api/src/main/java/net/runelite/api/Preferences.java b/runelite-api/src/main/java/net/runelite/api/Preferences.java index ec1fb0dad7..98763fc1fa 100644 --- a/runelite-api/src/main/java/net/runelite/api/Preferences.java +++ b/runelite-api/src/main/java/net/runelite/api/Preferences.java @@ -42,4 +42,16 @@ public interface Preferences * @param username the new remembered username */ void setRememberedUsername(String username); + + int getSoundEffectsVolume(); + + void setSoundEffectsVolume(int i); + + int getAreaSoundEffectsVolume(); + + void setAreaSoundEffectsVolume(int i); + + int getClientMusicVolume(); + + void setMusicVolume(int i); } diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java index 47e4e1afe2..175d04a834 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java @@ -1824,7 +1824,7 @@ public abstract class RSClientMixin implements RSClient client.playMusicTrack(1000, client.getMusicTracks(), client.getCurrentTrackGroupId(), 0, volume, false); } - client.setClientMusicVolume(volume); + client.getPreferences().setMusicVolume(volume); client.setMusicTrackVolume(volume); if (client.getMidiPcmStream() != null) { diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/SoundEffectMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/SoundEffectMixin.java index 550e0be19a..4edad7245b 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/SoundEffectMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/SoundEffectMixin.java @@ -173,7 +173,7 @@ public abstract class SoundEffectMixin implements RSClient } // If the current volume is not muted, use it instead - final int soundEffectVolume = getSoundEffectVolume(); + final int soundEffectVolume = client.getPreferences().getSoundEffectsVolume(); if (soundEffectVolume != SoundEffectVolume.MUTED) { volume = soundEffectVolume; diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java b/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java index 31e806beac..f782ec92e4 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java @@ -1097,29 +1097,6 @@ public interface RSClient extends RSGameShell, Client @Import("decimator") RSDecimator getSoundEffectResampler(); - @Import("musicVolume") - @Override - int getMusicVolume(); - - @Import("musicVolume") - void setClientMusicVolume(int volume); - - @Import("areaSoundEffectVolume") - @Override - int getAreaSoundEffectVolume(); - - @Import("areaSoundEffectVolume") - @Override - void setAreaSoundEffectVolume(int volume); - - @Import("soundEffectVolume") - @Override - int getSoundEffectVolume(); - - @Import("soundEffectVolume") - @Override - void setSoundEffectVolume(int volume); - @Import("musicTrackVolume") void setMusicTrackVolume(int volume); diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSClientPreferences.java b/runescape-api/src/main/java/net/runelite/rs/api/RSClientPreferences.java index e9a5e09e55..302a171e3c 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSClientPreferences.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSClientPreferences.java @@ -12,4 +12,28 @@ public interface RSClientPreferences extends Preferences @Import("rememberedUsername") @Override void setRememberedUsername(String username); + + @Import("soundEffectsVolume") + @Override + int getSoundEffectsVolume(); + + @Import("soundEffectsVolume") + @Override + void setSoundEffectsVolume(int i); + + @Import("areaSoundEffectsVolume") + @Override + int getAreaSoundEffectsVolume(); + + @Import("areaSoundEffectsVolume") + @Override + void setAreaSoundEffectsVolume(int i); + + @Import("musicVolume") + @Override + int getClientMusicVolume(); + + @Import("musicVolume") + @Override + void setMusicVolume(int i); } diff --git a/runescape-client/src/main/java/AbstractArchive.java b/runescape-client/src/main/java/AbstractArchive.java index 7648afc930..f17e8d8ee9 100644 --- a/runescape-client/src/main/java/AbstractArchive.java +++ b/runescape-client/src/main/java/AbstractArchive.java @@ -4,733 +4,727 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("iw") +@ObfuscatedName("ib") @Implements("AbstractArchive") public abstract class AbstractArchive { - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedSignature( - descriptor = "Lmw;" + descriptor = "Lms;" ) @Export("gzipDecompressor") static GZipDecompressor gzipDecompressor; - @ObfuscatedName("s") - @ObfuscatedGetter( - intValue = 910501157 - ) - static int field3173; @ObfuscatedName("b") @ObfuscatedGetter( - intValue = 775749307 + intValue = -1889999803 + ) + static int field3171; + @ObfuscatedName("hz") + @ObfuscatedGetter( + intValue = -1569410223 + ) + @Export("cameraYaw") + static int cameraYaw; + @ObfuscatedName("v") + @ObfuscatedGetter( + intValue = -561639929 ) @Export("groupCount") int groupCount; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("groupIds") int[] groupIds; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("groupNameHashes") int[] groupNameHashes; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lmj;" + descriptor = "Lmb;" ) @Export("groupNameHashTable") IntHashTable groupNameHashTable; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("groupCrcs") int[] groupCrcs; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("groupVersions") int[] groupVersions; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("fileCounts") int[] fileCounts; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("fileIds") int[][] fileIds; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("fileNameHashes") int[][] fileNameHashes; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "[Lmj;" + descriptor = "[Lmb;" ) @Export("fileNameHashTables") IntHashTable[] fileNameHashTables; - @ObfuscatedName("o") + @ObfuscatedName("e") @Export("groups") Object[] groups; - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("files") Object[][] files; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedGetter( - intValue = -1565476679 + intValue = 2057340569 ) @Export("hash") public int hash; - @ObfuscatedName("r") + @ObfuscatedName("f") @Export("releaseGroups") boolean releaseGroups; - @ObfuscatedName("y") + @ObfuscatedName("a") @Export("shallowFiles") boolean shallowFiles; static { - gzipDecompressor = new GZipDecompressor(); // L: 23 - field3173 = 0; // L: 27 + gzipDecompressor = new GZipDecompressor(); + field3171 = 0; } AbstractArchive(boolean var1, boolean var2) { - this.releaseGroups = var1; // L: 32 - this.shallowFiles = var2; // L: 33 - } // L: 34 + this.releaseGroups = var1; + this.shallowFiles = var2; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "([BI)V", - garbageValue = "-1837792503" + garbageValue = "907674687" ) @Export("decodeIndex") void decodeIndex(byte[] var1) { - int var3 = var1.length; // L: 38 - int var2 = class4.method81(var1, 0, var3); // L: 40 - this.hash = var2; // L: 42 - Buffer var4 = new Buffer(UserComparator3.decompressBytes(var1)); // L: 43 - int var5 = var4.readUnsignedByte(); // L: 44 - if (var5 >= 5 && var5 <= 7) { // L: 45 - if (var5 >= 6) { // L: 46 - var4.readInt(); // L: 47 + this.hash = DynamicObject.method2305(var1, var1.length); + Buffer var2 = new Buffer(PrivateChatMode.decompressBytes(var1)); + int var3 = var2.readUnsignedByte(); + if (var3 >= 5 && var3 <= 7) { + if (var3 >= 6) { + var2.readInt(); } - int var6 = var4.readUnsignedByte(); - if (var5 >= 7) { - this.groupCount = var4.method5653(); + int var4 = var2.readUnsignedByte(); + if (var3 >= 7) { + this.groupCount = var2.method5558(); } else { - this.groupCount = var4.readUnsignedShort(); + this.groupCount = var2.readUnsignedShort(); } - int var7 = 0; - int var8 = -1; + int var5 = 0; + int var6 = -1; this.groupIds = new int[this.groupCount]; - int var9; - if (var5 >= 7) { - for (var9 = 0; var9 < this.groupCount; ++var9) { - this.groupIds[var9] = var7 += var4.method5653(); - if (this.groupIds[var9] > var8) { - var8 = this.groupIds[var9]; + int var7; + if (var3 >= 7) { + for (var7 = 0; var7 < this.groupCount; ++var7) { + this.groupIds[var7] = var5 += var2.method5558(); + if (this.groupIds[var7] > var6) { + var6 = this.groupIds[var7]; } } } else { - for (var9 = 0; var9 < this.groupCount; ++var9) { // L: 63 - this.groupIds[var9] = var7 += var4.readUnsignedShort(); // L: 64 - if (this.groupIds[var9] > var8) { // L: 65 - var8 = this.groupIds[var9]; + for (var7 = 0; var7 < this.groupCount; ++var7) { + this.groupIds[var7] = var5 += var2.readUnsignedShort(); + if (this.groupIds[var7] > var6) { + var6 = this.groupIds[var7]; } } } - this.groupCrcs = new int[var8 + 1]; // L: 68 - this.groupVersions = new int[var8 + 1]; // L: 69 - this.fileCounts = new int[var8 + 1]; // L: 70 - this.fileIds = new int[var8 + 1][]; // L: 71 - this.groups = new Object[var8 + 1]; // L: 72 - this.files = new Object[var8 + 1][]; // L: 73 - if (var6 != 0) { // L: 74 - this.groupNameHashes = new int[var8 + 1]; // L: 75 + this.groupCrcs = new int[var6 + 1]; + this.groupVersions = new int[var6 + 1]; + this.fileCounts = new int[var6 + 1]; + this.fileIds = new int[var6 + 1][]; + this.groups = new Object[var6 + 1]; + this.files = new Object[var6 + 1][]; + if (var4 != 0) { + this.groupNameHashes = new int[var6 + 1]; - for (var9 = 0; var9 < this.groupCount; ++var9) { // L: 76 - this.groupNameHashes[this.groupIds[var9]] = var4.readInt(); + for (var7 = 0; var7 < this.groupCount; ++var7) { + this.groupNameHashes[this.groupIds[var7]] = var2.readInt(); } - this.groupNameHashTable = new IntHashTable(this.groupNameHashes); // L: 77 + this.groupNameHashTable = new IntHashTable(this.groupNameHashes); } - for (var9 = 0; var9 < this.groupCount; ++var9) { // L: 79 - this.groupCrcs[this.groupIds[var9]] = var4.readInt(); + for (var7 = 0; var7 < this.groupCount; ++var7) { + this.groupCrcs[this.groupIds[var7]] = var2.readInt(); } - for (var9 = 0; var9 < this.groupCount; ++var9) { // L: 80 - this.groupVersions[this.groupIds[var9]] = var4.readInt(); + for (var7 = 0; var7 < this.groupCount; ++var7) { + this.groupVersions[this.groupIds[var7]] = var2.readInt(); } - for (var9 = 0; var9 < this.groupCount; ++var9) { // L: 81 - this.fileCounts[this.groupIds[var9]] = var4.readUnsignedShort(); + for (var7 = 0; var7 < this.groupCount; ++var7) { + this.fileCounts[this.groupIds[var7]] = var2.readUnsignedShort(); } + int var8; + int var9; int var10; int var11; int var12; - int var13; - int var14; - if (var5 >= 7) { // L: 82 - for (var9 = 0; var9 < this.groupCount; ++var9) { // L: 83 - var10 = this.groupIds[var9]; // L: 84 - var11 = this.fileCounts[var10]; // L: 85 - var7 = 0; // L: 86 - var12 = -1; // L: 87 - this.fileIds[var10] = new int[var11]; // L: 88 + if (var3 >= 7) { + for (var7 = 0; var7 < this.groupCount; ++var7) { + var8 = this.groupIds[var7]; + var9 = this.fileCounts[var8]; + var5 = 0; + var10 = -1; + this.fileIds[var8] = new int[var9]; - for (var13 = 0; var13 < var11; ++var13) { // L: 89 - var14 = this.fileIds[var10][var13] = var7 += var4.method5653(); // L: 90 - if (var14 > var12) { // L: 91 - var12 = var14; + for (var11 = 0; var11 < var9; ++var11) { + var12 = this.fileIds[var8][var11] = var5 += var2.method5558(); + if (var12 > var10) { + var10 = var12; } } - this.files[var10] = new Object[var12 + 1]; // L: 93 + this.files[var8] = new Object[var10 + 1]; } } else { - for (var9 = 0; var9 < this.groupCount; ++var9) { // L: 97 - var10 = this.groupIds[var9]; // L: 98 - var11 = this.fileCounts[var10]; // L: 99 - var7 = 0; // L: 100 - var12 = -1; // L: 101 - this.fileIds[var10] = new int[var11]; // L: 102 + for (var7 = 0; var7 < this.groupCount; ++var7) { + var8 = this.groupIds[var7]; + var9 = this.fileCounts[var8]; + var5 = 0; + var10 = -1; + this.fileIds[var8] = new int[var9]; - for (var13 = 0; var13 < var11; ++var13) { // L: 103 - var14 = this.fileIds[var10][var13] = var7 += var4.readUnsignedShort(); // L: 104 - if (var14 > var12) { // L: 105 - var12 = var14; + for (var11 = 0; var11 < var9; ++var11) { + var12 = this.fileIds[var8][var11] = var5 += var2.readUnsignedShort(); + if (var12 > var10) { + var10 = var12; } } - this.files[var10] = new Object[var12 + 1]; // L: 107 + this.files[var8] = new Object[var10 + 1]; } } - if (var6 != 0) { // L: 110 - this.fileNameHashes = new int[var8 + 1][]; // L: 111 - this.fileNameHashTables = new IntHashTable[var8 + 1]; // L: 112 + if (var4 != 0) { + this.fileNameHashes = new int[var6 + 1][]; + this.fileNameHashTables = new IntHashTable[var6 + 1]; - for (var9 = 0; var9 < this.groupCount; ++var9) { // L: 113 - var10 = this.groupIds[var9]; // L: 114 - var11 = this.fileCounts[var10]; // L: 115 - this.fileNameHashes[var10] = new int[this.files[var10].length]; // L: 116 + for (var7 = 0; var7 < this.groupCount; ++var7) { + var8 = this.groupIds[var7]; + var9 = this.fileCounts[var8]; + this.fileNameHashes[var8] = new int[this.files[var8].length]; - for (var12 = 0; var12 < var11; ++var12) { // L: 117 - this.fileNameHashes[var10][this.fileIds[var10][var12]] = var4.readInt(); + for (var10 = 0; var10 < var9; ++var10) { + this.fileNameHashes[var8][this.fileIds[var8][var10]] = var2.readInt(); } - this.fileNameHashTables[var10] = new IntHashTable(this.fileNameHashes[var10]); // L: 118 + this.fileNameHashTables[var8] = new IntHashTable(this.fileNameHashes[var8]); } } } else { throw new RuntimeException(""); } - } // L: 121 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "1666992241" + garbageValue = "-1807571765" ) @Export("loadRegionFromGroup") void loadRegionFromGroup(int var1) { - } // L: 123 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(III)[B", - garbageValue = "1866265901" + descriptor = "(IIS)[B", + garbageValue = "-21068" ) @Export("takeFile") public byte[] takeFile(int var1, int var2) { - return this.takeFileEncrypted(var1, var2, (int[])null); // L: 126 + return this.takeFileEncrypted(var1, var2, (int[])null); } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(II[II)[B", - garbageValue = "-268941937" + descriptor = "(II[IB)[B", + garbageValue = "-28" ) @Export("takeFileEncrypted") public byte[] takeFileEncrypted(int var1, int var2, int[] var3) { - if (var1 >= 0 && var1 < this.files.length && this.files[var1] != null && var2 >= 0 && var2 < this.files[var1].length) { // L: 130 - if (this.files[var1][var2] == null) { // L: 131 - boolean var4 = this.buildFiles(var1, var3); // L: 132 - if (!var4) { // L: 133 - this.loadGroup(var1); // L: 134 - var4 = this.buildFiles(var1, var3); // L: 135 - if (!var4) { // L: 136 + if (var1 >= 0 && var1 < this.files.length && this.files[var1] != null && var2 >= 0 && var2 < this.files[var1].length) { + if (this.files[var1][var2] == null) { + boolean var4 = this.buildFiles(var1, var3); + if (!var4) { + this.loadGroup(var1); + var4 = this.buildFiles(var1, var3); + if (!var4) { return null; } } } - byte[] var5 = CollisionMap.method3712(this.files[var1][var2], false); // L: 139 + byte[] var5 = GrandExchangeOffer.method188(this.files[var1][var2], false); if (this.shallowFiles) { - this.files[var1][var2] = null; // L: 140 + this.files[var1][var2] = null; } - return var5; // L: 141 + return var5; } else { return null; } } - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "-37" - ) - @Export("tryLoadFile") - public boolean tryLoadFile(int var1, int var2) { - if (var1 >= 0 && var1 < this.files.length && this.files[var1] != null && var2 >= 0 && var2 < this.files[var1].length) { // L: 145 - if (this.files[var1][var2] != null) { // L: 146 - return true; - } else if (this.groups[var1] != null) { // L: 147 - return true; - } else { - this.loadGroup(var1); // L: 148 - return this.groups[var1] != null; // L: 149 - } - } else { - return false; // L: 150 - } - } - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-1001289587" - ) - public boolean method4301(int var1) { - if (this.files.length == 1) { // L: 154 - return this.tryLoadFile(0, var1); - } else if (this.files[var1].length == 1) { - return this.tryLoadFile(var1, 0); // L: 155 - } else { - throw new RuntimeException(); // L: 156 - } - } - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "452985431" - ) - @Export("tryLoadGroup") - public boolean tryLoadGroup(int var1) { - if (this.groups[var1] != null) { // L: 160 - return true; - } else { - this.loadGroup(var1); // L: 161 - return this.groups[var1] != null; // L: 162 - } - } - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1015322463" - ) - @Export("isFullyLoaded") - public boolean isFullyLoaded() { - boolean var1 = true; // L: 167 - - for (int var2 = 0; var2 < this.groupIds.length; ++var2) { // L: 168 - int var3 = this.groupIds[var2]; // L: 169 - if (this.groups[var3] == null) { // L: 170 - this.loadGroup(var3); // L: 171 - if (this.groups[var3] == null) { // L: 172 - var1 = false; - } - } - } - - return var1; // L: 175 - } - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "1168057688" - ) - @Export("groupLoadPercent") - int groupLoadPercent(int var1) { - return this.groups[var1] != null ? 100 : 0; // L: 179 180 - } - @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(II)[B", - garbageValue = "-1769170354" + descriptor = "(III)Z", + garbageValue = "1736464380" ) - @Export("takeFileFlat") - public byte[] takeFileFlat(int var1) { - if (this.files.length == 1) { // L: 184 - return this.takeFile(0, var1); - } else if (this.files[var1].length == 1) { - return this.takeFile(var1, 0); // L: 185 - } else { - throw new RuntimeException(); // L: 186 - } - } - - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "(III)[B", - garbageValue = "-1969973246" - ) - @Export("getFile") - public byte[] getFile(int var1, int var2) { - if (var1 >= 0 && var1 < this.files.length && this.files[var1] != null && var2 >= 0 && var2 < this.files[var1].length) { // L: 190 - if (this.files[var1][var2] == null) { // L: 191 - boolean var3 = this.buildFiles(var1, (int[])null); // L: 192 - if (!var3) { // L: 193 - this.loadGroup(var1); // L: 194 - var3 = this.buildFiles(var1, (int[])null); // L: 195 - if (!var3) { // L: 196 - return null; - } - } + @Export("tryLoadFile") + public boolean tryLoadFile(int var1, int var2) { + if (var1 >= 0 && var1 < this.files.length && this.files[var1] != null && var2 >= 0 && var2 < this.files[var1].length) { + if (this.files[var1][var2] != null) { + return true; + } else if (this.groups[var1] != null) { + return true; + } else { + this.loadGroup(var1); + return this.groups[var1] != null; } - - byte[] var4 = CollisionMap.method3712(this.files[var1][var2], false); // L: 199 - return var4; // L: 200 } else { - return null; + return false; } } - @ObfuscatedName("o") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(II)[B", - garbageValue = "475787728" + descriptor = "(IS)Z", + garbageValue = "256" ) - @Export("getFileFlat") - public byte[] getFileFlat(int var1) { - if (this.files.length == 1) { // L: 204 - return this.getFile(0, var1); + public boolean method4196(int var1) { + if (this.files.length == 1) { + return this.tryLoadFile(0, var1); } else if (this.files[var1].length == 1) { - return this.getFile(var1, 0); // L: 205 + return this.tryLoadFile(var1, 0); } else { - throw new RuntimeException(); // L: 206 + throw new RuntimeException(); } } @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "1210314032" + ) + @Export("tryLoadGroup") + public boolean tryLoadGroup(int var1) { + if (this.groups[var1] != null) { + return true; + } else { + this.loadGroup(var1); + return this.groups[var1] != null; + } + } + + @ObfuscatedName("p") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "-1853187618" + ) + @Export("isFullyLoaded") + public boolean isFullyLoaded() { + boolean var1 = true; + + for (int var2 = 0; var2 < this.groupIds.length; ++var2) { + int var3 = this.groupIds[var2]; + if (this.groups[var3] == null) { + this.loadGroup(var3); + if (this.groups[var3] == null) { + var1 = false; + } + } + } + + return var1; + } + + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "2120197275" + ) + @Export("groupLoadPercent") + int groupLoadPercent(int var1) { + return this.groups[var1] != null ? 100 : 0; + } + + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(II)[B", + garbageValue = "601238415" + ) + @Export("takeFileFlat") + public byte[] takeFileFlat(int var1) { + if (this.files.length == 1) { + return this.takeFile(0, var1); + } else if (this.files[var1].length == 1) { + return this.takeFile(var1, 0); + } else { + throw new RuntimeException(); + } + } + + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "(III)[B", + garbageValue = "2110561538" + ) + @Export("getFile") + public byte[] getFile(int var1, int var2) { + if (var1 >= 0 && var1 < this.files.length && this.files[var1] != null && var2 >= 0 && var2 < this.files[var1].length) { + if (this.files[var1][var2] == null) { + boolean var3 = this.buildFiles(var1, (int[])null); + if (!var3) { + this.loadGroup(var1); + var3 = this.buildFiles(var1, (int[])null); + if (!var3) { + return null; + } + } + } + + byte[] var4 = GrandExchangeOffer.method188(this.files[var1][var2], false); + return var4; + } else { + return null; + } + } + + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "(IB)[B", + garbageValue = "66" + ) + @Export("getFileFlat") + public byte[] getFileFlat(int var1) { + if (this.files.length == 1) { + return this.getFile(0, var1); + } else if (this.files[var1].length == 1) { + return this.getFile(var1, 0); + } else { + throw new RuntimeException(); + } + } + + @ObfuscatedName("m") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "1308309481" + garbageValue = "786262695" ) @Export("loadGroup") void loadGroup(int var1) { - } // L: 209 + } - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedSignature( - descriptor = "(IS)[I", - garbageValue = "1393" + descriptor = "(II)[I", + garbageValue = "-1130356360" ) @Export("getGroupFileIds") public int[] getGroupFileIds(int var1) { return var1 >= 0 && var1 < this.fileIds.length ? this.fileIds[var1] : null; } - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedSignature( descriptor = "(IB)I", - garbageValue = "-118" + garbageValue = "64" ) @Export("getGroupFileCount") public int getGroupFileCount(int var1) { return this.files[var1].length; } - @ObfuscatedName("r") + @ObfuscatedName("f") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1138802356" + garbageValue = "1884163104" ) @Export("getGroupCount") public int getGroupCount() { - return this.files.length; // L: 223 + return this.files.length; } @ObfuscatedName("y") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1555898760" + descriptor = "(B)V", + garbageValue = "3" ) @Export("clearGroups") public void clearGroups() { - for (int var1 = 0; var1 < this.groups.length; ++var1) { // L: 227 + for (int var1 = 0; var1 < this.groups.length; ++var1) { this.groups[var1] = null; } - } // L: 228 + } - @ObfuscatedName("s") + @ObfuscatedName("r") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-237320932" + garbageValue = "1386061158" ) @Export("clearFilesGroup") public void clearFilesGroup(int var1) { - for (int var2 = 0; var2 < this.files[var1].length; ++var2) { // L: 231 + for (int var2 = 0; var2 < this.files[var1].length; ++var2) { this.files[var1][var2] = null; } - } // L: 232 + } - @ObfuscatedName("j") + @ObfuscatedName("q") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-2" + descriptor = "(I)V", + garbageValue = "276266857" ) @Export("clearFiles") public void clearFiles() { - for (int var1 = 0; var1 < this.files.length; ++var1) { // L: 235 - if (this.files[var1] != null) { // L: 236 - for (int var2 = 0; var2 < this.files[var1].length; ++var2) { // L: 237 + for (int var1 = 0; var1 < this.files.length; ++var1) { + if (this.files[var1] != null) { + for (int var2 = 0; var2 < this.files[var1].length; ++var2) { this.files[var1][var2] = null; } } } - } // L: 240 - - @ObfuscatedName("d") - @ObfuscatedSignature( - descriptor = "(I[II)Z", - garbageValue = "453769668" - ) - @Export("buildFiles") - boolean buildFiles(int var1, int[] var2) { - if (this.groups[var1] == null) { // L: 243 - return false; - } else { - int var3 = this.fileCounts[var1]; // L: 244 - int[] var4 = this.fileIds[var1]; // L: 245 - Object[] var5 = this.files[var1]; // L: 246 - boolean var6 = true; // L: 247 - - for (int var7 = 0; var7 < var3; ++var7) { // L: 248 - if (var5[var4[var7]] == null) { // L: 249 - var6 = false; // L: 250 - break; - } - } - - if (var6) { // L: 254 - return true; - } else { - byte[] var18; - if (var2 == null || var2[0] == 0 && var2[1] == 0 && var2[2] == 0 && var2[3] == 0) { // L: 256 - var18 = CollisionMap.method3712(this.groups[var1], false); // L: 261 - } else { - var18 = CollisionMap.method3712(this.groups[var1], true); // L: 257 - Buffer var8 = new Buffer(var18); // L: 258 - var8.xteaDecrypt(var2, 5, var8.array.length); // L: 259 - } - - byte[] var20 = UserComparator3.decompressBytes(var18); // L: 264 - if (this.releaseGroups) { // L: 282 - this.groups[var1] = null; - } - - if (var3 > 1) { // L: 283 - int var9 = var20.length; // L: 284 - --var9; // L: 285 - int var10 = var20[var9] & 255; - var9 -= var10 * var3 * 4; // L: 286 - Buffer var11 = new Buffer(var20); // L: 287 - int[] var12 = new int[var3]; // L: 288 - var11.offset = var9; // L: 289 - - int var14; - int var15; - for (int var13 = 0; var13 < var10; ++var13) { // L: 290 - var14 = 0; // L: 291 - - for (var15 = 0; var15 < var3; ++var15) { // L: 292 - var14 += var11.readInt(); // L: 293 - var12[var15] += var14; // L: 294 - } - } - - byte[][] var19 = new byte[var3][]; // L: 297 - - for (var14 = 0; var14 < var3; ++var14) { // L: 298 - var19[var14] = new byte[var12[var14]]; // L: 299 - var12[var14] = 0; // L: 300 - } - - var11.offset = var9; // L: 302 - var14 = 0; // L: 303 - - for (var15 = 0; var15 < var10; ++var15) { // L: 304 - int var16 = 0; // L: 305 - - for (int var17 = 0; var17 < var3; ++var17) { // L: 306 - var16 += var11.readInt(); // L: 307 - System.arraycopy(var20, var14, var19[var17], var12[var17], var16); // L: 308 - var12[var17] += var16; // L: 309 - var14 += var16; // L: 310 - } - } - - for (var15 = 0; var15 < var3; ++var15) { // L: 313 - if (!this.shallowFiles) { // L: 314 - var5[var4[var15]] = AbstractByteArrayCopier.method4069(var19[var15], false); - } else { - var5[var4[var15]] = var19[var15]; // L: 315 - } - } - } else if (!this.shallowFiles) { // L: 319 - var5[var4[0]] = AbstractByteArrayCopier.method4069(var20, false); - } else { - var5[var4[0]] = var20; // L: 320 - } - - return true; // L: 322 - } - } - } - - @ObfuscatedName("a") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)I", - garbageValue = "-840193001" - ) - @Export("getGroupId") - public int getGroupId(String var1) { - var1 = var1.toLowerCase(); // L: 326 - return this.groupNameHashTable.get(UrlRequester.hashString(var1)); // L: 327 } @ObfuscatedName("g") + @ObfuscatedSignature( + descriptor = "(I[IB)Z", + garbageValue = "1" + ) + @Export("buildFiles") + boolean buildFiles(int var1, int[] var2) { + if (this.groups[var1] == null) { + return false; + } else { + int var3 = this.fileCounts[var1]; + int[] var4 = this.fileIds[var1]; + Object[] var5 = this.files[var1]; + boolean var6 = true; + + for (int var7 = 0; var7 < var3; ++var7) { + if (var5[var4[var7]] == null) { + var6 = false; + break; + } + } + + if (var6) { + return true; + } else { + byte[] var21; + if (var2 == null || var2[0] == 0 && var2[1] == 0 && var2[2] == 0 && var2[3] == 0) { + var21 = GrandExchangeOffer.method188(this.groups[var1], false); + } else { + var21 = GrandExchangeOffer.method188(this.groups[var1], true); + Buffer var8 = new Buffer(var21); + var8.xteaDecrypt(var2, 5, var8.array.length); + } + + byte[] var25 = PrivateChatMode.decompressBytes(var21); + if (this.releaseGroups) { + this.groups[var1] = null; + } + + int var10; + if (var3 > 1) { + int var22 = var25.length; + --var22; + var10 = var25[var22] & 255; + var22 -= var10 * var3 * 4; + Buffer var11 = new Buffer(var25); + int[] var12 = new int[var3]; + var11.offset = var22; + + int var14; + int var15; + for (int var13 = 0; var13 < var10; ++var13) { + var14 = 0; + + for (var15 = 0; var15 < var3; ++var15) { + var14 += var11.readInt(); + var12[var15] += var14; + } + } + + byte[][] var23 = new byte[var3][]; + + for (var14 = 0; var14 < var3; ++var14) { + var23[var14] = new byte[var12[var14]]; + var12[var14] = 0; + } + + var11.offset = var22; + var14 = 0; + + int var17; + for (var15 = 0; var15 < var10; ++var15) { + int var24 = 0; + + for (var17 = 0; var17 < var3; ++var17) { + var24 += var11.readInt(); + System.arraycopy(var25, var14, var23[var17], var12[var17], var24); + var12[var17] += var24; + var14 += var24; + } + } + + for (var15 = 0; var15 < var3; ++var15) { + if (!this.shallowFiles) { + var17 = var4[var15]; + byte[] var19 = var23[var15]; + Object var18; + if (var19 == null) { + var18 = null; + } else if (var19.length > 136) { + DirectByteArrayCopier var20 = new DirectByteArrayCopier(); + var20.set(var19); + var18 = var20; + } else { + var18 = var19; + } + + var5[var17] = var18; + } else { + var5[var4[var15]] = var23[var15]; + } + } + } else if (!this.shallowFiles) { + var10 = var4[0]; + Object var26; + if (var25 == null) { + var26 = null; + } else if (var25.length > 136) { + DirectByteArrayCopier var27 = new DirectByteArrayCopier(); + var27.set(var25); + var26 = var27; + } else { + var26 = var25; + } + + var5[var10] = var26; + } else { + var5[var4[0]] = var25; + } + + return true; + } + } + } + + @ObfuscatedName("o") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;I)I", + garbageValue = "-2131214347" + ) + @Export("getGroupId") + public int getGroupId(String var1) { + var1 = var1.toLowerCase(); + return this.groupNameHashTable.get(JagexCache.hashString(var1)); + } + + @ObfuscatedName("an") @ObfuscatedSignature( descriptor = "(ILjava/lang/String;I)I", - garbageValue = "344989810" + garbageValue = "1284626629" ) @Export("getFileId") public int getFileId(int var1, String var2) { - var2 = var2.toLowerCase(); // L: 331 - return this.fileNameHashTables[var1].get(UrlRequester.hashString(var2)); // L: 332 + var2 = var2.toLowerCase(); + return this.fileNameHashTables[var1].get(JagexCache.hashString(var2)); } - @ObfuscatedName("h") + @ObfuscatedName("aj") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;Ljava/lang/String;I)Z", - garbageValue = "-1115515997" + garbageValue = "-1088224070" ) @Export("isValidFileName") public boolean isValidFileName(String var1, String var2) { - var1 = var1.toLowerCase(); // L: 336 - var2 = var2.toLowerCase(); // L: 337 - int var3 = this.groupNameHashTable.get(UrlRequester.hashString(var1)); // L: 338 - if (var3 < 0) { // L: 339 + var1 = var1.toLowerCase(); + var2 = var2.toLowerCase(); + int var3 = this.groupNameHashTable.get(JagexCache.hashString(var1)); + if (var3 < 0) { return false; } else { - int var4 = this.fileNameHashTables[var3].get(UrlRequester.hashString(var2)); // L: 340 - return var4 >= 0; // L: 341 + int var4 = this.fileNameHashTables[var3].get(JagexCache.hashString(var2)); + return var4 >= 0; } } - @ObfuscatedName("ab") + @ObfuscatedName("ax") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;Ljava/lang/String;I)[B", - garbageValue = "-1708275377" + garbageValue = "1559839004" ) @Export("takeFileByNames") public byte[] takeFileByNames(String var1, String var2) { - var1 = var1.toLowerCase(); // L: 346 - var2 = var2.toLowerCase(); // L: 347 - int var3 = this.groupNameHashTable.get(UrlRequester.hashString(var1)); // L: 348 - int var4 = this.fileNameHashTables[var3].get(UrlRequester.hashString(var2)); // L: 349 - return this.takeFile(var3, var4); // L: 350 + var1 = var1.toLowerCase(); + var2 = var2.toLowerCase(); + int var3 = this.groupNameHashTable.get(JagexCache.hashString(var1)); + int var4 = this.fileNameHashTables[var3].get(JagexCache.hashString(var2)); + return this.takeFile(var3, var4); } - @ObfuscatedName("ac") + @ObfuscatedName("ag") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;Ljava/lang/String;B)Z", - garbageValue = "-77" + garbageValue = "53" ) @Export("tryLoadFileByNames") public boolean tryLoadFileByNames(String var1, String var2) { - var1 = var1.toLowerCase(); // L: 354 - var2 = var2.toLowerCase(); // L: 355 - int var3 = this.groupNameHashTable.get(UrlRequester.hashString(var1)); // L: 356 - int var4 = this.fileNameHashTables[var3].get(UrlRequester.hashString(var2)); // L: 357 - return this.tryLoadFile(var3, var4); // L: 358 + var1 = var1.toLowerCase(); + var2 = var2.toLowerCase(); + int var3 = this.groupNameHashTable.get(JagexCache.hashString(var1)); + int var4 = this.fileNameHashTables[var3].get(JagexCache.hashString(var2)); + return this.tryLoadFile(var3, var4); } - @ObfuscatedName("ao") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;B)Z", - garbageValue = "-80" + garbageValue = "113" ) @Export("tryLoadGroupByName") public boolean tryLoadGroupByName(String var1) { - var1 = var1.toLowerCase(); // L: 362 - int var2 = this.groupNameHashTable.get(UrlRequester.hashString(var1)); // L: 363 - return this.tryLoadGroup(var2); // L: 364 + var1 = var1.toLowerCase(); + int var2 = this.groupNameHashTable.get(JagexCache.hashString(var1)); + return this.tryLoadGroup(var2); } - @ObfuscatedName("af") + @ObfuscatedName("as") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-2009830657" + garbageValue = "220365579" ) @Export("loadRegionFromName") public void loadRegionFromName(String var1) { - var1 = var1.toLowerCase(); // L: 368 - int var2 = this.groupNameHashTable.get(UrlRequester.hashString(var1)); // L: 369 - if (var2 >= 0) { // L: 370 - this.loadRegionFromGroup(var2); // L: 371 + var1 = var1.toLowerCase(); + int var2 = this.groupNameHashTable.get(JagexCache.hashString(var1)); + if (var2 >= 0) { + this.loadRegionFromGroup(var2); } - } // L: 372 + } - @ObfuscatedName("av") + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)I", - garbageValue = "-2077847342" + descriptor = "(Ljava/lang/String;S)I", + garbageValue = "-9837" ) @Export("groupLoadPercentByName") public int groupLoadPercentByName(String var1) { - var1 = var1.toLowerCase(); // L: 375 - int var2 = this.groupNameHashTable.get(UrlRequester.hashString(var1)); // L: 376 - return this.groupLoadPercent(var2); // L: 377 + var1 = var1.toLowerCase(); + int var2 = this.groupNameHashTable.get(JagexCache.hashString(var1)); + return this.groupLoadPercent(var2); } - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1262529684" - ) - static void method4397() { - Tiles.Tiles_minPlane = 99; // L: 48 - TileItem.field1273 = new byte[4][104][104]; // L: 49 - NPC.field1161 = new byte[4][104][104]; // L: 50 - Tiles.field531 = new byte[4][104][104]; // L: 51 - UserComparator2.field3859 = new byte[4][104][104]; // L: 52 - UserComparator10.field2000 = new int[4][105][105]; // L: 53 - class299.field3679 = new byte[4][105][105]; // L: 54 - UserComparator10.field1999 = new int[105][105]; // L: 55 - GrandExchangeOfferOwnWorldComparator.Tiles_hue = new int[104]; // L: 56 - class238.Tiles_saturation = new int[104]; // L: 57 - TileItemPile.Tiles_lightness = new int[104]; // L: 58 - class248.Tiles_hueMultiplier = new int[104]; // L: 59 - class1.field1 = new int[104]; // L: 60 - } // L: 61 - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(Liw;IS)V", - garbageValue = "512" - ) - static void method4386(AbstractArchive var0, int var1) { - if ((var1 & 536870912) != 0) { // L: 212 - SecureRandomFuture.logoSprite = Canvas.SpriteBuffer_getIndexedSpriteByName(var0, "logo_deadman_mode", ""); // L: 213 - } else if ((var1 & 1073741824) != 0) { // L: 215 - SecureRandomFuture.logoSprite = Canvas.SpriteBuffer_getIndexedSpriteByName(var0, "logo_seasonal_mode", ""); // L: 216 - } else { - SecureRandomFuture.logoSprite = Canvas.SpriteBuffer_getIndexedSpriteByName(var0, "logo", ""); // L: 219 - } - - } // L: 221 } diff --git a/runescape-client/src/main/java/AbstractByteArrayCopier.java b/runescape-client/src/main/java/AbstractByteArrayCopier.java index e228016280..1b0038fb52 100644 --- a/runescape-client/src/main/java/AbstractByteArrayCopier.java +++ b/runescape-client/src/main/java/AbstractByteArrayCopier.java @@ -3,97 +3,25 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hh") +@ObfuscatedName("hk") @Implements("AbstractByteArrayCopier") public abstract class AbstractByteArrayCopier { - @ObfuscatedName("dn") - @ObfuscatedSignature( - descriptor = "Lid;" - ) - @Export("archive11") - static Archive archive11; - @ObfuscatedName("en") - @ObfuscatedSignature( - descriptor = "Lid;" - ) - @Export("archive14") - static Archive archive14; - AbstractByteArrayCopier() { - } // L: 4 + } - @ObfuscatedName("l") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(B)[B", - garbageValue = "-47" + descriptor = "(I)[B", + garbageValue = "-938287989" ) @Export("get") abstract byte[] get(); - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "([BB)V", - garbageValue = "0" + descriptor = "([BI)V", + garbageValue = "-277286562" ) @Export("set") - abstract void set(byte[] var1); - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "([BZI)Ljava/lang/Object;", - garbageValue = "1848040279" - ) - public static Object method4069(byte[] var0, boolean var1) { - if (var0 == null) { // L: 7 - return null; - } else if (var0.length > 136) { // L: 8 - DirectByteArrayCopier var2 = new DirectByteArrayCopier(); // L: 10 - var2.set(var0); // L: 11 - return var2; // L: 12 - } else { - return var0; // L: 25 - } - } - - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "(Lcf;B)V", - garbageValue = "2" - ) - @Export("changeWorld") - static void changeWorld(World var0) { - if (var0.isMembersOnly() != Client.isMembersWorld) { // L: 1538 - Client.isMembersWorld = var0.isMembersOnly(); // L: 1539 - boolean var1 = var0.isMembersOnly(); // L: 1540 - if (var1 != SoundCache.ItemDefinition_inMembersWorld) { // L: 1542 - class200.method3803(); // L: 1543 - SoundCache.ItemDefinition_inMembersWorld = var1; // L: 1544 - } - } - - if (var0.properties != Client.worldProperties) { // L: 1548 - AbstractArchive.method4386(GrandExchangeOffer.archive8, var0.properties); // L: 1549 - } - - UserComparator6.worldHost = var0.host; // L: 1551 - Client.worldId = var0.id; // L: 1552 - Client.worldProperties = var0.properties; // L: 1553 - Coord.port1 = Client.gameBuild == 0 ? 43594 : var0.id + 40000; // L: 1554 - Coord.port2 = Client.gameBuild == 0 ? 443 : var0.id + 50000; // L: 1555 - class41.port3 = Coord.port1; // L: 1556 - } // L: 1557 - - @ObfuscatedName("jp") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "407362763" - ) - static void method4087(int var0) { - GrandExchangeOffer.tempMenuAction = new MenuAction(); // L: 11020 - GrandExchangeOffer.tempMenuAction.param0 = Client.menuArguments1[var0]; // L: 11021 - GrandExchangeOffer.tempMenuAction.param1 = Client.menuArguments2[var0]; // L: 11022 - GrandExchangeOffer.tempMenuAction.opcode = Client.menuOpcodes[var0]; // L: 11023 - GrandExchangeOffer.tempMenuAction.identifier = Client.menuIdentifiers[var0]; // L: 11024 - GrandExchangeOffer.tempMenuAction.action = Client.menuActions[var0]; // L: 11025 - } // L: 11026 + public abstract void set(byte[] var1); } diff --git a/runescape-client/src/main/java/AbstractFont.java b/runescape-client/src/main/java/AbstractFont.java index 1ba42782a0..84b78213e8 100644 --- a/runescape-client/src/main/java/AbstractFont.java +++ b/runescape-client/src/main/java/AbstractFont.java @@ -4,244 +4,244 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ky") +@ObfuscatedName("kc") @Implements("AbstractFont") public abstract class AbstractFont extends Rasterizer2D { - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "[Lle;" + descriptor = "[Llo;" ) @Export("AbstractFont_modIconSprites") public static IndexedSprite[] AbstractFont_modIconSprites; - @ObfuscatedName("o") + @ObfuscatedName("e") @Export("AbstractFont_strike") static int AbstractFont_strike; - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("AbstractFont_underline") static int AbstractFont_underline; - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("AbstractFont_previousShadow") static int AbstractFont_previousShadow; - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("AbstractFont_shadow") static int AbstractFont_shadow; - @ObfuscatedName("r") + @ObfuscatedName("f") @Export("AbstractFont_previousColor") static int AbstractFont_previousColor; - @ObfuscatedName("y") + @ObfuscatedName("a") @Export("AbstractFont_color") static int AbstractFont_color; - @ObfuscatedName("s") + @ObfuscatedName("b") @Export("AbstractFont_alpha") static int AbstractFont_alpha; - @ObfuscatedName("j") + @ObfuscatedName("y") @Export("AbstractFont_justificationTotal") static int AbstractFont_justificationTotal; - @ObfuscatedName("w") + @ObfuscatedName("r") @Export("AbstractFont_justificationCurrent") static int AbstractFont_justificationCurrent; - @ObfuscatedName("v") + @ObfuscatedName("q") @Export("AbstractFont_random") static Random AbstractFont_random; - @ObfuscatedName("d") + @ObfuscatedName("g") @Export("AbstractFont_lines") static String[] AbstractFont_lines; - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("pixels") byte[][] pixels; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("advances") int[] advances; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("widths") int[] widths; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("heights") int[] heights; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("leftBearings") int[] leftBearings; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("topBearings") int[] topBearings; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("ascent") public int ascent; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("maxAscent") public int maxAscent; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("maxDescent") public int maxDescent; - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("kerning") byte[] kerning; static { - AbstractFont_strike = -1; // L: 23 - AbstractFont_underline = -1; // L: 24 - AbstractFont_previousShadow = -1; // L: 25 - AbstractFont_shadow = -1; // L: 26 - AbstractFont_previousColor = 0; // L: 27 - AbstractFont_color = 0; // L: 28 - AbstractFont_alpha = 256; // L: 29 - AbstractFont_justificationTotal = 0; // L: 30 - AbstractFont_justificationCurrent = 0; // L: 31 - AbstractFont_random = new Random(); // L: 32 - AbstractFont_lines = new String[100]; // L: 33 + AbstractFont_strike = -1; + AbstractFont_underline = -1; + AbstractFont_previousShadow = -1; + AbstractFont_shadow = -1; + AbstractFont_previousColor = 0; + AbstractFont_color = 0; + AbstractFont_alpha = 256; + AbstractFont_justificationTotal = 0; + AbstractFont_justificationCurrent = 0; + AbstractFont_random = new Random(); + AbstractFont_lines = new String[100]; } AbstractFont(byte[] var1, int[] var2, int[] var3, int[] var4, int[] var5, int[] var6, byte[][] var7) { this.pixels = new byte[256][]; this.ascent = 0; - this.leftBearings = var2; // L: 36 - this.topBearings = var3; // L: 37 - this.widths = var4; // L: 38 - this.heights = var5; // L: 39 - this.readMetrics(var1); // L: 40 - this.pixels = var7; // L: 41 - int var8 = Integer.MAX_VALUE; // L: 42 - int var9 = Integer.MIN_VALUE; // L: 43 + this.leftBearings = var2; + this.topBearings = var3; + this.widths = var4; + this.heights = var5; + this.readMetrics(var1); + this.pixels = var7; + int var8 = Integer.MAX_VALUE; + int var9 = Integer.MIN_VALUE; - for (int var10 = 0; var10 < 256; ++var10) { // L: 44 - if (this.topBearings[var10] < var8 && this.heights[var10] != 0) { // L: 45 + for (int var10 = 0; var10 < 256; ++var10) { + if (this.topBearings[var10] < var8 && this.heights[var10] != 0) { var8 = this.topBearings[var10]; } - if (this.topBearings[var10] + this.heights[var10] > var9) { // L: 46 + if (this.topBearings[var10] + this.heights[var10] > var9) { var9 = this.topBearings[var10] + this.heights[var10]; } } - this.maxAscent = this.ascent - var8; // L: 48 - this.maxDescent = var9 - this.ascent; // L: 49 - } // L: 50 + this.maxAscent = this.ascent - var8; + this.maxDescent = var9 - this.ascent; + } AbstractFont(byte[] var1) { - this.pixels = new byte[256][]; // L: 12 - this.ascent = 0; // L: 18 - this.readMetrics(var1); // L: 53 - } // L: 54 + this.pixels = new byte[256][]; + this.ascent = 0; + this.readMetrics(var1); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("drawGlyph") abstract void drawGlyph(byte[] var1, int var2, int var3, int var4, int var5, int var6); - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("drawGlyphAlpha") abstract void drawGlyphAlpha(byte[] var1, int var2, int var3, int var4, int var5, int var6, int var7); - @ObfuscatedName("k") + @ObfuscatedName("l") @Export("readMetrics") void readMetrics(byte[] var1) { - this.advances = new int[256]; // L: 57 + this.advances = new int[256]; int var2; - if (var1.length == 257) { // L: 58 - for (var2 = 0; var2 < this.advances.length; ++var2) { // L: 59 + if (var1.length == 257) { + for (var2 = 0; var2 < this.advances.length; ++var2) { this.advances[var2] = var1[var2] & 255; } - this.ascent = var1[256] & 255; // L: 60 + this.ascent = var1[256] & 255; } else { - var2 = 0; // L: 63 + var2 = 0; - for (int var3 = 0; var3 < 256; ++var3) { // L: 64 + for (int var3 = 0; var3 < 256; ++var3) { this.advances[var3] = var1[var2++] & 255; } - int[] var10 = new int[256]; // L: 65 - int[] var4 = new int[256]; // L: 66 + int[] var10 = new int[256]; + int[] var4 = new int[256]; int var5; - for (var5 = 0; var5 < 256; ++var5) { // L: 67 + for (var5 = 0; var5 < 256; ++var5) { var10[var5] = var1[var2++] & 255; } - for (var5 = 0; var5 < 256; ++var5) { // L: 68 + for (var5 = 0; var5 < 256; ++var5) { var4[var5] = var1[var2++] & 255; } - byte[][] var11 = new byte[256][]; // L: 69 + byte[][] var11 = new byte[256][]; int var8; - for (int var6 = 0; var6 < 256; ++var6) { // L: 70 - var11[var6] = new byte[var10[var6]]; // L: 71 - byte var7 = 0; // L: 72 + for (int var6 = 0; var6 < 256; ++var6) { + var11[var6] = new byte[var10[var6]]; + byte var7 = 0; - for (var8 = 0; var8 < var11[var6].length; ++var8) { // L: 73 - var7 += var1[var2++]; // L: 74 - var11[var6][var8] = var7; // L: 75 + for (var8 = 0; var8 < var11[var6].length; ++var8) { + var7 += var1[var2++]; + var11[var6][var8] = var7; } } - byte[][] var12 = new byte[256][]; // L: 78 + byte[][] var12 = new byte[256][]; int var13; - for (var13 = 0; var13 < 256; ++var13) { // L: 79 - var12[var13] = new byte[var10[var13]]; // L: 80 - byte var14 = 0; // L: 81 + for (var13 = 0; var13 < 256; ++var13) { + var12[var13] = new byte[var10[var13]]; + byte var14 = 0; - for (int var9 = 0; var9 < var12[var13].length; ++var9) { // L: 82 - var14 += var1[var2++]; // L: 83 - var12[var13][var9] = var14; // L: 84 + for (int var9 = 0; var9 < var12[var13].length; ++var9) { + var14 += var1[var2++]; + var12[var13][var9] = var14; } } - this.kerning = new byte[65536]; // L: 87 + this.kerning = new byte[65536]; - for (var13 = 0; var13 < 256; ++var13) { // L: 88 - if (var13 != 32 && var13 != 160) { // L: 89 - for (var8 = 0; var8 < 256; ++var8) { // L: 90 - if (var8 != 32 && var8 != 160) { // L: 91 - this.kerning[var8 + (var13 << 8)] = (byte)method5477(var11, var12, var4, this.advances, var10, var13, var8); // L: 92 + for (var13 = 0; var13 < 256; ++var13) { + if (var13 != 32 && var13 != 160) { + for (var8 = 0; var8 < 256; ++var8) { + if (var8 != 32 && var8 != 160) { + this.kerning[var8 + (var13 << 8)] = (byte)method5419(var11, var12, var4, this.advances, var10, var13, var8); } } } } - this.ascent = var4[32] + var10[32]; // L: 95 + this.ascent = var4[32] + var10[32]; } - } // L: 97 + } @ObfuscatedName("u") @Export("charWidth") int charWidth(char var1) { - if (var1 == 160) { // L: 122 + if (var1 == 160) { var1 = ' '; } - return this.advances[class219.charToByteCp1252(var1) & 255]; // L: 123 + return this.advances[Varps.charToByteCp1252(var1) & 255]; } - @ObfuscatedName("t") + @ObfuscatedName("e") @Export("stringWidth") public int stringWidth(String var1) { - if (var1 == null) { // L: 127 + if (var1 == null) { return 0; } else { - int var2 = -1; // L: 128 - int var3 = -1; // L: 129 - int var4 = 0; // L: 130 + int var2 = -1; + int var3 = -1; + int var4 = 0; - for (int var5 = 0; var5 < var1.length(); ++var5) { // L: 131 - char var6 = var1.charAt(var5); // L: 132 - if (var6 == '<') { // L: 133 - var2 = var5; // L: 134 + for (int var5 = 0; var5 < var1.length(); ++var5) { + char var6 = var1.charAt(var5); + if (var6 == '<') { + var2 = var5; } else { - if (var6 == '>' && var2 != -1) { // L: 137 - String var7 = var1.substring(var2 + 1, var5); // L: 138 - var2 = -1; // L: 139 - if (var7.equals("lt")) { // L: 140 + if (var6 == '>' && var2 != -1) { + String var7 = var1.substring(var2 + 1, var5); + var2 = -1; + if (var7.equals("lt")) { var6 = '<'; } else { - if (!var7.equals("gt")) { // L: 141 - if (var7.startsWith("img=")) { // L: 142 + if (!var7.equals("gt")) { + if (var7.startsWith("img=")) { try { - int var8 = ObjectSound.parseInt(var7.substring(4)); // L: 144 - var4 += AbstractFont_modIconSprites[var8].width; // L: 145 - var3 = -1; // L: 146 - } catch (Exception var10) { // L: 148 + int var8 = class279.parseInt(var7.substring(4)); + var4 += AbstractFont_modIconSprites[var8].width; + var3 = -1; + } catch (Exception var10) { } } continue; @@ -251,436 +251,436 @@ public abstract class AbstractFont extends Rasterizer2D { } } - if (var6 == 160) { // L: 153 + if (var6 == 160) { var6 = ' '; } - if (var2 == -1) { // L: 154 - var4 += this.advances[(char)(class219.charToByteCp1252(var6) & 255)]; // L: 155 - if (this.kerning != null && var3 != -1) { // L: 156 + if (var2 == -1) { + var4 += this.advances[(char)(Varps.charToByteCp1252(var6) & 255)]; + if (this.kerning != null && var3 != -1) { var4 += this.kerning[var6 + (var3 << 8)]; } - var3 = var6; // L: 157 + var3 = var6; } } } - return var4; // L: 160 + return var4; } } - @ObfuscatedName("e") + @ObfuscatedName("m") @Export("breakLines") public int breakLines(String var1, int[] var2, String[] var3) { - if (var1 == null) { // L: 164 + if (var1 == null) { return 0; } else { - int var4 = 0; // L: 165 - int var5 = 0; // L: 166 - StringBuilder var6 = new StringBuilder(100); // L: 167 - int var7 = -1; // L: 168 - int var8 = 0; // L: 169 - byte var9 = 0; // L: 170 - int var10 = -1; // L: 171 - char var11 = 0; // L: 172 - int var12 = 0; // L: 173 - int var13 = var1.length(); // L: 174 + int var4 = 0; + int var5 = 0; + StringBuilder var6 = new StringBuilder(100); + int var7 = -1; + int var8 = 0; + byte var9 = 0; + int var10 = -1; + char var11 = 0; + int var12 = 0; + int var13 = var1.length(); - for (int var14 = 0; var14 < var13; ++var14) { // L: 175 - char var15 = var1.charAt(var14); // L: 176 - if (var15 == '<') { // L: 177 - var10 = var14; // L: 178 + for (int var14 = 0; var14 < var13; ++var14) { + char var15 = var1.charAt(var14); + if (var15 == '<') { + var10 = var14; } else { - if (var15 == '>' && var10 != -1) { // L: 181 - String var16 = var1.substring(var10 + 1, var14); // L: 182 - var10 = -1; // L: 183 - var6.append('<'); // L: 184 - var6.append(var16); // L: 185 - var6.append('>'); // L: 186 - if (var16.equals("br")) { // L: 187 - var3[var12] = var6.toString().substring(var5, var6.length()); // L: 188 - ++var12; // L: 189 - var5 = var6.length(); // L: 190 - var4 = 0; // L: 191 - var7 = -1; // L: 192 - var11 = 0; // L: 193 - } else if (var16.equals("lt")) { // L: 195 - var4 += this.charWidth('<'); // L: 196 - if (this.kerning != null && var11 != -1) { // L: 197 + if (var15 == '>' && var10 != -1) { + String var16 = var1.substring(var10 + 1, var14); + var10 = -1; + var6.append('<'); + var6.append(var16); + var6.append('>'); + if (var16.equals("br")) { + var3[var12] = var6.toString().substring(var5, var6.length()); + ++var12; + var5 = var6.length(); + var4 = 0; + var7 = -1; + var11 = 0; + } else if (var16.equals("lt")) { + var4 += this.charWidth('<'); + if (this.kerning != null && var11 != -1) { var4 += this.kerning[(var11 << '\b') + 60]; } - var11 = '<'; // L: 198 - } else if (var16.equals("gt")) { // L: 200 - var4 += this.charWidth('>'); // L: 201 - if (this.kerning != null && var11 != -1) { // L: 202 + var11 = '<'; + } else if (var16.equals("gt")) { + var4 += this.charWidth('>'); + if (this.kerning != null && var11 != -1) { var4 += this.kerning[(var11 << '\b') + 62]; } - var11 = '>'; // L: 203 - } else if (var16.startsWith("img=")) { // L: 205 + var11 = '>'; + } else if (var16.startsWith("img=")) { try { - int var17 = ObjectSound.parseInt(var16.substring(4)); // L: 207 - var4 += AbstractFont_modIconSprites[var17].width; // L: 208 - var11 = 0; // L: 209 - } catch (Exception var20) { // L: 211 + int var17 = class279.parseInt(var16.substring(4)); + var4 += AbstractFont_modIconSprites[var17].width; + var11 = 0; + } catch (Exception var20) { } } - var15 = 0; // L: 213 + var15 = 0; } - if (var10 == -1) { // L: 215 - if (var15 != 0) { // L: 216 - var6.append(var15); // L: 217 - var4 += this.charWidth(var15); // L: 218 - if (this.kerning != null && var11 != -1) { // L: 219 + if (var10 == -1) { + if (var15 != 0) { + var6.append(var15); + var4 += this.charWidth(var15); + if (this.kerning != null && var11 != -1) { var4 += this.kerning[var15 + (var11 << '\b')]; } - var11 = var15; // L: 220 + var11 = var15; } - if (var15 == ' ') { // L: 222 - var7 = var6.length(); // L: 223 - var8 = var4; // L: 224 - var9 = 1; // L: 225 + if (var15 == ' ') { + var7 = var6.length(); + var8 = var4; + var9 = 1; } - if (var2 != null && var4 > var2[var12 < var2.length ? var12 : var2.length - 1] && var7 >= 0) { // L: 227 - var3[var12] = var6.toString().substring(var5, var7 - var9); // L: 228 - ++var12; // L: 229 - var5 = var7; // L: 230 - var7 = -1; // L: 231 - var4 -= var8; // L: 232 - var11 = 0; // L: 233 + if (var2 != null && var4 > var2[var12 < var2.length ? var12 : var2.length - 1] && var7 >= 0) { + var3[var12] = var6.toString().substring(var5, var7 - var9); + ++var12; + var5 = var7; + var7 = -1; + var4 -= var8; + var11 = 0; } - if (var15 == '-') { // L: 235 - var7 = var6.length(); // L: 236 - var8 = var4; // L: 237 - var9 = 0; // L: 238 + if (var15 == '-') { + var7 = var6.length(); + var8 = var4; + var9 = 0; } } } } - String var19 = var6.toString(); // L: 242 - if (var19.length() > var5) { // L: 243 + String var19 = var6.toString(); + if (var19.length() > var5) { var3[var12++] = var19.substring(var5, var19.length()); } - return var12; // L: 244 + return var12; } } - @ObfuscatedName("o") + @ObfuscatedName("c") @Export("lineWidth") public int lineWidth(String var1, int var2) { - int var3 = this.breakLines(var1, new int[]{var2}, AbstractFont_lines); // L: 248 - int var4 = 0; // L: 249 + int var3 = this.breakLines(var1, new int[]{var2}, AbstractFont_lines); + int var4 = 0; - for (int var5 = 0; var5 < var3; ++var5) { // L: 250 - int var6 = this.stringWidth(AbstractFont_lines[var5]); // L: 251 - if (var6 > var4) { // L: 252 + for (int var5 = 0; var5 < var3; ++var5) { + int var6 = this.stringWidth(AbstractFont_lines[var5]); + if (var6 > var4) { var4 = var6; } } - return var4; // L: 254 + return var4; } - @ObfuscatedName("n") + @ObfuscatedName("i") @Export("lineCount") public int lineCount(String var1, int var2) { - return this.breakLines(var1, new int[]{var2}, AbstractFont_lines); // L: 258 + return this.breakLines(var1, new int[]{var2}, AbstractFont_lines); } - @ObfuscatedName("p") + @ObfuscatedName("y") @Export("draw") public void draw(String var1, int var2, int var3, int var4, int var5) { - if (var1 != null) { // L: 279 - this.reset(var4, var5); // L: 280 - this.draw0(var1, var2, var3); // L: 281 + if (var1 != null) { + this.reset(var4, var5); + this.draw0(var1, var2, var3); } - } // L: 282 + } @ObfuscatedName("r") @Export("drawAlpha") public void drawAlpha(String var1, int var2, int var3, int var4, int var5, int var6) { - if (var1 != null) { // L: 285 - this.reset(var4, var5); // L: 286 - AbstractFont_alpha = var6; // L: 287 - this.draw0(var1, var2, var3); // L: 288 + if (var1 != null) { + this.reset(var4, var5); + AbstractFont_alpha = var6; + this.draw0(var1, var2, var3); } - } // L: 289 + } - @ObfuscatedName("y") + @ObfuscatedName("q") @Export("drawRightAligned") public void drawRightAligned(String var1, int var2, int var3, int var4, int var5) { - if (var1 != null) { // L: 292 - this.reset(var4, var5); // L: 293 - this.draw0(var1, var2 - this.stringWidth(var1), var3); // L: 294 + if (var1 != null) { + this.reset(var4, var5); + this.draw0(var1, var2 - this.stringWidth(var1), var3); } - } // L: 295 + } - @ObfuscatedName("s") + @ObfuscatedName("g") @Export("drawCentered") public void drawCentered(String var1, int var2, int var3, int var4, int var5) { - if (var1 != null) { // L: 298 - this.reset(var4, var5); // L: 299 - this.draw0(var1, var2 - this.stringWidth(var1) / 2, var3); // L: 300 + if (var1 != null) { + this.reset(var4, var5); + this.draw0(var1, var2 - this.stringWidth(var1) / 2, var3); } - } // L: 301 + } - @ObfuscatedName("j") + @ObfuscatedName("o") @Export("drawLines") public int drawLines(String var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10) { - if (var1 == null) { // L: 304 + if (var1 == null) { return 0; } else { - this.reset(var6, var7); // L: 305 - if (var10 == 0) { // L: 306 + this.reset(var6, var7); + if (var10 == 0) { var10 = this.ascent; } - int[] var11 = new int[]{var4}; // L: 307 - if (var5 < var10 + this.maxAscent + this.maxDescent && var5 < var10 + var10) { // L: 308 + int[] var11 = new int[]{var4}; + if (var5 < var10 + this.maxAscent + this.maxDescent && var5 < var10 + var10) { var11 = null; } - int var12 = this.breakLines(var1, var11, AbstractFont_lines); // L: 309 - if (var9 == 3 && var12 == 1) { // L: 311 + int var12 = this.breakLines(var1, var11, AbstractFont_lines); + if (var9 == 3 && var12 == 1) { var9 = 1; } int var13; int var14; - if (var9 == 0) { // L: 312 + if (var9 == 0) { var13 = var3 + this.maxAscent; - } else if (var9 == 1) { // L: 313 + } else if (var9 == 1) { var13 = var3 + (var5 - this.maxAscent - this.maxDescent - var10 * (var12 - 1)) / 2 + this.maxAscent; - } else if (var9 == 2) { // L: 314 + } else if (var9 == 2) { var13 = var3 + var5 - this.maxDescent - var10 * (var12 - 1); } else { - var14 = (var5 - this.maxAscent - this.maxDescent - var10 * (var12 - 1)) / (var12 + 1); // L: 316 - if (var14 < 0) { // L: 317 + var14 = (var5 - this.maxAscent - this.maxDescent - var10 * (var12 - 1)) / (var12 + 1); + if (var14 < 0) { var14 = 0; } - var13 = var3 + var14 + this.maxAscent; // L: 318 - var10 += var14; // L: 319 + var13 = var3 + var14 + this.maxAscent; + var10 += var14; } - for (var14 = 0; var14 < var12; ++var14) { // L: 321 + for (var14 = 0; var14 < var12; ++var14) { if (var8 == 0) { - this.draw0(AbstractFont_lines[var14], var2, var13); // L: 322 - } else if (var8 == 1) { // L: 323 + this.draw0(AbstractFont_lines[var14], var2, var13); + } else if (var8 == 1) { this.draw0(AbstractFont_lines[var14], var2 + (var4 - this.stringWidth(AbstractFont_lines[var14])) / 2, var13); - } else if (var8 == 2) { // L: 324 + } else if (var8 == 2) { this.draw0(AbstractFont_lines[var14], var2 + var4 - this.stringWidth(AbstractFont_lines[var14]), var13); - } else if (var14 == var12 - 1) { // L: 326 + } else if (var14 == var12 - 1) { this.draw0(AbstractFont_lines[var14], var2, var13); } else { - this.calculateLineJustification(AbstractFont_lines[var14], var4); // L: 328 - this.draw0(AbstractFont_lines[var14], var2, var13); // L: 329 - AbstractFont_justificationTotal = 0; // L: 330 + this.calculateLineJustification(AbstractFont_lines[var14], var4); + this.draw0(AbstractFont_lines[var14], var2, var13); + AbstractFont_justificationTotal = 0; } - var13 += var10; // L: 333 + var13 += var10; } - return var12; // L: 335 + return var12; } } - @ObfuscatedName("d") + @ObfuscatedName("an") @Export("drawCenteredWave") public void drawCenteredWave(String var1, int var2, int var3, int var4, int var5, int var6) { - if (var1 != null) { // L: 339 - this.reset(var4, var5); // L: 340 - int[] var7 = new int[var1.length()]; // L: 341 + if (var1 != null) { + this.reset(var4, var5); + int[] var7 = new int[var1.length()]; - for (int var8 = 0; var8 < var1.length(); ++var8) { // L: 342 + for (int var8 = 0; var8 < var1.length(); ++var8) { var7[var8] = (int)(Math.sin((double)var8 / 2.0D + (double)var6 / 5.0D) * 5.0D); } - this.drawWithOffsets0(var1, var2 - this.stringWidth(var1) / 2, var3, (int[])null, var7); // L: 343 + this.drawWithOffsets0(var1, var2 - this.stringWidth(var1) / 2, var3, (int[])null, var7); } - } // L: 344 + } - @ObfuscatedName("a") + @ObfuscatedName("aj") @Export("drawCenteredWave2") public void drawCenteredWave2(String var1, int var2, int var3, int var4, int var5, int var6) { - if (var1 != null) { // L: 347 - this.reset(var4, var5); // L: 348 - int[] var7 = new int[var1.length()]; // L: 349 - int[] var8 = new int[var1.length()]; // L: 350 + if (var1 != null) { + this.reset(var4, var5); + int[] var7 = new int[var1.length()]; + int[] var8 = new int[var1.length()]; - for (int var9 = 0; var9 < var1.length(); ++var9) { // L: 351 - var7[var9] = (int)(Math.sin((double)var9 / 5.0D + (double)var6 / 5.0D) * 5.0D); // L: 352 - var8[var9] = (int)(Math.sin((double)var9 / 3.0D + (double)var6 / 5.0D) * 5.0D); // L: 353 + for (int var9 = 0; var9 < var1.length(); ++var9) { + var7[var9] = (int)(Math.sin((double)var9 / 5.0D + (double)var6 / 5.0D) * 5.0D); + var8[var9] = (int)(Math.sin((double)var9 / 3.0D + (double)var6 / 5.0D) * 5.0D); } - this.drawWithOffsets0(var1, var2 - this.stringWidth(var1) / 2, var3, var7, var8); // L: 355 + this.drawWithOffsets0(var1, var2 - this.stringWidth(var1) / 2, var3, var7, var8); } - } // L: 356 + } - @ObfuscatedName("g") + @ObfuscatedName("ax") @Export("drawCenteredShake") public void drawCenteredShake(String var1, int var2, int var3, int var4, int var5, int var6, int var7) { - if (var1 != null) { // L: 359 - this.reset(var4, var5); // L: 360 - double var8 = 7.0D - (double)var7 / 8.0D; // L: 361 - if (var8 < 0.0D) { // L: 362 + if (var1 != null) { + this.reset(var4, var5); + double var8 = 7.0D - (double)var7 / 8.0D; + if (var8 < 0.0D) { var8 = 0.0D; } - int[] var10 = new int[var1.length()]; // L: 363 + int[] var10 = new int[var1.length()]; - for (int var11 = 0; var11 < var1.length(); ++var11) { // L: 364 + for (int var11 = 0; var11 < var1.length(); ++var11) { var10[var11] = (int)(Math.sin((double)var11 / 1.5D + (double)var6 / 1.0D) * var8); } - this.drawWithOffsets0(var1, var2 - this.stringWidth(var1) / 2, var3, (int[])null, var10); // L: 365 + this.drawWithOffsets0(var1, var2 - this.stringWidth(var1) / 2, var3, (int[])null, var10); } - } // L: 366 + } - @ObfuscatedName("h") + @ObfuscatedName("ag") @Export("drawRandomAlphaAndSpacing") public void drawRandomAlphaAndSpacing(String var1, int var2, int var3, int var4, int var5, int var6) { - if (var1 != null) { // L: 369 - this.reset(var4, var5); // L: 370 - AbstractFont_random.setSeed((long)var6); // L: 371 - AbstractFont_alpha = 192 + (AbstractFont_random.nextInt() & 31); // L: 372 - int[] var7 = new int[var1.length()]; // L: 373 - int var8 = 0; // L: 374 + if (var1 != null) { + this.reset(var4, var5); + AbstractFont_random.setSeed((long)var6); + AbstractFont_alpha = 192 + (AbstractFont_random.nextInt() & 31); + int[] var7 = new int[var1.length()]; + int var8 = 0; - for (int var9 = 0; var9 < var1.length(); ++var9) { // L: 375 - var7[var9] = var8; // L: 376 - if ((AbstractFont_random.nextInt() & 3) == 0) { // L: 377 + for (int var9 = 0; var9 < var1.length(); ++var9) { + var7[var9] = var8; + if ((AbstractFont_random.nextInt() & 3) == 0) { ++var8; } } - this.drawWithOffsets0(var1, var2, var3, var7, (int[])null); // L: 379 + this.drawWithOffsets0(var1, var2, var3, var7, (int[])null); } - } // L: 380 + } - @ObfuscatedName("ab") + @ObfuscatedName("au") @Export("reset") void reset(int var1, int var2) { - AbstractFont_strike = -1; // L: 383 - AbstractFont_underline = -1; // L: 384 - AbstractFont_previousShadow = var2; // L: 385 + AbstractFont_strike = -1; + AbstractFont_underline = -1; + AbstractFont_previousShadow = var2; AbstractFont_shadow = var2; - AbstractFont_previousColor = var1; // L: 386 + AbstractFont_previousColor = var1; AbstractFont_color = var1; - AbstractFont_alpha = 256; // L: 387 - AbstractFont_justificationTotal = 0; // L: 388 - AbstractFont_justificationCurrent = 0; // L: 389 - } // L: 390 + AbstractFont_alpha = 256; + AbstractFont_justificationTotal = 0; + AbstractFont_justificationCurrent = 0; + } - @ObfuscatedName("ac") + @ObfuscatedName("as") @Export("decodeTag") void decodeTag(String var1) { try { int var2; String var3; - if (var1.startsWith("col=")) { // L: 394 - var3 = var1.substring(4); // L: 396 - var2 = SecureRandomCallable.parseIntCustomRadix(var3, 16, true); // L: 398 - AbstractFont_color = var2; // L: 400 - } else if (var1.equals("/col")) { // L: 402 + if (var1.startsWith("col=")) { + var3 = var1.substring(4); + var2 = World.parseIntCustomRadix(var3, 16, true); + AbstractFont_color = var2; + } else if (var1.equals("/col")) { AbstractFont_color = AbstractFont_previousColor; - } else if (var1.startsWith("str=")) { // L: 403 - var3 = var1.substring(4); // L: 405 - var2 = SecureRandomCallable.parseIntCustomRadix(var3, 16, true); // L: 407 - AbstractFont_strike = var2; // L: 409 - } else if (var1.equals("str")) { // L: 411 + } else if (var1.startsWith("str=")) { + var3 = var1.substring(4); + var2 = World.parseIntCustomRadix(var3, 16, true); + AbstractFont_strike = var2; + } else if (var1.equals("str")) { AbstractFont_strike = 8388608; - } else if (var1.equals("/str")) { // L: 412 + } else if (var1.equals("/str")) { AbstractFont_strike = -1; - } else if (var1.startsWith("u=")) { // L: 413 - var3 = var1.substring(2); // L: 415 - var2 = SecureRandomCallable.parseIntCustomRadix(var3, 16, true); // L: 417 - AbstractFont_underline = var2; // L: 419 - } else if (var1.equals("u")) { // L: 421 + } else if (var1.startsWith("u=")) { + var3 = var1.substring(2); + var2 = World.parseIntCustomRadix(var3, 16, true); + AbstractFont_underline = var2; + } else if (var1.equals("u")) { AbstractFont_underline = 0; - } else if (var1.equals("/u")) { // L: 422 + } else if (var1.equals("/u")) { AbstractFont_underline = -1; - } else if (var1.startsWith("shad=")) { // L: 423 - var3 = var1.substring(5); // L: 425 - var2 = SecureRandomCallable.parseIntCustomRadix(var3, 16, true); // L: 427 - AbstractFont_shadow = var2; // L: 429 - } else if (var1.equals("shad")) { // L: 431 + } else if (var1.startsWith("shad=")) { + var3 = var1.substring(5); + var2 = World.parseIntCustomRadix(var3, 16, true); + AbstractFont_shadow = var2; + } else if (var1.equals("shad")) { AbstractFont_shadow = 0; - } else if (var1.equals("/shad")) { // L: 432 + } else if (var1.equals("/shad")) { AbstractFont_shadow = AbstractFont_previousShadow; } else if (var1.equals("br")) { - this.reset(AbstractFont_previousColor, AbstractFont_previousShadow); // L: 433 + this.reset(AbstractFont_previousColor, AbstractFont_previousShadow); } - } catch (Exception var5) { // L: 435 + } catch (Exception var5) { } - } // L: 436 + } - @ObfuscatedName("ao") + @ObfuscatedName("ae") @Export("calculateLineJustification") void calculateLineJustification(String var1, int var2) { - int var3 = 0; // L: 439 - boolean var4 = false; // L: 440 + int var3 = 0; + boolean var4 = false; - for (int var5 = 0; var5 < var1.length(); ++var5) { // L: 441 - char var6 = var1.charAt(var5); // L: 442 - if (var6 == '<') { // L: 443 + for (int var5 = 0; var5 < var1.length(); ++var5) { + char var6 = var1.charAt(var5); + if (var6 == '<') { var4 = true; - } else if (var6 == '>') { // L: 444 + } else if (var6 == '>') { var4 = false; - } else if (!var4 && var6 == ' ') { // L: 445 + } else if (!var4 && var6 == ' ') { ++var3; } } - if (var3 > 0) { // L: 447 + if (var3 > 0) { AbstractFont_justificationTotal = (var2 - this.stringWidth(var1) << 8) / var3; } - } // L: 448 + } - @ObfuscatedName("af") + @ObfuscatedName("ac") @Export("draw0") void draw0(String var1, int var2, int var3) { - var3 -= this.ascent; // L: 451 - int var4 = -1; // L: 452 - int var5 = -1; // L: 453 + var3 -= this.ascent; + int var4 = -1; + int var5 = -1; - for (int var6 = 0; var6 < var1.length(); ++var6) { // L: 454 - if (var1.charAt(var6) != 0) { // L: 455 - char var7 = (char)(class219.charToByteCp1252(var1.charAt(var6)) & 255); // L: 456 - if (var7 == '<') { // L: 457 - var4 = var6; // L: 458 + for (int var6 = 0; var6 < var1.length(); ++var6) { + if (var1.charAt(var6) != 0) { + char var7 = (char)(Varps.charToByteCp1252(var1.charAt(var6)) & 255); + if (var7 == '<') { + var4 = var6; } else { int var9; - if (var7 == '>' && var4 != -1) { // L: 461 - String var8 = var1.substring(var4 + 1, var6); // L: 462 - var4 = -1; // L: 463 - if (var8.equals("lt")) { // L: 464 + if (var7 == '>' && var4 != -1) { + String var8 = var1.substring(var4 + 1, var6); + var4 = -1; + if (var8.equals("lt")) { var7 = '<'; } else { - if (!var8.equals("gt")) { // L: 465 - if (var8.startsWith("img=")) { // L: 466 + if (!var8.equals("gt")) { + if (var8.startsWith("img=")) { try { - var9 = ObjectSound.parseInt(var8.substring(4)); // L: 468 - IndexedSprite var10 = AbstractFont_modIconSprites[var9]; // L: 469 - var10.drawAt(var2, var3 + this.ascent - var10.height); // L: 470 - var2 += var10.width; // L: 471 - var5 = -1; // L: 472 - } catch (Exception var14) { // L: 474 + var9 = class279.parseInt(var8.substring(4)); + IndexedSprite var10 = AbstractFont_modIconSprites[var9]; + var10.drawAt(var2, var3 + this.ascent - var10.height); + var2 += var10.width; + var5 = -1; + } catch (Exception var14) { } } else { - this.decodeTag(var8); // L: 478 + this.decodeTag(var8); } continue; } @@ -689,103 +689,103 @@ public abstract class AbstractFont extends Rasterizer2D { } } - if (var7 == 160) { // L: 482 + if (var7 == 160) { var7 = ' '; } - if (var4 == -1) { // L: 483 - if (this.kerning != null && var5 != -1) { // L: 484 + if (var4 == -1) { + if (this.kerning != null && var5 != -1) { var2 += this.kerning[var7 + (var5 << 8)]; } - int var12 = this.widths[var7]; // L: 485 - var9 = this.heights[var7]; // L: 486 - if (var7 != ' ') { // L: 487 - if (AbstractFont_alpha == 256) { // L: 488 - if (AbstractFont_shadow != -1) { // L: 489 + int var12 = this.widths[var7]; + var9 = this.heights[var7]; + if (var7 != ' ') { + if (AbstractFont_alpha == 256) { + if (AbstractFont_shadow != -1) { AbstractFont_drawGlyph(this.pixels[var7], var2 + this.leftBearings[var7] + 1, var3 + this.topBearings[var7] + 1, var12, var9, AbstractFont_shadow); } - this.drawGlyph(this.pixels[var7], var2 + this.leftBearings[var7], var3 + this.topBearings[var7], var12, var9, AbstractFont_color); // L: 490 + this.drawGlyph(this.pixels[var7], var2 + this.leftBearings[var7], var3 + this.topBearings[var7], var12, var9, AbstractFont_color); } else { - if (AbstractFont_shadow != -1) { // L: 493 + if (AbstractFont_shadow != -1) { AbstractFont_drawGlyphAlpha(this.pixels[var7], var2 + this.leftBearings[var7] + 1, var3 + this.topBearings[var7] + 1, var12, var9, AbstractFont_shadow, AbstractFont_alpha); } - this.drawGlyphAlpha(this.pixels[var7], var2 + this.leftBearings[var7], var3 + this.topBearings[var7], var12, var9, AbstractFont_color, AbstractFont_alpha); // L: 494 + this.drawGlyphAlpha(this.pixels[var7], var2 + this.leftBearings[var7], var3 + this.topBearings[var7], var12, var9, AbstractFont_color, AbstractFont_alpha); } - } else if (AbstractFont_justificationTotal > 0) { // L: 498 - AbstractFont_justificationCurrent += AbstractFont_justificationTotal; // L: 499 - var2 += AbstractFont_justificationCurrent >> 8; // L: 500 - AbstractFont_justificationCurrent &= 255; // L: 501 + } else if (AbstractFont_justificationTotal > 0) { + AbstractFont_justificationCurrent += AbstractFont_justificationTotal; + var2 += AbstractFont_justificationCurrent >> 8; + AbstractFont_justificationCurrent &= 255; } - int var13 = this.advances[var7]; // L: 504 - if (AbstractFont_strike != -1) { // L: 505 + int var13 = this.advances[var7]; + if (AbstractFont_strike != -1) { Rasterizer2D.Rasterizer2D_drawHorizontalLine(var2, var3 + (int)((double)this.ascent * 0.7D), var13, AbstractFont_strike); } - if (AbstractFont_underline != -1) { // L: 506 + if (AbstractFont_underline != -1) { Rasterizer2D.Rasterizer2D_drawHorizontalLine(var2, var3 + this.ascent + 1, var13, AbstractFont_underline); } - var2 += var13; // L: 507 - var5 = var7; // L: 508 + var2 += var13; + var5 = var7; } } } } - } // L: 511 + } - @ObfuscatedName("av") + @ObfuscatedName("ak") @Export("drawWithOffsets0") void drawWithOffsets0(String var1, int var2, int var3, int[] var4, int[] var5) { - var3 -= this.ascent; // L: 514 - int var6 = -1; // L: 515 - int var7 = -1; // L: 516 - int var8 = 0; // L: 517 + var3 -= this.ascent; + int var6 = -1; + int var7 = -1; + int var8 = 0; - for (int var9 = 0; var9 < var1.length(); ++var9) { // L: 518 - if (var1.charAt(var9) != 0) { // L: 519 - char var10 = (char)(class219.charToByteCp1252(var1.charAt(var9)) & 255); // L: 520 - if (var10 == '<') { // L: 521 - var6 = var9; // L: 522 + for (int var9 = 0; var9 < var1.length(); ++var9) { + if (var1.charAt(var9) != 0) { + char var10 = (char)(Varps.charToByteCp1252(var1.charAt(var9)) & 255); + if (var10 == '<') { + var6 = var9; } else { int var12; int var13; int var14; - if (var10 == '>' && var6 != -1) { // L: 525 - String var11 = var1.substring(var6 + 1, var9); // L: 526 - var6 = -1; // L: 527 - if (var11.equals("lt")) { // L: 528 + if (var10 == '>' && var6 != -1) { + String var11 = var1.substring(var6 + 1, var9); + var6 = -1; + if (var11.equals("lt")) { var10 = '<'; } else { - if (!var11.equals("gt")) { // L: 529 - if (var11.startsWith("img=")) { // L: 530 + if (!var11.equals("gt")) { + if (var11.startsWith("img=")) { try { - if (var4 != null) { // L: 533 + if (var4 != null) { var12 = var4[var8]; } else { - var12 = 0; // L: 534 + var12 = 0; } - if (var5 != null) { // L: 536 + if (var5 != null) { var13 = var5[var8]; } else { - var13 = 0; // L: 537 + var13 = 0; } - ++var8; // L: 538 - var14 = ObjectSound.parseInt(var11.substring(4)); // L: 539 - IndexedSprite var15 = AbstractFont_modIconSprites[var14]; // L: 540 - var15.drawAt(var12 + var2, var13 + (var3 + this.ascent - var15.height)); // L: 541 - var2 += var15.width; // L: 542 - var7 = -1; // L: 543 - } catch (Exception var19) { // L: 545 + ++var8; + var14 = class279.parseInt(var11.substring(4)); + IndexedSprite var15 = AbstractFont_modIconSprites[var14]; + var15.drawAt(var12 + var2, var13 + (var3 + this.ascent - var15.height)); + var2 += var15.width; + var7 = -1; + } catch (Exception var19) { } } else { - this.decodeTag(var11); // L: 549 + this.decodeTag(var11); } continue; } @@ -794,284 +794,284 @@ public abstract class AbstractFont extends Rasterizer2D { } } - if (var10 == 160) { // L: 553 + if (var10 == 160) { var10 = ' '; } - if (var6 == -1) { // L: 554 - if (this.kerning != null && var7 != -1) { // L: 555 + if (var6 == -1) { + if (this.kerning != null && var7 != -1) { var2 += this.kerning[var10 + (var7 << 8)]; } - int var17 = this.widths[var10]; // L: 556 - var12 = this.heights[var10]; // L: 557 - if (var4 != null) { // L: 559 + int var17 = this.widths[var10]; + var12 = this.heights[var10]; + if (var4 != null) { var13 = var4[var8]; } else { - var13 = 0; // L: 560 + var13 = 0; } - if (var5 != null) { // L: 562 + if (var5 != null) { var14 = var5[var8]; } else { - var14 = 0; // L: 563 + var14 = 0; } - ++var8; // L: 564 - if (var10 != ' ') { // L: 565 - if (AbstractFont_alpha == 256) { // L: 566 - if (AbstractFont_shadow != -1) { // L: 567 + ++var8; + if (var10 != ' ') { + if (AbstractFont_alpha == 256) { + if (AbstractFont_shadow != -1) { AbstractFont_drawGlyph(this.pixels[var10], var13 + var2 + this.leftBearings[var10] + 1, var3 + var14 + this.topBearings[var10] + 1, var17, var12, AbstractFont_shadow); } - this.drawGlyph(this.pixels[var10], var13 + var2 + this.leftBearings[var10], var3 + var14 + this.topBearings[var10], var17, var12, AbstractFont_color); // L: 568 + this.drawGlyph(this.pixels[var10], var13 + var2 + this.leftBearings[var10], var3 + var14 + this.topBearings[var10], var17, var12, AbstractFont_color); } else { - if (AbstractFont_shadow != -1) { // L: 571 + if (AbstractFont_shadow != -1) { AbstractFont_drawGlyphAlpha(this.pixels[var10], var13 + var2 + this.leftBearings[var10] + 1, var3 + var14 + this.topBearings[var10] + 1, var17, var12, AbstractFont_shadow, AbstractFont_alpha); } - this.drawGlyphAlpha(this.pixels[var10], var13 + var2 + this.leftBearings[var10], var3 + var14 + this.topBearings[var10], var17, var12, AbstractFont_color, AbstractFont_alpha); // L: 572 + this.drawGlyphAlpha(this.pixels[var10], var13 + var2 + this.leftBearings[var10], var3 + var14 + this.topBearings[var10], var17, var12, AbstractFont_color, AbstractFont_alpha); } - } else if (AbstractFont_justificationTotal > 0) { // L: 576 - AbstractFont_justificationCurrent += AbstractFont_justificationTotal; // L: 577 - var2 += AbstractFont_justificationCurrent >> 8; // L: 578 - AbstractFont_justificationCurrent &= 255; // L: 579 + } else if (AbstractFont_justificationTotal > 0) { + AbstractFont_justificationCurrent += AbstractFont_justificationTotal; + var2 += AbstractFont_justificationCurrent >> 8; + AbstractFont_justificationCurrent &= 255; } - int var18 = this.advances[var10]; // L: 582 - if (AbstractFont_strike != -1) { // L: 583 + int var18 = this.advances[var10]; + if (AbstractFont_strike != -1) { Rasterizer2D.Rasterizer2D_drawHorizontalLine(var2, var3 + (int)((double)this.ascent * 0.7D), var18, AbstractFont_strike); } - if (AbstractFont_underline != -1) { // L: 584 + if (AbstractFont_underline != -1) { Rasterizer2D.Rasterizer2D_drawHorizontalLine(var2, var3 + this.ascent, var18, AbstractFont_underline); } - var2 += var18; // L: 585 - var7 = var10; // L: 586 + var2 += var18; + var7 = var10; } } } } - } // L: 589 + } - @ObfuscatedName("c") - static int method5477(byte[][] var0, byte[][] var1, int[] var2, int[] var3, int[] var4, int var5, int var6) { - int var7 = var2[var5]; // L: 100 - int var8 = var7 + var4[var5]; // L: 101 - int var9 = var2[var6]; // L: 102 - int var10 = var9 + var4[var6]; // L: 103 - int var11 = var7; // L: 104 - if (var9 > var7) { // L: 105 + @ObfuscatedName("z") + static int method5419(byte[][] var0, byte[][] var1, int[] var2, int[] var3, int[] var4, int var5, int var6) { + int var7 = var2[var5]; + int var8 = var7 + var4[var5]; + int var9 = var2[var6]; + int var10 = var9 + var4[var6]; + int var11 = var7; + if (var9 > var7) { var11 = var9; } - int var12 = var8; // L: 106 - if (var10 < var8) { // L: 107 + int var12 = var8; + if (var10 < var8) { var12 = var10; } - int var13 = var3[var5]; // L: 108 - if (var3[var6] < var13) { // L: 109 + int var13 = var3[var5]; + if (var3[var6] < var13) { var13 = var3[var6]; } - byte[] var14 = var1[var5]; // L: 110 - byte[] var15 = var0[var6]; // L: 111 - int var16 = var11 - var7; // L: 112 - int var17 = var11 - var9; // L: 113 + byte[] var14 = var1[var5]; + byte[] var15 = var0[var6]; + int var16 = var11 - var7; + int var17 = var11 - var9; - for (int var18 = var11; var18 < var12; ++var18) { // L: 114 - int var19 = var14[var16++] + var15[var17++]; // L: 115 - if (var19 < var13) { // L: 116 + for (int var18 = var11; var18 < var12; ++var18) { + int var19 = var14[var16++] + var15[var17++]; + if (var19 < var13) { var13 = var19; } } - return -var13; // L: 118 + return -var13; } - @ObfuscatedName("x") + @ObfuscatedName("f") @Export("escapeBrackets") public static String escapeBrackets(String var0) { - int var1 = var0.length(); // L: 262 - int var2 = 0; // L: 263 + int var1 = var0.length(); + int var2 = 0; - for (int var3 = 0; var3 < var1; ++var3) { // L: 264 - char var4 = var0.charAt(var3); // L: 265 + for (int var3 = 0; var3 < var1; ++var3) { + char var4 = var0.charAt(var3); if (var4 == '<' || var4 == '>') { - var2 += 3; // L: 266 + var2 += 3; } } - StringBuilder var6 = new StringBuilder(var1 + var2); // L: 268 + StringBuilder var6 = new StringBuilder(var1 + var2); - for (int var7 = 0; var7 < var1; ++var7) { // L: 269 - char var5 = var0.charAt(var7); // L: 270 + for (int var7 = 0; var7 < var1; ++var7) { + char var5 = var0.charAt(var7); if (var5 == '<') { - var6.append(""); // L: 271 - } else if (var5 == '>') { // L: 272 + var6.append(""); + } else if (var5 == '>') { var6.append(""); } else { - var6.append(var5); // L: 273 + var6.append(var5); } } - return var6.toString(); // L: 275 + return var6.toString(); } - @ObfuscatedName("ar") + @ObfuscatedName("av") @Export("AbstractFont_drawGlyph") static void AbstractFont_drawGlyph(byte[] var0, int var1, int var2, int var3, int var4, int var5) { - int var6 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; // L: 595 - int var7 = Rasterizer2D.Rasterizer2D_width - var3; // L: 596 - int var8 = 0; // L: 597 - int var9 = 0; // L: 598 + int var6 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; + int var7 = Rasterizer2D.Rasterizer2D_width - var3; + int var8 = 0; + int var9 = 0; int var10; - if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { // L: 599 - var10 = Rasterizer2D.Rasterizer2D_yClipStart - var2; // L: 600 - var4 -= var10; // L: 601 - var2 = Rasterizer2D.Rasterizer2D_yClipStart; // L: 602 - var9 += var3 * var10; // L: 603 - var6 += var10 * Rasterizer2D.Rasterizer2D_width; // L: 604 + if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { + var10 = Rasterizer2D.Rasterizer2D_yClipStart - var2; + var4 -= var10; + var2 = Rasterizer2D.Rasterizer2D_yClipStart; + var9 += var3 * var10; + var6 += var10 * Rasterizer2D.Rasterizer2D_width; } - if (var2 + var4 > Rasterizer2D.Rasterizer2D_yClipEnd) { // L: 606 + if (var2 + var4 > Rasterizer2D.Rasterizer2D_yClipEnd) { var4 -= var2 + var4 - Rasterizer2D.Rasterizer2D_yClipEnd; } - if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { // L: 607 - var10 = Rasterizer2D.Rasterizer2D_xClipStart - var1; // L: 608 - var3 -= var10; // L: 609 - var1 = Rasterizer2D.Rasterizer2D_xClipStart; // L: 610 - var9 += var10; // L: 611 - var6 += var10; // L: 612 - var8 += var10; // L: 613 - var7 += var10; // L: 614 + if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { + var10 = Rasterizer2D.Rasterizer2D_xClipStart - var1; + var3 -= var10; + var1 = Rasterizer2D.Rasterizer2D_xClipStart; + var9 += var10; + var6 += var10; + var8 += var10; + var7 += var10; } - if (var3 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 616 - var10 = var3 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; // L: 617 - var3 -= var10; // L: 618 - var8 += var10; // L: 619 - var7 += var10; // L: 620 + if (var3 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { + var10 = var3 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; + var3 -= var10; + var8 += var10; + var7 += var10; } - if (var3 > 0 && var4 > 0) { // L: 622 - AbstractFont_placeGlyph(Rasterizer2D.Rasterizer2D_pixels, var0, var5, var9, var6, var3, var4, var7, var8); // L: 623 + if (var3 > 0 && var4 > 0) { + AbstractFont_placeGlyph(Rasterizer2D.Rasterizer2D_pixels, var0, var5, var9, var6, var3, var4, var7, var8); } - } // L: 624 + } - @ObfuscatedName("ay") + @ObfuscatedName("aq") @Export("AbstractFont_placeGlyph") static void AbstractFont_placeGlyph(int[] var0, byte[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { - int var9 = -(var5 >> 2); // L: 627 - var5 = -(var5 & 3); // L: 628 + int var9 = -(var5 >> 2); + var5 = -(var5 & 3); - for (int var10 = -var6; var10 < 0; ++var10) { // L: 629 + for (int var10 = -var6; var10 < 0; ++var10) { int var11; - for (var11 = var9; var11 < 0; ++var11) { // L: 630 - if (var1[var3++] != 0) { // L: 631 + for (var11 = var9; var11 < 0; ++var11) { + if (var1[var3++] != 0) { var0[var4++] = var2; } else { - ++var4; // L: 632 + ++var4; } - if (var1[var3++] != 0) { // L: 633 + if (var1[var3++] != 0) { var0[var4++] = var2; } else { - ++var4; // L: 634 + ++var4; } - if (var1[var3++] != 0) { // L: 635 + if (var1[var3++] != 0) { var0[var4++] = var2; } else { - ++var4; // L: 636 + ++var4; } - if (var1[var3++] != 0) { // L: 637 + if (var1[var3++] != 0) { var0[var4++] = var2; } else { - ++var4; // L: 638 + ++var4; } } - for (var11 = var5; var11 < 0; ++var11) { // L: 640 - if (var1[var3++] != 0) { // L: 641 + for (var11 = var5; var11 < 0; ++var11) { + if (var1[var3++] != 0) { var0[var4++] = var2; } else { - ++var4; // L: 642 + ++var4; } } - var4 += var7; // L: 644 - var3 += var8; // L: 645 + var4 += var7; + var3 += var8; } - } // L: 647 + } @ObfuscatedName("ah") @Export("AbstractFont_drawGlyphAlpha") static void AbstractFont_drawGlyphAlpha(byte[] var0, int var1, int var2, int var3, int var4, int var5, int var6) { - int var7 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; // L: 650 - int var8 = Rasterizer2D.Rasterizer2D_width - var3; // L: 651 - int var9 = 0; // L: 652 - int var10 = 0; // L: 653 + int var7 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; + int var8 = Rasterizer2D.Rasterizer2D_width - var3; + int var9 = 0; + int var10 = 0; int var11; - if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { // L: 654 - var11 = Rasterizer2D.Rasterizer2D_yClipStart - var2; // L: 655 - var4 -= var11; // L: 656 - var2 = Rasterizer2D.Rasterizer2D_yClipStart; // L: 657 - var10 += var3 * var11; // L: 658 - var7 += var11 * Rasterizer2D.Rasterizer2D_width; // L: 659 + if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { + var11 = Rasterizer2D.Rasterizer2D_yClipStart - var2; + var4 -= var11; + var2 = Rasterizer2D.Rasterizer2D_yClipStart; + var10 += var3 * var11; + var7 += var11 * Rasterizer2D.Rasterizer2D_width; } - if (var2 + var4 > Rasterizer2D.Rasterizer2D_yClipEnd) { // L: 661 + if (var2 + var4 > Rasterizer2D.Rasterizer2D_yClipEnd) { var4 -= var2 + var4 - Rasterizer2D.Rasterizer2D_yClipEnd; } - if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { // L: 662 - var11 = Rasterizer2D.Rasterizer2D_xClipStart - var1; // L: 663 - var3 -= var11; // L: 664 - var1 = Rasterizer2D.Rasterizer2D_xClipStart; // L: 665 - var10 += var11; // L: 666 - var7 += var11; // L: 667 - var9 += var11; // L: 668 - var8 += var11; // L: 669 + if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { + var11 = Rasterizer2D.Rasterizer2D_xClipStart - var1; + var3 -= var11; + var1 = Rasterizer2D.Rasterizer2D_xClipStart; + var10 += var11; + var7 += var11; + var9 += var11; + var8 += var11; } - if (var3 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 671 - var11 = var3 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; // L: 672 - var3 -= var11; // L: 673 - var9 += var11; // L: 674 - var8 += var11; // L: 675 + if (var3 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { + var11 = var3 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; + var3 -= var11; + var9 += var11; + var8 += var11; } - if (var3 > 0 && var4 > 0) { // L: 677 - AbstractFont_placeGlyphAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var5, var10, var7, var3, var4, var8, var9, var6); // L: 678 + if (var3 > 0 && var4 > 0) { + AbstractFont_placeGlyphAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var5, var10, var7, var3, var4, var8, var9, var6); } - } // L: 679 + } - @ObfuscatedName("az") + @ObfuscatedName("am") @Export("AbstractFont_placeGlyphAlpha") static void AbstractFont_placeGlyphAlpha(int[] var0, byte[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9) { - var2 = ((var2 & 65280) * var9 & 16711680) + (var9 * (var2 & 16711935) & -16711936) >> 8; // L: 682 - var9 = 256 - var9; // L: 683 + var2 = ((var2 & 65280) * var9 & 16711680) + (var9 * (var2 & 16711935) & -16711936) >> 8; + var9 = 256 - var9; - for (int var10 = -var6; var10 < 0; ++var10) { // L: 684 - for (int var11 = -var5; var11 < 0; ++var11) { // L: 685 - if (var1[var3++] != 0) { // L: 686 - int var12 = var0[var4]; // L: 687 - var0[var4++] = (((var12 & 65280) * var9 & 16711680) + ((var12 & 16711935) * var9 & -16711936) >> 8) + var2; // L: 688 + for (int var10 = -var6; var10 < 0; ++var10) { + for (int var11 = -var5; var11 < 0; ++var11) { + if (var1[var3++] != 0) { + int var12 = var0[var4]; + var0[var4++] = (((var12 & 65280) * var9 & 16711680) + ((var12 & 16711935) * var9 & -16711936) >> 8) + var2; } else { - ++var4; // L: 690 + ++var4; } } - var4 += var7; // L: 692 - var3 += var8; // L: 693 + var4 += var7; + var3 += var8; } - } // L: 695 + } } diff --git a/runescape-client/src/main/java/AbstractRasterProvider.java b/runescape-client/src/main/java/AbstractRasterProvider.java index 4011b7a2a5..c6b90c9a0f 100644 --- a/runescape-client/src/main/java/AbstractRasterProvider.java +++ b/runescape-client/src/main/java/AbstractRasterProvider.java @@ -4,56 +4,51 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ly") +@ObfuscatedName("lu") @Implements("AbstractRasterProvider") public abstract class AbstractRasterProvider { - @ObfuscatedName("rq") - @ObfuscatedGetter( - intValue = 18535251 - ) - static int field3890; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("pixels") public int[] pixels; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -1124244957 + intValue = -1111630003 ) @Export("width") public int width; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 1951124213 + intValue = -1276876573 ) @Export("height") public int height; protected AbstractRasterProvider() { - } // L: 8 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "-1818523436" + garbageValue = "1343964035" ) @Export("drawFull") public abstract void drawFull(int var1, int var2); - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "868198553" + descriptor = "(IIIIB)V", + garbageValue = "-8" ) @Export("draw") public abstract void draw(int var1, int var2, int var3, int var4); - @ObfuscatedName("a") + @ObfuscatedName("q") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1020738827" + garbageValue = "1374263653" ) @Export("apply") public final void apply() { - Rasterizer2D.Rasterizer2D_replace(this.pixels, this.width, this.height); // L: 11 - } // L: 12 + Rasterizer2D.Rasterizer2D_replace(this.pixels, this.width, this.height); + } } diff --git a/runescape-client/src/main/java/AbstractSocket.java b/runescape-client/src/main/java/AbstractSocket.java index 98fb22d2ac..9d56f88873 100644 --- a/runescape-client/src/main/java/AbstractSocket.java +++ b/runescape-client/src/main/java/AbstractSocket.java @@ -4,57 +4,70 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lv") +@ObfuscatedName("lr") @Implements("AbstractSocket") public abstract class AbstractSocket { protected AbstractSocket() { - } // L: 7 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1983450651" + descriptor = "(B)V", + garbageValue = "-10" ) @Export("close") public abstract void close(); - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "1" + garbageValue = "0" ) @Export("readUnsignedByte") public abstract int readUnsignedByte() throws IOException; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "933186835" + garbageValue = "1974658106" ) @Export("available") public abstract int available() throws IOException; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-916126565" + descriptor = "(IB)Z", + garbageValue = "-7" ) @Export("isAvailable") public abstract boolean isAvailable(int var1) throws IOException; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "([BIII)I", - garbageValue = "1049423117" + descriptor = "([BIIB)I", + garbageValue = "98" ) @Export("read") public abstract int read(byte[] var1, int var2, int var3) throws IOException; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( descriptor = "([BIII)V", - garbageValue = "1456512196" + garbageValue = "-2028715299" ) @Export("write") public abstract void write(byte[] var1, int var2, int var3) throws IOException; + + @ObfuscatedName("lp") + @ObfuscatedSignature( + descriptor = "([BIB)V", + garbageValue = "66" + ) + static void method5846(byte[] var0, int var1) { + if (Client.randomDatData == null) { + Client.randomDatData = new byte[24]; + } + + class311.writeRandomDat(var0, var1, Client.randomDatData, 0, 24); + } } diff --git a/runescape-client/src/main/java/AbstractSound.java b/runescape-client/src/main/java/AbstractSound.java index 10a4aec25f..a9a2be0a55 100644 --- a/runescape-client/src/main/java/AbstractSound.java +++ b/runescape-client/src/main/java/AbstractSound.java @@ -2,13 +2,13 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("dn") +@ObfuscatedName("dg") @Implements("AbstractSound") public abstract class AbstractSound extends Node { - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("position") int position; AbstractSound() { - } // L: 10 + } } diff --git a/runescape-client/src/main/java/AbstractUserComparator.java b/runescape-client/src/main/java/AbstractUserComparator.java index 7862f132c9..4b48b51c5e 100644 --- a/runescape-client/src/main/java/AbstractUserComparator.java +++ b/runescape-client/src/main/java/AbstractUserComparator.java @@ -5,48 +5,54 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jz") +@ObfuscatedName("jr") @Implements("AbstractUserComparator") public abstract class AbstractUserComparator implements Comparator { - @ObfuscatedName("r") - @ObfuscatedGetter( - intValue = -905985897 + @ObfuscatedName("sn") + @ObfuscatedSignature( + descriptor = "Lf;" ) - @Export("cacheGamebuild") - static int cacheGamebuild; - @ObfuscatedName("b") + @Export("grandExchangeEvents") + static GrandExchangeEvents grandExchangeEvents; + @ObfuscatedName("lr") + @ObfuscatedGetter( + intValue = 1436616639 + ) + @Export("menuX") + static int menuX; + @ObfuscatedName("v") @Export("nextComparator") Comparator nextComparator; protected AbstractUserComparator() { - } // L: 8 + } - @ObfuscatedName("u") + @ObfuscatedName("p") @ObfuscatedSignature( descriptor = "(Ljava/util/Comparator;I)V", - garbageValue = "1982456763" + garbageValue = "118963424" ) @Export("addComparator") final void addComparator(Comparator var1) { - if (this.nextComparator == null) { // L: 11 - this.nextComparator = var1; // L: 12 - } else if (this.nextComparator instanceof AbstractUserComparator) { // L: 14 - ((AbstractUserComparator)this.nextComparator).addComparator(var1); // L: 15 + if (this.nextComparator == null) { + this.nextComparator = var1; + } else if (this.nextComparator instanceof AbstractUserComparator) { + ((AbstractUserComparator)this.nextComparator).addComparator(var1); } - } // L: 17 + } - @ObfuscatedName("t") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "(Ljh;Ljh;S)I", - garbageValue = "-16147" + descriptor = "(Lju;Lju;I)I", + garbageValue = "-204379903" ) @Export("compareUser") protected final int compareUser(User var1, User var2) { - return this.nextComparator == null ? 0 : this.nextComparator.compare(var1, var2); // L: 20 21 + return this.nextComparator == null ? 0 : this.nextComparator.compare(var1, var2); } public boolean equals(Object var1) { - return super.equals(var1); // L: 25 + return super.equals(var1); } } diff --git a/runescape-client/src/main/java/AbstractWorldMapData.java b/runescape-client/src/main/java/AbstractWorldMapData.java index ef8522ade7..474fcd131b 100644 --- a/runescape-client/src/main/java/AbstractWorldMapData.java +++ b/runescape-client/src/main/java/AbstractWorldMapData.java @@ -4,199 +4,201 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("av") +@ObfuscatedName("au") @Implements("AbstractWorldMapData") public abstract class AbstractWorldMapData { - @ObfuscatedName("ge") - @ObfuscatedGetter( - intValue = -1795954439 + @ObfuscatedName("qy") + @ObfuscatedSignature( + descriptor = "Ldp;" ) - static int field198; - @ObfuscatedName("f") + @Export("pcmPlayer0") + static PcmPlayer pcmPlayer0; + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 256317953 + intValue = 1285877760 ) @Export("regionXLow") int regionXLow; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -985241173 + intValue = 447666752 ) @Export("regionYLow") int regionYLow; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1287028281 + intValue = -2091565261 ) @Export("regionX") int regionX; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -1006344441 + intValue = 756401157 ) @Export("regionY") int regionY; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -1534728703 + intValue = -1229904609 ) @Export("minPlane") int minPlane; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -622931363 + intValue = 1992018845 ) @Export("planes") int planes; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -1787627211 + intValue = -1735670735 ) @Export("groupId") int groupId; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 953400525 + intValue = 789122507 ) @Export("fileId") int fileId; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("floorUnderlayIds") short[][][] floorUnderlayIds; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("floorOverlayIds") short[][][] floorOverlayIds; + @ObfuscatedName("u") + byte[][][] field178; @ObfuscatedName("e") - byte[][][] field196; - @ObfuscatedName("o") - byte[][][] field187; - @ObfuscatedName("n") + byte[][][] field177; + @ObfuscatedName("m") @ObfuscatedSignature( - descriptor = "[[[[Laz;" + descriptor = "[[[[Lak;" ) @Export("decorations") WorldMapDecoration[][][][] decorations; - @ObfuscatedName("x") - boolean field202; - @ObfuscatedName("p") - boolean field200; + @ObfuscatedName("c") + boolean field190; + @ObfuscatedName("i") + boolean field191; AbstractWorldMapData() { - this.groupId = -1; // L: 14 - this.fileId = -1; // L: 15 + this.groupId = -1; + this.fileId = -1; new LinkedList(); - this.field202 = false; // L: 26 - this.field200 = false; // L: 27 - } // L: 29 + this.field190 = false; + this.field191 = false; + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-1024222647" + descriptor = "(Lkj;I)V", + garbageValue = "1878970684" ) @Export("readGeography") abstract void readGeography(Buffer var1); - @ObfuscatedName("e") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "15" + descriptor = "(I)Z", + garbageValue = "-1422551454" ) @Export("isFullyLoaded") boolean isFullyLoaded() { - return this.field202 && this.field200; // L: 32 + return this.field190 && this.field191; } - @ObfuscatedName("o") + @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "(Liw;B)V", - garbageValue = "-18" + descriptor = "(Lib;I)V", + garbageValue = "-1133283231" ) @Export("loadGeography") void loadGeography(AbstractArchive var1) { - if (!this.isFullyLoaded()) { // L: 36 - byte[] var2 = var1.takeFile(this.groupId, this.fileId); // L: 37 - if (var2 != null) { // L: 38 - this.readGeography(new Buffer(var2)); // L: 39 - this.field202 = true; // L: 40 - this.field200 = true; // L: 41 + if (!this.isFullyLoaded()) { + byte[] var2 = var1.takeFile(this.groupId, this.fileId); + if (var2 != null) { + this.readGeography(new Buffer(var2)); + this.field190 = true; + this.field191 = true; } } - } // L: 43 + } - @ObfuscatedName("n") + @ObfuscatedName("e") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-246521616" + descriptor = "(B)V", + garbageValue = "8" ) @Export("reset") void reset() { - this.floorUnderlayIds = null; // L: 46 - this.floorOverlayIds = null; // L: 47 - this.field196 = null; // L: 48 - this.field187 = null; // L: 49 - this.decorations = null; // L: 50 - this.field202 = false; // L: 51 - this.field200 = false; // L: 52 - } // L: 53 + this.floorUnderlayIds = null; + this.floorOverlayIds = null; + this.field178 = null; + this.field177 = null; + this.decorations = null; + this.field190 = false; + this.field191 = false; + } - @ObfuscatedName("x") + @ObfuscatedName("m") @ObfuscatedSignature( - descriptor = "(IILkb;I)V", - garbageValue = "1303493953" + descriptor = "(IILkj;I)V", + garbageValue = "-734499768" ) @Export("readTile") void readTile(int var1, int var2, Buffer var3) { - int var4 = var3.readUnsignedByte(); // L: 56 - if (var4 != 0) { // L: 57 - if ((var4 & 1) != 0) { // L: 60 - this.method337(var1, var2, var3, var4); // L: 61 + int var4 = var3.readUnsignedByte(); + if (var4 != 0) { + if ((var4 & 1) != 0) { + this.method306(var1, var2, var3, var4); } else { - this.method343(var1, var2, var3, var4); // L: 64 + this.method314(var1, var2, var3, var4); } } - } // L: 58 66 + } - @ObfuscatedName("p") + @ObfuscatedName("c") @ObfuscatedSignature( - descriptor = "(IILkb;IB)V", - garbageValue = "96" + descriptor = "(IILkj;II)V", + garbageValue = "732495103" ) - void method337(int var1, int var2, Buffer var3, int var4) { - boolean var5 = (var4 & 2) != 0; // L: 69 - if (var5) { // L: 70 - this.floorOverlayIds[0][var1][var2] = (short)var3.readUnsignedByte(); // L: 71 + void method306(int var1, int var2, Buffer var3, int var4) { + boolean var5 = (var4 & 2) != 0; + if (var5) { + this.floorOverlayIds[0][var1][var2] = (short)var3.readUnsignedByte(); } - this.floorUnderlayIds[0][var1][var2] = (short)var3.readUnsignedByte(); // L: 73 - } // L: 74 + this.floorUnderlayIds[0][var1][var2] = (short)var3.readUnsignedByte(); + } - @ObfuscatedName("r") + @ObfuscatedName("i") @ObfuscatedSignature( - descriptor = "(IILkb;II)V", - garbageValue = "1646413468" + descriptor = "(IILkj;II)V", + garbageValue = "-550064835" ) - void method343(int var1, int var2, Buffer var3, int var4) { - int var5 = ((var4 & 24) >> 3) + 1; // L: 77 - boolean var6 = (var4 & 2) != 0; // L: 78 - boolean var7 = (var4 & 4) != 0; // L: 79 - this.floorUnderlayIds[0][var1][var2] = (short)var3.readUnsignedByte(); // L: 80 + void method314(int var1, int var2, Buffer var3, int var4) { + int var5 = ((var4 & 24) >> 3) + 1; + boolean var6 = (var4 & 2) != 0; + boolean var7 = (var4 & 4) != 0; + this.floorUnderlayIds[0][var1][var2] = (short)var3.readUnsignedByte(); int var8; int var9; int var11; - if (var6) { // L: 81 - var8 = var3.readUnsignedByte(); // L: 82 + if (var6) { + var8 = var3.readUnsignedByte(); - for (var9 = 0; var9 < var8; ++var9) { // L: 83 + for (var9 = 0; var9 < var8; ++var9) { int var14 = var3.readUnsignedByte(); if (var14 != 0) { this.floorOverlayIds[var9][var1][var2] = (short)var14; var11 = var3.readUnsignedByte(); - this.field196[var9][var1][var2] = (byte)(var11 >> 2); - this.field187[var9][var1][var2] = (byte)(var11 & 3); + this.field178[var9][var1][var2] = (byte)(var11 >> 2); + this.field177[var9][var1][var2] = (byte)(var11 & 3); } } } @@ -208,7 +210,7 @@ public abstract class AbstractWorldMapData { WorldMapDecoration[] var10 = this.decorations[var8][var1][var2] = new WorldMapDecoration[var9]; for (var11 = 0; var11 < var9; ++var11) { - int var12 = var3.method5851(); + int var12 = var3.method5559(); int var13 = var3.readUnsignedByte(); var10[var11] = new WorldMapDecoration(var12, var13 >> 2, var13 & 3); } @@ -216,152 +218,86 @@ public abstract class AbstractWorldMapData { } } - } // L: 107 + } - @ObfuscatedName("y") + @ObfuscatedName("f") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "3" + descriptor = "(I)I", + garbageValue = "1451993074" ) @Export("getRegionX") int getRegionX() { return this.regionX; } - @ObfuscatedName("s") + @ObfuscatedName("y") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "66" + descriptor = "(S)I", + garbageValue = "11679" ) @Export("getRegionY") int getRegionY() { - return this.regionY; // L: 116 + return this.regionY; } - @ObfuscatedName("f") + @ObfuscatedName("o") @ObfuscatedSignature( - descriptor = "(II)Ljk;", - garbageValue = "1003321139" + descriptor = "(ILcs;ZI)I", + garbageValue = "-970565394" ) - @Export("ItemDefinition_get") - public static ItemDefinition ItemDefinition_get(int var0) { - ItemDefinition var1 = (ItemDefinition)ItemDefinition.ItemDefinition_cached.get((long)var0); // L: 84 - if (var1 != null) { // L: 85 - return var1; - } else { - byte[] var2 = ItemDefinition.ItemDefinition_archive.takeFile(10, var0); // L: 86 - var1 = new ItemDefinition(); // L: 87 - var1.id = var0; // L: 88 - if (var2 != null) { // L: 89 - var1.decode(new Buffer(var2)); - } - - var1.post(); // L: 90 - if (var1.noteTemplate != -1) { // L: 91 - var1.genCert(ItemDefinition_get(var1.noteTemplate), ItemDefinition_get(var1.note)); - } - - if (var1.notedId != -1) { // L: 92 - var1.genBought(ItemDefinition_get(var1.notedId), ItemDefinition_get(var1.unnotedId)); - } - - if (var1.placeholderTemplate != -1) { // L: 93 - var1.genPlaceholder(ItemDefinition_get(var1.placeholderTemplate), ItemDefinition_get(var1.placeholder)); - } - - if (!SoundCache.ItemDefinition_inMembersWorld && var1.isMembersOnly) { // L: 94 - var1.name = "Members object"; // L: 95 - var1.isTradable = false; // L: 96 - var1.groundActions = null; // L: 97 - var1.inventoryActions = null; // L: 98 - var1.shiftClickIndex = -1; // L: 99 - var1.team = 0; // L: 100 - if (var1.params != null) { // L: 101 - boolean var3 = false; // L: 102 - - for (Node var4 = var1.params.first(); var4 != null; var4 = var1.params.next()) { // L: 103 - ParamDefinition var5 = TileItem.getParamDefinition((int)var4.key); // L: 104 - if (var5.autoDisable) { // L: 105 - var4.remove(); - } else { - var3 = true; // L: 106 - } - } - - if (!var3) { // L: 108 - var1.params = null; - } + static int method328(int var0, Script var1, boolean var2) { + Widget var3 = CollisionMap.getWidget(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + if (var0 == ScriptOpcodes.IF_GETTARGETMASK) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = ServerPacket.Widget_unpackTargetMask(FaceNormal.getWidgetFlags(var3)); + return 1; + } else if (var0 != ScriptOpcodes.IF_GETOP) { + if (var0 == ScriptOpcodes.IF_GETOPBASE) { + if (var3.dataText == null) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + } else { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3.dataText; } - } - ItemDefinition.ItemDefinition_cached.put(var1, (long)var0); // L: 111 - return var1; // L: 112 - } - } - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(CI)Z", - garbageValue = "-47710105" - ) - @Export("isCharAlphabetic") - public static boolean isCharAlphabetic(char var0) { - return var0 >= 'A' && var0 <= 'Z' || var0 >= 'a' && var0 <= 'z'; // L: 143 - } - - @ObfuscatedName("fh") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;ZI)V", - garbageValue = "-1953135448" - ) - @Export("drawLoadingMessage") - static final void drawLoadingMessage(String var0, boolean var1) { - if (Client.showLoadingMessages) { // L: 4415 - byte var2 = 4; // L: 4416 - int var3 = var2 + 6; // L: 4417 - int var4 = var2 + 6; // L: 4418 - int var5 = WorldMapCacheName.fontPlain12.lineWidth(var0, 250); // L: 4419 - int var6 = WorldMapCacheName.fontPlain12.lineCount(var0, 250) * 13; // L: 4420 - Rasterizer2D.Rasterizer2D_fillRectangle(var3 - var2, var4 - var2, var2 + var5 + var2, var2 + var2 + var6, 0); // L: 4421 - Rasterizer2D.Rasterizer2D_drawRectangle(var3 - var2, var4 - var2, var2 + var2 + var5, var2 + var6 + var2, 16777215); // L: 4422 - WorldMapCacheName.fontPlain12.drawLines(var0, var3, var4, var5, var6, 16777215, -1, 1, 1, 0); // L: 4423 - int var7 = var3 - var2; // L: 4424 - int var8 = var4 - var2; // L: 4425 - int var9 = var2 + var2 + var5; // L: 4426 - int var10 = var2 + var6 + var2; // L: 4427 - - int var11; - for (var11 = 0; var11 < Client.rootWidgetCount; ++var11) { // L: 4429 - if (Client.rootWidgetXs[var11] + Client.rootWidgetWidths[var11] > var7 && Client.rootWidgetXs[var11] < var9 + var7 && Client.rootWidgetHeights[var11] + Client.rootWidgetYs[var11] > var8 && Client.rootWidgetYs[var11] < var10 + var8) { // L: 4430 - Client.field834[var11] = true; - } - } - - if (var1) { // L: 4433 - class22.rasterProvider.drawFull(0, 0); // L: 4434 + return 1; } else { - var11 = var3; // L: 4437 - int var12 = var4; // L: 4438 - int var13 = var5; // L: 4439 - int var14 = var6; // L: 4440 - - for (int var15 = 0; var15 < Client.rootWidgetCount; ++var15) { // L: 4442 - if (Client.rootWidgetWidths[var15] + Client.rootWidgetXs[var15] > var11 && Client.rootWidgetXs[var15] < var11 + var13 && Client.rootWidgetHeights[var15] + Client.rootWidgetYs[var15] > var12 && Client.rootWidgetYs[var15] < var14 + var12) { // L: 4443 - Client.field758[var15] = true; - } - } + return 2; + } + } else { + int var4 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + --var4; + if (var3.actions != null && var4 < var3.actions.length && var3.actions[var4] != null) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3.actions[var4]; + } else { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; } + return 1; } - } // L: 4447 + } - @ObfuscatedName("hi") + @ObfuscatedName("ky") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-16" + descriptor = "(IIIILlm;Lho;I)V", + garbageValue = "-942051498" ) - static void method375() { - Client.menuOptionsCount = 0; // L: 7729 - Client.isMenuOpen = false; // L: 7730 - } // L: 7731 + @Export("worldToMinimap") + static final void worldToMinimap(int var0, int var1, int var2, int var3, Sprite var4, SpriteMask var5) { + int var6 = var3 * var3 + var2 * var2; + if (var6 > 4225 && var6 < 90000) { + int var7 = Client.camAngleY & 2047; + int var8 = Rasterizer3D.Rasterizer3D_sine[var7]; + int var9 = Rasterizer3D.Rasterizer3D_cosine[var7]; + int var10 = var9 * var2 + var3 * var8 >> 16; + int var11 = var3 * var9 - var8 * var2 >> 16; + double var12 = Math.atan2((double)var10, (double)var11); + int var14 = var5.width / 2 - 25; + int var15 = (int)(Math.sin(var12) * (double)var14); + int var16 = (int)(Math.cos(var12) * (double)var14); + byte var17 = 20; + ViewportMouse.redHintArrowSprite.method6189(var15 + (var0 + var5.width / 2 - var17 / 2), var5.height / 2 + var1 - var17 / 2 - var16 - 10, var17, var17, 15, 15, var12, 256); + } else { + class25.drawSpriteOnMinimap(var0, var1, var2, var3, var4, var5); + } + + } } diff --git a/runescape-client/src/main/java/AbstractWorldMapIcon.java b/runescape-client/src/main/java/AbstractWorldMapIcon.java index c0809d439f..ace1328bac 100644 --- a/runescape-client/src/main/java/AbstractWorldMapIcon.java +++ b/runescape-client/src/main/java/AbstractWorldMapIcon.java @@ -3,197 +3,870 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("am") +@ObfuscatedName("ap") @Implements("AbstractWorldMapIcon") public abstract class AbstractWorldMapIcon { - @ObfuscatedName("si") - @ObfuscatedGetter( - intValue = -2092651161 - ) - @Export("foundItemIndex") - static int foundItemIndex; - @ObfuscatedName("gx") + @ObfuscatedName("hq") @ObfuscatedSignature( - descriptor = "[Lle;" + descriptor = "[Llm;" ) - @Export("mapSceneSprites") - static IndexedSprite[] mapSceneSprites; - @ObfuscatedName("k") + @Export("headIconHintSprites") + static Sprite[] headIconHintSprites; + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Lhw;" + descriptor = "Lhs;" ) @Export("coord2") public final Coord coord2; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "Lhw;" + descriptor = "Lhs;" ) @Export("coord1") public final Coord coord1; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = 1323341995 + intValue = 1559041635 ) @Export("screenX") int screenX; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = 276589985 + intValue = 314803859 ) @Export("screenY") int screenY; @ObfuscatedSignature( - descriptor = "(Lhw;Lhw;)V" + descriptor = "(Lhs;Lhs;)V" ) AbstractWorldMapIcon(Coord var1, Coord var2) { - this.coord1 = var1; // L: 13 - this.coord2 = var2; // L: 14 - } // L: 15 + this.coord1 = var1; + this.coord2 = var2; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "24" + descriptor = "(I)I", + garbageValue = "-359753179" ) @Export("getElement") public abstract int getElement(); - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(I)Lai;", - garbageValue = "-669051823" + descriptor = "(I)Lah;", + garbageValue = "1889474780" ) @Export("getLabel") abstract WorldMapLabel getLabel(); - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1627026836" + descriptor = "(B)I", + garbageValue = "-79" ) @Export("getSubWidth") abstract int getSubWidth(); - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "190840278" + garbageValue = "1082591682" ) @Export("getSubHeight") abstract int getSubHeight(); - @ObfuscatedName("s") + @ObfuscatedName("q") @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "24" + descriptor = "(III)Z", + garbageValue = "8588195" ) @Export("fitsScreen") boolean fitsScreen(int var1, int var2) { - if (this.elementFitsScreen(var1, var2)) { // L: 18 - return true; // L: 19 + if (this.elementFitsScreen(var1, var2)) { + return true; } else { - return this.labelFitsScreen(var1, var2); // L: 21 + return this.labelFitsScreen(var1, var2); } } - @ObfuscatedName("j") + @ObfuscatedName("g") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "50327739" + garbageValue = "1161567228" ) @Export("hasValidElement") boolean hasValidElement() { - return this.getElement() >= 0; // L: 33 + return this.getElement() >= 0; } - @ObfuscatedName("d") + @ObfuscatedName("o") @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "0" + descriptor = "(III)Z", + garbageValue = "762931724" ) @Export("elementFitsScreen") boolean elementFitsScreen(int var1, int var2) { - if (!this.hasValidElement()) { // L: 37 + if (!this.hasValidElement()) { return false; } else { - WorldMapElement var3 = class194.WorldMapElement_get(this.getElement()); // L: 38 - int var4 = this.getSubWidth(); // L: 39 - int var5 = this.getSubHeight(); // L: 40 - switch(var3.horizontalAlignment.value) { // L: 41 + WorldMapElement var3 = UserComparator10.WorldMapElement_get(this.getElement()); + int var4 = this.getSubWidth(); + int var5 = this.getSubHeight(); + switch(var3.horizontalAlignment.value) { case 0: - if (var1 >= this.screenX && var1 < var4 + this.screenX) { // L: 49 + if (var1 < this.screenX || var1 >= var4 + this.screenX) { + return false; + } + break; + case 1: + if (var1 >= this.screenX - var4 / 2 && var1 <= var4 / 2 + this.screenX) { break; } return false; - case 1: - if (var1 <= this.screenX - var4 || var1 > this.screenX) { // L: 44 - return false; - } - break; case 2: - if (var1 < this.screenX - var4 / 2 || var1 > var4 / 2 + this.screenX) { // L: 54 + if (var1 <= this.screenX - var4 || var1 > this.screenX) { return false; } } - switch(var3.verticalAlignment.value) { // L: 58 + switch(var3.verticalAlignment.value) { case 0: - if (var2 <= this.screenY - var5 || var2 > this.screenY) { // L: 71 + if (var2 < this.screenY || var2 >= var5 + this.screenY) { return false; } break; case 1: - if (var2 < this.screenY - var5 / 2 || var2 > var5 / 2 + this.screenY) { // L: 66 + if (var2 <= this.screenY - var5 || var2 > this.screenY) { return false; } break; case 2: - if (var2 < this.screenY || var2 >= var5 + this.screenY) { // L: 61 + if (var2 < this.screenY - var5 / 2 || var2 > var5 / 2 + this.screenY) { return false; } } - return true; // L: 75 + return true; } } - @ObfuscatedName("a") + @ObfuscatedName("an") @ObfuscatedSignature( descriptor = "(III)Z", - garbageValue = "290939531" + garbageValue = "-373903296" ) @Export("labelFitsScreen") boolean labelFitsScreen(int var1, int var2) { - WorldMapLabel var3 = this.getLabel(); // L: 79 - if (var3 == null) { // L: 80 - return false; // L: 81 - } else if (var1 >= this.screenX - var3.width / 2 && var1 <= var3.width / 2 + this.screenX) { // L: 83 - return var2 >= this.screenY && var2 <= var3.height + this.screenY; // L: 84 + WorldMapLabel var3 = this.getLabel(); + if (var3 == null) { + return false; + } else if (var1 >= this.screenX - var3.width / 2 && var1 <= var3.width / 2 + this.screenX) { + return var2 >= this.screenY && var2 <= var3.height + this.screenY; } else { - return false; // L: 85 + return false; } } - @ObfuscatedName("m") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(CLgb;I)I", - garbageValue = "-816252921" + descriptor = "(IB)Ljb;", + garbageValue = "5" ) - @Export("lowercaseChar") - static int lowercaseChar(char var0, Language var1) { - int var2 = var0 << 4; // L: 104 - if (Character.isUpperCase(var0) || Character.isTitleCase(var0)) { // L: 105 - var0 = Character.toLowerCase(var0); // L: 106 - var2 = (var0 << 4) + 1; // L: 107 + @Export("StructDefinition_getStructDefinition") + public static StructDefinition StructDefinition_getStructDefinition(int var0) { + StructDefinition var1 = (StructDefinition)StructDefinition.StructDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = StructDefinition.StructDefinition_archive.takeFile(34, var0); + var1 = new StructDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); + } + + var1.postDecode(); + StructDefinition.StructDefinition_cached.put(var1, (long)var0); + return var1; + } + } + + @ObfuscatedName("n") + static boolean method657(long var0) { + return (int)(var0 >>> 16 & 1L) == 1; + } + + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "339234172" + ) + @Export("Login_promptCredentials") + static void Login_promptCredentials(boolean var0) { + Login.Login_response1 = ""; + Login.Login_response2 = "Enter your username/email & password."; + Login.Login_response3 = ""; + Login.loginIndex = 2; + if (var0) { + Login.Login_password = ""; } - if (var0 == 241 && var1 == Language.Language_ES) { // L: 109 - var2 = 1762; + class219.method4009(); + if (Client.Login_isUsernameRemembered && Login.Login_username != null && Login.Login_username.length() > 0) { + Login.currentLoginField = 1; + } else { + Login.currentLoginField = 0; } - return var2; // L: 110 + } + + @ObfuscatedName("am") + @ObfuscatedSignature( + descriptor = "(ILcs;ZI)I", + garbageValue = "-1273056667" + ) + static int method656(int var0, Script var1, boolean var2) { + if (var0 == ScriptOpcodes.LOGOUT) { + Client.logoutTimer = 250; + return 1; + } else if (var0 != 5631 && var0 != 5633) { + if (var0 == 5632) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 26; + return 1; + } else { + return 2; + } + } else { + Interpreter.Interpreter_stringStackSize -= 2; + return 1; + } + } + + @ObfuscatedName("hj") + @ObfuscatedSignature( + descriptor = "(Lcx;IIIIII)V", + garbageValue = "-970580745" + ) + @Export("drawActor2d") + static final void drawActor2d(Actor var0, int var1, int var2, int var3, int var4, int var5) { + if (var0 != null && var0.isVisible()) { + if (var0 instanceof NPC) { + NPCDefinition var6 = ((NPC)var0).definition; + if (var6.transforms != null) { + var6 = var6.transform(); + } + + if (var6 == null) { + return; + } + } + + int var75 = Players.Players_count; + int[] var7 = Players.Players_indices; + byte var8 = 0; + if (var1 < var75 && var0.playerCycle == Client.cycle && class3.method42((Player)var0)) { + Player var9 = (Player)var0; + if (var1 < var75) { + GrandExchangeEvents.method144(var0, var0.defaultHeight + 15); + AbstractFont var10 = (AbstractFont)Client.fontsMap.get(FontName.FontName_plain12); + byte var11 = 9; + var10.drawCentered(var9.username.getName(), var2 + Client.viewportTempX, var3 + Client.viewportTempY - var11, 16777215, 0); + var8 = 18; + } + } + + int var76 = -2; + int var15; + int var22; + int var23; + if (!var0.healthBars.method4840()) { + GrandExchangeEvents.method144(var0, var0.defaultHeight + 15); + + for (HealthBar var87 = (HealthBar)var0.healthBars.last(); var87 != null; var87 = (HealthBar)var0.healthBars.previous()) { + HealthBarUpdate var79 = var87.get(Client.cycle); + if (var79 == null) { + if (var87.isEmpty()) { + var87.remove(); + } + } else { + HealthBarDefinition var80 = var87.definition; + Sprite var13 = var80.getBackSprite(); + Sprite var81 = var80.getFrontSprite(); + int var82 = 0; + if (var13 != null && var81 != null) { + if (var80.widthPadding * 2 < var81.subWidth) { + var82 = var80.widthPadding; + } + + var15 = var81.subWidth - var82 * 2; + } else { + var15 = var80.width; + } + + int var17 = 255; + boolean var83 = true; + int var84 = Client.cycle - var79.cycle; + int var85 = var15 * var79.health2 / var80.width; + int var86; + int var93; + if (var79.cycleOffset > var84) { + var86 = var80.field3307 == 0 ? 0 : var80.field3307 * (var84 / var80.field3307); + var22 = var15 * var79.health / var80.width; + var93 = var86 * (var85 - var22) / var79.cycleOffset + var22; + } else { + var93 = var85; + var86 = var79.cycleOffset + var80.int5 - var84; + if (var80.int3 >= 0) { + var17 = (var86 << 8) / (var80.int5 - var80.int3); + } + } + + if (var79.health2 > 0 && var93 < 1) { + var93 = 1; + } + + if (var13 != null && var81 != null) { + if (var93 == var15) { + var93 += var82 * 2; + } else { + var93 += var82; + } + + var86 = var13.subHeight; + var76 += var86; + var22 = var2 + Client.viewportTempX - (var15 >> 1); + var23 = var3 + Client.viewportTempY - var76; + var22 -= var82; + if (var17 >= 0 && var17 < 255) { + var13.drawTransAt(var22, var23, var17); + Rasterizer2D.Rasterizer2D_expandClip(var22, var23, var93 + var22, var23 + var86); + var81.drawTransAt(var22, var23, var17); + } else { + var13.drawTransBgAt(var22, var23); + Rasterizer2D.Rasterizer2D_expandClip(var22, var23, var93 + var22, var86 + var23); + var81.drawTransBgAt(var22, var23); + } + + Rasterizer2D.Rasterizer2D_setClip(var2, var3, var2 + var4, var3 + var5); + var76 += 2; + } else { + var76 += 5; + if (Client.viewportTempX > -1) { + var86 = var2 + Client.viewportTempX - (var15 >> 1); + var22 = var3 + Client.viewportTempY - var76; + Rasterizer2D.Rasterizer2D_fillRectangle(var86, var22, var93, 5, 65280); + Rasterizer2D.Rasterizer2D_fillRectangle(var86 + var93, var22, var15 - var93, 5, 16711680); + } + + var76 += 2; + } + } + } + } + + if (var76 == -2) { + var76 += 7; + } + + var76 += var8; + if (var1 < var75) { + Player var88 = (Player)var0; + if (var88.isHidden) { + return; + } + + if (var88.headIconPk != -1 || var88.headIconPrayer != -1) { + GrandExchangeEvents.method144(var0, var0.defaultHeight + 15); + if (Client.viewportTempX > -1) { + if (var88.headIconPk != -1) { + var76 += 25; + Message.headIconPkSprites[var88.headIconPk].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - var76); + } + + if (var88.headIconPrayer != -1) { + var76 += 25; + Client.headIconPrayerSprites[var88.headIconPrayer].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - var76); + } + } + } + + if (var1 >= 0 && Client.hintArrowType == 10 && var7[var1] == Client.hintArrowPlayerIndex) { + GrandExchangeEvents.method144(var0, var0.defaultHeight + 15); + if (Client.viewportTempX > -1) { + var76 += headIconHintSprites[1].subHeight; + headIconHintSprites[1].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - var76); + } + } + } else { + NPCDefinition var89 = ((NPC)var0).definition; + if (var89.transforms != null) { + var89 = var89.transform(); + } + + if (var89.headIconPrayer >= 0 && var89.headIconPrayer < Client.headIconPrayerSprites.length) { + GrandExchangeEvents.method144(var0, var0.defaultHeight + 15); + if (Client.viewportTempX > -1) { + Client.headIconPrayerSprites[var89.headIconPrayer].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - 30); + } + } + + if (Client.hintArrowType == 1 && Client.npcIndices[var1 - var75] == Client.hintArrowNpcIndex && Client.cycle % 20 < 10) { + GrandExchangeEvents.method144(var0, var0.defaultHeight + 15); + if (Client.viewportTempX > -1) { + headIconHintSprites[0].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - 28); + } + } + } + + if (var0.overheadText != null && (var1 >= var75 || !var0.field953 && (Client.publicChatMode == 4 || !var0.isAutoChatting && (Client.publicChatMode == 0 || Client.publicChatMode == 3 || Client.publicChatMode == 1 && ((Player)var0).isFriend())))) { + GrandExchangeEvents.method144(var0, var0.defaultHeight); + if (Client.viewportTempX > -1 && Client.overheadTextCount < Client.overheadTextLimit) { + Client.overheadTextXOffsets[Client.overheadTextCount] = GrandExchangeOfferTotalQuantityComparator.fontBold12.stringWidth(var0.overheadText) / 2; + Client.overheadTextAscents[Client.overheadTextCount] = GrandExchangeOfferTotalQuantityComparator.fontBold12.ascent; + Client.overheadTextXs[Client.overheadTextCount] = Client.viewportTempX; + Client.overheadTextYs[Client.overheadTextCount] = Client.viewportTempY; + Client.overheadTextColors[Client.overheadTextCount] = var0.overheadTextColor; + Client.overheadTextEffects[Client.overheadTextCount] = var0.overheadTextEffect; + Client.overheadTextCyclesRemaining[Client.overheadTextCount] = var0.overheadTextCyclesRemaining; + Client.overheadText[Client.overheadTextCount] = var0.overheadText; + ++Client.overheadTextCount; + } + } + + for (int var77 = 0; var77 < 4; ++var77) { + int var90 = var0.hitSplatCycles[var77]; + int var12 = var0.hitSplatTypes[var77]; + HitSplatDefinition var91 = null; + int var14 = 0; + if (var12 >= 0) { + if (var90 <= Client.cycle) { + continue; + } + + var91 = class198.method3697(var0.hitSplatTypes[var77]); + var14 = var91.field3364; + if (var91 != null && var91.transforms != null) { + var91 = var91.transform(); + if (var91 == null) { + var0.hitSplatCycles[var77] = -1; + continue; + } + } + } else if (var90 < 0) { + continue; + } + + var15 = var0.hitSplatTypes2[var77]; + HitSplatDefinition var16 = null; + if (var15 >= 0) { + var16 = class198.method3697(var15); + if (var16 != null && var16.transforms != null) { + var16 = var16.transform(); + } + } + + if (var90 - var14 <= Client.cycle) { + if (var91 == null) { + var0.hitSplatCycles[var77] = -1; + } else { + GrandExchangeEvents.method144(var0, var0.defaultHeight / 2); + if (Client.viewportTempX > -1) { + if (var77 == 1) { + Client.viewportTempY -= 20; + } + + if (var77 == 2) { + Client.viewportTempX -= 15; + Client.viewportTempY -= 10; + } + + if (var77 == 3) { + Client.viewportTempX += 15; + Client.viewportTempY -= 10; + } + + Sprite var18 = null; + Sprite var19 = null; + Sprite var20 = null; + Sprite var21 = null; + var22 = 0; + var23 = 0; + int var24 = 0; + int var25 = 0; + int var26 = 0; + int var27 = 0; + int var28 = 0; + int var29 = 0; + Sprite var30 = null; + Sprite var31 = null; + Sprite var32 = null; + Sprite var33 = null; + int var34 = 0; + int var35 = 0; + int var36 = 0; + int var37 = 0; + int var38 = 0; + int var39 = 0; + int var40 = 0; + int var41 = 0; + int var42 = 0; + var18 = var91.method4583(); + int var43; + if (var18 != null) { + var22 = var18.subWidth; + var43 = var18.subHeight; + if (var43 > var42) { + var42 = var43; + } + + var26 = var18.xOffset; + } + + var19 = var91.method4578(); + if (var19 != null) { + var23 = var19.subWidth; + var43 = var19.subHeight; + if (var43 > var42) { + var42 = var43; + } + + var27 = var19.xOffset; + } + + var20 = var91.method4587(); + if (var20 != null) { + var24 = var20.subWidth; + var43 = var20.subHeight; + if (var43 > var42) { + var42 = var43; + } + + var28 = var20.xOffset; + } + + var21 = var91.method4585(); + if (var21 != null) { + var25 = var21.subWidth; + var43 = var21.subHeight; + if (var43 > var42) { + var42 = var43; + } + + var29 = var21.xOffset; + } + + if (var16 != null) { + var30 = var16.method4583(); + if (var30 != null) { + var34 = var30.subWidth; + var43 = var30.subHeight; + if (var43 > var42) { + var42 = var43; + } + + var38 = var30.xOffset; + } + + var31 = var16.method4578(); + if (var31 != null) { + var35 = var31.subWidth; + var43 = var31.subHeight; + if (var43 > var42) { + var42 = var43; + } + + var39 = var31.xOffset; + } + + var32 = var16.method4587(); + if (var32 != null) { + var36 = var32.subWidth; + var43 = var32.subHeight; + if (var43 > var42) { + var42 = var43; + } + + var40 = var32.xOffset; + } + + var33 = var16.method4585(); + if (var33 != null) { + var37 = var33.subWidth; + var43 = var33.subHeight; + if (var43 > var42) { + var42 = var43; + } + + var41 = var33.xOffset; + } + } + + Font var78 = var91.getFont(); + if (var78 == null) { + var78 = class297.fontPlain11; + } + + Font var44; + if (var16 != null) { + var44 = var16.getFont(); + if (var44 == null) { + var44 = class297.fontPlain11; + } + } else { + var44 = class297.fontPlain11; + } + + String var45 = null; + String var46 = null; + boolean var47 = false; + int var48 = 0; + var45 = var91.getString(var0.hitSplatValues[var77]); + int var92 = var78.stringWidth(var45); + if (var16 != null) { + var46 = var16.getString(var0.hitSplatValues2[var77]); + var48 = var44.stringWidth(var46); + } + + int var49 = 0; + int var50 = 0; + if (var23 > 0) { + if (var20 == null && var21 == null) { + var49 = 1; + } else { + var49 = var92 / var23 + 1; + } + } + + if (var16 != null && var35 > 0) { + if (var32 == null && var33 == null) { + var50 = 1; + } else { + var50 = var48 / var35 + 1; + } + } + + int var51 = 0; + int var52 = var51; + if (var22 > 0) { + var51 += var22; + } + + var51 += 2; + int var53 = var51; + if (var24 > 0) { + var51 += var24; + } + + int var54 = var51; + int var55 = var51; + int var56; + if (var23 > 0) { + var56 = var23 * var49; + var51 += var56; + var55 += (var56 - var92) / 2; + } else { + var51 += var92; + } + + var56 = var51; + if (var25 > 0) { + var51 += var25; + } + + int var57 = 0; + int var58 = 0; + int var59 = 0; + int var60 = 0; + int var61 = 0; + int var62; + if (var16 != null) { + var51 += 2; + var57 = var51; + if (var34 > 0) { + var51 += var34; + } + + var51 += 2; + var58 = var51; + if (var36 > 0) { + var51 += var36; + } + + var59 = var51; + var61 = var51; + if (var35 > 0) { + var62 = var50 * var35; + var51 += var62; + var61 += (var62 - var48) / 2; + } else { + var51 += var48; + } + + var60 = var51; + if (var37 > 0) { + var51 += var37; + } + } + + var62 = var0.hitSplatCycles[var77] - Client.cycle; + int var63 = var91.field3377 - var62 * var91.field3377 / var91.field3364; + int var64 = var62 * var91.field3353 / var91.field3364 + -var91.field3353; + int var65 = var63 + (var2 + Client.viewportTempX - (var51 >> 1)); + int var66 = var3 + Client.viewportTempY - 12 + var64; + int var67 = var66; + int var68 = var42 + var66; + int var69 = var66 + var91.field3374 + 15; + int var70 = var69 - var78.maxAscent; + int var71 = var69 + var78.maxDescent; + if (var70 < var66) { + var67 = var70; + } + + if (var71 > var68) { + var68 = var71; + } + + int var72 = 0; + int var73; + int var74; + if (var16 != null) { + var72 = var66 + var16.field3374 + 15; + var73 = var72 - var44.maxAscent; + var74 = var72 + var44.maxDescent; + if (var73 < var67) { + ; + } + + if (var74 > var68) { + ; + } + } + + var73 = 255; + if (var91.field3378 >= 0) { + var73 = (var62 << 8) / (var91.field3364 - var91.field3378); + } + + if (var73 >= 0 && var73 < 255) { + if (var18 != null) { + var18.drawTransAt(var52 + var65 - var26, var66, var73); + } + + if (var20 != null) { + var20.drawTransAt(var53 + var65 - var28, var66, var73); + } + + if (var19 != null) { + for (var74 = 0; var74 < var49; ++var74) { + var19.drawTransAt(var74 * var23 + (var54 + var65 - var27), var66, var73); + } + } + + if (var21 != null) { + var21.drawTransAt(var65 + var56 - var29, var66, var73); + } + + var78.drawAlpha(var45, var65 + var55, var69, var91.textColor, 0, var73); + if (var16 != null) { + if (var30 != null) { + var30.drawTransAt(var57 + var65 - var38, var66, var73); + } + + if (var32 != null) { + var32.drawTransAt(var58 + var65 - var40, var66, var73); + } + + if (var31 != null) { + for (var74 = 0; var74 < var50; ++var74) { + var31.drawTransAt(var35 * var74 + (var59 + var65 - var39), var66, var73); + } + } + + if (var33 != null) { + var33.drawTransAt(var65 + var60 - var41, var66, var73); + } + + var44.drawAlpha(var46, var65 + var61, var72, var16.textColor, 0, var73); + } + } else { + if (var18 != null) { + var18.drawTransBgAt(var52 + var65 - var26, var66); + } + + if (var20 != null) { + var20.drawTransBgAt(var53 + var65 - var28, var66); + } + + if (var19 != null) { + for (var74 = 0; var74 < var49; ++var74) { + var19.drawTransBgAt(var74 * var23 + (var65 + var54 - var27), var66); + } + } + + if (var21 != null) { + var21.drawTransBgAt(var56 + var65 - var29, var66); + } + + var78.draw(var45, var65 + var55, var69, var91.textColor | -16777216, 0); + if (var16 != null) { + if (var30 != null) { + var30.drawTransBgAt(var65 + var57 - var38, var66); + } + + if (var32 != null) { + var32.drawTransBgAt(var65 + var58 - var40, var66); + } + + if (var31 != null) { + for (var74 = 0; var74 < var50; ++var74) { + var31.drawTransBgAt(var35 * var74 + (var59 + var65 - var39), var66); + } + } + + if (var33 != null) { + var33.drawTransBgAt(var65 + var60 - var41, var66); + } + + var44.draw(var46, var65 + var61, var72, var16.textColor | -16777216, 0); + } + } + } + } + } + } + + } + } + + @ObfuscatedName("ld") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;ZB)Ljava/lang/String;", + garbageValue = "11" + ) + static String method632(String var0, boolean var1) { + String var2 = var1 ? "https://" : "http://"; + if (Client.gameBuild == 1) { + var0 = var0 + "-wtrc"; + } else if (Client.gameBuild == 2) { + var0 = var0 + "-wtqa"; + } else if (Client.gameBuild == 3) { + var0 = var0 + "-wtwip"; + } else if (Client.gameBuild == 5) { + var0 = var0 + "-wti"; + } else if (Client.gameBuild == 4) { + var0 = "local"; + } + + String var3 = ""; + if (WorldMapSection1.field317 != null) { + var3 = "/p=" + WorldMapSection1.field317; + } + + String var4 = "runescape.com"; + return var2 + var0 + "." + var4 + "/l=" + WorldMapScaleHandler.clientLanguage + "/a=" + MidiPcmStream.field2455 + var3 + "/"; } } diff --git a/runescape-client/src/main/java/AccessFile.java b/runescape-client/src/main/java/AccessFile.java index e55ef1e7ad..87a5745230 100644 --- a/runescape-client/src/main/java/AccessFile.java +++ b/runescape-client/src/main/java/AccessFile.java @@ -9,131 +9,136 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mr") +@ObfuscatedName("my") @Implements("AccessFile") public final class AccessFile { - @ObfuscatedName("f") + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "Llo;" + ) + static IndexedSprite field4101; + @ObfuscatedName("h") @Export("file") RandomAccessFile file; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - longValue = 7305467514372323617L + longValue = -7380330136847105263L ) @Export("maxSize") final long maxSize; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - longValue = 6565072637966942499L + longValue = -1174371793280964259L ) @Export("offset") long offset; public AccessFile(File var1, String var2, long var3) throws IOException { - if (-1L == var3) { // L: 11 + if (var3 == -1L) { var3 = Long.MAX_VALUE; } - if (var1.length() > var3) { // L: 12 - var1.delete(); // L: 13 + if (var1.length() > var3) { + var1.delete(); } - this.file = new RandomAccessFile(var1, var2); // L: 15 - this.maxSize = var3; // L: 16 - this.offset = 0L; // L: 17 - int var5 = this.file.read(); // L: 18 - if (var5 != -1 && !var2.equals("r")) { // L: 19 - this.file.seek(0L); // L: 20 - this.file.write(var5); // L: 21 + this.file = new RandomAccessFile(var1, var2); + this.maxSize = var3; + this.offset = 0L; + int var5 = this.file.read(); + if (var5 != -1 && !var2.equals("r")) { + this.file.seek(0L); + this.file.write(var5); } - this.file.seek(0L); // L: 23 - } // L: 24 + this.file.seek(0L); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("seek") final void seek(long var1) throws IOException { - this.file.seek(var1); // L: 27 - this.offset = var1; // L: 28 - } // L: 29 + this.file.seek(var1); + this.offset = var1; + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "([BIII)V", - garbageValue = "1653357535" + garbageValue = "65432301" ) @Export("write") public final void write(byte[] var1, int var2, int var3) throws IOException { - if (this.offset + (long)var3 > this.maxSize) { // L: 32 - this.file.seek(this.maxSize); // L: 33 - this.file.write(1); // L: 34 - throw new EOFException(); // L: 35 + if (this.offset + (long)var3 > this.maxSize) { + this.file.seek(this.maxSize); + this.file.write(1); + throw new EOFException(); } else { - this.file.write(var1, var2, var3); // L: 37 - this.offset += (long)var3; // L: 38 + this.file.write(var1, var2, var3); + this.offset += (long)var3; } - } // L: 39 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "115800567" + descriptor = "(B)V", + garbageValue = "0" ) @Export("close") public final void close() throws IOException { - this.closeSync(false); // L: 42 - } // L: 43 + this.closeSync(false); + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(ZI)V", - garbageValue = "1735365545" + garbageValue = "1712398850" ) @Export("closeSync") public final void closeSync(boolean var1) throws IOException { - if (this.file != null) { // L: 46 - if (var1) { // L: 47 + if (this.file != null) { + if (var1) { try { - this.file.getFD().sync(); // L: 49 - } catch (SyncFailedException var3) { // L: 51 + this.file.getFD().sync(); + } catch (SyncFailedException var3) { } } - this.file.close(); // L: 53 - this.file = null; // L: 54 + this.file.close(); + this.file = null; } - } // L: 56 + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(I)J", - garbageValue = "836289418" + garbageValue = "-829870446" ) @Export("length") public final long length() throws IOException { - return this.file.length(); // L: 59 + return this.file.length(); } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "([BIIB)I", - garbageValue = "119" + descriptor = "([BIII)I", + garbageValue = "-660560166" ) @Export("read") public final int read(byte[] var1, int var2, int var3) throws IOException { - int var4 = this.file.read(var1, var2, var3); // L: 63 + int var4 = this.file.read(var1, var2, var3); if (var4 > 0) { - this.offset += (long)var4; // L: 64 + this.offset += (long)var4; } - return var4; // L: 65 + return var4; } protected void finalize() throws Throwable { - if (this.file != null) { // L: 69 - System.out.println(""); // L: 70 - this.close(); // L: 71 + if (this.file != null) { + System.out.println(""); + this.close(); } - } // L: 73 + } } diff --git a/runescape-client/src/main/java/Actor.java b/runescape-client/src/main/java/Actor.java index ef1315ae42..317439c96e 100644 --- a/runescape-client/src/main/java/Actor.java +++ b/runescape-client/src/main/java/Actor.java @@ -4,585 +4,627 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cs") +@ObfuscatedName("cx") @Implements("Actor") public abstract class Actor extends Entity { - @ObfuscatedName("af") + @ObfuscatedName("hg") + @ObfuscatedSignature( + descriptor = "[Llm;" + ) + @Export("mapDotSprites") + static Sprite[] mapDotSprites; + @ObfuscatedName("an") + @Export("isWalking") + boolean isWalking; + @ObfuscatedName("au") @ObfuscatedGetter( - intValue = -952501591 + intValue = -164376935 ) @Export("x") int x; - @ObfuscatedName("av") + @ObfuscatedName("as") @ObfuscatedGetter( - intValue = 1794864455 + intValue = 1393247939 ) @Export("y") int y; - @ObfuscatedName("ar") + @ObfuscatedName("ae") @ObfuscatedGetter( - intValue = -780515937 + intValue = -1676669577 ) @Export("rotation") int rotation; - @ObfuscatedName("ay") - @Export("isWalking") - boolean isWalking; - @ObfuscatedName("ah") + @ObfuscatedName("ac") @ObfuscatedGetter( - intValue = -955529005 + intValue = -1237850944 ) - int field1011; - @ObfuscatedName("az") + int field941; + @ObfuscatedName("ak") @ObfuscatedGetter( - intValue = 788781121 + intValue = -545590403 ) @Export("playerCycle") int playerCycle; - @ObfuscatedName("ak") + @ObfuscatedName("av") @ObfuscatedGetter( - intValue = 790102969 + intValue = 1349814771 ) @Export("idleSequence") int idleSequence; - @ObfuscatedName("au") + @ObfuscatedName("aq") @ObfuscatedGetter( - intValue = 457621463 + intValue = 1202521559 ) @Export("turnLeftSequence") int turnLeftSequence; - @ObfuscatedName("ai") + @ObfuscatedName("ah") @ObfuscatedGetter( - intValue = -276318067 + intValue = 514642555 ) @Export("turnRightSequence") int turnRightSequence; - @ObfuscatedName("ax") + @ObfuscatedName("am") @ObfuscatedGetter( - intValue = 1230196885 + intValue = 211635629 ) @Export("walkSequence") int walkSequence; - @ObfuscatedName("ag") + @ObfuscatedName("aa") @ObfuscatedGetter( - intValue = 560375303 + intValue = 1470742753 ) @Export("walkBackSequence") int walkBackSequence; - @ObfuscatedName("aq") + @ObfuscatedName("ao") @ObfuscatedGetter( - intValue = -1465864773 + intValue = 1189589409 ) @Export("walkLeftSequence") int walkLeftSequence; - @ObfuscatedName("aw") + @ObfuscatedName("ab") @ObfuscatedGetter( - intValue = -994348101 + intValue = -225179451 ) @Export("walkRightSequence") int walkRightSequence; - @ObfuscatedName("an") + @ObfuscatedName("aw") @ObfuscatedGetter( - intValue = -974301415 + intValue = -547384873 ) @Export("runSequence") int runSequence; - @ObfuscatedName("am") + @ObfuscatedName("ap") @Export("overheadText") String overheadText; - @ObfuscatedName("aa") + @ObfuscatedName("ad") @Export("isAutoChatting") boolean isAutoChatting; - @ObfuscatedName("at") - boolean field974; - @ObfuscatedName("as") + @ObfuscatedName("ai") + boolean field953; + @ObfuscatedName("al") @ObfuscatedGetter( - intValue = 1009044477 + intValue = -1570740193 ) @Export("overheadTextCyclesRemaining") int overheadTextCyclesRemaining; - @ObfuscatedName("aj") + @ObfuscatedName("ay") @ObfuscatedGetter( - intValue = 852014531 + intValue = 1034227111 ) @Export("overheadTextColor") int overheadTextColor; - @ObfuscatedName("ae") + @ObfuscatedName("af") @ObfuscatedGetter( - intValue = -762307729 + intValue = -150751555 ) @Export("overheadTextEffect") int overheadTextEffect; - @ObfuscatedName("ap") + @ObfuscatedName("az") @Export("hitSplatCount") byte hitSplatCount; - @ObfuscatedName("ad") + @ObfuscatedName("at") @Export("hitSplatTypes") int[] hitSplatTypes; - @ObfuscatedName("bb") + @ObfuscatedName("bh") @Export("hitSplatValues") int[] hitSplatValues; - @ObfuscatedName("bf") + @ObfuscatedName("by") @Export("hitSplatCycles") int[] hitSplatCycles; - @ObfuscatedName("bp") + @ObfuscatedName("bs") @Export("hitSplatTypes2") int[] hitSplatTypes2; - @ObfuscatedName("bg") + @ObfuscatedName("br") @Export("hitSplatValues2") int[] hitSplatValues2; - @ObfuscatedName("bc") + @ObfuscatedName("bl") @ObfuscatedSignature( - descriptor = "Ljs;" + descriptor = "Ljn;" ) @Export("healthBars") IterableNodeDeque healthBars; - @ObfuscatedName("bj") + @ObfuscatedName("bx") @ObfuscatedGetter( - intValue = -49521303 + intValue = 1378723849 ) @Export("targetIndex") int targetIndex; - @ObfuscatedName("bl") + @ObfuscatedName("bf") @Export("false0") boolean false0; - @ObfuscatedName("bn") + @ObfuscatedName("bz") @ObfuscatedGetter( - intValue = 81504171 + intValue = 1723621713 ) - int field1003; - @ObfuscatedName("bo") + int field959; + @ObfuscatedName("bm") @ObfuscatedGetter( - intValue = 1355414019 + intValue = 66905399 ) @Export("movementSequence") int movementSequence; - @ObfuscatedName("be") + @ObfuscatedName("bn") @ObfuscatedGetter( - intValue = 878455421 + intValue = 1817256849 ) @Export("movementFrame") int movementFrame; - @ObfuscatedName("ba") + @ObfuscatedName("bd") @ObfuscatedGetter( - intValue = 570882557 + intValue = -2112770449 ) @Export("movementFrameCycle") int movementFrameCycle; - @ObfuscatedName("bt") + @ObfuscatedName("bc") @ObfuscatedGetter( - intValue = -254649357 + intValue = 2008675691 ) @Export("sequence") int sequence; - @ObfuscatedName("bw") + @ObfuscatedName("bi") @ObfuscatedGetter( - intValue = 1925242573 + intValue = 1716773013 ) @Export("sequenceFrame") int sequenceFrame; - @ObfuscatedName("bm") + @ObfuscatedName("bk") @ObfuscatedGetter( - intValue = 1589867689 + intValue = -1725354425 ) @Export("sequenceFrameCycle") int sequenceFrameCycle; - @ObfuscatedName("by") + @ObfuscatedName("bw") @ObfuscatedGetter( - intValue = 1211840765 + intValue = 772627963 ) @Export("sequenceDelay") int sequenceDelay; - @ObfuscatedName("bq") + @ObfuscatedName("bo") @ObfuscatedGetter( - intValue = -192373127 + intValue = -1988310499 ) - int field1022; - @ObfuscatedName("bv") + int field974; + @ObfuscatedName("bj") @ObfuscatedGetter( - intValue = 1626363285 + intValue = 1707465321 ) @Export("spotAnimation") int spotAnimation; - @ObfuscatedName("br") + @ObfuscatedName("bu") @ObfuscatedGetter( - intValue = -1912022721 + intValue = 2143799121 ) @Export("spotAnimationFrame") int spotAnimationFrame; - @ObfuscatedName("bs") + @ObfuscatedName("bt") @ObfuscatedGetter( - intValue = 806708579 + intValue = -1610783339 ) @Export("spotAnimationFrameCycle") int spotAnimationFrameCycle; - @ObfuscatedName("bd") + @ObfuscatedName("bb") @ObfuscatedGetter( - intValue = 419210595 + intValue = -11622765 ) - int field1015; - @ObfuscatedName("bh") + int field978; + @ObfuscatedName("bv") @ObfuscatedGetter( - intValue = -1288579003 + intValue = 843591835 ) - int field1016; - @ObfuscatedName("bk") + int field979; + @ObfuscatedName("bg") @ObfuscatedGetter( - intValue = 2146213825 + intValue = 450740853 ) - int field1017; - @ObfuscatedName("bx") + int field981; + @ObfuscatedName("ba") @ObfuscatedGetter( - intValue = -972516227 + intValue = -222499745 ) - int field1018; - @ObfuscatedName("bi") + int field958; + @ObfuscatedName("bq") @ObfuscatedGetter( - intValue = -180985593 + intValue = -730625153 ) - int field1019; - @ObfuscatedName("bu") + int field982; + @ObfuscatedName("be") @ObfuscatedGetter( - intValue = 1137308257 + intValue = -447390819 ) - int field1020; - @ObfuscatedName("bz") + int field956; + @ObfuscatedName("bp") @ObfuscatedGetter( - intValue = 740782339 + intValue = -556199195 ) - int field1009; - @ObfuscatedName("cs") + int field984; + @ObfuscatedName("cx") @ObfuscatedGetter( - intValue = 968395653 + intValue = -1930886253 ) - int field1024; - @ObfuscatedName("ce") + int field973; + @ObfuscatedName("ci") @ObfuscatedGetter( - intValue = 1324873521 + intValue = 287969781 ) - int field1023; - @ObfuscatedName("cf") + int field986; + @ObfuscatedName("cj") @ObfuscatedGetter( - intValue = 2110040743 + intValue = 1778031273 ) @Export("npcCycle") int npcCycle; - @ObfuscatedName("cg") + @ObfuscatedName("ca") @ObfuscatedGetter( - intValue = 1789811467 + intValue = 197743289 ) @Export("defaultHeight") int defaultHeight; - @ObfuscatedName("cp") + @ObfuscatedName("cd") @ObfuscatedGetter( - intValue = 501904063 + intValue = 1792117497 ) @Export("orientation") int orientation; + @ObfuscatedName("cm") + @ObfuscatedGetter( + intValue = 494801965 + ) + int field954; + @ObfuscatedName("cz") + @ObfuscatedGetter( + intValue = -87751045 + ) + int field940; @ObfuscatedName("cc") @ObfuscatedGetter( - intValue = -816252921 - ) - int field1027; - @ObfuscatedName("cl") - @ObfuscatedGetter( - intValue = -1271802057 - ) - int field1028; - @ObfuscatedName("ci") - @ObfuscatedGetter( - intValue = -1827352877 + intValue = -835146171 ) @Export("pathLength") int pathLength; - @ObfuscatedName("cy") + @ObfuscatedName("ce") @Export("pathX") int[] pathX; - @ObfuscatedName("cx") + @ObfuscatedName("cb") @Export("pathY") int[] pathY; - @ObfuscatedName("ca") + @ObfuscatedName("cf") @Export("pathTraversed") byte[] pathTraversed; - @ObfuscatedName("cn") + @ObfuscatedName("cr") @ObfuscatedGetter( - intValue = 1285644013 + intValue = 541721127 ) - int field978; - @ObfuscatedName("cw") + int field963; + @ObfuscatedName("ch") @ObfuscatedGetter( - intValue = 392864233 + intValue = -884102379 ) - int field1034; + int field996; Actor() { - this.isWalking = false; // L: 13 - this.field1011 = 1; // L: 14 - this.idleSequence = -1; // L: 16 - this.turnLeftSequence = -1; // L: 17 - this.turnRightSequence = -1; // L: 18 - this.walkSequence = -1; // L: 19 - this.walkBackSequence = -1; // L: 20 - this.walkLeftSequence = -1; // L: 21 - this.walkRightSequence = -1; // L: 22 - this.runSequence = -1; // L: 23 - this.overheadText = null; // L: 24 - this.field974 = false; // L: 26 - this.overheadTextCyclesRemaining = 100; // L: 27 - this.overheadTextColor = 0; // L: 28 - this.overheadTextEffect = 0; // L: 29 - this.hitSplatCount = 0; // L: 31 - this.hitSplatTypes = new int[4]; // L: 32 - this.hitSplatValues = new int[4]; // L: 33 - this.hitSplatCycles = new int[4]; // L: 34 - this.hitSplatTypes2 = new int[4]; // L: 35 - this.hitSplatValues2 = new int[4]; // L: 36 - this.healthBars = new IterableNodeDeque(); // L: 37 - this.targetIndex = -1; // L: 38 - this.false0 = false; // L: 39 - this.field1003 = -1; // L: 40 - this.movementSequence = -1; // L: 41 - this.movementFrame = 0; // L: 42 - this.movementFrameCycle = 0; // L: 43 - this.sequence = -1; // L: 44 - this.sequenceFrame = 0; // L: 45 - this.sequenceFrameCycle = 0; // L: 46 - this.sequenceDelay = 0; // L: 47 - this.field1022 = 0; // L: 48 - this.spotAnimation = -1; // L: 49 - this.spotAnimationFrame = 0; // L: 50 - this.spotAnimationFrameCycle = 0; // L: 51 - this.npcCycle = 0; // L: 61 - this.defaultHeight = 200; // L: 62 - this.field1027 = 0; // L: 64 - this.field1028 = 32; // L: 65 - this.pathLength = 0; // L: 66 - this.pathX = new int[10]; // L: 67 - this.pathY = new int[10]; // L: 68 - this.pathTraversed = new byte[10]; // L: 69 - this.field978 = 0; // L: 70 - this.field1034 = 0; // L: 71 - } // L: 73 + this.isWalking = false; + this.field941 = 64; + this.idleSequence = -1; + this.turnLeftSequence = -1; + this.turnRightSequence = -1; + this.walkSequence = -1; + this.walkBackSequence = -1; + this.walkLeftSequence = -1; + this.walkRightSequence = -1; + this.runSequence = -1; + this.overheadText = null; + this.field953 = false; + this.overheadTextCyclesRemaining = 100; + this.overheadTextColor = 0; + this.overheadTextEffect = 0; + this.hitSplatCount = 0; + this.hitSplatTypes = new int[4]; + this.hitSplatValues = new int[4]; + this.hitSplatCycles = new int[4]; + this.hitSplatTypes2 = new int[4]; + this.hitSplatValues2 = new int[4]; + this.healthBars = new IterableNodeDeque(); + this.targetIndex = -1; + this.false0 = false; + this.field959 = -1; + this.movementSequence = -1; + this.movementFrame = 0; + this.movementFrameCycle = 0; + this.sequence = -1; + this.sequenceFrame = 0; + this.sequenceFrameCycle = 0; + this.sequenceDelay = 0; + this.field974 = 0; + this.spotAnimation = -1; + this.spotAnimationFrame = 0; + this.spotAnimationFrameCycle = 0; + this.npcCycle = 0; + this.defaultHeight = 200; + this.field954 = 0; + this.field940 = 32; + this.pathLength = 0; + this.pathX = new int[10]; + this.pathY = new int[10]; + this.pathTraversed = new byte[10]; + this.field963 = 0; + this.field996 = 0; + } - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "2035007323" + garbageValue = "1661589479" ) @Export("isVisible") boolean isVisible() { - return false; // L: 81 + return false; } - @ObfuscatedName("as") + @ObfuscatedName("bh") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-104" + descriptor = "(I)V", + garbageValue = "-874125335" ) - final void method1845() { - this.pathLength = 0; // L: 76 - this.field1034 = 0; // L: 77 - } // L: 78 + final void method1803() { + this.pathLength = 0; + this.field996 = 0; + } - @ObfuscatedName("aj") + @ObfuscatedName("by") @ObfuscatedSignature( - descriptor = "(IIIIIIB)V", - garbageValue = "82" + descriptor = "(IIIIIII)V", + garbageValue = "794886398" ) @Export("addHitSplat") final void addHitSplat(int var1, int var2, int var3, int var4, int var5, int var6) { - boolean var7 = true; // L: 85 - boolean var8 = true; // L: 86 + boolean var7 = true; + boolean var8 = true; int var9; - for (var9 = 0; var9 < 4; ++var9) { // L: 87 - if (this.hitSplatCycles[var9] > var5) { // L: 88 + for (var9 = 0; var9 < 4; ++var9) { + if (this.hitSplatCycles[var9] > var5) { var7 = false; } else { - var8 = false; // L: 89 + var8 = false; } } - var9 = -1; // L: 91 - int var10 = -1; // L: 92 - int var11 = 0; // L: 93 - if (var1 >= 0) { // L: 94 - HitSplatDefinition var12 = class258.method4654(var1); // L: 95 - var10 = var12.field3361; // L: 96 - var11 = var12.field3370; // L: 97 + var9 = -1; + int var10 = -1; + int var11 = 0; + if (var1 >= 0) { + HitSplatDefinition var12 = class198.method3697(var1); + var10 = var12.field3373; + var11 = var12.field3364; } int var14; - if (var8) { // L: 99 - if (var10 == -1) { // L: 100 + if (var8) { + if (var10 == -1) { return; } - var9 = 0; // L: 101 - var14 = 0; // L: 102 - if (var10 == 0) { // L: 103 + var9 = 0; + var14 = 0; + if (var10 == 0) { var14 = this.hitSplatCycles[0]; - } else if (var10 == 1) { // L: 104 + } else if (var10 == 1) { var14 = this.hitSplatValues[0]; } - for (int var13 = 1; var13 < 4; ++var13) { // L: 105 - if (var10 == 0) { // L: 106 - if (this.hitSplatCycles[var13] < var14) { // L: 107 - var9 = var13; // L: 108 - var14 = this.hitSplatCycles[var13]; // L: 109 + for (int var13 = 1; var13 < 4; ++var13) { + if (var10 == 0) { + if (this.hitSplatCycles[var13] < var14) { + var9 = var13; + var14 = this.hitSplatCycles[var13]; } - } else if (var10 == 1 && this.hitSplatValues[var13] < var14) { // L: 112 113 - var9 = var13; // L: 114 - var14 = this.hitSplatValues[var13]; // L: 115 + } else if (var10 == 1 && this.hitSplatValues[var13] < var14) { + var9 = var13; + var14 = this.hitSplatValues[var13]; } } - if (var10 == 1 && var14 >= var2) { // L: 119 + if (var10 == 1 && var14 >= var2) { return; } } else { - if (var7) { // L: 122 + if (var7) { this.hitSplatCount = 0; } - for (var14 = 0; var14 < 4; ++var14) { // L: 123 - byte var15 = this.hitSplatCount; // L: 124 - this.hitSplatCount = (byte)((this.hitSplatCount + 1) % 4); // L: 125 - if (this.hitSplatCycles[var15] <= var5) { // L: 126 - var9 = var15; // L: 127 - break; // L: 128 + for (var14 = 0; var14 < 4; ++var14) { + byte var15 = this.hitSplatCount; + this.hitSplatCount = (byte)((this.hitSplatCount + 1) % 4); + if (this.hitSplatCycles[var15] <= var5) { + var9 = var15; + break; } } } - if (var9 >= 0) { // L: 132 - this.hitSplatTypes[var9] = var1; // L: 133 - this.hitSplatValues[var9] = var2; // L: 134 - this.hitSplatTypes2[var9] = var3; // L: 135 - this.hitSplatValues2[var9] = var4; // L: 136 - this.hitSplatCycles[var9] = var5 + var11 + var6; // L: 137 - } - } // L: 138 - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(IIIIIIS)V", - garbageValue = "-1764" - ) - @Export("addHealthBar") - final void addHealthBar(int var1, int var2, int var3, int var4, int var5, int var6) { - HealthBarDefinition var8 = (HealthBarDefinition)HealthBarDefinition.HealthBarDefinition_cached.get((long)var1); // L: 143 - HealthBarDefinition var7; - if (var8 != null) { // L: 144 - var7 = var8; // L: 145 - } else { - byte[] var9 = HealthBarDefinition.HealthBarDefinition_archive.takeFile(33, var1); // L: 148 - var8 = new HealthBarDefinition(); // L: 149 - if (var9 != null) { // L: 150 - var8.decode(new Buffer(var9)); - } - - HealthBarDefinition.HealthBarDefinition_cached.put(var8, (long)var1); // L: 151 - var7 = var8; // L: 152 - } - - var8 = var7; // L: 154 - HealthBar var14 = null; // L: 155 - HealthBar var10 = null; // L: 156 - int var11 = var7.int2; // L: 157 - int var12 = 0; // L: 158 - - HealthBar var13; - for (var13 = (HealthBar)this.healthBars.last(); var13 != null; var13 = (HealthBar)this.healthBars.previous()) { // L: 159 - ++var12; // L: 160 - if (var13.definition.field3310 == var8.field3310) { // L: 161 - var13.put(var2 + var4, var5, var6, var3); // L: 162 - return; // L: 163 - } - - if (var13.definition.int1 <= var8.int1) { // L: 165 - var14 = var13; - } - - if (var13.definition.int2 > var11) { // L: 166 - var10 = var13; // L: 167 - var11 = var13.definition.int2; // L: 168 - } - } - - if (var10 != null || var12 < 4) { // L: 171 - var13 = new HealthBar(var8); // L: 172 - if (var14 == null) { // L: 173 - this.healthBars.addLast(var13); - } else { - IterableNodeDeque.IterableNodeDeque_addBefore(var13, var14); // L: 174 - } - - var13.put(var2 + var4, var5, var6, var3); // L: 175 - if (var12 >= 4) { // L: 176 - var10.remove(); - } - - } - } // L: 177 - - @ObfuscatedName("al") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1931669108" - ) - @Export("removeHealthBar") - final void removeHealthBar(int var1) { - HealthBarDefinition var3 = (HealthBarDefinition)HealthBarDefinition.HealthBarDefinition_cached.get((long)var1); // L: 182 - HealthBarDefinition var2; - if (var3 != null) { // L: 183 - var2 = var3; // L: 184 - } else { - byte[] var4 = HealthBarDefinition.HealthBarDefinition_archive.takeFile(33, var1); // L: 187 - var3 = new HealthBarDefinition(); // L: 188 - if (var4 != null) { // L: 189 - var3.decode(new Buffer(var4)); - } - - HealthBarDefinition.HealthBarDefinition_cached.put(var3, (long)var1); // L: 190 - var2 = var3; // L: 191 - } - - var3 = var2; // L: 193 - - for (HealthBar var5 = (HealthBar)this.healthBars.last(); var5 != null; var5 = (HealthBar)this.healthBars.previous()) { // L: 194 - if (var3 == var5.definition) { // L: 195 - var5.remove(); // L: 196 - return; // L: 197 - } - } - - } // L: 200 - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(B)Lft;", - garbageValue = "17" - ) - public static Clock method1864() { - try { - return new NanoClock(); // L: 8 - } catch (Throwable var1) { // L: 10 - return new MilliClock(); // L: 11 + if (var9 >= 0) { + this.hitSplatTypes[var9] = var1; + this.hitSplatValues[var9] = var2; + this.hitSplatTypes2[var9] = var3; + this.hitSplatValues2[var9] = var4; + this.hitSplatCycles[var9] = var5 + var11 + var6; } } - @ObfuscatedName("fn") + @ObfuscatedName("bs") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1341349782" + descriptor = "(IIIIIII)V", + garbageValue = "-1554709476" ) - static void method1855() { - PacketBufferNode var0 = class4.getPacketBufferNode(ClientPacket.field2272, Client.packetWriter.isaacCipher); // L: 4218 - var0.packetBuffer.writeByte(UrlRequester.getWindowedMode()); // L: 4219 - var0.packetBuffer.writeShort(ItemContainer.canvasWidth); // L: 4220 - var0.packetBuffer.writeShort(HealthBar.canvasHeight); // L: 4221 - Client.packetWriter.addNode(var0); // L: 4222 - } // L: 4223 + @Export("addHealthBar") + final void addHealthBar(int var1, int var2, int var3, int var4, int var5, int var6) { + HealthBarDefinition var7 = HealthBarUpdate.method1826(var1); + HealthBar var8 = null; + HealthBar var9 = null; + int var10 = var7.int2; + int var11 = 0; + + HealthBar var12; + for (var12 = (HealthBar)this.healthBars.last(); var12 != null; var12 = (HealthBar)this.healthBars.previous()) { + ++var11; + if (var12.definition.field3313 == var7.field3313) { + var12.put(var2 + var4, var5, var6, var3); + return; + } + + if (var12.definition.int1 <= var7.int1) { + var8 = var12; + } + + if (var12.definition.int2 > var10) { + var9 = var12; + var10 = var12.definition.int2; + } + } + + if (var9 != null || var11 < 4) { + var12 = new HealthBar(var7); + if (var8 == null) { + this.healthBars.addLast(var12); + } else { + IterableNodeDeque.IterableNodeDeque_addBefore(var12, var8); + } + + var12.put(var2 + var4, var5, var6, var3); + if (var11 >= 4) { + var9.remove(); + } + + } + } + + @ObfuscatedName("br") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-324524490" + ) + @Export("removeHealthBar") + final void removeHealthBar(int var1) { + HealthBarDefinition var2 = HealthBarUpdate.method1826(var1); + + for (HealthBar var3 = (HealthBar)this.healthBars.last(); var3 != null; var3 = (HealthBar)this.healthBars.previous()) { + if (var2 == var3.definition) { + var3.remove(); + return; + } + } + + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Lib;Lib;ZLku;I)V", + garbageValue = "411546609" + ) + public static void method1821(AbstractArchive var0, AbstractArchive var1, boolean var2, Font var3) { + NPC.ItemDefinition_archive = var0; + VertexNormal.ItemDefinition_modelArchive = var1; + ItemDefinition.ItemDefinition_inMembersWorld = var2; + Varcs.ItemDefinition_fileCount = NPC.ItemDefinition_archive.getGroupFileCount(10); + ItemDefinition.ItemDefinition_fontPlain11 = var3; + } + + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "([BB)Lcs;", + garbageValue = "0" + ) + @Export("newScript") + static Script newScript(byte[] var0) { + Script var1 = new Script(); + Buffer var2 = new Buffer(var0); + var2.offset = var2.array.length - 2; + int var3 = var2.readUnsignedShort(); + int var4 = var2.array.length - 2 - var3 - 12; + var2.offset = var4; + int var5 = var2.readInt(); + var1.localIntCount = var2.readUnsignedShort(); + var1.localStringCount = var2.readUnsignedShort(); + var1.intArgumentCount = var2.readUnsignedShort(); + var1.stringArgumentCount = var2.readUnsignedShort(); + int var6 = var2.readUnsignedByte(); + int var7; + int var8; + if (var6 > 0) { + var1.switches = var1.newIterableNodeHashTable(var6); + + for (var7 = 0; var7 < var6; ++var7) { + var8 = var2.readUnsignedShort(); + IterableNodeHashTable var9 = new IterableNodeHashTable(var8 > 0 ? World.method1870(var8) : 1); + var1.switches[var7] = var9; + + while (var8-- > 0) { + int var10 = var2.readInt(); + int var11 = var2.readInt(); + var9.put(new IntegerNode(var11), (long)var10); + } + } + } + + var2.offset = 0; + var2.readStringCp1252NullTerminatedOrNull(); + var1.opcodes = new int[var5]; + var1.intOperands = new int[var5]; + var1.stringOperands = new String[var5]; + + for (var7 = 0; var2.offset < var4; var1.opcodes[var7++] = var8) { + var8 = var2.readUnsignedShort(); + if (var8 == 3) { + var1.stringOperands[var7] = var2.readStringCp1252NullTerminated(); + } else if (var8 < 100 && var8 != 21 && var8 != 38 && var8 != 39) { + var1.intOperands[var7] = var2.readInt(); + } else { + var1.intOperands[var7] = var2.readUnsignedByte(); + } + } + + return var1; + } + + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "1653526163" + ) + static void method1819(int var0) { + ItemContainer var1 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); + if (var1 != null) { + var1.remove(); + } + } + + @ObfuscatedName("fe") + @ObfuscatedSignature( + descriptor = "(I)Lma;", + garbageValue = "-1640183017" + ) + @Export("getWorldMap") + static WorldMap getWorldMap() { + return WorldMapRectangle.worldMap; + } } diff --git a/runescape-client/src/main/java/Animation.java b/runescape-client/src/main/java/Animation.java index 44033dbf6c..de854541fa 100644 --- a/runescape-client/src/main/java/Animation.java +++ b/runescape-client/src/main/java/Animation.java @@ -3,130 +3,130 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("er") +@ObfuscatedName("eu") @Implements("Animation") public class Animation { - @ObfuscatedName("f") - static int[] field1662; - @ObfuscatedName("b") - static int[] field1661; - @ObfuscatedName("l") - static int[] field1669; - @ObfuscatedName("m") - static int[] field1663; - @ObfuscatedName("z") + @ObfuscatedName("h") + static int[] field1657; + @ObfuscatedName("v") + static int[] field1651; + @ObfuscatedName("x") + static int[] field1652; + @ObfuscatedName("w") + static int[] field1659; + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lei;" + descriptor = "Lej;" ) @Export("skeleton") Skeleton skeleton; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("transformCount") int transformCount; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("transformSkeletonLabels") int[] transformSkeletonLabels; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("transformXs") int[] transformXs; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("transformYs") int[] transformYs; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("transformZs") int[] transformZs; - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("hasAlphaTransform") boolean hasAlphaTransform; static { - field1662 = new int[500]; // L: 8 - field1661 = new int[500]; // L: 9 - field1669 = new int[500]; // L: 10 - field1663 = new int[500]; // L: 11 + field1657 = new int[500]; + field1651 = new int[500]; + field1652 = new int[500]; + field1659 = new int[500]; } @ObfuscatedSignature( - descriptor = "([BLei;)V" + descriptor = "([BLej;)V" ) Animation(byte[] var1, Skeleton var2) { - this.skeleton = null; // L: 12 - this.transformCount = -1; // L: 13 - this.hasAlphaTransform = false; // L: 18 - this.skeleton = var2; // L: 21 - Buffer var3 = new Buffer(var1); // L: 22 - Buffer var4 = new Buffer(var1); // L: 23 - var3.offset = 2; // L: 24 - int var5 = var3.readUnsignedByte(); // L: 25 - int var6 = -1; // L: 26 - int var7 = 0; // L: 27 - var4.offset = var5 + var3.offset; // L: 28 + this.skeleton = null; + this.transformCount = -1; + this.hasAlphaTransform = false; + this.skeleton = var2; + Buffer var3 = new Buffer(var1); + Buffer var4 = new Buffer(var1); + var3.offset = 2; + int var5 = var3.readUnsignedByte(); + int var6 = -1; + int var7 = 0; + var4.offset = var5 + var3.offset; int var8; - for (var8 = 0; var8 < var5; ++var8) { // L: 29 - int var9 = var3.readUnsignedByte(); // L: 30 - if (var9 > 0) { // L: 31 - if (this.skeleton.transformTypes[var8] != 0) { // L: 32 - for (int var10 = var8 - 1; var10 > var6; --var10) { // L: 33 - if (this.skeleton.transformTypes[var10] == 0) { // L: 34 - field1662[var7] = var10; // L: 35 - field1661[var7] = 0; // L: 36 - field1669[var7] = 0; // L: 37 - field1663[var7] = 0; // L: 38 - ++var7; // L: 39 + for (var8 = 0; var8 < var5; ++var8) { + int var9 = var3.readUnsignedByte(); + if (var9 > 0) { + if (this.skeleton.transformTypes[var8] != 0) { + for (int var10 = var8 - 1; var10 > var6; --var10) { + if (this.skeleton.transformTypes[var10] == 0) { + field1657[var7] = var10; + field1651[var7] = 0; + field1652[var7] = 0; + field1659[var7] = 0; + ++var7; break; } } } - field1662[var7] = var8; // L: 44 - short var11 = 0; // L: 45 - if (this.skeleton.transformTypes[var8] == 3) { // L: 46 + field1657[var7] = var8; + short var11 = 0; + if (this.skeleton.transformTypes[var8] == 3) { var11 = 128; } - if ((var9 & 1) != 0) { // L: 47 - field1661[var7] = var4.readShortSmart(); + if ((var9 & 1) != 0) { + field1651[var7] = var4.readShortSmart(); } else { - field1661[var7] = var11; // L: 48 + field1651[var7] = var11; } - if ((var9 & 2) != 0) { // L: 49 - field1669[var7] = var4.readShortSmart(); + if ((var9 & 2) != 0) { + field1652[var7] = var4.readShortSmart(); } else { - field1669[var7] = var11; // L: 50 + field1652[var7] = var11; } - if ((var9 & 4) != 0) { // L: 51 - field1663[var7] = var4.readShortSmart(); + if ((var9 & 4) != 0) { + field1659[var7] = var4.readShortSmart(); } else { - field1663[var7] = var11; // L: 52 + field1659[var7] = var11; } - var6 = var8; // L: 53 - ++var7; // L: 54 - if (this.skeleton.transformTypes[var8] == 5) { // L: 55 + var6 = var8; + ++var7; + if (this.skeleton.transformTypes[var8] == 5) { this.hasAlphaTransform = true; } } } - if (var1.length != var4.offset) { // L: 58 - throw new RuntimeException(); // L: 59 + if (var1.length != var4.offset) { + throw new RuntimeException(); } else { - this.transformCount = var7; // L: 61 - this.transformSkeletonLabels = new int[var7]; // L: 62 - this.transformXs = new int[var7]; // L: 63 - this.transformYs = new int[var7]; // L: 64 - this.transformZs = new int[var7]; // L: 65 + this.transformCount = var7; + this.transformSkeletonLabels = new int[var7]; + this.transformXs = new int[var7]; + this.transformYs = new int[var7]; + this.transformZs = new int[var7]; - for (var8 = 0; var8 < var7; ++var8) { // L: 66 - this.transformSkeletonLabels[var8] = field1662[var8]; // L: 67 - this.transformXs[var8] = field1661[var8]; // L: 68 - this.transformYs[var8] = field1669[var8]; // L: 69 - this.transformZs[var8] = field1663[var8]; // L: 70 + for (var8 = 0; var8 < var7; ++var8) { + this.transformSkeletonLabels[var8] = field1657[var8]; + this.transformXs[var8] = field1651[var8]; + this.transformYs[var8] = field1652[var8]; + this.transformZs[var8] = field1659[var8]; } } - } // L: 72 + } } diff --git a/runescape-client/src/main/java/ApproximateRouteStrategy.java b/runescape-client/src/main/java/ApproximateRouteStrategy.java index de77421852..1ae909594e 100644 --- a/runescape-client/src/main/java/ApproximateRouteStrategy.java +++ b/runescape-client/src/main/java/ApproximateRouteStrategy.java @@ -2,669 +2,398 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("bx") +@ObfuscatedName("ba") @Implements("ApproximateRouteStrategy") public class ApproximateRouteStrategy extends RouteStrategy { - @ObfuscatedName("d") - static String field642; - @ObfuscatedName("dx") - @ObfuscatedSignature( - descriptor = "Lid;" - ) - @Export("archive6") - static Archive archive6; - ApproximateRouteStrategy() { - } // L: 11760 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(IIILfh;I)Z", - garbageValue = "-1510519179" + descriptor = "(IIILfo;B)Z", + garbageValue = "104" ) @Export("hasArrived") - protected boolean hasArrived(int var1, int var2, int var3, CollisionMap var4) { - return var2 == super.approxDestinationX && var3 == super.approxDestinationY; // L: 11763 + public boolean hasArrived(int var1, int var2, int var3, CollisionMap var4) { + return var2 == super.approxDestinationX && var3 == super.approxDestinationY; } - @ObfuscatedName("f") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "14" + descriptor = "(ILcs;ZI)I", + garbageValue = "-1846731136" ) - @Export("getVarbit") - public static int getVarbit(int var0) { - VarbitDefinition var2 = (VarbitDefinition)VarbitDefinition.VarbitDefinition_cached.get((long)var0); - VarbitDefinition var1; - if (var2 != null) { - var1 = var2; + static int method1302(int var0, Script var1, boolean var2) { + if (var0 == ScriptOpcodes.FRIEND_COUNT) { + if (MilliClock.friendSystem.field1069 == 0) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -2; + } else if (MilliClock.friendSystem.field1069 == 1) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = MilliClock.friendSystem.friendsList.getSize(); + } + + return 1; } else { - byte[] var3 = VarbitDefinition.VarbitDefinition_archive.takeFile(14, var0); - var2 = new VarbitDefinition(); - if (var3 != null) { - var2.decode(new Buffer(var3)); - } - - VarbitDefinition.VarbitDefinition_cached.put(var2, (long)var0); - var1 = var2; - } - - int var7 = var1.baseVar; - int var4 = var1.startBit; - int var5 = var1.endBit; - int var6 = Varps.Varps_masks[var5 - var4]; - return Varps.Varps_main[var7] >> var4 & var6; // L: 42 - } - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(IIILgm;Lfh;Z[I[II)I", - garbageValue = "-1489955053" - ) - public static int method1321(int var0, int var1, int var2, RouteStrategy var3, CollisionMap var4, boolean var5, int[] var6, int[] var7) { - int var9; - for (int var8 = 0; var8 < 128; ++var8) { - for (var9 = 0; var9 < 128; ++var9) { - class182.directions[var8][var9] = 0; - class182.distances[var8][var9] = 99999999; - } - } - - int var10; - int var11; - byte var12; - byte var13; - int var14; - int var15; - byte var16; - int var17; - int[][] var18; - int var19; - int var20; - int var21; - int var22; - boolean var28; - boolean var29; - int var30; - int var31; - int var33; - if (var2 == 1) { - var10 = var0; // L: 29 - var11 = var1; - var12 = 64; // L: 31 - var13 = 64; // L: 32 - var14 = var0 - var12; // L: 33 - var15 = var1 - var13; // L: 34 - class182.directions[var12][var13] = 99; // L: 35 - class182.distances[var12][var13] = 0; // L: 36 - var16 = 0; // L: 37 - var17 = 0; // L: 38 - class182.bufferX[var16] = var0; // L: 39 - var33 = var16 + 1; - class182.bufferY[var16] = var1; // L: 40 - var18 = var4.flags; // L: 41 - - while (true) { - if (var17 == var33) { // L: 44 - Ignored.field3637 = var10; // L: 116 - class182.field2122 = var11; // L: 117 - var29 = false; // L: 118 - break; + int var3; + if (var0 == ScriptOpcodes.FRIEND_GETNAME) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (MilliClock.friendSystem.method1939() && var3 >= 0 && var3 < MilliClock.friendSystem.friendsList.getSize()) { + Friend var8 = (Friend)MilliClock.friendSystem.friendsList.get(var3); + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var8.getName(); + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var8.getPreviousName(); + } else { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; } - var10 = class182.bufferX[var17]; // L: 45 - var11 = class182.bufferY[var17]; // L: 46 - var17 = var17 + 1 & 4095; // L: 47 - var30 = var10 - var14; // L: 48 - var31 = var11 - var15; // L: 49 - var19 = var10 - var4.xInset; // L: 50 - var20 = var11 - var4.yInset; // L: 51 - if (var3.hasArrived(1, var10, var11, var4)) { // L: 52 - Ignored.field3637 = var10; // L: 53 - class182.field2122 = var11; // L: 54 - var29 = true; // L: 55 - break; + return 1; + } else if (var0 == ScriptOpcodes.FRIEND_GETWORLD) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (MilliClock.friendSystem.method1939() && var3 >= 0 && var3 < MilliClock.friendSystem.friendsList.getSize()) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = ((Buddy)MilliClock.friendSystem.friendsList.get(var3)).world; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; } - var21 = class182.distances[var30][var31] + 1; // L: 58 - if (var30 > 0 && class182.directions[var30 - 1][var31] == 0 && (var18[var19 - 1][var20] & 19136776) == 0) { // L: 59 - class182.bufferX[var33] = var10 - 1; // L: 60 - class182.bufferY[var33] = var11; // L: 61 - var33 = var33 + 1 & 4095; // L: 62 - class182.directions[var30 - 1][var31] = 2; // L: 63 - class182.distances[var30 - 1][var31] = var21; // L: 64 + return 1; + } else if (var0 == ScriptOpcodes.FRIEND_GETRANK) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (MilliClock.friendSystem.method1939() && var3 >= 0 && var3 < MilliClock.friendSystem.friendsList.getSize()) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = ((Buddy)MilliClock.friendSystem.friendsList.get(var3)).rank; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; } - if (var30 < 127 && class182.directions[var30 + 1][var31] == 0 && (var18[var19 + 1][var20] & 19136896) == 0) { // L: 66 - class182.bufferX[var33] = var10 + 1; // L: 67 - class182.bufferY[var33] = var11; // L: 68 - var33 = var33 + 1 & 4095; // L: 69 - class182.directions[var30 + 1][var31] = 8; // L: 70 - class182.distances[var30 + 1][var31] = var21; // L: 71 - } - - if (var31 > 0 && class182.directions[var30][var31 - 1] == 0 && (var18[var19][var20 - 1] & 19136770) == 0) { // L: 73 - class182.bufferX[var33] = var10; // L: 74 - class182.bufferY[var33] = var11 - 1; // L: 75 - var33 = var33 + 1 & 4095; // L: 76 - class182.directions[var30][var31 - 1] = 1; // L: 77 - class182.distances[var30][var31 - 1] = var21; // L: 78 - } - - if (var31 < 127 && class182.directions[var30][var31 + 1] == 0 && (var18[var19][var20 + 1] & 19136800) == 0) { // L: 80 - class182.bufferX[var33] = var10; // L: 81 - class182.bufferY[var33] = var11 + 1; // L: 82 - var33 = var33 + 1 & 4095; // L: 83 - class182.directions[var30][var31 + 1] = 4; // L: 84 - class182.distances[var30][var31 + 1] = var21; // L: 85 - } - - if (var30 > 0 && var31 > 0 && class182.directions[var30 - 1][var31 - 1] == 0 && (var18[var19 - 1][var20 - 1] & 19136782) == 0 && (var18[var19 - 1][var20] & 19136776) == 0 && (var18[var19][var20 - 1] & 19136770) == 0) { // L: 87 - class182.bufferX[var33] = var10 - 1; // L: 88 - class182.bufferY[var33] = var11 - 1; // L: 89 - var33 = var33 + 1 & 4095; // L: 90 - class182.directions[var30 - 1][var31 - 1] = 3; // L: 91 - class182.distances[var30 - 1][var31 - 1] = var21; // L: 92 - } - - if (var30 < 127 && var31 > 0 && class182.directions[var30 + 1][var31 - 1] == 0 && (var18[var19 + 1][var20 - 1] & 19136899) == 0 && (var18[var19 + 1][var20] & 19136896) == 0 && (var18[var19][var20 - 1] & 19136770) == 0) { // L: 94 - class182.bufferX[var33] = var10 + 1; // L: 95 - class182.bufferY[var33] = var11 - 1; // L: 96 - var33 = var33 + 1 & 4095; // L: 97 - class182.directions[var30 + 1][var31 - 1] = 9; // L: 98 - class182.distances[var30 + 1][var31 - 1] = var21; // L: 99 - } - - if (var30 > 0 && var31 < 127 && class182.directions[var30 - 1][var31 + 1] == 0 && (var18[var19 - 1][var20 + 1] & 19136824) == 0 && (var18[var19 - 1][var20] & 19136776) == 0 && (var18[var19][var20 + 1] & 19136800) == 0) { // L: 101 - class182.bufferX[var33] = var10 - 1; // L: 102 - class182.bufferY[var33] = var11 + 1; // L: 103 - var33 = var33 + 1 & 4095; // L: 104 - class182.directions[var30 - 1][var31 + 1] = 6; // L: 105 - class182.distances[var30 - 1][var31 + 1] = var21; // L: 106 - } - - if (var30 < 127 && var31 < 127 && class182.directions[var30 + 1][var31 + 1] == 0 && (var18[var19 + 1][var20 + 1] & 19136992) == 0 && (var18[var19 + 1][var20] & 19136896) == 0 && (var18[var19][var20 + 1] & 19136800) == 0) { // L: 108 - class182.bufferX[var33] = var10 + 1; // L: 109 - class182.bufferY[var33] = var11 + 1; // L: 110 - var33 = var33 + 1 & 4095; // L: 111 - class182.directions[var30 + 1][var31 + 1] = 12; // L: 112 - class182.distances[var30 + 1][var31 + 1] = var21; // L: 113 - } - } - - var28 = var29; // L: 120 - } else if (var2 == 2) { // L: 122 - var10 = var0; // L: 125 - var11 = var1; // L: 126 - var12 = 64; // L: 127 - var13 = 64; // L: 128 - var14 = var0 - var12; // L: 129 - var15 = var1 - var13; // L: 130 - class182.directions[var12][var13] = 99; // L: 131 - class182.distances[var12][var13] = 0; // L: 132 - var16 = 0; // L: 133 - var17 = 0; // L: 134 - class182.bufferX[var16] = var0; // L: 135 - var33 = var16 + 1; - class182.bufferY[var16] = var1; // L: 136 - var18 = var4.flags; // L: 137 - - while (true) { - if (var33 == var17) { // L: 138 - Ignored.field3637 = var10; // L: 238 - class182.field2122 = var11; // L: 239 - var29 = false; // L: 240 - break; - } - - var10 = class182.bufferX[var17]; // L: 139 - var11 = class182.bufferY[var17]; // L: 140 - var17 = var17 + 1 & 4095; // L: 141 - var30 = var10 - var14; // L: 142 - var31 = var11 - var15; // L: 143 - var19 = var10 - var4.xInset; // L: 144 - var20 = var11 - var4.yInset; // L: 145 - if (var3.hasArrived(2, var10, var11, var4)) { // L: 146 - Ignored.field3637 = var10; // L: 147 - class182.field2122 = var11; // L: 148 - var29 = true; // L: 149 - break; - } - - var21 = class182.distances[var30][var31] + 1; // L: 152 - if (var30 > 0 && class182.directions[var30 - 1][var31] == 0 && (var18[var19 - 1][var20] & 19136782) == 0 && (var18[var19 - 1][var20 + 1] & 19136824) == 0) { // L: 153 154 155 156 - class182.bufferX[var33] = var10 - 1; // L: 157 - class182.bufferY[var33] = var11; // L: 158 - var33 = var33 + 1 & 4095; // L: 159 - class182.directions[var30 - 1][var31] = 2; // L: 160 - class182.distances[var30 - 1][var31] = var21; // L: 161 - } - - if (var30 < 126 && class182.directions[var30 + 1][var31] == 0 && (var18[var19 + 2][var20] & 19136899) == 0 && (var18[var19 + 2][var20 + 1] & 19136992) == 0) { // L: 163 164 165 166 - class182.bufferX[var33] = var10 + 1; // L: 167 - class182.bufferY[var33] = var11; // L: 168 - var33 = var33 + 1 & 4095; // L: 169 - class182.directions[var30 + 1][var31] = 8; // L: 170 - class182.distances[var30 + 1][var31] = var21; // L: 171 - } - - if (var31 > 0 && class182.directions[var30][var31 - 1] == 0 && (var18[var19][var20 - 1] & 19136782) == 0 && (var18[var19 + 1][var20 - 1] & 19136899) == 0) { // L: 173 174 175 176 - class182.bufferX[var33] = var10; // L: 177 - class182.bufferY[var33] = var11 - 1; // L: 178 - var33 = var33 + 1 & 4095; // L: 179 - class182.directions[var30][var31 - 1] = 1; // L: 180 - class182.distances[var30][var31 - 1] = var21; // L: 181 - } - - if (var31 < 126 && class182.directions[var30][var31 + 1] == 0 && (var18[var19][var20 + 2] & 19136824) == 0 && (var18[var19 + 1][var20 + 2] & 19136992) == 0) { // L: 183 184 185 186 - class182.bufferX[var33] = var10; // L: 187 - class182.bufferY[var33] = var11 + 1; // L: 188 - var33 = var33 + 1 & 4095; // L: 189 - class182.directions[var30][var31 + 1] = 4; // L: 190 - class182.distances[var30][var31 + 1] = var21; // L: 191 - } - - if (var30 > 0 && var31 > 0 && class182.directions[var30 - 1][var31 - 1] == 0 && (var18[var19 - 1][var20] & 19136830) == 0 && (var18[var19 - 1][var20 - 1] & 19136782) == 0 && (var18[var19][var20 - 1] & 19136911) == 0) { // L: 193 194 195 196 197 - class182.bufferX[var33] = var10 - 1; // L: 198 - class182.bufferY[var33] = var11 - 1; // L: 199 - var33 = var33 + 1 & 4095; // L: 200 - class182.directions[var30 - 1][var31 - 1] = 3; // L: 201 - class182.distances[var30 - 1][var31 - 1] = var21; // L: 202 - } - - if (var30 < 126 && var31 > 0 && class182.directions[var30 + 1][var31 - 1] == 0 && (var18[var19 + 1][var20 - 1] & 19136911) == 0 && (var18[var19 + 2][var20 - 1] & 19136899) == 0 && (var18[var19 + 2][var20] & 19136995) == 0) { // L: 204 205 206 207 208 - class182.bufferX[var33] = var10 + 1; // L: 209 - class182.bufferY[var33] = var11 - 1; // L: 210 - var33 = var33 + 1 & 4095; // L: 211 - class182.directions[var30 + 1][var31 - 1] = 9; // L: 212 - class182.distances[var30 + 1][var31 - 1] = var21; // L: 213 - } - - if (var30 > 0 && var31 < 126 && class182.directions[var30 - 1][var31 + 1] == 0 && (var18[var19 - 1][var20 + 1] & 19136830) == 0 && (var18[var19 - 1][var20 + 2] & 19136824) == 0 && (var18[var19][var20 + 2] & 19137016) == 0) { // L: 215 216 217 218 219 - class182.bufferX[var33] = var10 - 1; // L: 220 - class182.bufferY[var33] = var11 + 1; // L: 221 - var33 = var33 + 1 & 4095; // L: 222 - class182.directions[var30 - 1][var31 + 1] = 6; // L: 223 - class182.distances[var30 - 1][var31 + 1] = var21; // L: 224 - } - - if (var30 < 126 && var31 < 126 && class182.directions[var30 + 1][var31 + 1] == 0 && (var18[var19 + 1][var20 + 2] & 19137016) == 0 && (var18[var19 + 2][var20 + 2] & 19136992) == 0 && (var18[var19 + 2][var20 + 1] & 19136995) == 0) { // L: 226 227 228 229 230 - class182.bufferX[var33] = var10 + 1; // L: 231 - class182.bufferY[var33] = var11 + 1; // L: 232 - var33 = var33 + 1 & 4095; // L: 233 - class182.directions[var30 + 1][var31 + 1] = 12; // L: 234 - class182.distances[var30 + 1][var31 + 1] = var21; // L: 235 - } - } - - var28 = var29; // L: 242 - } else { - var10 = var0; // L: 247 - var11 = var1; // L: 248 - var12 = 64; // L: 249 - var13 = 64; // L: 250 - var14 = var0 - var12; // L: 251 - var15 = var1 - var13; // L: 252 - class182.directions[var12][var13] = 99; // L: 253 - class182.distances[var12][var13] = 0; // L: 254 - var16 = 0; // L: 255 - var17 = 0; // L: 256 - class182.bufferX[var16] = var0; // L: 257 - var33 = var16 + 1; - class182.bufferY[var16] = var1; // L: 258 - var18 = var4.flags; // L: 259 - - label761: - while (true) { - label759: - while (true) { - do { - do { - do { - label736: - do { - if (var17 == var33) { // L: 260 - Ignored.field3637 = var10; // L: 380 - class182.field2122 = var11; // L: 381 - var29 = false; // L: 382 - break label761; - } - - var10 = class182.bufferX[var17]; // L: 261 - var11 = class182.bufferY[var17]; // L: 262 - var17 = var17 + 1 & 4095; // L: 263 - var30 = var10 - var14; // L: 264 - var31 = var11 - var15; // L: 265 - var19 = var10 - var4.xInset; // L: 266 - var20 = var11 - var4.yInset; // L: 267 - if (var3.hasArrived(var2, var10, var11, var4)) { // L: 268 - Ignored.field3637 = var10; // L: 269 - class182.field2122 = var11; // L: 270 - var29 = true; // L: 271 - break label761; - } - - var21 = class182.distances[var30][var31] + 1; // L: 274 - if (var30 > 0 && class182.directions[var30 - 1][var31] == 0 && (var18[var19 - 1][var20] & 19136782) == 0 && (var18[var19 - 1][var20 + var2 - 1] & 19136824) == 0) { // L: 275 276 277 278 - var22 = 1; - - while (true) { - if (var22 >= var2 - 1) { - class182.bufferX[var33] = var10 - 1; // L: 282 - class182.bufferY[var33] = var11; // L: 283 - var33 = var33 + 1 & 4095; // L: 284 - class182.directions[var30 - 1][var31] = 2; // L: 285 - class182.distances[var30 - 1][var31] = var21; // L: 286 - break; - } - - if ((var18[var19 - 1][var22 + var20] & 19136830) != 0) { // L: 280 - break; - } - - ++var22; // L: 279 - } - } - - if (var30 < 128 - var2 && class182.directions[var30 + 1][var31] == 0 && (var18[var19 + var2][var20] & 19136899) == 0 && (var18[var19 + var2][var20 + var2 - 1] & 19136992) == 0) { // L: 288 289 290 291 - var22 = 1; - - while (true) { - if (var22 >= var2 - 1) { - class182.bufferX[var33] = var10 + 1; // L: 295 - class182.bufferY[var33] = var11; // L: 296 - var33 = var33 + 1 & 4095; // L: 297 - class182.directions[var30 + 1][var31] = 8; // L: 298 - class182.distances[var30 + 1][var31] = var21; // L: 299 - break; - } - - if ((var18[var19 + var2][var20 + var22] & 19136995) != 0) { // L: 293 - break; - } - - ++var22; // L: 292 - } - } - - if (var31 > 0 && class182.directions[var30][var31 - 1] == 0 && (var18[var19][var20 - 1] & 19136782) == 0 && (var18[var19 + var2 - 1][var20 - 1] & 19136899) == 0) { // L: 301 302 303 304 - var22 = 1; - - while (true) { - if (var22 >= var2 - 1) { - class182.bufferX[var33] = var10; // L: 308 - class182.bufferY[var33] = var11 - 1; // L: 309 - var33 = var33 + 1 & 4095; // L: 310 - class182.directions[var30][var31 - 1] = 1; // L: 311 - class182.distances[var30][var31 - 1] = var21; // L: 312 - break; - } - - if ((var18[var22 + var19][var20 - 1] & 19136911) != 0) { // L: 306 - break; - } - - ++var22; // L: 305 - } - } - - if (var31 < 128 - var2 && class182.directions[var30][var31 + 1] == 0 && (var18[var19][var20 + var2] & 19136824) == 0 && (var18[var19 + var2 - 1][var20 + var2] & 19136992) == 0) { // L: 314 315 316 317 - var22 = 1; - - while (true) { - if (var22 >= var2 - 1) { - class182.bufferX[var33] = var10; // L: 321 - class182.bufferY[var33] = var11 + 1; // L: 322 - var33 = var33 + 1 & 4095; // L: 323 - class182.directions[var30][var31 + 1] = 4; // L: 324 - class182.distances[var30][var31 + 1] = var21; // L: 325 - break; - } - - if ((var18[var19 + var22][var20 + var2] & 19137016) != 0) { // L: 319 - break; - } - - ++var22; // L: 318 - } - } - - if (var30 > 0 && var31 > 0 && class182.directions[var30 - 1][var31 - 1] == 0 && (var18[var19 - 1][var20 - 1] & 19136782) == 0) { // L: 327 328 329 - var22 = 1; - - while (true) { - if (var22 >= var2) { - class182.bufferX[var33] = var10 - 1; // L: 334 - class182.bufferY[var33] = var11 - 1; // L: 335 - var33 = var33 + 1 & 4095; // L: 336 - class182.directions[var30 - 1][var31 - 1] = 3; // L: 337 - class182.distances[var30 - 1][var31 - 1] = var21; // L: 338 - break; - } - - if ((var18[var19 - 1][var22 + (var20 - 1)] & 19136830) != 0 || (var18[var22 + (var19 - 1)][var20 - 1] & 19136911) != 0) { // L: 331 332 - break; - } - - ++var22; // L: 330 - } - } - - if (var30 < 128 - var2 && var31 > 0 && class182.directions[var30 + 1][var31 - 1] == 0 && (var18[var19 + var2][var20 - 1] & 19136899) == 0) { // L: 340 341 342 - var22 = 1; - - while (true) { - if (var22 >= var2) { - class182.bufferX[var33] = var10 + 1; // L: 347 - class182.bufferY[var33] = var11 - 1; // L: 348 - var33 = var33 + 1 & 4095; // L: 349 - class182.directions[var30 + 1][var31 - 1] = 9; // L: 350 - class182.distances[var30 + 1][var31 - 1] = var21; // L: 351 - break; - } - - if ((var18[var19 + var2][var22 + (var20 - 1)] & 19136995) != 0 || (var18[var22 + var19][var20 - 1] & 19136911) != 0) { // L: 344 345 - break; - } - - ++var22; // L: 343 - } - } - - if (var30 > 0 && var31 < 128 - var2 && class182.directions[var30 - 1][var31 + 1] == 0 && (var18[var19 - 1][var20 + var2] & 19136824) == 0) { // L: 353 354 355 - for (var22 = 1; var22 < var2; ++var22) { // L: 356 - if ((var18[var19 - 1][var22 + var20] & 19136830) != 0 || (var18[var22 + (var19 - 1)][var20 + var2] & 19137016) != 0) { // L: 357 358 - continue label736; - } - } - - class182.bufferX[var33] = var10 - 1; // L: 360 - class182.bufferY[var33] = var11 + 1; // L: 361 - var33 = var33 + 1 & 4095; // L: 362 - class182.directions[var30 - 1][var31 + 1] = 6; // L: 363 - class182.distances[var30 - 1][var31 + 1] = var21; // L: 364 - } - } while(var30 >= 128 - var2); // L: 366 - } while(var31 >= 128 - var2); - } while(class182.directions[var30 + 1][var31 + 1] != 0); // L: 367 - } while((var18[var19 + var2][var20 + var2] & 19136992) != 0); // L: 368 - - for (var22 = 1; var22 < var2; ++var22) { // L: 369 - if ((var18[var19 + var22][var20 + var2] & 19137016) != 0 || (var18[var19 + var2][var22 + var20] & 19136995) != 0) { // L: 370 371 - continue label759; - } + return 1; + } else { + String var5; + if (var0 == ScriptOpcodes.FRIEND_SETRANK) { + var5 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + int var6 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + GrandExchangeOfferOwnWorldComparator.method1359(var5, var6); + return 1; + } else if (var0 == ScriptOpcodes.FRIEND_ADD) { + var5 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + MilliClock.friendSystem.addFriend(var5); + return 1; + } else if (var0 == ScriptOpcodes.FRIEND_DEL) { + var5 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + MilliClock.friendSystem.removeFriend(var5); + return 1; + } else if (var0 == ScriptOpcodes.IGNORE_ADD) { + var5 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + MilliClock.friendSystem.addIgnore(var5); + return 1; + } else if (var0 == ScriptOpcodes.IGNORE_DEL) { + var5 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + MilliClock.friendSystem.removeIgnore(var5); + return 1; + } else if (var0 == ScriptOpcodes.FRIEND_TEST) { + var5 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + var5 = class22.method220(var5); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = MilliClock.friendSystem.isFriended(new Username(var5, GrandExchangeOfferUnitPriceComparator.loginType), false) ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.CLAN_GETCHATDISPLAYNAME) { + if (WorldMapArea.clanChat != null) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = WorldMapArea.clanChat.name; + } else { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; } - class182.bufferX[var33] = var10 + 1; // L: 373 - class182.bufferY[var33] = var11 + 1; // L: 374 - var33 = var33 + 1 & 4095; // L: 375 - class182.directions[var30 + 1][var31 + 1] = 12; // L: 376 - class182.distances[var30 + 1][var31 + 1] = var21; // L: 377 - } - } + return 1; + } else if (var0 == ScriptOpcodes.CLAN_GETCHATCOUNT) { + if (WorldMapArea.clanChat != null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = WorldMapArea.clanChat.getSize(); + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } - var28 = var29; // L: 384 - } + return 1; + } else if (var0 == ScriptOpcodes.CLAN_GETCHATUSERNAME) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (WorldMapArea.clanChat != null && var3 < WorldMapArea.clanChat.getSize()) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = WorldMapArea.clanChat.get(var3).getUsername().getName(); + } else { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + } - var9 = var0 - 64; // L: 386 - var10 = var1 - 64; // L: 387 - var11 = Ignored.field3637; // L: 388 - var30 = class182.field2122; // L: 389 - if (!var28) { // L: 390 - var31 = Integer.MAX_VALUE; // L: 392 - var14 = Integer.MAX_VALUE; // L: 393 - byte var32 = 10; // L: 394 - var33 = var3.approxDestinationX; // L: 395 - var17 = var3.approxDestinationY; // L: 396 - int var27 = var3.approxDestinationSizeX; // L: 397 - var19 = var3.approxDestinationSizeY; // L: 398 + return 1; + } else if (var0 == ScriptOpcodes.CLAN_GETCHATUSERWORLD) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (WorldMapArea.clanChat != null && var3 < WorldMapArea.clanChat.getSize()) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = ((Buddy)WorldMapArea.clanChat.get(var3)).getWorld(); + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } - for (var20 = var33 - var32; var20 <= var32 + var33; ++var20) { // L: 399 - for (var21 = var17 - var32; var21 <= var17 + var32; ++var21) { // L: 400 - var22 = var20 - var9; // L: 401 - int var23 = var21 - var10; // L: 402 - if (var22 >= 0 && var23 >= 0 && var22 < 128 && var23 < 128 && class182.distances[var22][var23] < 100) { // L: 403 404 - int var24 = 0; // L: 405 - if (var20 < var33) { // L: 406 - var24 = var33 - var20; - } else if (var20 > var27 + var33 - 1) { // L: 407 - var24 = var20 - (var33 + var27 - 1); - } + return 1; + } else if (var0 == ScriptOpcodes.CLAN_GETCHATUSERRANK) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (WorldMapArea.clanChat != null && var3 < WorldMapArea.clanChat.getSize()) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = ((Buddy)WorldMapArea.clanChat.get(var3)).rank; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } - int var25 = 0; // L: 408 - if (var21 < var17) { // L: 409 - var25 = var17 - var21; - } else if (var21 > var19 + var17 - 1) { // L: 410 - var25 = var21 - (var17 + var19 - 1); - } + return 1; + } else if (var0 == ScriptOpcodes.CLAN_GETCHATMINKICK) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = WorldMapArea.clanChat != null ? WorldMapArea.clanChat.minKick : 0; + return 1; + } else if (var0 == ScriptOpcodes.CLAN_KICKUSER) { + var5 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + Tiles.clanKickUser(var5); + return 1; + } else if (var0 == ScriptOpcodes.CLAN_GETCHATRANK) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = WorldMapArea.clanChat != null ? WorldMapArea.clanChat.rank : 0; + return 1; + } else if (var0 == ScriptOpcodes.CLAN_JOINCHAT) { + var5 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + Varcs.Clan_joinChat(var5); + return 1; + } else if (var0 == ScriptOpcodes.CLAN_LEAVECHAT) { + BZip2State.Clan_leaveChat(); + return 1; + } else if (var0 == ScriptOpcodes.IGNORE_COUNT) { + if (!MilliClock.friendSystem.method1939()) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = MilliClock.friendSystem.ignoreList.getSize(); + } - int var26 = var25 * var25 + var24 * var24; // L: 411 - if (var26 < var31 || var31 == var26 && class182.distances[var22][var23] < var14) { // L: 412 - var31 = var26; // L: 413 - var14 = class182.distances[var22][var23]; // L: 414 - var11 = var20; // L: 415 - var30 = var21; // L: 416 + return 1; + } else if (var0 == ScriptOpcodes.IGNORE_GETNAME) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (MilliClock.friendSystem.method1939() && var3 >= 0 && var3 < MilliClock.friendSystem.ignoreList.getSize()) { + Ignored var4 = (Ignored)MilliClock.friendSystem.ignoreList.get(var3); + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var4.getName(); + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var4.getPreviousName(); + } else { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + } + + return 1; + } else if (var0 == ScriptOpcodes.IGNORE_TEST) { + var5 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + var5 = class22.method220(var5); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = MilliClock.friendSystem.isIgnored(new Username(var5, GrandExchangeOfferUnitPriceComparator.loginType)) ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.CLAN_ISSELF) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (WorldMapArea.clanChat != null && var3 < WorldMapArea.clanChat.getSize() && WorldMapArea.clanChat.get(var3).getUsername().equals(PlayerAppearance.localPlayer.username)) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == ScriptOpcodes.CLAN_GETCHATOWNERNAME) { + if (WorldMapArea.clanChat != null && WorldMapArea.clanChat.owner != null) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = WorldMapArea.clanChat.owner; + } else { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + } + + return 1; + } else if (var0 == ScriptOpcodes.CLAN_ISFRIEND) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (WorldMapArea.clanChat != null && var3 < WorldMapArea.clanChat.getSize() && ((ClanMate)WorldMapArea.clanChat.get(var3)).isFriend()) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 != ScriptOpcodes.CLAN_ISIGNORE) { + if (var0 == 3628) { + MilliClock.friendSystem.friendsList.removeComparator(); + return 1; + } else { + boolean var7; + if (var0 == 3629) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + MilliClock.friendSystem.friendsList.addComparator(new UserComparator1(var7)); + return 1; + } else if (var0 == 3630) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + MilliClock.friendSystem.friendsList.addComparator(new UserComparator2(var7)); + return 1; + } else if (var0 == 3631) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + MilliClock.friendSystem.friendsList.addComparator(new UserComparator3(var7)); + return 1; + } else if (var0 == 3632) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + MilliClock.friendSystem.friendsList.addComparator(new UserComparator4(var7)); + return 1; + } else if (var0 == 3633) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + MilliClock.friendSystem.friendsList.addComparator(new UserComparator5(var7)); + return 1; + } else if (var0 == 3634) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + MilliClock.friendSystem.friendsList.addComparator(new UserComparator6(var7)); + return 1; + } else if (var0 == 3635) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + MilliClock.friendSystem.friendsList.addComparator(new UserComparator7(var7)); + return 1; + } else if (var0 == 3636) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + MilliClock.friendSystem.friendsList.addComparator(new UserComparator8(var7)); + return 1; + } else if (var0 == 3637) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + MilliClock.friendSystem.friendsList.addComparator(new UserComparator9(var7)); + return 1; + } else if (var0 == 3638) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + MilliClock.friendSystem.friendsList.addComparator(new UserComparator10(var7)); + return 1; + } else if (var0 == 3639) { + MilliClock.friendSystem.friendsList.sort(); + return 1; + } else if (var0 == 3640) { + MilliClock.friendSystem.ignoreList.removeComparator(); + return 1; + } else if (var0 == 3641) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + MilliClock.friendSystem.ignoreList.addComparator(new UserComparator1(var7)); + return 1; + } else if (var0 == 3642) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + MilliClock.friendSystem.ignoreList.addComparator(new UserComparator2(var7)); + return 1; + } else if (var0 == 3643) { + MilliClock.friendSystem.ignoreList.sort(); + return 1; + } else if (var0 == 3644) { + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.removeComparator(); + } + + return 1; + } else if (var0 == 3645) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.addComparator(new UserComparator1(var7)); + } + + return 1; + } else if (var0 == 3646) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.addComparator(new UserComparator2(var7)); + } + + return 1; + } else if (var0 == 3647) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.addComparator(new UserComparator3(var7)); + } + + return 1; + } else if (var0 == 3648) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.addComparator(new UserComparator4(var7)); + } + + return 1; + } else if (var0 == 3649) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.addComparator(new UserComparator5(var7)); + } + + return 1; + } else if (var0 == 3650) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.addComparator(new UserComparator6(var7)); + } + + return 1; + } else if (var0 == 3651) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.addComparator(new UserComparator7(var7)); + } + + return 1; + } else if (var0 == 3652) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.addComparator(new UserComparator8(var7)); + } + + return 1; + } else if (var0 == 3653) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.addComparator(new UserComparator9(var7)); + } + + return 1; + } else if (var0 == 3654) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.addComparator(new UserComparator10(var7)); + } + + return 1; + } else if (var0 == 3655) { + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.sort(); + } + + return 1; + } else if (var0 == 3656) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + MilliClock.friendSystem.friendsList.addComparator(new BuddyRankComparator(var7)); + return 1; + } else if (var0 == 3657) { + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.addComparator(new BuddyRankComparator(var7)); + } + + return 1; + } else { + return 2; } } + } else { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (WorldMapArea.clanChat != null && var3 < WorldMapArea.clanChat.getSize() && ((ClanMate)WorldMapArea.clanChat.get(var3)).isIgnored()) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } + + return 1; } } - - if (var31 == Integer.MAX_VALUE) { // L: 422 - return -1; - } - } - - if (var0 == var11 && var30 == var1) { // L: 426 - return 0; - } else { - var13 = 0; // L: 427 - class182.bufferX[var13] = var11; // L: 430 - var31 = var13 + 1; - class182.bufferY[var13] = var30; // L: 431 - - for (var14 = var15 = class182.directions[var11 - var9][var30 - var10]; var0 != var11 || var30 != var1; var14 = class182.directions[var11 - var9][var30 - var10]) { // L: 432 433 443 - if (var14 != var15) { // L: 434 - var15 = var14; // L: 435 - class182.bufferX[var31] = var11; // L: 436 - class182.bufferY[var31++] = var30; // L: 437 - } - - if ((var14 & 2) != 0) { // L: 439 - ++var11; - } else if ((var14 & 8) != 0) { // L: 440 - --var11; - } - - if ((var14 & 1) != 0) { // L: 441 - ++var30; - } else if ((var14 & 4) != 0) { // L: 442 - --var30; - } - } - - var33 = 0; // L: 445 - - while (var31-- > 0) { // L: 446 - var6[var33] = class182.bufferX[var31]; // L: 447 - var7[var33++] = class182.bufferY[var31]; // L: 448 - if (var33 >= var6.length) { // L: 449 - break; - } - } - - return var33; // L: 451 } } - @ObfuscatedName("f") + @ObfuscatedName("ip") @ObfuscatedSignature( - descriptor = "([Ljava/lang/CharSequence;III)Ljava/lang/String;", - garbageValue = "-1942502942" + descriptor = "(I)V", + garbageValue = "-1035519670" ) - public static String method1324(CharSequence[] var0, int var1, int var2) { - if (var2 == 0) { // L: 11 - return ""; - } else if (var2 == 1) { // L: 12 - CharSequence var10 = var0[var1]; // L: 13 - return var10 == null ? "null" : var10.toString(); // L: 14 15 - } else { - int var3 = var2 + var1; // L: 17 - int var4 = 0; // L: 18 - - for (int var5 = var1; var5 < var3; ++var5) { // L: 19 - CharSequence var9 = var0[var5]; // L: 20 - if (var9 == null) { // L: 21 - var4 += 4; - } else { - var4 += var9.length(); // L: 22 - } - } - - StringBuilder var8 = new StringBuilder(var4); // L: 24 - - for (int var6 = var1; var6 < var3; ++var6) { // L: 25 - CharSequence var7 = var0[var6]; // L: 26 - if (var7 == null) { // L: 27 - var8.append("null"); - } else { - var8.append(var7); // L: 28 - } - } - - return var8.toString(); // L: 30 - } + @Export("addCancelMenuEntry") + static void addCancelMenuEntry() { + Client.menuOptionsCount = 0; + Client.isMenuOpen = false; + Client.menuActions[0] = "Cancel"; + Client.menuTargets[0] = ""; + Client.menuOpcodes[0] = 1006; + Client.menuShiftClick[0] = false; + Client.menuOptionsCount = 1; } - - @ObfuscatedName("fk") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "16" - ) - static final void method1317() { - int[] var0 = Players.Players_indices; // L: 3667 - - int var1; - for (var1 = 0; var1 < Players.Players_count; ++var1) { // L: 3668 - Player var4 = Client.players[var0[var1]]; // L: 3669 - if (var4 != null && var4.overheadTextCyclesRemaining > 0) { // L: 3670 - --var4.overheadTextCyclesRemaining; // L: 3671 - if (var4.overheadTextCyclesRemaining == 0) { // L: 3672 - var4.overheadText = null; - } - } - } - - for (var1 = 0; var1 < Client.npcCount; ++var1) { // L: 3675 - int var2 = Client.npcIndices[var1]; // L: 3676 - NPC var3 = Client.npcs[var2]; // L: 3677 - if (var3 != null && var3.overheadTextCyclesRemaining > 0) { // L: 3678 - --var3.overheadTextCyclesRemaining; // L: 3679 - if (var3.overheadTextCyclesRemaining == 0) { // L: 3680 - var3.overheadText = null; - } - } - } - - } // L: 3683 } diff --git a/runescape-client/src/main/java/Archive.java b/runescape-client/src/main/java/Archive.java index 5d25daf3e2..fffdf49d3e 100644 --- a/runescape-client/src/main/java/Archive.java +++ b/runescape-client/src/main/java/Archive.java @@ -4,90 +4,105 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.Reflection; -@ObfuscatedName("id") +@ObfuscatedName("il") @Implements("Archive") public class Archive extends AbstractArchive { - @ObfuscatedName("ao") + @ObfuscatedName("ax") @Export("Archive_crc") static CRC32 Archive_crc; - @ObfuscatedName("a") + @ObfuscatedName("s") @ObfuscatedSignature( - descriptor = "Llt;" + descriptor = "Llx;" ) @Export("archiveDisk") ArchiveDisk archiveDisk; - @ObfuscatedName("g") + @ObfuscatedName("o") @ObfuscatedSignature( - descriptor = "Llt;" + descriptor = "Llx;" ) @Export("masterDisk") ArchiveDisk masterDisk; - @ObfuscatedName("h") + @ObfuscatedName("k") @ObfuscatedGetter( - intValue = -1087109335 + intValue = -238698165 ) @Export("index") int index; - @ObfuscatedName("i") - volatile boolean field3180; - @ObfuscatedName("ab") - boolean field3183; - @ObfuscatedName("ac") + @ObfuscatedName("d") + volatile boolean field3185; + @ObfuscatedName("an") + boolean field3192; + @ObfuscatedName("aj") @Export("validGroups") volatile boolean[] validGroups; - @ObfuscatedName("af") + @ObfuscatedName("ag") @ObfuscatedGetter( - intValue = -861635571 + intValue = 490839009 ) @Export("indexCrc") int indexCrc; - @ObfuscatedName("av") + @ObfuscatedName("au") @ObfuscatedGetter( - intValue = 711915875 + intValue = -1466147075 ) @Export("indexVersion") int indexVersion; - @ObfuscatedName("ar") + @ObfuscatedName("as") @ObfuscatedGetter( - intValue = 833914621 + intValue = 1342642221 ) - int field3188; + int field3191; static { - Archive_crc = new CRC32(); // L: 17 + Archive_crc = new CRC32(); } @ObfuscatedSignature( - descriptor = "(Llt;Llt;IZZZ)V" + descriptor = "(Llx;Llx;IZZZ)V" ) public Archive(ArchiveDisk var1, ArchiveDisk var2, int var3, boolean var4, boolean var5, boolean var6) { super(var4, var5); - this.field3180 = false; // L: 14 - this.field3183 = false; // L: 15 - this.field3188 = -1; - this.archiveDisk = var1; // L: 24 - this.masterDisk = var2; // L: 25 - this.index = var3; // L: 26 - this.field3183 = var6; // L: 27 - class236.method4263(this, this.index); // L: 28 - } // L: 29 + this.field3185 = false; + this.field3192 = false; + this.field3191 = -1; + this.archiveDisk = var1; + this.masterDisk = var2; + this.index = var3; + this.field3192 = var6; + int var8 = this.index; + if (WorldMapLabel.NetCache_reference != null) { + WorldMapLabel.NetCache_reference.offset = var8 * 8 + 5; + int var9 = WorldMapLabel.NetCache_reference.readInt(); + int var10 = WorldMapLabel.NetCache_reference.readInt(); + this.loadIndex(var9, var10); + } else { + Widget.requestNetFile((Archive)null, 255, 255, 0, (byte)0, true); + NetCache.NetCache_archives[var8] = this; + } - @ObfuscatedName("b") + } + + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "1666992241" + garbageValue = "-1807571765" ) @Export("loadRegionFromGroup") void loadRegionFromGroup(int var1) { - WorldMapSection3.method870(this.index, var1); // L: 54 - } // L: 55 + int var2 = this.index; + long var3 = (long)((var2 << 16) + var1); + NetFileRequest var5 = (NetFileRequest)NetCache.NetCache_pendingWrites.get(var3); + if (var5 != null) { + NetCache.NetCache_pendingWritesQueue.addLast(var5); + } - @ObfuscatedName("u") + } + + @ObfuscatedName("l") @ObfuscatedSignature( descriptor = "(II)I", - garbageValue = "1168057688" + garbageValue = "2120197275" ) @Export("groupLoadPercent") int groupLoadPercent(int var1) { @@ -99,372 +114,340 @@ public class Archive extends AbstractArchive { int var3 = this.index; long var4 = (long)((var3 << 16) + var1); int var2; - if (NetCache.NetCache_currentResponse != null && var4 == NetCache.NetCache_currentResponse.key) { - var2 = NetCache.NetCache_responseArchiveBuffer.offset * 99 / (NetCache.NetCache_responseArchiveBuffer.array.length - NetCache.NetCache_currentResponse.padding) + 1; // L: 231 + if (NetCache.NetCache_currentResponse != null && NetCache.NetCache_currentResponse.key == var4) { + var2 = class206.NetCache_responseArchiveBuffer.offset * 99 / (class206.NetCache_responseArchiveBuffer.array.length - NetCache.NetCache_currentResponse.padding) + 1; } else { - var2 = 0; // L: 228 + var2 = 0; } - return var2; // L: 233 + return var2; } } - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "1308309481" - ) - @Export("loadGroup") - void loadGroup(int var1) { - if (this.archiveDisk != null && this.validGroups != null && this.validGroups[var1]) { // L: 58 - ArchiveDisk var2 = this.archiveDisk; // L: 59 - byte[] var4 = null; // L: 62 - synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue) { // L: 63 - for (ArchiveDiskAction var6 = (ArchiveDiskAction)ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.last(); var6 != null; var6 = (ArchiveDiskAction)ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.previous()) { // L: 64 - if (var6.key == (long)var1 && var2 == var6.archiveDisk && var6.type == 0) { // L: 65 - var4 = var6.data; // L: 66 - break; // L: 67 - } - } - } - - if (var4 != null) { // L: 71 - this.load(var2, var1, var4, true); // L: 72 - } else { - byte[] var5 = var2.read(var1); // L: 75 - this.load(var2, var1, var5, true); // L: 76 - } - } else { - VarcInt.requestNetFile(this, this.index, var1, super.groupCrcs[var1], (byte)2, true); // L: 79 - } - - } // L: 80 - - @ObfuscatedName("dv") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-1771311633" - ) - public boolean method4420() { - return this.field3180; // L: 32 - } - - @ObfuscatedName("df") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "853852990" - ) - @Export("percentage") - public int percentage() { - if (this.field3180) { // L: 36 - return 100; - } else if (super.groups != null) { // L: 37 - return 99; - } else { - int var2 = this.index; // L: 39 - long var3 = (long)(var2 + 16711680); // L: 41 - int var1; - if (NetCache.NetCache_currentResponse != null && var3 == NetCache.NetCache_currentResponse.key) { // L: 42 - var1 = NetCache.NetCache_responseArchiveBuffer.offset * 99 / (NetCache.NetCache_responseArchiveBuffer.array.length - NetCache.NetCache_currentResponse.padding) + 1; // L: 46 - } else { - var1 = 0; // L: 43 - } - - int var5 = var1; // L: 48 - if (var1 >= 100) { // L: 49 - var5 = 99; - } - - return var5; // L: 50 - } - } - - @ObfuscatedName("dd") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "2008218250" - ) - @Export("loadIndex") - void loadIndex(int var1, int var2) { - this.indexCrc = var1; // L: 83 - this.indexVersion = var2; // L: 84 - if (this.masterDisk != null) { // L: 85 - int var3 = this.index; // L: 86 - ArchiveDisk var4 = this.masterDisk; // L: 87 - byte[] var6 = null; // L: 90 - synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue) { // L: 91 - for (ArchiveDiskAction var8 = (ArchiveDiskAction)ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.last(); var8 != null; var8 = (ArchiveDiskAction)ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.previous()) { // L: 92 - if ((long)var3 == var8.key && var4 == var8.archiveDisk && var8.type == 0) { // L: 93 - var6 = var8.data; // L: 94 - break; // L: 95 - } - } - } - - if (var6 != null) { // L: 99 - this.load(var4, var3, var6, true); // L: 100 - } else { - byte[] var7 = var4.read(var3); // L: 103 - this.load(var4, var3, var7, true); // L: 104 - } - } else { - VarcInt.requestNetFile(this, 255, this.index, this.indexCrc, (byte)0, true); // L: 107 - } - - } // L: 108 - - @ObfuscatedName("dl") - @ObfuscatedSignature( - descriptor = "(I[BZZI)V", - garbageValue = "-1937939642" - ) - @Export("write") - void write(int var1, byte[] var2, boolean var3, boolean var4) { - if (var3) { // L: 111 - if (this.field3180) { // L: 112 - throw new RuntimeException(); // L: 113 - } - - if (this.masterDisk != null) { // L: 115 - UrlRequester.method3417(this.index, var2, this.masterDisk); - } - - this.decodeIndex(var2); // L: 116 - this.loadAllLocal(); // L: 117 - } else { - var2[var2.length - 2] = (byte)(super.groupVersions[var1] >> 8); // L: 120 - var2[var2.length - 1] = (byte)super.groupVersions[var1]; // L: 121 - if (this.archiveDisk != null) { // L: 122 - UrlRequester.method3417(var1, var2, this.archiveDisk); // L: 123 - this.validGroups[var1] = true; // L: 124 - } - - if (var4) { - super.groups[var1] = AbstractByteArrayCopier.method4069(var2, false); // L: 126 - } - } - - } // L: 128 - - @ObfuscatedName("dq") - @ObfuscatedSignature( - descriptor = "(Llt;I[BZI)V", - garbageValue = "-1033218148" - ) - @Export("load") - public void load(ArchiveDisk var1, int var2, byte[] var3, boolean var4) { - int var5; - if (var1 == this.masterDisk) { // L: 131 - if (this.field3180) { // L: 132 - throw new RuntimeException(); // L: 133 - } - - if (var3 == null) { // L: 135 - VarcInt.requestNetFile(this, 255, this.index, this.indexCrc, (byte)0, true); // L: 136 - return; // L: 137 - } - - Archive_crc.reset(); // L: 139 - Archive_crc.update(var3, 0, var3.length); // L: 140 - var5 = (int)Archive_crc.getValue(); // L: 141 - if (var5 != this.indexCrc) { // L: 142 - VarcInt.requestNetFile(this, 255, this.index, this.indexCrc, (byte)0, true); // L: 143 - return; // L: 144 - } - - Buffer var9 = new Buffer(UserComparator3.decompressBytes(var3)); // L: 146 - int var7 = var9.readUnsignedByte(); // L: 147 - if (var7 != 5 && var7 != 6) { // L: 148 - throw new RuntimeException(var7 + "," + this.index + "," + var2); - } - - int var8 = 0; // L: 149 - if (var7 >= 6) { // L: 150 - var8 = var9.readInt(); - } - - if (var8 != this.indexVersion) { // L: 151 - VarcInt.requestNetFile(this, 255, this.index, this.indexCrc, (byte)0, true); // L: 152 - return; // L: 153 - } - - this.decodeIndex(var3); // L: 155 - this.loadAllLocal(); // L: 156 - } else { - if (!var4 && var2 == this.field3188) { // L: 159 - this.field3180 = true; // L: 160 - } - - if (var3 == null || var3.length <= 2) { // L: 162 - this.validGroups[var2] = false; // L: 163 - if (this.field3183 || var4) { // L: 164 - VarcInt.requestNetFile(this, this.index, var2, super.groupCrcs[var2], (byte)2, var4); - } - - return; // L: 165 - } - - Archive_crc.reset(); // L: 167 - Archive_crc.update(var3, 0, var3.length - 2); // L: 168 - var5 = (int)Archive_crc.getValue(); // L: 169 - int var6 = ((var3[var3.length - 2] & 255) << 8) + (var3[var3.length - 1] & 255); // L: 170 - if (var5 != super.groupCrcs[var2] || var6 != super.groupVersions[var2]) { // L: 171 - this.validGroups[var2] = false; // L: 172 - if (this.field3183 || var4) { // L: 173 - VarcInt.requestNetFile(this, this.index, var2, super.groupCrcs[var2], (byte)2, var4); - } - - return; // L: 174 - } - - this.validGroups[var2] = true; // L: 176 - if (var4) { // L: 177 - super.groups[var2] = AbstractByteArrayCopier.method4069(var3, false); - } - } - - } // L: 179 - - @ObfuscatedName("dp") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1835807428" - ) - @Export("loadAllLocal") - void loadAllLocal() { - this.validGroups = new boolean[super.groups.length]; // L: 182 - - int var1; - for (var1 = 0; var1 < this.validGroups.length; ++var1) { // L: 183 - this.validGroups[var1] = false; - } - - if (this.archiveDisk == null) { // L: 184 - this.field3180 = true; // L: 185 - } else { - this.field3188 = -1; // L: 188 - - for (var1 = 0; var1 < this.validGroups.length; ++var1) { // L: 189 - if (super.fileCounts[var1] > 0) { // L: 190 - ArchiveDisk var2 = this.archiveDisk; // L: 191 - ArchiveDiskAction var4 = new ArchiveDiskAction(); // L: 194 - var4.type = 1; // L: 195 - var4.key = (long)var1; // L: 196 - var4.archiveDisk = var2; // L: 197 - var4.archive = this; // L: 198 - synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue) { // L: 199 - ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.addFirst(var4); // L: 200 - } // L: 201 - - synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_lock) { // L: 203 - if (ArchiveDiskActionHandler.field3176 == 0) { // L: 204 - class105.ArchiveDiskActionHandler_thread = new Thread(new ArchiveDiskActionHandler()); // L: 205 - class105.ArchiveDiskActionHandler_thread.setDaemon(true); // L: 206 - class105.ArchiveDiskActionHandler_thread.start(); // L: 207 - class105.ArchiveDiskActionHandler_thread.setPriority(5); // L: 208 - } - - ArchiveDiskActionHandler.field3176 = 600; // L: 210 - } - - this.field3188 = var1; // L: 214 - } - } - - if (this.field3188 == -1) { // L: 217 - this.field3180 = true; - } - - } - } // L: 186 - - @ObfuscatedName("do") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "1907030186" - ) - public boolean method4411(int var1) { - return this.validGroups[var1]; // L: 237 - } - - @ObfuscatedName("dm") - @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "0" - ) - public boolean method4416(int var1) { - return this.getGroupFileIds(var1) != null; // L: 241 - } - - @ObfuscatedName("dh") - @ObfuscatedSignature( - descriptor = "(S)I", - garbageValue = "2047" - ) - @Export("loadPercent") - public int loadPercent() { - int var1 = 0; // L: 245 - int var2 = 0; // L: 246 - - int var3; - for (var3 = 0; var3 < super.groups.length; ++var3) { // L: 247 - if (super.fileCounts[var3] > 0) { // L: 248 - var1 += 100; // L: 249 - var2 += this.groupLoadPercent(var3); // L: 250 - } - } - - if (var1 == 0) { // L: 253 - return 100; - } else { - var3 = var2 * 100 / var1; // L: 254 - return var3; // L: 255 - } - } - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(DDII)[D", - garbageValue = "-2056845281" - ) - public static double[] method4445(double var0, double var2, int var4) { - int var5 = var4 * 2 + 1; // L: 18 - double[] var6 = new double[var5]; // L: 19 - int var7 = -var4; - - for (int var8 = 0; var7 <= var4; ++var8) { - var6[var8] = Script.method2356((double)var7, var0, var2); // L: 21 - ++var7; // L: 20 - } - - return var6; // L: 23 - } - @ObfuscatedName("m") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)Ljava/lang/Class;", - garbageValue = "-1832830458" + descriptor = "(II)V", + garbageValue = "786262695" ) - @Export("loadClassFromDescriptor") - static Class loadClassFromDescriptor(String var0) throws ClassNotFoundException { - if (var0.equals("B")) { // L: 218 - return Byte.TYPE; - } else if (var0.equals("I")) { // L: 219 - return Integer.TYPE; - } else if (var0.equals("S")) { // L: 220 - return Short.TYPE; - } else if (var0.equals("J")) { - return Long.TYPE; // L: 221 - } else if (var0.equals("Z")) { // L: 222 - return Boolean.TYPE; - } else if (var0.equals("F")) { // L: 223 - return Float.TYPE; - } else if (var0.equals("D")) { // L: 224 - return Double.TYPE; - } else if (var0.equals("C")) { - return Character.TYPE; // L: 225 + @Export("loadGroup") + void loadGroup(int var1) { + if (this.archiveDisk != null && this.validGroups != null && this.validGroups[var1]) { + ArchiveDisk var2 = this.archiveDisk; + byte[] var4 = null; + synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue) { + for (ArchiveDiskAction var6 = (ArchiveDiskAction)ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.last(); var6 != null; var6 = (ArchiveDiskAction)ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.previous()) { + if (var6.key == (long)var1 && var2 == var6.archiveDisk && var6.type == 0) { + var4 = var6.data; + break; + } + } + } + + if (var4 != null) { + this.load(var2, var1, var4, true); + } else { + byte[] var5 = var2.read(var1); + this.load(var2, var1, var5, true); + } } else { - return var0.equals("void") ? Void.TYPE : Reflection.findClass(var0); // L: 226 227 + Widget.requestNetFile(this, this.index, var1, super.groupCrcs[var1], (byte)2, true); + } + + } + + @ObfuscatedName("cv") + @ObfuscatedSignature( + descriptor = "(B)Z", + garbageValue = "2" + ) + public boolean method4304() { + return this.field3185; + } + + @ObfuscatedName("cs") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "564971922" + ) + @Export("percentage") + public int percentage() { + if (this.field3185) { + return 100; + } else if (super.groups != null) { + return 99; + } else { + int var2 = this.index; + long var3 = (long)(var2 + 16711680); + int var1; + if (NetCache.NetCache_currentResponse != null && NetCache.NetCache_currentResponse.key == var3) { + var1 = class206.NetCache_responseArchiveBuffer.offset * 99 / (class206.NetCache_responseArchiveBuffer.array.length - NetCache.NetCache_currentResponse.padding) + 1; + } else { + var1 = 0; + } + + int var5 = var1; + if (var1 >= 100) { + var5 = 99; + } + + return var5; } } + + @ObfuscatedName("cn") + @ObfuscatedSignature( + descriptor = "(III)V", + garbageValue = "-1317908799" + ) + @Export("loadIndex") + public void loadIndex(int var1, int var2) { + this.indexCrc = var1; + this.indexVersion = var2; + if (this.masterDisk != null) { + int var3 = this.index; + ArchiveDisk var4 = this.masterDisk; + byte[] var6 = null; + synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue) { + for (ArchiveDiskAction var8 = (ArchiveDiskAction)ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.last(); var8 != null; var8 = (ArchiveDiskAction)ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.previous()) { + if ((long)var3 == var8.key && var4 == var8.archiveDisk && var8.type == 0) { + var6 = var8.data; + break; + } + } + } + + if (var6 != null) { + this.load(var4, var3, var6, true); + } else { + byte[] var7 = var4.read(var3); + this.load(var4, var3, var7, true); + } + } else { + Widget.requestNetFile(this, 255, this.index, this.indexCrc, (byte)0, true); + } + + } + + @ObfuscatedName("co") + @ObfuscatedSignature( + descriptor = "(I[BZZI)V", + garbageValue = "1890692" + ) + @Export("write") + public void write(int var1, byte[] var2, boolean var3, boolean var4) { + if (var3) { + if (this.field3185) { + throw new RuntimeException(); + } + + if (this.masterDisk != null) { + KeyHandler.method872(this.index, var2, this.masterDisk); + } + + this.decodeIndex(var2); + this.loadAllLocal(); + } else { + var2[var2.length - 2] = (byte)(super.groupVersions[var1] >> 8); + var2[var2.length - 1] = (byte)super.groupVersions[var1]; + if (this.archiveDisk != null) { + KeyHandler.method872(var1, var2, this.archiveDisk); + this.validGroups[var1] = true; + } + + if (var4) { + Object[] var5 = super.groups; + Object var7; + if (var2 == null) { + var7 = null; + } else if (var2.length > 136) { + DirectByteArrayCopier var8 = new DirectByteArrayCopier(); + var8.set(var2); + var7 = var8; + } else { + var7 = var2; + } + + var5[var1] = var7; + } + } + + } + + @ObfuscatedName("dh") + @ObfuscatedSignature( + descriptor = "(Llx;I[BZI)V", + garbageValue = "1276790127" + ) + @Export("load") + void load(ArchiveDisk var1, int var2, byte[] var3, boolean var4) { + int var5; + if (var1 == this.masterDisk) { + if (this.field3185) { + throw new RuntimeException(); + } + + if (var3 == null) { + Widget.requestNetFile(this, 255, this.index, this.indexCrc, (byte)0, true); + return; + } + + Archive_crc.reset(); + Archive_crc.update(var3, 0, var3.length); + var5 = (int)Archive_crc.getValue(); + if (var5 != this.indexCrc) { + Widget.requestNetFile(this, 255, this.index, this.indexCrc, (byte)0, true); + return; + } + + Buffer var11 = new Buffer(PrivateChatMode.decompressBytes(var3)); + int var12 = var11.readUnsignedByte(); + if (var12 != 5 && var12 != 6) { + throw new RuntimeException(var12 + "," + this.index + "," + var2); + } + + int var8 = 0; + if (var12 >= 6) { + var8 = var11.readInt(); + } + + if (var8 != this.indexVersion) { + Widget.requestNetFile(this, 255, this.index, this.indexCrc, (byte)0, true); + return; + } + + this.decodeIndex(var3); + this.loadAllLocal(); + } else { + if (!var4 && var2 == this.field3191) { + this.field3185 = true; + } + + if (var3 == null || var3.length <= 2) { + this.validGroups[var2] = false; + if (this.field3192 || var4) { + Widget.requestNetFile(this, this.index, var2, super.groupCrcs[var2], (byte)2, var4); + } + + return; + } + + Archive_crc.reset(); + Archive_crc.update(var3, 0, var3.length - 2); + var5 = (int)Archive_crc.getValue(); + int var6 = ((var3[var3.length - 2] & 255) << 8) + (var3[var3.length - 1] & 255); + if (var5 != super.groupCrcs[var2] || var6 != super.groupVersions[var2]) { + this.validGroups[var2] = false; + if (this.field3192 || var4) { + Widget.requestNetFile(this, this.index, var2, super.groupCrcs[var2], (byte)2, var4); + } + + return; + } + + this.validGroups[var2] = true; + if (var4) { + Object[] var7 = super.groups; + Object var9; + if (var3 == null) { + var9 = null; + } else if (var3.length > 136) { + DirectByteArrayCopier var10 = new DirectByteArrayCopier(); + var10.set(var3); + var9 = var10; + } else { + var9 = var3; + } + + var7[var2] = var9; + } + } + + } + + @ObfuscatedName("dl") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-457246550" + ) + @Export("loadAllLocal") + void loadAllLocal() { + this.validGroups = new boolean[super.groups.length]; + + int var1; + for (var1 = 0; var1 < this.validGroups.length; ++var1) { + this.validGroups[var1] = false; + } + + if (this.archiveDisk == null) { + this.field3185 = true; + } else { + this.field3191 = -1; + + for (var1 = 0; var1 < this.validGroups.length; ++var1) { + if (super.fileCounts[var1] > 0) { + Skills.method4147(var1, this.archiveDisk, this); + this.field3191 = var1; + } + } + + if (this.field3191 == -1) { + this.field3185 = true; + } + + } + } + + @ObfuscatedName("du") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "-215383381" + ) + public boolean method4319(int var1) { + return this.validGroups[var1]; + } + + @ObfuscatedName("de") + @ObfuscatedSignature( + descriptor = "(IB)Z", + garbageValue = "2" + ) + public boolean method4305(int var1) { + return this.getGroupFileIds(var1) != null; + } + + @ObfuscatedName("dw") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "1590832710" + ) + @Export("loadPercent") + public int loadPercent() { + int var1 = 0; + int var2 = 0; + + int var3; + for (var3 = 0; var3 < super.groups.length; ++var3) { + if (super.fileCounts[var3] > 0) { + var1 += 100; + var2 += this.groupLoadPercent(var3); + } + } + + if (var1 == 0) { + return 100; + } else { + var3 = var2 * 100 / var1; + return var3; + } + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "-1996112671" + ) + @Export("isWorldMapEvent") + public static boolean isWorldMapEvent(int var0) { + return var0 == 10 || var0 == 11 || var0 == 12 || var0 == 13 || var0 == 14 || var0 == 15 || var0 == 16 || var0 == 17; + } } diff --git a/runescape-client/src/main/java/ArchiveDisk.java b/runescape-client/src/main/java/ArchiveDisk.java index 978d96546e..dcb33bc699 100644 --- a/runescape-client/src/main/java/ArchiveDisk.java +++ b/runescape-client/src/main/java/ArchiveDisk.java @@ -6,334 +6,331 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lt") +@ObfuscatedName("lx") @Implements("ArchiveDisk") public final class ArchiveDisk { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("ArchiveDisk_buffer") static byte[] ArchiveDisk_buffer; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "Lmz;" ) @Export("datFile") BufferedFile datFile; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "Lmz;" ) @Export("idxFile") BufferedFile idxFile; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -1350468833 + intValue = 267421513 ) @Export("archive") int archive; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -893482237 + intValue = 1751631577 ) @Export("maxEntrySize") int maxEntrySize; static { - ArchiveDisk_buffer = new byte[520]; // L: 7 + ArchiveDisk_buffer = new byte[520]; } @ObfuscatedSignature( descriptor = "(ILmz;Lmz;I)V" ) public ArchiveDisk(int var1, BufferedFile var2, BufferedFile var3, int var4) { - this.datFile = null; // L: 8 - this.idxFile = null; // L: 9 - this.maxEntrySize = 65000; // L: 11 - this.archive = var1; // L: 14 - this.datFile = var2; // L: 15 - this.idxFile = var3; // L: 16 - this.maxEntrySize = var4; // L: 17 - } // L: 18 + this.datFile = null; + this.idxFile = null; + this.maxEntrySize = 65000; + this.archive = var1; + this.datFile = var2; + this.idxFile = var3; + this.maxEntrySize = var4; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(II)[B", - garbageValue = "-1607590310" + garbageValue = "361670705" ) @Export("read") public byte[] read(int var1) { - synchronized(this.datFile) { // L: 21 + synchronized(this.datFile) { try { Object var10000; - if (this.idxFile.length() < (long)(var1 * 6 + 6)) { // L: 23 + if (this.idxFile.length() < (long)(var1 * 6 + 6)) { var10000 = null; return (byte[])var10000; } else { - this.idxFile.seek((long)(var1 * 6)); // L: 24 - this.idxFile.read(ArchiveDisk_buffer, 0, 6); // L: 25 - int var3 = ((ArchiveDisk_buffer[0] & 255) << 16) + (ArchiveDisk_buffer[2] & 255) + ((ArchiveDisk_buffer[1] & 255) << 8); // L: 26 - int var4 = (ArchiveDisk_buffer[5] & 255) + ((ArchiveDisk_buffer[3] & 255) << 16) + ((ArchiveDisk_buffer[4] & 255) << 8); // L: 27 - if (var3 < 0 || var3 > this.maxEntrySize) { // L: 28 + this.idxFile.seek((long)(var1 * 6)); + this.idxFile.read(ArchiveDisk_buffer, 0, 6); + int var3 = ((ArchiveDisk_buffer[0] & 255) << 16) + (ArchiveDisk_buffer[2] & 255) + ((ArchiveDisk_buffer[1] & 255) << 8); + int var4 = (ArchiveDisk_buffer[5] & 255) + ((ArchiveDisk_buffer[3] & 255) << 16) + ((ArchiveDisk_buffer[4] & 255) << 8); + if (var3 < 0 || var3 > this.maxEntrySize) { var10000 = null; return (byte[])var10000; - } else if (var4 <= 0 || (long)var4 > this.datFile.length() / 520L) { // L: 29 + } else if (var4 <= 0 || (long)var4 > this.datFile.length() / 520L) { var10000 = null; return (byte[])var10000; } else { - byte[] var5 = new byte[var3]; // L: 30 - int var6 = 0; // L: 31 - int var7 = 0; // L: 32 + byte[] var5 = new byte[var3]; + int var6 = 0; - while (var6 < var3) { // L: 33 - if (var4 == 0) { // L: 34 + for (int var7 = 0; var6 < var3; ++var7) { + if (var4 == 0) { var10000 = null; return (byte[])var10000; } - this.datFile.seek((long)var4 * 520L); // L: 35 - int var8 = var3 - var6; // L: 36 + this.datFile.seek((long)var4 * 520L); + int var8 = var3 - var6; int var9; int var10; int var11; int var12; byte var13; - if (var1 > 65535) { // L: 42 - if (var8 > 510) { // L: 43 + if (var1 > 65535) { + if (var8 > 510) { var8 = 510; } - var13 = 10; // L: 44 - this.datFile.read(ArchiveDisk_buffer, 0, var8 + var13); // L: 45 - var9 = ((ArchiveDisk_buffer[1] & 255) << 16) + ((ArchiveDisk_buffer[0] & 255) << 24) + (ArchiveDisk_buffer[3] & 255) + ((ArchiveDisk_buffer[2] & 255) << 8); // L: 46 - var10 = (ArchiveDisk_buffer[5] & 255) + ((ArchiveDisk_buffer[4] & 255) << 8); // L: 47 - var11 = (ArchiveDisk_buffer[8] & 255) + ((ArchiveDisk_buffer[7] & 255) << 8) + ((ArchiveDisk_buffer[6] & 255) << 16); // L: 48 - var12 = ArchiveDisk_buffer[9] & 255; // L: 49 + var13 = 10; + this.datFile.read(ArchiveDisk_buffer, 0, var13 + var8); + var9 = ((ArchiveDisk_buffer[1] & 255) << 16) + ((ArchiveDisk_buffer[0] & 255) << 24) + (ArchiveDisk_buffer[3] & 255) + ((ArchiveDisk_buffer[2] & 255) << 8); + var10 = (ArchiveDisk_buffer[5] & 255) + ((ArchiveDisk_buffer[4] & 255) << 8); + var11 = (ArchiveDisk_buffer[8] & 255) + ((ArchiveDisk_buffer[7] & 255) << 8) + ((ArchiveDisk_buffer[6] & 255) << 16); + var12 = ArchiveDisk_buffer[9] & 255; } else { - if (var8 > 512) { // L: 52 + if (var8 > 512) { var8 = 512; } - var13 = 8; // L: 53 - this.datFile.read(ArchiveDisk_buffer, 0, var8 + var13); // L: 54 - var9 = (ArchiveDisk_buffer[1] & 255) + ((ArchiveDisk_buffer[0] & 255) << 8); // L: 55 - var10 = (ArchiveDisk_buffer[3] & 255) + ((ArchiveDisk_buffer[2] & 255) << 8); // L: 56 - var11 = ((ArchiveDisk_buffer[5] & 255) << 8) + ((ArchiveDisk_buffer[4] & 255) << 16) + (ArchiveDisk_buffer[6] & 255); // L: 57 - var12 = ArchiveDisk_buffer[7] & 255; // L: 58 + var13 = 8; + this.datFile.read(ArchiveDisk_buffer, 0, var8 + var13); + var9 = (ArchiveDisk_buffer[1] & 255) + ((ArchiveDisk_buffer[0] & 255) << 8); + var10 = (ArchiveDisk_buffer[3] & 255) + ((ArchiveDisk_buffer[2] & 255) << 8); + var11 = ((ArchiveDisk_buffer[5] & 255) << 8) + ((ArchiveDisk_buffer[4] & 255) << 16) + (ArchiveDisk_buffer[6] & 255); + var12 = ArchiveDisk_buffer[7] & 255; } - if (var9 == var1 && var7 == var10 && var12 == this.archive) { // L: 60 - if (var11 >= 0 && (long)var11 <= this.datFile.length() / 520L) { // L: 61 - int var14 = var13 + var8; // L: 62 - - for (int var15 = var13; var15 < var14; ++var15) { // L: 63 - var5[var6++] = ArchiveDisk_buffer[var15]; - } - - var4 = var11; // L: 64 - ++var7; // L: 65 - continue; // L: 66 - } - + if (var9 != var1 || var7 != var10 || var12 != this.archive) { var10000 = null; return (byte[])var10000; } - var10000 = null; - return (byte[])var10000; + if (var11 < 0 || (long)var11 > this.datFile.length() / 520L) { + var10000 = null; + return (byte[])var10000; + } + + int var14 = var13 + var8; + + for (int var15 = var13; var15 < var14; ++var15) { + var5[var6++] = ArchiveDisk_buffer[var15]; + } + + var4 = var11; } byte[] var20 = var5; - return var20; // L: 67 + return var20; } } - } catch (IOException var18) { // L: 69 - return null; // L: 70 + } catch (IOException var18) { + return null; } } } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(I[BII)Z", - garbageValue = "1540899198" + garbageValue = "-315140896" ) @Export("write") public boolean write(int var1, byte[] var2, int var3) { - synchronized(this.datFile) { // L: 76 - if (var3 >= 0 && var3 <= this.maxEntrySize) { // L: 77 - boolean var5 = this.write0(var1, var2, var3, true); // L: 80 + synchronized(this.datFile) { + if (var3 >= 0 && var3 <= this.maxEntrySize) { + boolean var5 = this.write0(var1, var2, var3, true); if (!var5) { - var5 = this.write0(var1, var2, var3, false); // L: 81 + var5 = this.write0(var1, var2, var3, false); } - return var5; // L: 82 + return var5; } else { - throw new IllegalArgumentException("" + this.archive + ',' + var1 + ',' + var3); // L: 78 + throw new IllegalArgumentException("" + this.archive + ',' + var1 + ',' + var3); } } } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(I[BIZI)Z", - garbageValue = "158294442" + garbageValue = "-1633261977" ) @Export("write0") boolean write0(int var1, byte[] var2, int var3, boolean var4) { - synchronized(this.datFile) { // L: 87 + synchronized(this.datFile) { try { int var6; boolean var10000; - if (var4) { // L: 90 - if (this.idxFile.length() < (long)(var1 * 6 + 6)) { // L: 91 + if (var4) { + if (this.idxFile.length() < (long)(var1 * 6 + 6)) { var10000 = false; return var10000; } - this.idxFile.seek((long)(var1 * 6)); // L: 92 - this.idxFile.read(ArchiveDisk_buffer, 0, 6); // L: 93 - var6 = (ArchiveDisk_buffer[5] & 255) + ((ArchiveDisk_buffer[3] & 255) << 16) + ((ArchiveDisk_buffer[4] & 255) << 8); // L: 94 - if (var6 <= 0 || (long)var6 > this.datFile.length() / 520L) { // L: 95 + this.idxFile.seek((long)(var1 * 6)); + this.idxFile.read(ArchiveDisk_buffer, 0, 6); + var6 = (ArchiveDisk_buffer[5] & 255) + ((ArchiveDisk_buffer[3] & 255) << 16) + ((ArchiveDisk_buffer[4] & 255) << 8); + if (var6 <= 0 || (long)var6 > this.datFile.length() / 520L) { var10000 = false; return var10000; } } else { - var6 = (int)((this.datFile.length() + 519L) / 520L); // L: 98 - if (var6 == 0) { // L: 99 + var6 = (int)((this.datFile.length() + 519L) / 520L); + if (var6 == 0) { var6 = 1; } } - ArchiveDisk_buffer[0] = (byte)(var3 >> 16); // L: 101 - ArchiveDisk_buffer[1] = (byte)(var3 >> 8); // L: 102 - ArchiveDisk_buffer[2] = (byte)var3; // L: 103 - ArchiveDisk_buffer[3] = (byte)(var6 >> 16); // L: 104 - ArchiveDisk_buffer[4] = (byte)(var6 >> 8); // L: 105 - ArchiveDisk_buffer[5] = (byte)var6; // L: 106 - this.idxFile.seek((long)(var1 * 6)); // L: 107 - this.idxFile.write(ArchiveDisk_buffer, 0, 6); // L: 108 - int var7 = 0; // L: 109 - int var8 = 0; // L: 110 + ArchiveDisk_buffer[0] = (byte)(var3 >> 16); + ArchiveDisk_buffer[1] = (byte)(var3 >> 8); + ArchiveDisk_buffer[2] = (byte)var3; + ArchiveDisk_buffer[3] = (byte)(var6 >> 16); + ArchiveDisk_buffer[4] = (byte)(var6 >> 8); + ArchiveDisk_buffer[5] = (byte)var6; + this.idxFile.seek((long)(var1 * 6)); + this.idxFile.write(ArchiveDisk_buffer, 0, 6); + int var7 = 0; + int var8 = 0; while (true) { - if (var7 < var3) { // L: 111 - label169: { - int var9 = 0; // L: 112 + if (var7 < var3) { + label170: { + int var9 = 0; int var10; - if (var4) { // L: 113 - this.datFile.seek(520L * (long)var6); // L: 114 + if (var4) { + this.datFile.seek(520L * (long)var6); int var11; int var12; - if (var1 > 65535) { // L: 118 + if (var1 > 65535) { try { - this.datFile.read(ArchiveDisk_buffer, 0, 10); // L: 120 - } catch (EOFException var17) { // L: 122 - break label169; // L: 123 + this.datFile.read(ArchiveDisk_buffer, 0, 10); + } catch (EOFException var17) { + break label170; } - var10 = ((ArchiveDisk_buffer[1] & 255) << 16) + ((ArchiveDisk_buffer[0] & 255) << 24) + (ArchiveDisk_buffer[3] & 255) + ((ArchiveDisk_buffer[2] & 255) << 8); // L: 125 - var11 = (ArchiveDisk_buffer[5] & 255) + ((ArchiveDisk_buffer[4] & 255) << 8); // L: 126 - var9 = (ArchiveDisk_buffer[8] & 255) + ((ArchiveDisk_buffer[7] & 255) << 8) + ((ArchiveDisk_buffer[6] & 255) << 16); // L: 127 - var12 = ArchiveDisk_buffer[9] & 255; // L: 128 + var10 = ((ArchiveDisk_buffer[1] & 255) << 16) + ((ArchiveDisk_buffer[0] & 255) << 24) + (ArchiveDisk_buffer[3] & 255) + ((ArchiveDisk_buffer[2] & 255) << 8); + var11 = (ArchiveDisk_buffer[5] & 255) + ((ArchiveDisk_buffer[4] & 255) << 8); + var9 = (ArchiveDisk_buffer[8] & 255) + ((ArchiveDisk_buffer[7] & 255) << 8) + ((ArchiveDisk_buffer[6] & 255) << 16); + var12 = ArchiveDisk_buffer[9] & 255; } else { try { - this.datFile.read(ArchiveDisk_buffer, 0, 8); // L: 132 - } catch (EOFException var16) { // L: 134 - break label169; // L: 135 + this.datFile.read(ArchiveDisk_buffer, 0, 8); + } catch (EOFException var16) { + break label170; } - var10 = (ArchiveDisk_buffer[1] & 255) + ((ArchiveDisk_buffer[0] & 255) << 8); // L: 137 - var11 = (ArchiveDisk_buffer[3] & 255) + ((ArchiveDisk_buffer[2] & 255) << 8); // L: 138 - var9 = ((ArchiveDisk_buffer[5] & 255) << 8) + ((ArchiveDisk_buffer[4] & 255) << 16) + (ArchiveDisk_buffer[6] & 255); // L: 139 - var12 = ArchiveDisk_buffer[7] & 255; // L: 140 + var10 = (ArchiveDisk_buffer[1] & 255) + ((ArchiveDisk_buffer[0] & 255) << 8); + var11 = (ArchiveDisk_buffer[3] & 255) + ((ArchiveDisk_buffer[2] & 255) << 8); + var9 = ((ArchiveDisk_buffer[5] & 255) << 8) + ((ArchiveDisk_buffer[4] & 255) << 16) + (ArchiveDisk_buffer[6] & 255); + var12 = ArchiveDisk_buffer[7] & 255; } - if (var10 != var1 || var8 != var11 || var12 != this.archive) { // L: 142 + if (var10 != var1 || var8 != var11 || var12 != this.archive) { var10000 = false; return var10000; } - if (var9 < 0 || (long)var9 > this.datFile.length() / 520L) { // L: 143 + if (var9 < 0 || (long)var9 > this.datFile.length() / 520L) { var10000 = false; return var10000; } } - if (var9 == 0) { // L: 145 - var4 = false; // L: 146 - var9 = (int)((this.datFile.length() + 519L) / 520L); // L: 147 - if (var9 == 0) { // L: 148 + if (var9 == 0) { + var4 = false; + var9 = (int)((this.datFile.length() + 519L) / 520L); + if (var9 == 0) { ++var9; } - if (var9 == var6) { // L: 149 + if (var9 == var6) { ++var9; } } - if (var1 > 65535) { // L: 151 - if (var3 - var7 <= 510) { // L: 152 + if (var1 > 65535) { + if (var3 - var7 <= 510) { var9 = 0; } - ArchiveDisk_buffer[0] = (byte)(var1 >> 24); // L: 153 - ArchiveDisk_buffer[1] = (byte)(var1 >> 16); // L: 154 - ArchiveDisk_buffer[2] = (byte)(var1 >> 8); // L: 155 - ArchiveDisk_buffer[3] = (byte)var1; // L: 156 - ArchiveDisk_buffer[4] = (byte)(var8 >> 8); // L: 157 - ArchiveDisk_buffer[5] = (byte)var8; // L: 158 - ArchiveDisk_buffer[6] = (byte)(var9 >> 16); // L: 159 - ArchiveDisk_buffer[7] = (byte)(var9 >> 8); // L: 160 - ArchiveDisk_buffer[8] = (byte)var9; // L: 161 - ArchiveDisk_buffer[9] = (byte)this.archive; // L: 162 - this.datFile.seek((long)var6 * 520L); // L: 163 - this.datFile.write(ArchiveDisk_buffer, 0, 10); // L: 164 - var10 = var3 - var7; // L: 165 - if (var10 > 510) { // L: 166 + ArchiveDisk_buffer[0] = (byte)(var1 >> 24); + ArchiveDisk_buffer[1] = (byte)(var1 >> 16); + ArchiveDisk_buffer[2] = (byte)(var1 >> 8); + ArchiveDisk_buffer[3] = (byte)var1; + ArchiveDisk_buffer[4] = (byte)(var8 >> 8); + ArchiveDisk_buffer[5] = (byte)var8; + ArchiveDisk_buffer[6] = (byte)(var9 >> 16); + ArchiveDisk_buffer[7] = (byte)(var9 >> 8); + ArchiveDisk_buffer[8] = (byte)var9; + ArchiveDisk_buffer[9] = (byte)this.archive; + this.datFile.seek(520L * (long)var6); + this.datFile.write(ArchiveDisk_buffer, 0, 10); + var10 = var3 - var7; + if (var10 > 510) { var10 = 510; } - this.datFile.write(var2, var7, var10); // L: 167 - var7 += var10; // L: 168 + this.datFile.write(var2, var7, var10); + var7 += var10; } else { - if (var3 - var7 <= 512) { // L: 171 + if (var3 - var7 <= 512) { var9 = 0; } - ArchiveDisk_buffer[0] = (byte)(var1 >> 8); // L: 172 - ArchiveDisk_buffer[1] = (byte)var1; // L: 173 - ArchiveDisk_buffer[2] = (byte)(var8 >> 8); // L: 174 - ArchiveDisk_buffer[3] = (byte)var8; // L: 175 - ArchiveDisk_buffer[4] = (byte)(var9 >> 16); // L: 176 - ArchiveDisk_buffer[5] = (byte)(var9 >> 8); // L: 177 - ArchiveDisk_buffer[6] = (byte)var9; // L: 178 - ArchiveDisk_buffer[7] = (byte)this.archive; // L: 179 - this.datFile.seek((long)var6 * 520L); // L: 180 - this.datFile.write(ArchiveDisk_buffer, 0, 8); // L: 181 - var10 = var3 - var7; // L: 182 - if (var10 > 512) { // L: 183 + ArchiveDisk_buffer[0] = (byte)(var1 >> 8); + ArchiveDisk_buffer[1] = (byte)var1; + ArchiveDisk_buffer[2] = (byte)(var8 >> 8); + ArchiveDisk_buffer[3] = (byte)var8; + ArchiveDisk_buffer[4] = (byte)(var9 >> 16); + ArchiveDisk_buffer[5] = (byte)(var9 >> 8); + ArchiveDisk_buffer[6] = (byte)var9; + ArchiveDisk_buffer[7] = (byte)this.archive; + this.datFile.seek(520L * (long)var6); + this.datFile.write(ArchiveDisk_buffer, 0, 8); + var10 = var3 - var7; + if (var10 > 512) { var10 = 512; } - this.datFile.write(var2, var7, var10); // L: 184 - var7 += var10; // L: 185 + this.datFile.write(var2, var7, var10); + var7 += var10; } - var6 = var9; // L: 187 - ++var8; // L: 188 - continue; // L: 189 + var6 = var9; + ++var8; + continue; } } - var10000 = true; // L: 190 + var10000 = true; return var10000; } - } catch (IOException var18) { // L: 192 - return false; // L: 193 + } catch (IOException var18) { + return false; } } } public String toString() { - return "" + this.archive; // L: 198 + return "" + this.archive; } } diff --git a/runescape-client/src/main/java/ArchiveDiskAction.java b/runescape-client/src/main/java/ArchiveDiskAction.java index 951834d0fd..2ac9dbc480 100644 --- a/runescape-client/src/main/java/ArchiveDiskAction.java +++ b/runescape-client/src/main/java/ArchiveDiskAction.java @@ -4,40 +4,129 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("iv") +@ObfuscatedName("ih") @Implements("ArchiveDiskAction") public class ArchiveDiskAction extends Node { - @ObfuscatedName("f") + @ObfuscatedName("ef") @ObfuscatedGetter( - intValue = -1593246089 + intValue = -1581352901 + ) + @Export("port3") + static int port3; + @ObfuscatedName("h") + @ObfuscatedGetter( + intValue = 1633576263 ) @Export("type") int type; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("data") - public byte[] data; - @ObfuscatedName("l") + byte[] data; + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Llt;" + descriptor = "Llx;" ) @Export("archiveDisk") - public ArchiveDisk archiveDisk; - @ObfuscatedName("m") + ArchiveDisk archiveDisk; + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lid;" + descriptor = "Lil;" ) @Export("archive") - public Archive archive; + Archive archive; ArchiveDiskAction() { - } // L: 12 + } - @ObfuscatedName("o") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "23" + descriptor = "(Ljava/lang/CharSequence;I)Z", + garbageValue = "-222972673" ) - static final int method4291() { - return ViewportMouse.ViewportMouse_x; // L: 91 + @Export("isNumber") + public static boolean isNumber(CharSequence var0) { + boolean var2 = false; + boolean var3 = false; + int var4 = 0; + int var5 = var0.length(); + int var6 = 0; + + boolean var1; + while (true) { + if (var6 >= var5) { + var1 = var3; + break; + } + + label84: { + char var7 = var0.charAt(var6); + if (var6 == 0) { + if (var7 == '-') { + var2 = true; + break label84; + } + + if (var7 == '+') { + break label84; + } + } + + int var9; + if (var7 >= '0' && var7 <= '9') { + var9 = var7 - '0'; + } else if (var7 >= 'A' && var7 <= 'Z') { + var9 = var7 - '7'; + } else { + if (var7 < 'a' || var7 > 'z') { + var1 = false; + break; + } + + var9 = var7 - 'W'; + } + + if (var9 >= 10) { + var1 = false; + break; + } + + if (var2) { + var9 = -var9; + } + + int var8 = var9 + var4 * 10; + if (var4 != var8 / 10) { + var1 = false; + break; + } + + var4 = var8; + var3 = true; + } + + ++var6; + } + + return var1; + } + + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "(IB)Lep;", + garbageValue = "16" + ) + @Export("getFrames") + static Frames getFrames(int var0) { + Frames var1 = (Frames)SequenceDefinition.SequenceDefinition_cachedFrames.get((long)var0); + if (var1 != null) { + return var1; + } else { + var1 = UserComparator4.method3470(SequenceDefinition.SequenceDefinition_animationsArchive, SequenceDefinition.SequenceDefinition_skeletonsArchive, var0, false); + if (var1 != null) { + SequenceDefinition.SequenceDefinition_cachedFrames.put(var1, (long)var0); + } + + return var1; + } } } diff --git a/runescape-client/src/main/java/ArchiveDiskActionHandler.java b/runescape-client/src/main/java/ArchiveDiskActionHandler.java index 7ce701d201..3786ce0248 100644 --- a/runescape-client/src/main/java/ArchiveDiskActionHandler.java +++ b/runescape-client/src/main/java/ArchiveDiskActionHandler.java @@ -4,106 +4,107 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("il") +@ObfuscatedName("ij") @Implements("ArchiveDiskActionHandler") public class ArchiveDiskActionHandler implements Runnable { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lja;" + descriptor = "Ljp;" ) @Export("ArchiveDiskActionHandler_requestQueue") - public static NodeDeque ArchiveDiskActionHandler_requestQueue; - @ObfuscatedName("b") + static NodeDeque ArchiveDiskActionHandler_requestQueue; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lja;" + descriptor = "Ljp;" ) @Export("ArchiveDiskActionHandler_responseQueue") - public static NodeDeque ArchiveDiskActionHandler_responseQueue; - @ObfuscatedName("l") + static NodeDeque ArchiveDiskActionHandler_responseQueue; + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1765623667 + intValue = -39259267 ) - public static int field3176; - @ObfuscatedName("m") + public static int field3178; + @ObfuscatedName("w") @Export("ArchiveDiskActionHandler_lock") public static Object ArchiveDiskActionHandler_lock; + @ObfuscatedName("u") + @Export("Tiles_saturation") + static int[] Tiles_saturation; static { - ArchiveDiskActionHandler_requestQueue = new NodeDeque(); // L: 9 - ArchiveDiskActionHandler_responseQueue = new NodeDeque(); // L: 10 - field3176 = 0; // L: 11 + ArchiveDiskActionHandler_requestQueue = new NodeDeque(); + ArchiveDiskActionHandler_responseQueue = new NodeDeque(); + field3178 = 0; ArchiveDiskActionHandler_lock = new Object(); - } // L: 12 + } ArchiveDiskActionHandler() { - } // L: 15 + } public void run() { try { while (true) { ArchiveDiskAction var1; - synchronized(ArchiveDiskActionHandler_requestQueue) { // L: 43 - var1 = (ArchiveDiskAction)ArchiveDiskActionHandler_requestQueue.last(); // L: 44 - } // L: 45 + synchronized(ArchiveDiskActionHandler_requestQueue) { + var1 = (ArchiveDiskAction)ArchiveDiskActionHandler_requestQueue.last(); + } - if (var1 != null) { // L: 46 - if (var1.type == 0) { // L: 47 - var1.archiveDisk.write((int)var1.key, var1.data, var1.data.length); // L: 48 - synchronized(ArchiveDiskActionHandler_requestQueue) { // L: 49 - var1.remove(); // L: 50 - } // L: 51 - } else if (var1.type == 1) { // L: 53 - var1.data = var1.archiveDisk.read((int)var1.key); // L: 54 - synchronized(ArchiveDiskActionHandler_requestQueue) { // L: 55 - ArchiveDiskActionHandler_responseQueue.addFirst(var1); // L: 56 - } // L: 57 + if (var1 != null) { + if (var1.type == 0) { + var1.archiveDisk.write((int)var1.key, var1.data, var1.data.length); + synchronized(ArchiveDiskActionHandler_requestQueue) { + var1.remove(); + } + } else if (var1.type == 1) { + var1.data = var1.archiveDisk.read((int)var1.key); + synchronized(ArchiveDiskActionHandler_requestQueue) { + ArchiveDiskActionHandler_responseQueue.addFirst(var1); + } } - synchronized(ArchiveDiskActionHandler_lock) { // L: 59 - if (field3176 <= 1) { // L: 60 - field3176 = 0; // L: 61 - ArchiveDiskActionHandler_lock.notifyAll(); // L: 62 - return; // L: 63 + synchronized(ArchiveDiskActionHandler_lock) { + if (field3178 <= 1) { + field3178 = 0; + ArchiveDiskActionHandler_lock.notifyAll(); + return; } - field3176 = 600; // L: 65 + field3178 = 600; } } else { - WorldMapSection3.sleepExact(100L); // L: 69 - synchronized(ArchiveDiskActionHandler_lock) { // L: 70 - if (field3176 <= 1) { // L: 71 - field3176 = 0; // L: 72 - ArchiveDiskActionHandler_lock.notifyAll(); // L: 73 - return; // L: 74 + class236.sleepExact(100L); + synchronized(ArchiveDiskActionHandler_lock) { + if (field3178 <= 1) { + field3178 = 0; + ArchiveDiskActionHandler_lock.notifyAll(); + return; } - --field3176; // L: 76 + --field3178; } } } - } catch (Exception var13) { // L: 81 - PacketWriter.RunException_sendStackTrace((String)null, var13); // L: 82 + } catch (Exception var13) { + PlayerAppearance.RunException_sendStackTrace((String)null, var13); } - } // L: 84 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(B)[Lgw;", - garbageValue = "0" - ) - @Export("ServerPacket_values") - public static ServerPacket[] ServerPacket_values() { - return new ServerPacket[]{ServerPacket.field2215, ServerPacket.field2202, ServerPacket.field2175, ServerPacket.field2145, ServerPacket.field2146, ServerPacket.field2147, ServerPacket.field2148, ServerPacket.field2142, ServerPacket.field2150, ServerPacket.field2218, ServerPacket.field2152, ServerPacket.field2178, ServerPacket.field2154, ServerPacket.field2155, ServerPacket.field2156, ServerPacket.field2170, ServerPacket.field2158, ServerPacket.field2159, ServerPacket.field2160, ServerPacket.field2161, ServerPacket.field2162, ServerPacket.field2163, ServerPacket.field2149, ServerPacket.field2186, ServerPacket.field2166, ServerPacket.field2153, ServerPacket.field2168, ServerPacket.field2197, ServerPacket.field2144, ServerPacket.field2171, ServerPacket.field2172, ServerPacket.field2173, ServerPacket.field2174, ServerPacket.field2165, ServerPacket.field2176, ServerPacket.field2177, ServerPacket.field2200, ServerPacket.field2179, ServerPacket.field2180, ServerPacket.field2181, ServerPacket.field2182, ServerPacket.field2183, ServerPacket.field2227, ServerPacket.field2185, ServerPacket.field2221, ServerPacket.field2190, ServerPacket.field2167, ServerPacket.field2199, ServerPacket.field2211, ServerPacket.field2191, ServerPacket.field2187, ServerPacket.field2193, ServerPacket.field2194, ServerPacket.field2195, ServerPacket.field2196, ServerPacket.field2220, ServerPacket.field2198, ServerPacket.field2219, ServerPacket.field2143, ServerPacket.field2201, ServerPacket.field2216, ServerPacket.field2203, ServerPacket.field2204, ServerPacket.field2205, ServerPacket.field2206, ServerPacket.field2207, ServerPacket.field2188, ServerPacket.field2209, ServerPacket.field2210, ServerPacket.field2230, ServerPacket.field2212, ServerPacket.field2213, ServerPacket.field2214, ServerPacket.field2189, ServerPacket.field2151, ServerPacket.field2217, ServerPacket.field2192, ServerPacket.field2157, ServerPacket.field2164, ServerPacket.field2184, ServerPacket.field2222, ServerPacket.field2223, ServerPacket.field2169, ServerPacket.field2225, ServerPacket.field2226, ServerPacket.field2224}; // L: 95 } - @ObfuscatedName("ej") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lid;Ljava/lang/String;B)V", - garbageValue = "125" + descriptor = "(DDII)[D", + garbageValue = "961736597" ) - static void method4404(Archive var0, String var1) { - ArchiveLoader var2 = new ArchiveLoader(var0, var1); // L: 1893 - Client.archiveLoaders.add(var2); // L: 1894 - Client.field953 += var2.groupCount; // L: 1895 - } // L: 1896 + public static double[] method4294(double var0, double var2, int var4) { + int var5 = var4 * 2 + 1; + double[] var6 = new double[var5]; + int var7 = -var4; + + for (int var8 = 0; var7 <= var4; ++var8) { + double var11 = FriendSystem.method1972(((double)var7 - var0) / var2) / var2; + var6[var8] = var11; + ++var7; + } + + return var6; + } } diff --git a/runescape-client/src/main/java/ArchiveLoader.java b/runescape-client/src/main/java/ArchiveLoader.java index 91dec869f3..1beff52f02 100644 --- a/runescape-client/src/main/java/ArchiveLoader.java +++ b/runescape-client/src/main/java/ArchiveLoader.java @@ -4,130 +4,782 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bq") +@ObfuscatedName("bo") @Implements("ArchiveLoader") public class ArchiveLoader { - @ObfuscatedName("f") - @ObfuscatedGetter( - longValue = 3333293732747841481L - ) - static long field565; - @ObfuscatedName("b") + @ObfuscatedName("gx") @ObfuscatedSignature( - descriptor = "Lid;" + descriptor = "Leo;" + ) + @Export("scene") + static Scene scene; + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "Lil;" ) @Export("archive") final Archive archive; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -30883449 + intValue = -1464759987 ) @Export("groupCount") final int groupCount; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 1222733201 + intValue = -722850475 ) @Export("loadedCount") int loadedCount; @ObfuscatedSignature( - descriptor = "(Lid;Ljava/lang/String;)V" + descriptor = "(Lil;Ljava/lang/String;)V" ) ArchiveLoader(Archive var1, String var2) { - this.loadedCount = 0; // L: 9 - this.archive = var1; // L: 12 - this.groupCount = var1.getGroupCount(); // L: 13 - } // L: 14 + this.loadedCount = 0; + this.archive = var1; + this.groupCount = var1.getGroupCount(); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "1049083276" + garbageValue = "-1844563500" ) @Export("isLoaded") boolean isLoaded() { - this.loadedCount = 0; // L: 17 + this.loadedCount = 0; - for (int var1 = 0; var1 < this.groupCount; ++var1) { // L: 18 - if (!this.archive.method4416(var1) || this.archive.method4411(var1)) { - ++this.loadedCount; // L: 19 + for (int var1 = 0; var1 < this.groupCount; ++var1) { + if (!this.archive.method4305(var1) || this.archive.method4319(var1)) { + ++this.loadedCount; } } - return this.loadedCount >= this.groupCount; // L: 21 + return this.loadedCount >= this.groupCount; } - @ObfuscatedName("l") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(III)Lco;", - garbageValue = "-2052034218" + descriptor = "(Lmu;I)I", + garbageValue = "-737934411" ) - static Script method1240(int var0, int var1) { - Script var2 = (Script)Script.Script_cached.get((long)(var0 << 16)); // L: 59 - if (var2 != null) { // L: 60 - return var2; // L: 61 + static final int method1232(LoginType var0) { + if (var0 == null) { + return 12; } else { - String var3 = String.valueOf(var0); // L: 63 - int var4 = ViewportMouse.archive12.getGroupId(var3); // L: 64 - if (var4 == -1) { // L: 65 - return null; // L: 66 + switch(var0.field4067) { + case 2: + return 20; + default: + return 12; + } + } + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "([BIII)Ljava/lang/String;", + garbageValue = "919177129" + ) + public static String method1229(byte[] var0, int var1, int var2) { + StringBuilder var3 = new StringBuilder(); + + for (int var4 = var1; var4 < var2 + var1; var4 += 3) { + int var5 = var0[var4] & 255; + var3.append(class300.field3695[var5 >>> 2]); + if (var4 < var2 - 1) { + int var6 = var0[var4 + 1] & 255; + var3.append(class300.field3695[(var5 & 3) << 4 | var6 >>> 4]); + if (var4 < var2 - 2) { + int var7 = var0[var4 + 2] & 255; + var3.append(class300.field3695[(var6 & 15) << 2 | var7 >>> 6]).append(class300.field3695[var7 & 63]); + } else { + var3.append(class300.field3695[(var6 & 15) << 2]).append("="); + } } else { - byte[] var5 = ViewportMouse.archive12.takeFileFlat(var4); // L: 68 - if (var5 != null) { // L: 69 - if (var5.length <= 1) { // L: 70 - return null; // L: 71 + var3.append(class300.field3695[(var5 & 3) << 4]).append("=="); + } + } + + return var3.toString(); + } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(IB)Lio;", + garbageValue = "-12" + ) + public static GameBuild method1225(int var0) { + GameBuild[] var1 = class1.method11(); + + for (int var2 = 0; var2 < var1.length; ++var2) { + GameBuild var3 = var1[var2]; + if (var0 == var3.buildId) { + return var3; + } + } + + return null; + } + + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "(Lku;Lku;Lku;I)V", + garbageValue = "1414133310" + ) + @Export("drawTitle") + static void drawTitle(Font var0, Font var1, Font var2) { + Login.xPadding = (IgnoreList.canvasWidth - 765) / 2; + Login.loginBoxX = Login.xPadding + 202; + Login.loginBoxCenter = Login.loginBoxX + 180; + byte var3; + int var4; + int var9; + int var11; + int var26; + int var27; + int var32; + int var39; + if (Login.worldSelectOpen) { + if (class301.worldSelectBackSprites == null) { + class301.worldSelectBackSprites = class280.method5008(Messages.archive8, "sl_back", ""); + } + + if (class90.worldSelectFlagSprites == null) { + class90.worldSelectFlagSprites = class89.method2123(Messages.archive8, "sl_flags", ""); + } + + if (WorldMapSectionType.worldSelectArrows == null) { + WorldMapSectionType.worldSelectArrows = class89.method2123(Messages.archive8, "sl_arrows", ""); + } + + if (class349.worldSelectStars == null) { + class349.worldSelectStars = class89.method2123(Messages.archive8, "sl_stars", ""); + } + + if (VerticalAlignment.worldSelectLeftSprite == null) { + VerticalAlignment.worldSelectLeftSprite = class51.SpriteBuffer_getIndexedSpriteByName(Messages.archive8, "leftarrow", ""); + } + + if (class8.worldSelectRightSprite == null) { + class8.worldSelectRightSprite = class51.SpriteBuffer_getIndexedSpriteByName(Messages.archive8, "rightarrow", ""); + } + + Rasterizer2D.Rasterizer2D_fillRectangle(Login.xPadding, 23, 765, 480, 0); + Rasterizer2D.Rasterizer2D_fillRectangleGradient(Login.xPadding, 0, 125, 23, 12425273, 9135624); + Rasterizer2D.Rasterizer2D_fillRectangleGradient(Login.xPadding + 125, 0, 640, 23, 5197647, 2697513); + var0.drawCentered("Select a world", Login.xPadding + 62, 15, 0, -1); + if (class349.worldSelectStars != null) { + class349.worldSelectStars[1].drawAt(Login.xPadding + 140, 1); + var1.draw("Members only world", Login.xPadding + 152, 10, 16777215, -1); + class349.worldSelectStars[0].drawAt(Login.xPadding + 140, 12); + var1.draw("Free world", Login.xPadding + 152, 21, 16777215, -1); + } + + int var40; + if (WorldMapSectionType.worldSelectArrows != null) { + var32 = Login.xPadding + 280; + if (World.World_sortOption1[0] == 0 && World.World_sortOption2[0] == 0) { + WorldMapSectionType.worldSelectArrows[2].drawAt(var32, 4); + } else { + WorldMapSectionType.worldSelectArrows[0].drawAt(var32, 4); + } + + if (World.World_sortOption1[0] == 0 && World.World_sortOption2[0] == 1) { + WorldMapSectionType.worldSelectArrows[3].drawAt(var32 + 15, 4); + } else { + WorldMapSectionType.worldSelectArrows[1].drawAt(var32 + 15, 4); + } + + var0.draw("World", var32 + 32, 17, 16777215, -1); + var4 = Login.xPadding + 390; + if (World.World_sortOption1[0] == 1 && World.World_sortOption2[0] == 0) { + WorldMapSectionType.worldSelectArrows[2].drawAt(var4, 4); + } else { + WorldMapSectionType.worldSelectArrows[0].drawAt(var4, 4); + } + + if (World.World_sortOption1[0] == 1 && World.World_sortOption2[0] == 1) { + WorldMapSectionType.worldSelectArrows[3].drawAt(var4 + 15, 4); + } else { + WorldMapSectionType.worldSelectArrows[1].drawAt(var4 + 15, 4); + } + + var0.draw("Players", var4 + 32, 17, 16777215, -1); + var40 = Login.xPadding + 500; + if (World.World_sortOption1[0] == 2 && World.World_sortOption2[0] == 0) { + WorldMapSectionType.worldSelectArrows[2].drawAt(var40, 4); + } else { + WorldMapSectionType.worldSelectArrows[0].drawAt(var40, 4); + } + + if (World.World_sortOption1[0] == 2 && World.World_sortOption2[0] == 1) { + WorldMapSectionType.worldSelectArrows[3].drawAt(var40 + 15, 4); + } else { + WorldMapSectionType.worldSelectArrows[1].drawAt(var40 + 15, 4); + } + + var0.draw("Location", var40 + 32, 17, 16777215, -1); + var27 = Login.xPadding + 610; + if (World.World_sortOption1[0] == 3 && World.World_sortOption2[0] == 0) { + WorldMapSectionType.worldSelectArrows[2].drawAt(var27, 4); + } else { + WorldMapSectionType.worldSelectArrows[0].drawAt(var27, 4); + } + + if (World.World_sortOption1[0] == 3 && World.World_sortOption2[0] == 1) { + WorldMapSectionType.worldSelectArrows[3].drawAt(var27 + 15, 4); + } else { + WorldMapSectionType.worldSelectArrows[1].drawAt(var27 + 15, 4); + } + + var0.draw("Type", var27 + 32, 17, 16777215, -1); + } + + Rasterizer2D.Rasterizer2D_fillRectangle(Login.xPadding + 708, 4, 50, 16, 0); + var1.drawCentered("Cancel", Login.xPadding + 708 + 25, 16, 16777215, -1); + Login.hoveredWorldIndex = -1; + if (class301.worldSelectBackSprites != null) { + var3 = 88; + byte var34 = 19; + var40 = 765 / (var3 + 1) - 1; + var27 = 480 / (var34 + 1); + + do { + var39 = var27; + var26 = var40; + if (var27 * (var40 - 1) >= World.World_count) { + --var40; } - var2 = ClientPacket.newScript(var5); // L: 73 - if (var2 != null) { // L: 74 - Script.Script_cached.put(var2, (long)(var0 << 16)); // L: 75 - return var2; // L: 76 + if (var40 * (var27 - 1) >= World.World_count) { + --var27; + } + + if (var40 * (var27 - 1) >= World.World_count) { + --var27; + } + } while(var39 != var27 || var26 != var40); + + var39 = (765 - var3 * var40) / (var40 + 1); + if (var39 > 5) { + var39 = 5; + } + + var26 = (480 - var34 * var27) / (var27 + 1); + if (var26 > 5) { + var26 = 5; + } + + var9 = (765 - var40 * var3 - var39 * (var40 - 1)) / 2; + int var29 = (480 - var27 * var34 - var26 * (var27 - 1)) / 2; + var11 = (var27 + World.World_count - 1) / var27; + Login.worldSelectPagesCount = var11 - var40; + if (VerticalAlignment.worldSelectLeftSprite != null && Login.worldSelectPage > 0) { + VerticalAlignment.worldSelectLeftSprite.drawAt(8, ModelData0.canvasHeight / 2 - VerticalAlignment.worldSelectLeftSprite.subHeight / 2); + } + + if (class8.worldSelectRightSprite != null && Login.worldSelectPage < Login.worldSelectPagesCount) { + class8.worldSelectRightSprite.drawAt(IgnoreList.canvasWidth - class8.worldSelectRightSprite.subWidth - 8, ModelData0.canvasHeight / 2 - class8.worldSelectRightSprite.subHeight / 2); + } + + int var36 = var29 + 23; + int var13 = var9 + Login.xPadding; + int var14 = 0; + boolean var15 = false; + int var16 = Login.worldSelectPage; + + int var17; + for (var17 = var16 * var27; var17 < World.World_count && var16 - Login.worldSelectPage < var40; ++var17) { + World var18 = World.World_worlds[var17]; + boolean var19 = true; + String var20 = Integer.toString(var18.population); + if (var18.population == -1) { + var20 = "OFF"; + var19 = false; + } else if (var18.population > 1980) { + var20 = "FULL"; + var19 = false; + } + + int var22 = 0; + byte var21; + if (var18.isBeta()) { + if (var18.isMembersOnly()) { + var21 = 7; + } else { + var21 = 6; + } + } else if (var18.isDeadman()) { + var22 = 16711680; + if (var18.isMembersOnly()) { + var21 = 5; + } else { + var21 = 4; + } + } else if (var18.method1845()) { + if (var18.isMembersOnly()) { + var21 = 9; + } else { + var21 = 8; + } + } else if (var18.isPvp()) { + if (var18.isMembersOnly()) { + var21 = 3; + } else { + var21 = 2; + } + } else if (var18.isMembersOnly()) { + var21 = 1; + } else { + var21 = 0; + } + + if (MouseHandler.MouseHandler_x >= var13 && MouseHandler.MouseHandler_y >= var36 && MouseHandler.MouseHandler_x < var13 + var3 && MouseHandler.MouseHandler_y < var34 + var36 && var19) { + Login.hoveredWorldIndex = var17; + class301.worldSelectBackSprites[var21].drawTransOverlayAt(var13, var36, 128, 16777215); + var15 = true; + } else { + class301.worldSelectBackSprites[var21].drawAt(var13, var36); + } + + if (class90.worldSelectFlagSprites != null) { + class90.worldSelectFlagSprites[(var18.isMembersOnly() ? 8 : 0) + var18.location].drawAt(var13 + 29, var36); + } + + var0.drawCentered(Integer.toString(var18.id), var13 + 15, var34 / 2 + var36 + 5, var22, -1); + var1.drawCentered(var20, var13 + 60, var34 / 2 + var36 + 5, 268435455, -1); + var36 = var36 + var34 + var26; + ++var14; + if (var14 >= var27) { + var36 = var29 + 23; + var13 = var13 + var39 + var3; + var14 = 0; + ++var16; } } - return null; // L: 79 - } - } - } + if (var15) { + var17 = var1.stringWidth(World.World_worlds[Login.hoveredWorldIndex].activity) + 6; + int var30 = var1.ascent + 8; + int var37 = MouseHandler.MouseHandler_y + 25; + if (var37 + var30 > 480) { + var37 = MouseHandler.MouseHandler_y - 25 - var30; + } - @ObfuscatedName("gq") - @ObfuscatedSignature( - descriptor = "(Lbi;ZI)V", - garbageValue = "-788560949" - ) - @Export("addPlayerToScene") - static void addPlayerToScene(Player var0, boolean var1) { - if (var0 != null && var0.isVisible() && !var0.isHidden) { // L: 4830 - var0.isUnanimated = false; // L: 4831 - if ((Client.isLowDetail && Players.Players_count > 50 || Players.Players_count > 200) && var1 && var0.idleSequence == var0.movementSequence) { // L: 4832 4833 - var0.isUnanimated = true; + Rasterizer2D.Rasterizer2D_fillRectangle(MouseHandler.MouseHandler_x - var17 / 2, var37, var17, var30, 16777120); + Rasterizer2D.Rasterizer2D_drawRectangle(MouseHandler.MouseHandler_x - var17 / 2, var37, var17, var30, 0); + var1.drawCentered(World.World_worlds[Login.hoveredWorldIndex].activity, MouseHandler.MouseHandler_x, var37 + var1.ascent + 4, 0, -1); + } } - int var2 = var0.x >> 7; // L: 4835 - int var3 = var0.y >> 7; // L: 4836 - if (var2 >= 0 && var2 < 104 && var3 >= 0 && var3 < 104) { // L: 4837 - long var4 = GrandExchangeOfferOwnWorldComparator.calculateTag(0, 0, 0, false, var0.index); // L: 4838 - if (var0.model0 != null && Client.cycle >= var0.animationCycleStart && Client.cycle < var0.animationCycleEnd) { // L: 4839 - var0.isUnanimated = false; // L: 4840 - var0.tileHeight = GrandExchangeOfferWorldComparator.getTileHeight(var0.x, var0.y, GrandExchangeOfferUnitPriceComparator.Client_plane); // L: 4841 - var0.playerCycle = Client.cycle; // L: 4842 - ModeWhere.scene.addNullableObject(GrandExchangeOfferUnitPriceComparator.Client_plane, var0.x, var0.y, var0.tileHeight, 60, var0, var0.rotation, var4, var0.field646, var0.field669, var0.field660, var0.field661); // L: 4843 + WorldMapIcon_0.rasterProvider.drawFull(0, 0); + } else { + class25.leftTitleSprite.drawAt(Login.xPadding, 0); + class224.rightTitleSprite.drawAt(Login.xPadding + 382, 0); + class224.logoSprite.drawAt(Login.xPadding + 382 - class224.logoSprite.subWidth / 2, 18); + if (Client.gameState == 0 || Client.gameState == 5) { + var3 = 20; + var0.drawCentered("RuneScape is loading - please wait...", Login.loginBoxX + 180, 245 - var3, 16777215, -1); + var4 = 253 - var3; + Rasterizer2D.Rasterizer2D_drawRectangle(Login.loginBoxX + 180 - 152, var4, 304, 34, 9179409); + Rasterizer2D.Rasterizer2D_drawRectangle(Login.loginBoxX + 180 - 151, var4 + 1, 302, 32, 0); + Rasterizer2D.Rasterizer2D_fillRectangle(Login.loginBoxX + 180 - 150, var4 + 2, Login.Login_loadingPercent * 3, 30, 9179409); + Rasterizer2D.Rasterizer2D_fillRectangle(Login.loginBoxX + 180 - 150 + Login.Login_loadingPercent * 3, var4 + 2, 300 - Login.Login_loadingPercent * 3, 30, 0); + var0.drawCentered(Login.Login_loadingText, Login.loginBoxX + 180, 276 - var3, 16777215, -1); + } + + String var5; + String var7; + String var8; + char[] var10; + short var31; + short var33; + if (Client.gameState == 20) { + WorldMapEvent.titleboxSprite.drawAt(Login.loginBoxX + 180 - WorldMapEvent.titleboxSprite.subWidth / 2, 271 - WorldMapEvent.titleboxSprite.subHeight / 2); + var31 = 201; + var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var31, 16776960, 0); + var32 = var31 + 15; + var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var32, 16776960, 0); + var32 += 15; + var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var32, 16776960, 0); + var32 += 15; + var32 += 7; + if (Login.loginIndex != 4) { + var0.draw("Login: ", Login.loginBoxX + 180 - 110, var32, 16777215, 0); + var33 = 200; + + for (var5 = LoginPacket.method3674(); var0.stringWidth(var5) > var33; var5 = var5.substring(0, var5.length() - 1)) { + } + + var0.draw(AbstractFont.escapeBrackets(var5), Login.loginBoxX + 180 - 70, var32, 16777215, 0); + var32 += 15; + var7 = Login.Login_password; + var9 = var7.length(); + var10 = new char[var9]; + + for (var11 = 0; var11 < var9; ++var11) { + var10[var11] = '*'; + } + + var8 = new String(var10); + + for (var8 = var8; var0.stringWidth(var8) > var33; var8 = var8.substring(1)) { + } + + var0.draw("Password: " + var8, Login.loginBoxX + 180 - 108, var32, 16777215, 0); + var32 += 15; + } + } + + if (Client.gameState == 10 || Client.gameState == 11) { + WorldMapEvent.titleboxSprite.drawAt(Login.loginBoxX, 171); + short var23; + if (Login.loginIndex == 0) { + var31 = 251; + var0.drawCentered("Welcome to RuneScape", Login.loginBoxX + 180, var31, 16776960, 0); + var32 = var31 + 30; + var4 = Login.loginBoxX + 180 - 80; + var23 = 291; + Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); + var0.drawLines("New User", var4 - 73, var23 - 20, 144, 40, 16777215, 0, 1, 1, 0); + var4 = Login.loginBoxX + 180 + 80; + Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); + var0.drawLines("Existing User", var4 - 73, var23 - 20, 144, 40, 16777215, 0, 1, 1, 0); + } else if (Login.loginIndex == 1) { + var0.drawCentered(Login.Login_response0, Login.loginBoxX + 180, 201, 16776960, 0); + var31 = 236; + var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var31, 16777215, 0); + var32 = var31 + 15; + var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var32, 16777215, 0); + var32 += 15; + var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var32, 16777215, 0); + var32 += 15; + var4 = Login.loginBoxX + 180 - 80; + var23 = 321; + Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); + var0.drawCentered("Continue", var4, var23 + 5, 16777215, 0); + var4 = Login.loginBoxX + 180 + 80; + Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); + var0.drawCentered("Cancel", var4, var23 + 5, 16777215, 0); } else { - if ((var0.x & 127) == 64 && (var0.y & 127) == 64) { // L: 4846 - if (Client.tileLastDrawnActor[var2][var3] == Client.viewportDrawCount) { // L: 4847 - return; + short var12; + IndexedSprite var35; + if (Login.loginIndex == 2) { + var31 = 201; + var0.drawCentered(Login.Login_response1, Login.loginBoxCenter, var31, 16776960, 0); + var32 = var31 + 15; + var0.drawCentered(Login.Login_response2, Login.loginBoxCenter, var32, 16776960, 0); + var32 += 15; + var0.drawCentered(Login.Login_response3, Login.loginBoxCenter, var32, 16776960, 0); + var32 += 15; + var32 += 7; + var0.draw("Login: ", Login.loginBoxCenter - 110, var32, 16777215, 0); + var33 = 200; + + for (var5 = LoginPacket.method3674(); var0.stringWidth(var5) > var33; var5 = var5.substring(1)) { } - Client.tileLastDrawnActor[var2][var3] = Client.viewportDrawCount; // L: 4848 - } + var0.draw(AbstractFont.escapeBrackets(var5) + (Login.currentLoginField == 0 & Client.cycle % 40 < 20 ? class23.colorStartTag(16776960) + "|" : ""), Login.loginBoxCenter - 70, var32, 16777215, 0); + var32 += 15; + var7 = Login.Login_password; + var9 = var7.length(); + var10 = new char[var9]; - var0.tileHeight = GrandExchangeOfferWorldComparator.getTileHeight(var0.x, var0.y, GrandExchangeOfferUnitPriceComparator.Client_plane); // L: 4850 - var0.playerCycle = Client.cycle; // L: 4851 - ModeWhere.scene.drawEntity(GrandExchangeOfferUnitPriceComparator.Client_plane, var0.x, var0.y, var0.tileHeight, 60, var0, var0.rotation, var4, var0.isWalking); // L: 4852 + for (var11 = 0; var11 < var9; ++var11) { + var10[var11] = '*'; + } + + var8 = new String(var10); + + for (var8 = var8; var0.stringWidth(var8) > var33; var8 = var8.substring(1)) { + } + + var0.draw("Password: " + var8 + (Login.currentLoginField == 1 & Client.cycle % 40 < 20 ? class23.colorStartTag(16776960) + "|" : ""), Login.loginBoxCenter - 108, var32, 16777215, 0); + var32 += 15; + var31 = 277; + var9 = Login.loginBoxCenter + -117; + var35 = Strings.method4158(Client.Login_isUsernameRemembered, Login.field1192); + var35.drawAt(var9, var31); + var9 = var9 + var35.subWidth + 5; + var1.draw("Remember username", var9, var31 + 13, 16776960, 0); + var9 = Login.loginBoxCenter + 24; + var35 = Strings.method4158(Timer.clientPreferences.hideUsername, Login.field1180); + var35.drawAt(var9, var31); + var9 = var9 + var35.subWidth + 5; + var1.draw("Hide username", var9, var31 + 13, 16776960, 0); + var32 = var31 + 15; + var11 = Login.loginBoxCenter - 80; + var12 = 321; + Login.titlebuttonSprite.drawAt(var11 - 73, var12 - 20); + var0.drawCentered("Login", var11, var12 + 5, 16777215, 0); + var11 = Login.loginBoxCenter + 80; + Login.titlebuttonSprite.drawAt(var11 - 73, var12 - 20); + var0.drawCentered("Cancel", var11, var12 + 5, 16777215, 0); + var31 = 357; + switch(Login.field1190) { + case 2: + class22.field107 = "Having trouble logging in?"; + break; + default: + class22.field107 = "Can't login? Click here."; + } + + GameShell.field481 = new Bounds(Login.loginBoxCenter, var31, var1.stringWidth(class22.field107), 11); + GrandExchangeOfferOwnWorldComparator.field643 = new Bounds(Login.loginBoxCenter, var31, var1.stringWidth("Still having trouble logging in?"), 11); + var1.drawCentered(class22.field107, Login.loginBoxCenter, var31, 16777215, 0); + } else if (Login.loginIndex == 3) { + var31 = 201; + var0.drawCentered("Invalid credentials.", Login.loginBoxX + 180, var31, 16776960, 0); + var32 = var31 + 20; + var1.drawCentered("For accounts created after 24th November 2010, please use your", Login.loginBoxX + 180, var32, 16776960, 0); + var32 += 15; + var1.drawCentered("email address to login. Otherwise please login with your username.", Login.loginBoxX + 180, var32, 16776960, 0); + var32 += 15; + var4 = Login.loginBoxX + 180; + var23 = 276; + Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); + var2.drawCentered("Try again", var4, var23 + 5, 16777215, 0); + var4 = Login.loginBoxX + 180; + var23 = 326; + Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); + var2.drawCentered("Forgotten password?", var4, var23 + 5, 16777215, 0); + } else if (Login.loginIndex == 4) { + var0.drawCentered("Authenticator", Login.loginBoxX + 180, 201, 16776960, 0); + var31 = 236; + var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var31, 16777215, 0); + var32 = var31 + 15; + var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var32, 16777215, 0); + var32 += 15; + var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var32, 16777215, 0); + var32 += 15; + var5 = "PIN: "; + var7 = SecureRandomCallable.otp; + var9 = var7.length(); + var10 = new char[var9]; + + for (var11 = 0; var11 < var9; ++var11) { + var10[var11] = '*'; + } + + var8 = new String(var10); + var0.draw(var5 + var8 + (Client.cycle % 40 < 20 ? class23.colorStartTag(16776960) + "|" : ""), Login.loginBoxX + 180 - 108, var32, 16777215, 0); + var32 -= 8; + var0.draw("Trust this computer", Login.loginBoxX + 180 - 9, var32, 16776960, 0); + var32 += 15; + var0.draw("for 30 days: ", Login.loginBoxX + 180 - 9, var32, 16776960, 0); + var26 = Login.loginBoxX + 180 - 9 + var0.stringWidth("for 30 days: ") + 15; + var9 = var32 - var0.ascent; + if (Login.field1200) { + var35 = ItemContainer.options_buttons_2Sprite; + } else { + var35 = DirectByteArrayCopier.options_buttons_0Sprite; + } + + var35.drawAt(var26, var9); + var32 += 15; + var11 = Login.loginBoxX + 180 - 80; + var12 = 321; + Login.titlebuttonSprite.drawAt(var11 - 73, var12 - 20); + var0.drawCentered("Continue", var11, var12 + 5, 16777215, 0); + var11 = Login.loginBoxX + 180 + 80; + Login.titlebuttonSprite.drawAt(var11 - 73, var12 - 20); + var0.drawCentered("Cancel", var11, var12 + 5, 16777215, 0); + var1.drawCentered("Can't Log In?", Login.loginBoxX + 180, var12 + 36, 255, 0); + } else if (Login.loginIndex == 5) { + var0.drawCentered("Forgotten your password?", Login.loginBoxX + 180, 201, 16776960, 0); + var31 = 221; + var2.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var31, 16776960, 0); + var32 = var31 + 15; + var2.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var32, 16776960, 0); + var32 += 15; + var2.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var32, 16776960, 0); + var32 += 15; + var32 += 14; + var0.draw("Username/email: ", Login.loginBoxX + 180 - 145, var32, 16777215, 0); + var33 = 174; + + for (var5 = LoginPacket.method3674(); var0.stringWidth(var5) > var33; var5 = var5.substring(1)) { + } + + var0.draw(AbstractFont.escapeBrackets(var5) + (Client.cycle % 40 < 20 ? class23.colorStartTag(16776960) + "|" : ""), Login.loginBoxX + 180 - 34, var32, 16777215, 0); + var32 += 15; + var27 = Login.loginBoxX + 180 - 80; + short var25 = 321; + Login.titlebuttonSprite.drawAt(var27 - 73, var25 - 20); + var0.drawCentered("Recover", var27, var25 + 5, 16777215, 0); + var27 = Login.loginBoxX + 180 + 80; + Login.titlebuttonSprite.drawAt(var27 - 73, var25 - 20); + var0.drawCentered("Back", var27, var25 + 5, 16777215, 0); + var25 = 356; + var1.drawCentered("Still having trouble logging in?", Login.loginBoxCenter, var25, 268435455, 0); + } else if (Login.loginIndex == 6) { + var31 = 201; + var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var31, 16776960, 0); + var32 = var31 + 15; + var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var32, 16776960, 0); + var32 += 15; + var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var32, 16776960, 0); + var32 += 15; + var4 = Login.loginBoxX + 180; + var23 = 321; + Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); + var0.drawCentered("Back", var4, var23 + 5, 16777215, 0); + } else if (Login.loginIndex == 7) { + var31 = 216; + var0.drawCentered("Your date of birth isn't set.", Login.loginBoxX + 180, var31, 16776960, 0); + var32 = var31 + 15; + var2.drawCentered("Please verify your account status by", Login.loginBoxX + 180, var32, 16776960, 0); + var32 += 15; + var2.drawCentered("setting your date of birth.", Login.loginBoxX + 180, var32, 16776960, 0); + var32 += 15; + var4 = Login.loginBoxX + 180 - 80; + var23 = 321; + Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); + var0.drawCentered("Set Date of Birth", var4, var23 + 5, 16777215, 0); + var4 = Login.loginBoxX + 180 + 80; + Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); + var0.drawCentered("Back", var4, var23 + 5, 16777215, 0); + } else if (Login.loginIndex == 8) { + var31 = 216; + var0.drawCentered("Sorry, but your account is not eligible to play.", Login.loginBoxX + 180, var31, 16776960, 0); + var32 = var31 + 15; + var2.drawCentered("For more information, please take a look at", Login.loginBoxX + 180, var32, 16776960, 0); + var32 += 15; + var2.drawCentered("our privacy policy.", Login.loginBoxX + 180, var32, 16776960, 0); + var32 += 15; + var4 = Login.loginBoxX + 180 - 80; + var23 = 321; + Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); + var0.drawCentered("Privacy Policy", var4, var23 + 5, 16777215, 0); + var4 = Login.loginBoxX + 180 + 80; + Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); + var0.drawCentered("Back", var4, var23 + 5, 16777215, 0); + } else if (Login.loginIndex == 12) { + var31 = 201; + String var24 = ""; + var5 = ""; + String var6 = ""; + switch(Login.field1199) { + case 0: + var24 = "Your account has been disabled."; + var5 = Strings.field3011; + var6 = ""; + break; + case 1: + var24 = "Account locked as we suspect it has been stolen."; + var5 = Strings.field2877; + var6 = ""; + break; + default: + AbstractWorldMapIcon.Login_promptCredentials(false); + } + + var0.drawCentered(var24, Login.loginBoxX + 180, var31, 16776960, 0); + var32 = var31 + 15; + var2.drawCentered(var5, Login.loginBoxX + 180, var32, 16776960, 0); + var32 += 15; + var2.drawCentered(var6, Login.loginBoxX + 180, var32, 16776960, 0); + var32 += 15; + var39 = Login.loginBoxX + 180; + short var41 = 276; + Login.titlebuttonSprite.drawAt(var39 - 73, var41 - 20); + var0.drawCentered("Support Page", var39, var41 + 5, 16777215, 0); + var39 = Login.loginBoxX + 180; + var41 = 326; + Login.titlebuttonSprite.drawAt(var39 - 73, var41 - 20); + var0.drawCentered("Back", var39, var41 + 5, 16777215, 0); + } else if (Login.loginIndex == 24) { + var31 = 221; + var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var31, 16777215, 0); + var32 = var31 + 15; + var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var32, 16777215, 0); + var32 += 15; + var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var32, 16777215, 0); + var32 += 15; + var4 = Login.loginBoxX + 180; + var23 = 301; + Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); + var0.drawCentered("Ok", var4, var23 + 5, 16777215, 0); + } } } + + if (Client.gameState >= 10) { + int[] var28 = new int[4]; + Rasterizer2D.Rasterizer2D_getClipArray(var28); + Rasterizer2D.Rasterizer2D_setClip(Login.xPadding, 0, Login.xPadding + 765, ModelData0.canvasHeight); + class1.loginScreenRunesAnimation.draw(Login.xPadding - 22, Client.cycle); + class1.loginScreenRunesAnimation.draw(Login.xPadding + 22 + 765 - 128, Client.cycle); + Rasterizer2D.Rasterizer2D_setClipArray(var28); + } + + Login.title_muteSprite[Timer.clientPreferences.titleMusicDisabled ? 1 : 0].drawAt(Login.xPadding + 765 - 40, 463); + if (Client.gameState > 5 && Language.Language_EN == WorldMapScaleHandler.clientLanguage) { + if (class9.field42 != null) { + var32 = Login.xPadding + 5; + var33 = 463; + byte var38 = 100; + byte var42 = 35; + class9.field42.drawAt(var32, var33); + var0.drawCentered("World" + " " + Client.worldId, var38 / 2 + var32, var42 / 2 + var33 - 2, 16777215, 0); + if (World.World_request != null) { + var1.drawCentered("Loading...", var38 / 2 + var32, var42 / 2 + var33 + 12, 16777215, 0); + } else { + var1.drawCentered("Click to switch", var38 / 2 + var32, var42 / 2 + var33 + 12, 16777215, 0); + } + } else { + class9.field42 = class51.SpriteBuffer_getIndexedSpriteByName(Messages.archive8, "sl_button", ""); + } + } + + } + } + + @ObfuscatedName("hr") + @ObfuscatedSignature( + descriptor = "(IIIIIIIIII)V", + garbageValue = "-2003250230" + ) + @Export("updatePendingSpawn") + static final void updatePendingSpawn(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { + PendingSpawn var9 = null; + + for (PendingSpawn var10 = (PendingSpawn)Client.pendingSpawns.last(); var10 != null; var10 = (PendingSpawn)Client.pendingSpawns.previous()) { + if (var0 == var10.plane && var10.x == var1 && var2 == var10.y && var3 == var10.type) { + var9 = var10; + break; + } } - } // L: 4856 + if (var9 == null) { + var9 = new PendingSpawn(); + var9.plane = var0; + var9.type = var3; + var9.x = var1; + var9.y = var2; + class7.method86(var9); + Client.pendingSpawns.addFirst(var9); + } + + var9.id = var4; + var9.field933 = var5; + var9.orientation = var6; + var9.delay = var7; + var9.hitpoints = var8; + } + + @ObfuscatedName("iu") + @ObfuscatedSignature( + descriptor = "(II)Ljava/lang/String;", + garbageValue = "636889033" + ) + static String method1230(int var0) { + if (var0 < 0) { + return ""; + } else { + return Client.menuTargets[var0].length() > 0 ? Client.menuActions[var0] + " " + Client.menuTargets[var0] : Client.menuActions[var0]; + } + } } diff --git a/runescape-client/src/main/java/AttackOption.java b/runescape-client/src/main/java/AttackOption.java index 1d4edb8180..c239f34885 100644 --- a/runescape-client/src/main/java/AttackOption.java +++ b/runescape-client/src/main/java/AttackOption.java @@ -1,61 +1,446 @@ +import java.awt.Desktop; +import java.awt.Desktop.Action; +import java.net.URI; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("cd") +@ObfuscatedName("cw") @Implements("AttackOption") public enum AttackOption implements Enumerated { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lcd;" + descriptor = "Lcw;" ) @Export("AttackOption_dependsOnCombatLevels") AttackOption_dependsOnCombatLevels(0), - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lcd;" + descriptor = "Lcw;" ) @Export("AttackOption_alwaysRightClick") AttackOption_alwaysRightClick(1), - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lcd;" + descriptor = "Lcw;" ) @Export("AttackOption_leftClickWhereAvailable") AttackOption_leftClickWhereAvailable(2), - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lcd;" + descriptor = "Lcw;" ) @Export("AttackOption_hidden") AttackOption_hidden(3); - @ObfuscatedName("v") - @ObfuscatedGetter( - intValue = 612234901 + @ObfuscatedName("bl") + @ObfuscatedSignature( + descriptor = "Lic;" ) - @Export("loginBoxCenter") - static int loginBoxCenter; - @ObfuscatedName("z") + static StudioGame field1174; + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -740751005 + intValue = -1169656951 ) @Export("id") final int id; AttackOption(int var3) { - this.id = var3; // L: 11718 - } // L: 11719 + this.id = var3; + } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "23" + descriptor = "(I)I", + garbageValue = "-275768542" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.id; // L: 11722 + return this.id; + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;ZZI)V", + garbageValue = "262935584" + ) + @Export("openURL") + public static void openURL(String var0, boolean var1, boolean var2) { + if (var1) { + if (Desktop.isDesktopSupported() && Desktop.getDesktop().isSupported(Action.BROWSE)) { + try { + Desktop.getDesktop().browse(new URI(var0)); + return; + } catch (Exception var4) { + } + } + + if (class60.field439.startsWith("win")) { + ScriptEvent.method1260(var0, 0); + } else if (class60.field439.startsWith("mac")) { + class13.method131(var0, 1, "openjs"); + } else { + ScriptEvent.method1260(var0, 2); + } + } else { + ScriptEvent.method1260(var0, 3); + } + + } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(Lbb;II)V", + garbageValue = "1453741363" + ) + @Export("runScript") + static void runScript(ScriptEvent var0, int var1) { + Object[] var2 = var0.args; + Script var3; + int var17; + if (Archive.isWorldMapEvent(var0.type)) { + Script.worldMapEvent = (WorldMapEvent)var2[0]; + WorldMapElement var4 = UserComparator10.WorldMapElement_get(Script.worldMapEvent.mapElement); + var3 = TileItem.getWorldMapScript(var0.type, var4.objectId, var4.category); + } else { + var17 = (Integer)var2[0]; + var3 = ChatChannel.getScript(var17); + } + + if (var3 != null) { + VarcInt.Interpreter_intStackSize = 0; + Interpreter.Interpreter_stringStackSize = 0; + var17 = -1; + int[] var5 = var3.opcodes; + int[] var6 = var3.intOperands; + byte var7 = -1; + Interpreter.Interpreter_frameDepth = 0; + Interpreter.field1104 = false; + + try { + int var10; + try { + InterfaceParent.Interpreter_intLocals = new int[var3.localIntCount]; + int var8 = 0; + Username.Interpreter_stringLocals = new String[var3.localStringCount]; + int var9 = 0; + + int var11; + String var18; + for (var10 = 1; var10 < var2.length; ++var10) { + if (var2[var10] instanceof Integer) { + var11 = (Integer)var2[var10]; + if (var11 == -2147483647) { + var11 = var0.mouseX; + } + + if (var11 == -2147483646) { + var11 = var0.mouseY; + } + + if (var11 == -2147483645) { + var11 = var0.widget != null ? var0.widget.id : -1; + } + + if (var11 == -2147483644) { + var11 = var0.opIndex; + } + + if (var11 == -2147483643) { + var11 = var0.widget != null ? var0.widget.childIndex : -1; + } + + if (var11 == -2147483642) { + var11 = var0.dragTarget != null ? var0.dragTarget.id : -1; + } + + if (var11 == -2147483641) { + var11 = var0.dragTarget != null ? var0.dragTarget.childIndex : -1; + } + + if (var11 == -2147483640) { + var11 = var0.keyTyped; + } + + if (var11 == -2147483639) { + var11 = var0.keyPressed; + } + + InterfaceParent.Interpreter_intLocals[var8++] = var11; + } else if (var2[var10] instanceof String) { + var18 = (String)var2[var10]; + if (var18.equals("event_opbase")) { + var18 = var0.targetName; + } + + Username.Interpreter_stringLocals[var9++] = var18; + } + } + + var10 = 0; + Interpreter.field1097 = var0.field569; + + while (true) { + ++var10; + if (var10 > var1) { + throw new RuntimeException(); + } + + ++var17; + int var29 = var5[var17]; + int var20; + if (var29 >= 100) { + boolean var32; + if (var3.intOperands[var17] == 1) { + var32 = true; + } else { + var32 = false; + } + + var20 = FaceNormal.method3345(var29, var3, var32); + switch(var20) { + case 0: + return; + case 1: + default: + break; + case 2: + throw new IllegalStateException(); + } + } else if (var29 == 0) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var6[var17]; + } else if (var29 == ScriptOpcodes.GET_VARP) { + var11 = var6[var17]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Varps.Varps_main[var11]; + } else if (var29 == ScriptOpcodes.SET_VARP) { + var11 = var6[var17]; + Varps.Varps_main[var11] = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Script.changeGameOptions(var11); + } else if (var29 == ScriptOpcodes.SCONST) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3.stringOperands[var17]; + } else if (var29 == ScriptOpcodes.JUMP) { + var17 += var6[var17]; + } else if (var29 == ScriptOpcodes.IF_ICMPNE) { + VarcInt.Interpreter_intStackSize -= 2; + if (Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize] != Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]) { + var17 += var6[var17]; + } + } else if (var29 == ScriptOpcodes.IF_ICMPEQ) { + VarcInt.Interpreter_intStackSize -= 2; + if (Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize] == Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]) { + var17 += var6[var17]; + } + } else if (var29 == ScriptOpcodes.IF_ICMPLT) { + VarcInt.Interpreter_intStackSize -= 2; + if (Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize] < Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]) { + var17 += var6[var17]; + } + } else if (var29 == ScriptOpcodes.IF_ICMPGT) { + VarcInt.Interpreter_intStackSize -= 2; + if (Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize] > Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]) { + var17 += var6[var17]; + } + } else if (var29 == ScriptOpcodes.RETURN) { + if (Interpreter.Interpreter_frameDepth == 0) { + return; + } + + ScriptFrame var34 = Interpreter.Interpreter_frames[--Interpreter.Interpreter_frameDepth]; + var3 = var34.script; + var5 = var3.opcodes; + var6 = var3.intOperands; + var17 = var34.pc; + InterfaceParent.Interpreter_intLocals = var34.intLocals; + Username.Interpreter_stringLocals = var34.stringLocals; + } else if (var29 == ScriptOpcodes.GET_VARBIT) { + var11 = var6[var17]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Coord.getVarbit(var11); + } else if (var29 == ScriptOpcodes.SET_VARBIT) { + var11 = var6[var17]; + KitDefinition.method4491(var11, Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + } else if (var29 == ScriptOpcodes.IF_ICMPLE) { + VarcInt.Interpreter_intStackSize -= 2; + if (Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize] <= Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]) { + var17 += var6[var17]; + } + } else if (var29 == ScriptOpcodes.IF_ICMPGE) { + VarcInt.Interpreter_intStackSize -= 2; + if (Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize] >= Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]) { + var17 += var6[var17]; + } + } else if (var29 == ScriptOpcodes.ILOAD) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = InterfaceParent.Interpreter_intLocals[var6[var17]]; + } else if (var29 == ScriptOpcodes.ISTORE) { + InterfaceParent.Interpreter_intLocals[var6[var17]] = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + } else if (var29 == ScriptOpcodes.SLOAD) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = Username.Interpreter_stringLocals[var6[var17]]; + } else if (var29 == ScriptOpcodes.SSTORE) { + Username.Interpreter_stringLocals[var6[var17]] = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + } else if (var29 == ScriptOpcodes.JOIN_STRING) { + var11 = var6[var17]; + Interpreter.Interpreter_stringStackSize -= var11; + String var31 = class90.method2125(Interpreter.Interpreter_stringStack, Interpreter.Interpreter_stringStackSize, var11); + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var31; + } else if (var29 == ScriptOpcodes.POP_INT) { + --VarcInt.Interpreter_intStackSize; + } else if (var29 == ScriptOpcodes.POP_STRING) { + --Interpreter.Interpreter_stringStackSize; + } else { + int var15; + if (var29 != ScriptOpcodes.INVOKE) { + if (var29 == ScriptOpcodes.GET_VARC_INT) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Varcs.varcs.getInt(var6[var17]); + } else if (var29 == ScriptOpcodes.SET_VARC_INT) { + Varcs.varcs.setInt(var6[var17], Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + } else if (var29 == ScriptOpcodes.DEFINE_ARRAY) { + var11 = var6[var17] >> 16; + var20 = var6[var17] & 65535; + int var21 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (var21 < 0 || var21 > 5000) { + throw new RuntimeException(); + } + + Interpreter.Interpreter_arrayLengths[var11] = var21; + byte var22 = -1; + if (var20 == 105) { + var22 = 0; + } + + for (var15 = 0; var15 < var21; ++var15) { + Interpreter.Interpreter_arrays[var11][var15] = var22; + } + } else if (var29 == ScriptOpcodes.GET_ARRAY_INT) { + var11 = var6[var17]; + var20 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (var20 < 0 || var20 >= Interpreter.Interpreter_arrayLengths[var11]) { + throw new RuntimeException(); + } + + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Interpreter.Interpreter_arrays[var11][var20]; + } else if (var29 == ScriptOpcodes.SET_ARRAY_INT) { + var11 = var6[var17]; + VarcInt.Interpreter_intStackSize -= 2; + var20 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + if (var20 < 0 || var20 >= Interpreter.Interpreter_arrayLengths[var11]) { + throw new RuntimeException(); + } + + Interpreter.Interpreter_arrays[var11][var20] = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + } else if (var29 == ScriptOpcodes.GET_VARC_STRING_OLD) { + var18 = Varcs.varcs.getStringOld(var6[var17]); + if (var18 == null) { + var18 = "null"; + } + + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var18; + } else if (var29 == ScriptOpcodes.SET_VARC_STRING_OLD) { + Varcs.varcs.setStringOld(var6[var17], Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]); + } else if (var29 == ScriptOpcodes.GET_VARC_STRING) { + var18 = Varcs.varcs.getString(var6[var17]); + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var18; + } else if (var29 == ScriptOpcodes.SET_VARC_STRING) { + Varcs.varcs.setString(var6[var17], Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]); + } else { + if (var29 != ScriptOpcodes.SWITCH) { + throw new IllegalStateException(); + } + + IterableNodeHashTable var33 = var3.switches[var6[var17]]; + IntegerNode var30 = (IntegerNode)var33.get((long)Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + if (var30 != null) { + var17 += var30.integer; + } + } + } else { + var11 = var6[var17]; + Script var12 = ChatChannel.getScript(var11); + int[] var13 = new int[var12.localIntCount]; + String[] var14 = new String[var12.localStringCount]; + + for (var15 = 0; var15 < var12.intArgumentCount; ++var15) { + var13[var15] = Interpreter.Interpreter_intStack[var15 + (VarcInt.Interpreter_intStackSize - var12.intArgumentCount)]; + } + + for (var15 = 0; var15 < var12.stringArgumentCount; ++var15) { + var14[var15] = Interpreter.Interpreter_stringStack[var15 + (Interpreter.Interpreter_stringStackSize - var12.stringArgumentCount)]; + } + + VarcInt.Interpreter_intStackSize -= var12.intArgumentCount; + Interpreter.Interpreter_stringStackSize -= var12.stringArgumentCount; + ScriptFrame var19 = new ScriptFrame(); + var19.script = var3; + var19.pc = var17; + var19.intLocals = InterfaceParent.Interpreter_intLocals; + var19.stringLocals = Username.Interpreter_stringLocals; + Interpreter.Interpreter_frames[++Interpreter.Interpreter_frameDepth - 1] = var19; + var3 = var12; + var5 = var12.opcodes; + var6 = var12.intOperands; + var17 = -1; + InterfaceParent.Interpreter_intLocals = var13; + Username.Interpreter_stringLocals = var14; + } + } + } + } catch (Exception var27) { + StringBuilder var24 = new StringBuilder(30); + var24.append("").append(var3.key).append(" "); + + for (var10 = Interpreter.Interpreter_frameDepth - 1; var10 >= 0; --var10) { + var24.append("").append(Interpreter.Interpreter_frames[var10].script.key).append(" "); + } + + var24.append("").append(var7); + PlayerAppearance.RunException_sendStackTrace(var24.toString(), var27); + } + } finally { + if (Interpreter.field1104) { + Interpreter.field1103 = true; + ServerPacket.method3664(); + Interpreter.field1103 = false; + Interpreter.field1104 = false; + } + + } + } + } + + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "(Lkj;B)Ljava/lang/String;", + garbageValue = "23" + ) + public static String method2135(Buffer var0) { + String var1; + try { + int var2 = var0.readUShortSmart(); + if (var2 > 32767) { + var2 = 32767; + } + + byte[] var3 = new byte[var2]; + var0.offset += class219.huffman.decompress(var0.array, var0.offset, var3, 0, var2); + String var4 = Clock.decodeStringCp1252(var3, 0, var2); + var1 = var4; + } catch (Exception var6) { + var1 = "Cabbage"; + } + + return var1; + } + + @ObfuscatedName("gq") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1150447373" + ) + static void method2138() { + if (PlayerAppearance.localPlayer.x >> 7 == Client.destinationX && PlayerAppearance.localPlayer.y >> 7 == Client.destinationY) { + Client.destinationX = 0; + } + } } diff --git a/runescape-client/src/main/java/AudioFilter.java b/runescape-client/src/main/java/AudioFilter.java index 18a10ab1b3..001dc661fa 100644 --- a/runescape-client/src/main/java/AudioFilter.java +++ b/runescape-client/src/main/java/AudioFilter.java @@ -3,157 +3,157 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dt") +@ObfuscatedName("da") @Implements("AudioFilter") public class AudioFilter { - @ObfuscatedName("q") - static float[][] field1515; - @ObfuscatedName("k") + @ObfuscatedName("j") + static float[][] field1499; + @ObfuscatedName("n") @Export("coefficients") static int[][] coefficients; - @ObfuscatedName("c") - static float field1514; - @ObfuscatedName("u") + @ObfuscatedName("p") + static float field1501; + @ObfuscatedName("l") @Export("forwardMultiplier") static int forwardMultiplier; - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("pairs") int[] pairs; - @ObfuscatedName("l") - int[][][] field1510; - @ObfuscatedName("m") - int[][][] field1518; - @ObfuscatedName("z") - int[] field1511; + @ObfuscatedName("x") + int[][][] field1495; + @ObfuscatedName("w") + int[][][] field1497; + @ObfuscatedName("t") + int[] field1498; static { - field1515 = new float[2][8]; // L: 13 - coefficients = new int[2][8]; // L: 14 + field1499 = new float[2][8]; + coefficients = new int[2][8]; } AudioFilter() { - this.pairs = new int[2]; // L: 8 - this.field1510 = new int[2][2][4]; // L: 10 - this.field1518 = new int[2][2][4]; // L: 11 - this.field1511 = new int[2]; // L: 12 - } // L: 21 - - @ObfuscatedName("f") - float method2845(int var1, int var2, float var3) { - float var4 = (float)this.field1518[var1][0][var2] + var3 * (float)(this.field1518[var1][1][var2] - this.field1518[var1][0][var2]); // L: 24 - var4 *= 0.0015258789F; // L: 25 - return 1.0F - (float)Math.pow(10.0D, (double)(-var4 / 20.0F)); // L: 26 + this.pairs = new int[2]; + this.field1495 = new int[2][2][4]; + this.field1497 = new int[2][2][4]; + this.field1498 = new int[2]; } - @ObfuscatedName("l") - float method2834(int var1, int var2, float var3) { - float var4 = (float)this.field1510[var1][0][var2] + var3 * (float)(this.field1510[var1][1][var2] - this.field1510[var1][0][var2]); // L: 35 - var4 *= 1.2207031E-4F; // L: 36 - return normalize(var4); // L: 37 + @ObfuscatedName("h") + float method2768(int var1, int var2, float var3) { + float var4 = (float)this.field1497[var1][0][var2] + var3 * (float)(this.field1497[var1][1][var2] - this.field1497[var1][0][var2]); + var4 *= 0.0015258789F; + return 1.0F - (float)Math.pow(10.0D, (double)(-var4 / 20.0F)); } - @ObfuscatedName("m") + @ObfuscatedName("x") + float method2770(int var1, int var2, float var3) { + float var4 = (float)this.field1495[var1][0][var2] + var3 * (float)(this.field1495[var1][1][var2] - this.field1495[var1][0][var2]); + var4 *= 1.2207031E-4F; + return normalize(var4); + } + + @ObfuscatedName("w") @Export("compute") int compute(int var1, float var2) { float var3; - if (var1 == 0) { // L: 41 - var3 = (float)this.field1511[0] + (float)(this.field1511[1] - this.field1511[0]) * var2; // L: 42 - var3 *= 0.0030517578F; // L: 43 - field1514 = (float)Math.pow(0.1D, (double)(var3 / 20.0F)); // L: 44 - forwardMultiplier = (int)(field1514 * 65536.0F); // L: 45 + if (var1 == 0) { + var3 = (float)this.field1498[0] + (float)(this.field1498[1] - this.field1498[0]) * var2; + var3 *= 0.0030517578F; + field1501 = (float)Math.pow(0.1D, (double)(var3 / 20.0F)); + forwardMultiplier = (int)(field1501 * 65536.0F); } - if (this.pairs[var1] == 0) { // L: 47 + if (this.pairs[var1] == 0) { return 0; } else { - var3 = this.method2845(var1, 0, var2); // L: 48 - field1515[var1][0] = -2.0F * var3 * (float)Math.cos((double)this.method2834(var1, 0, var2)); // L: 49 - field1515[var1][1] = var3 * var3; // L: 50 + var3 = this.method2768(var1, 0, var2); + field1499[var1][0] = -2.0F * var3 * (float)Math.cos((double)this.method2770(var1, 0, var2)); + field1499[var1][1] = var3 * var3; float[] var10000; int var4; - for (var4 = 1; var4 < this.pairs[var1]; ++var4) { // L: 51 - var3 = this.method2845(var1, var4, var2); // L: 52 - float var5 = -2.0F * var3 * (float)Math.cos((double)this.method2834(var1, var4, var2)); // L: 53 - float var6 = var3 * var3; // L: 54 - field1515[var1][var4 * 2 + 1] = field1515[var1][var4 * 2 - 1] * var6; // L: 55 - field1515[var1][var4 * 2] = field1515[var1][var4 * 2 - 1] * var5 + field1515[var1][var4 * 2 - 2] * var6; // L: 56 + for (var4 = 1; var4 < this.pairs[var1]; ++var4) { + var3 = this.method2768(var1, var4, var2); + float var5 = -2.0F * var3 * (float)Math.cos((double)this.method2770(var1, var4, var2)); + float var6 = var3 * var3; + field1499[var1][var4 * 2 + 1] = field1499[var1][var4 * 2 - 1] * var6; + field1499[var1][var4 * 2] = field1499[var1][var4 * 2 - 1] * var5 + field1499[var1][var4 * 2 - 2] * var6; - for (int var7 = var4 * 2 - 1; var7 >= 2; --var7) { // L: 57 - var10000 = field1515[var1]; - var10000[var7] += field1515[var1][var7 - 1] * var5 + field1515[var1][var7 - 2] * var6; + for (int var7 = var4 * 2 - 1; var7 >= 2; --var7) { + var10000 = field1499[var1]; + var10000[var7] += field1499[var1][var7 - 1] * var5 + field1499[var1][var7 - 2] * var6; } - var10000 = field1515[var1]; // L: 58 - var10000[1] += field1515[var1][0] * var5 + var6; - var10000 = field1515[var1]; // L: 59 + var10000 = field1499[var1]; + var10000[1] += field1499[var1][0] * var5 + var6; + var10000 = field1499[var1]; var10000[0] += var5; } - if (var1 == 0) { // L: 61 + if (var1 == 0) { for (var4 = 0; var4 < this.pairs[0] * 2; ++var4) { - var10000 = field1515[0]; - var10000[var4] *= field1514; + var10000 = field1499[0]; + var10000[var4] *= field1501; } } - for (var4 = 0; var4 < this.pairs[var1] * 2; ++var4) { // L: 62 - coefficients[var1][var4] = (int)(field1515[var1][var4] * 65536.0F); + for (var4 = 0; var4 < this.pairs[var1] * 2; ++var4) { + coefficients[var1][var4] = (int)(field1499[var1][var4] * 65536.0F); } - return this.pairs[var1] * 2; // L: 63 + return this.pairs[var1] * 2; } } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(Lkb;Lda;)V" + descriptor = "(Lkj;Ldr;)V" ) - final void method2844(Buffer var1, SoundEnvelope var2) { - int var3 = var1.readUnsignedByte(); // L: 67 - this.pairs[0] = var3 >> 4; // L: 68 - this.pairs[1] = var3 & 15; // L: 69 - if (var3 != 0) { // L: 70 - this.field1511[0] = var1.readUnsignedShort(); // L: 71 - this.field1511[1] = var1.readUnsignedShort(); // L: 72 - int var7 = var1.readUnsignedByte(); // L: 73 + final void method2772(Buffer var1, SoundEnvelope var2) { + int var3 = var1.readUnsignedByte(); + this.pairs[0] = var3 >> 4; + this.pairs[1] = var3 & 15; + if (var3 != 0) { + this.field1498[0] = var1.readUnsignedShort(); + this.field1498[1] = var1.readUnsignedShort(); + int var7 = var1.readUnsignedByte(); int var5; int var6; - for (var5 = 0; var5 < 2; ++var5) { // L: 74 - for (var6 = 0; var6 < this.pairs[var5]; ++var6) { // L: 75 - this.field1510[var5][0][var6] = var1.readUnsignedShort(); // L: 76 - this.field1518[var5][0][var6] = var1.readUnsignedShort(); // L: 77 + for (var5 = 0; var5 < 2; ++var5) { + for (var6 = 0; var6 < this.pairs[var5]; ++var6) { + this.field1495[var5][0][var6] = var1.readUnsignedShort(); + this.field1497[var5][0][var6] = var1.readUnsignedShort(); } } - for (var5 = 0; var5 < 2; ++var5) { // L: 80 - for (var6 = 0; var6 < this.pairs[var5]; ++var6) { // L: 81 - if ((var7 & 1 << var5 * 4 << var6) != 0) { // L: 82 - this.field1510[var5][1][var6] = var1.readUnsignedShort(); // L: 83 - this.field1518[var5][1][var6] = var1.readUnsignedShort(); // L: 84 + for (var5 = 0; var5 < 2; ++var5) { + for (var6 = 0; var6 < this.pairs[var5]; ++var6) { + if ((var7 & 1 << var5 * 4 << var6) != 0) { + this.field1495[var5][1][var6] = var1.readUnsignedShort(); + this.field1497[var5][1][var6] = var1.readUnsignedShort(); } else { - this.field1510[var5][1][var6] = this.field1510[var5][0][var6]; // L: 87 - this.field1518[var5][1][var6] = this.field1518[var5][0][var6]; // L: 88 + this.field1495[var5][1][var6] = this.field1495[var5][0][var6]; + this.field1497[var5][1][var6] = this.field1497[var5][0][var6]; } } } - if (var7 != 0 || this.field1511[1] != this.field1511[0]) { // L: 92 + if (var7 != 0 || this.field1498[1] != this.field1498[0]) { var2.decodeSegments(var1); } } else { - int[] var4 = this.field1511; // L: 95 - this.field1511[1] = 0; // L: 96 - var4[0] = 0; // L: 97 + int[] var4 = this.field1498; + this.field1498[1] = 0; + var4[0] = 0; } - } // L: 99 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("normalize") static float normalize(float var0) { - float var1 = 32.703197F * (float)Math.pow(2.0D, (double)var0); // L: 30 - return var1 * 3.1415927F / 11025.0F; // L: 31 + float var1 = 32.703197F * (float)Math.pow(2.0D, (double)var0); + return var1 * 3.1415927F / 11025.0F; } } diff --git a/runescape-client/src/main/java/BZip2Decompressor.java b/runescape-client/src/main/java/BZip2Decompressor.java index 73d40ef2bf..0237177567 100644 --- a/runescape-client/src/main/java/BZip2Decompressor.java +++ b/runescape-client/src/main/java/BZip2Decompressor.java @@ -3,129 +3,129 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lg") +@ObfuscatedName("lk") @Implements("BZip2Decompressor") public final class BZip2Decompressor { - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "Llj;" + descriptor = "Lli;" ) @Export("BZip2Decompressor_state") static BZip2State BZip2Decompressor_state; static { - BZip2Decompressor_state = new BZip2State(); // L: 13 + BZip2Decompressor_state = new BZip2State(); } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("BZip2Decompressor_decompress") public static int BZip2Decompressor_decompress(byte[] var0, int var1, byte[] var2, int var3, int var4) { - synchronized(BZip2Decompressor_state) { // L: 20 - BZip2Decompressor_state.inputArray = var2; // L: 21 - BZip2Decompressor_state.nextByte = var4; // L: 22 - BZip2Decompressor_state.outputArray = var0; // L: 23 - BZip2Decompressor_state.next_out = 0; // L: 24 - BZip2Decompressor_state.outputLength = var1; // L: 25 - BZip2Decompressor_state.bsLive = 0; // L: 26 - BZip2Decompressor_state.bsBuff = 0; // L: 27 - BZip2Decompressor_state.nextBit_unused = 0; // L: 28 - BZip2Decompressor_state.field3766 = 0; // L: 29 - BZip2Decompressor_decompress(BZip2Decompressor_state); // L: 30 - var1 -= BZip2Decompressor_state.outputLength; // L: 31 - BZip2Decompressor_state.inputArray = null; // L: 32 - BZip2Decompressor_state.outputArray = null; // L: 33 - return var1; // L: 34 + synchronized(BZip2Decompressor_state) { + BZip2Decompressor_state.inputArray = var2; + BZip2Decompressor_state.nextByte = var4; + BZip2Decompressor_state.outputArray = var0; + BZip2Decompressor_state.next_out = 0; + BZip2Decompressor_state.outputLength = var1; + BZip2Decompressor_state.bsLive = 0; + BZip2Decompressor_state.bsBuff = 0; + BZip2Decompressor_state.nextBit_unused = 0; + BZip2Decompressor_state.field3772 = 0; + BZip2Decompressor_decompress(BZip2Decompressor_state); + var1 -= BZip2Decompressor_state.outputLength; + BZip2Decompressor_state.inputArray = null; + BZip2Decompressor_state.outputArray = null; + return var1; } } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Llj;)V" + descriptor = "(Lli;)V" ) - static void method5912(BZip2State var0) { - byte var2 = var0.out_char; // L: 40 - int var3 = var0.su_rNToGo; // L: 41 - int var4 = var0.nblocks_used; // L: 42 - int var5 = var0.su_ch2; // L: 43 - int[] var6 = class217.BZip2Decompressor_block; // L: 44 - int var7 = var0.field3761; // L: 45 - byte[] var8 = var0.outputArray; // L: 46 - int var9 = var0.next_out; // L: 47 - int var10 = var0.outputLength; // L: 48 - int var12 = var0.field3791 + 1; // L: 50 + static void method5845(BZip2State var0) { + byte var2 = var0.out_char; + int var3 = var0.su_rNToGo; + int var4 = var0.nblocks_used; + int var5 = var0.su_ch2; + int[] var6 = TileItemPile.BZip2Decompressor_block; + int var7 = var0.field3779; + byte[] var8 = var0.outputArray; + int var9 = var0.next_out; + int var10 = var0.outputLength; + int var12 = var0.field3797 + 1; label70: while (true) { - if (var3 > 0) { // L: 53 + if (var3 > 0) { while (true) { - if (var10 == 0) { // L: 55 + if (var10 == 0) { break label70; } - if (var3 == 1) { // L: 56 - if (var10 == 0) { // L: 62 - var3 = 1; // L: 63 + if (var3 == 1) { + if (var10 == 0) { + var3 = 1; break label70; } - var8[var9] = var2; // L: 66 - ++var9; // L: 67 - --var10; // L: 68 + var8[var9] = var2; + ++var9; + --var10; break; } - var8[var9] = var2; // L: 57 - --var3; // L: 58 - ++var9; // L: 59 - --var10; // L: 60 + var8[var9] = var2; + --var3; + ++var9; + --var10; } } - while (var4 != var12) { // L: 71 - var2 = (byte)var5; // L: 75 - var7 = var6[var7]; // L: 76 - byte var1 = (byte)var7; // L: 77 - var7 >>= 8; // L: 78 - ++var4; // L: 79 - if (var1 != var5) { // L: 80 - var5 = var1; // L: 81 - if (var10 == 0) { // L: 82 - var3 = 1; // L: 83 - break label70; // L: 84 + while (var4 != var12) { + var2 = (byte)var5; + var7 = var6[var7]; + byte var1 = (byte)var7; + var7 >>= 8; + ++var4; + if (var1 != var5) { + var5 = var1; + if (var10 == 0) { + var3 = 1; + break label70; } - var8[var9] = var2; // L: 86 - ++var9; // L: 87 - --var10; // L: 88 + var8[var9] = var2; + ++var9; + --var10; } else { - if (var4 != var12) { // L: 91 - var3 = 2; // L: 103 - var7 = var6[var7]; // L: 104 - var1 = (byte)var7; // L: 105 - var7 >>= 8; // L: 106 - ++var4; // L: 107 - if (var4 != var12) { // L: 108 - if (var1 != var5) { // L: 109 - var5 = var1; // L: 110 + if (var4 != var12) { + var3 = 2; + var7 = var6[var7]; + var1 = (byte)var7; + var7 >>= 8; + ++var4; + if (var4 != var12) { + if (var1 != var5) { + var5 = var1; } else { - var3 = 3; // L: 113 - var7 = var6[var7]; // L: 114 - var1 = (byte)var7; // L: 115 - var7 >>= 8; // L: 116 - ++var4; // L: 117 - if (var4 != var12) { // L: 118 - if (var1 != var5) { // L: 119 - var5 = var1; // L: 120 + var3 = 3; + var7 = var6[var7]; + var1 = (byte)var7; + var7 >>= 8; + ++var4; + if (var4 != var12) { + if (var1 != var5) { + var5 = var1; } else { - var7 = var6[var7]; // L: 123 - var1 = (byte)var7; // L: 124 - var7 >>= 8; // L: 125 - ++var4; // L: 126 - var3 = (var1 & 255) + 4; // L: 127 - var7 = var6[var7]; // L: 128 - var5 = (byte)var7; // L: 129 - var7 >>= 8; // L: 130 - ++var4; // L: 131 + var7 = var6[var7]; + var1 = (byte)var7; + var7 >>= 8; + ++var4; + var3 = (var1 & 255) + 4; + var7 = var6[var7]; + var5 = (byte)var7; + var7 >>= 8; + ++var4; } } } @@ -133,508 +133,508 @@ public final class BZip2Decompressor { continue label70; } - if (var10 == 0) { // L: 92 - var3 = 1; // L: 93 - break label70; // L: 94 + if (var10 == 0) { + var3 = 1; + break label70; } - var8[var9] = var2; // L: 96 - ++var9; // L: 97 - --var10; // L: 98 + var8[var9] = var2; + ++var9; + --var10; } } - var3 = 0; // L: 72 - break; // L: 73 + var3 = 0; + break; } - int var13 = var0.field3766; // L: 133 - var0.field3766 += var10 - var10; // L: 134 - if (var0.field3766 < var13) { // L: 135 + int var13 = var0.field3772; + var0.field3772 += var10 - var10; + if (var0.field3772 < var13) { } - var0.out_char = var2; // L: 136 - var0.su_rNToGo = var3; // L: 137 - var0.nblocks_used = var4; // L: 138 - var0.su_ch2 = var5; // L: 139 - class217.BZip2Decompressor_block = var6; // L: 140 - var0.field3761 = var7; // L: 141 - var0.outputArray = var8; // L: 142 - var0.next_out = var9; // L: 143 - var0.outputLength = var10; // L: 144 - } // L: 145 + var0.out_char = var2; + var0.su_rNToGo = var3; + var0.nblocks_used = var4; + var0.su_ch2 = var5; + TileItemPile.BZip2Decompressor_block = var6; + var0.field3779 = var7; + var0.outputArray = var8; + var0.next_out = var9; + var0.outputLength = var10; + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Llj;)V" + descriptor = "(Lli;)V" ) @Export("BZip2Decompressor_decompress") static void BZip2Decompressor_decompress(BZip2State var0) { - boolean var4 = false; // L: 151 - boolean var5 = false; // L: 152 - boolean var6 = false; // L: 153 - boolean var7 = false; // L: 154 - boolean var8 = false; // L: 155 - boolean var9 = false; // L: 156 - boolean var10 = false; // L: 157 - boolean var11 = false; // L: 158 - boolean var12 = false; // L: 159 - boolean var13 = false; // L: 160 - boolean var14 = false; // L: 161 - boolean var15 = false; // L: 162 - boolean var16 = false; // L: 163 - boolean var17 = false; // L: 164 - boolean var18 = false; // L: 165 - boolean var19 = false; // L: 166 - boolean var20 = false; // L: 167 - boolean var21 = false; // L: 168 - int var22 = 0; // L: 169 - int[] var23 = null; // L: 170 - int[] var24 = null; // L: 171 - int[] var25 = null; // L: 172 - var0.blockSize100k = -1050833919; // L: 173 - if (class217.BZip2Decompressor_block == null) { // L: 174 - class217.BZip2Decompressor_block = new int[var0.blockSize100k * -599652704]; + boolean var4 = false; + boolean var5 = false; + boolean var6 = false; + boolean var7 = false; + boolean var8 = false; + boolean var9 = false; + boolean var10 = false; + boolean var11 = false; + boolean var12 = false; + boolean var13 = false; + boolean var14 = false; + boolean var15 = false; + boolean var16 = false; + boolean var17 = false; + boolean var18 = false; + boolean var19 = false; + boolean var20 = false; + boolean var21 = false; + int var22 = 0; + int[] var23 = null; + int[] var24 = null; + int[] var25 = null; + var0.blockSize100k = 1410065408; + if (TileItemPile.BZip2Decompressor_block == null) { + TileItemPile.BZip2Decompressor_block = new int[var0.blockSize100k * 100000]; } - boolean var26 = true; // L: 175 + boolean var26 = true; while (true) { while (var26) { - byte var1 = BZip2Decompressor_readNextByte(var0); // L: 177 - if (var1 == 23) { // L: 178 + byte var1 = BZip2Decompressor_readNextByte(var0); + if (var1 == 23) { return; } - var1 = BZip2Decompressor_readNextByte(var0); // L: 179 - var1 = BZip2Decompressor_readNextByte(var0); // L: 180 - var1 = BZip2Decompressor_readNextByte(var0); // L: 181 - var1 = BZip2Decompressor_readNextByte(var0); // L: 182 - var1 = BZip2Decompressor_readNextByte(var0); // L: 183 - var1 = BZip2Decompressor_readNextByte(var0); // L: 184 - var1 = BZip2Decompressor_readNextByte(var0); // L: 185 - var1 = BZip2Decompressor_readNextByte(var0); // L: 186 - var1 = BZip2Decompressor_readNextByte(var0); // L: 187 - var1 = BZip2Decompressor_readNextBit(var0); // L: 188 - if (var1 != 0) { // L: 189 + var1 = BZip2Decompressor_readNextByte(var0); + var1 = BZip2Decompressor_readNextByte(var0); + var1 = BZip2Decompressor_readNextByte(var0); + var1 = BZip2Decompressor_readNextByte(var0); + var1 = BZip2Decompressor_readNextByte(var0); + var1 = BZip2Decompressor_readNextByte(var0); + var1 = BZip2Decompressor_readNextByte(var0); + var1 = BZip2Decompressor_readNextByte(var0); + var1 = BZip2Decompressor_readNextByte(var0); + var1 = BZip2Decompressor_readNextBit(var0); + if (var1 != 0) { } - var0.originalPointer = 0; // L: 191 - var1 = BZip2Decompressor_readNextByte(var0); // L: 192 - var0.originalPointer = var0.originalPointer << 8 | var1 & 255; // L: 193 - var1 = BZip2Decompressor_readNextByte(var0); // L: 194 - var0.originalPointer = var0.originalPointer << 8 | var1 & 255; // L: 195 - var1 = BZip2Decompressor_readNextByte(var0); // L: 196 - var0.originalPointer = var0.originalPointer << 8 | var1 & 255; // L: 197 + var0.originalPointer = 0; + var1 = BZip2Decompressor_readNextByte(var0); + var0.originalPointer = var0.originalPointer << 8 | var1 & 255; + var1 = BZip2Decompressor_readNextByte(var0); + var0.originalPointer = var0.originalPointer << 8 | var1 & 255; + var1 = BZip2Decompressor_readNextByte(var0); + var0.originalPointer = var0.originalPointer << 8 | var1 & 255; int var36; - for (var36 = 0; var36 < 16; ++var36) { // L: 198 - var1 = BZip2Decompressor_readNextBit(var0); // L: 199 - if (var1 == 1) { // L: 200 + for (var36 = 0; var36 < 16; ++var36) { + var1 = BZip2Decompressor_readNextBit(var0); + if (var1 == 1) { var0.inUse16[var36] = true; } else { - var0.inUse16[var36] = false; // L: 201 + var0.inUse16[var36] = false; } } - for (var36 = 0; var36 < 256; ++var36) { // L: 203 + for (var36 = 0; var36 < 256; ++var36) { var0.inUse[var36] = false; } int var37; - for (var36 = 0; var36 < 16; ++var36) { // L: 204 - if (var0.inUse16[var36]) { // L: 205 - for (var37 = 0; var37 < 16; ++var37) { // L: 206 - var1 = BZip2Decompressor_readNextBit(var0); // L: 207 - if (var1 == 1) { // L: 208 + for (var36 = 0; var36 < 16; ++var36) { + if (var0.inUse16[var36]) { + for (var37 = 0; var37 < 16; ++var37) { + var1 = BZip2Decompressor_readNextBit(var0); + if (var1 == 1) { var0.inUse[var37 + var36 * 16] = true; } } } } - makeMaps(var0); // L: 212 - int var39 = var0.nInUse + 2; // L: 213 - int var40 = BZip2Decompressor_readBits(3, var0); // L: 214 - int var41 = BZip2Decompressor_readBits(15, var0); // L: 215 + makeMaps(var0); + int var39 = var0.nInUse + 2; + int var40 = BZip2Decompressor_readBits(3, var0); + int var41 = BZip2Decompressor_readBits(15, var0); - for (var36 = 0; var36 < var41; ++var36) { // L: 216 - var37 = 0; // L: 217 + for (var36 = 0; var36 < var41; ++var36) { + var37 = 0; while (true) { - var1 = BZip2Decompressor_readNextBit(var0); // L: 219 - if (var1 == 0) { // L: 220 - var0.selectorMtf[var36] = (byte)var37; // L: 223 + var1 = BZip2Decompressor_readNextBit(var0); + if (var1 == 0) { + var0.selectorMtf[var36] = (byte)var37; break; } - ++var37; // L: 221 + ++var37; } } - byte[] var27 = new byte[6]; // L: 226 + byte[] var27 = new byte[6]; byte var29; - for (var29 = 0; var29 < var40; var27[var29] = var29++) { // L: 229 + for (var29 = 0; var29 < var40; var27[var29] = var29++) { } - for (var36 = 0; var36 < var41; ++var36) { // L: 230 - var29 = var0.selectorMtf[var36]; // L: 231 + for (var36 = 0; var36 < var41; ++var36) { + var29 = var0.selectorMtf[var36]; byte var28; - for (var28 = var27[var29]; var29 > 0; --var29) { // L: 232 233 235 - var27[var29] = var27[var29 - 1]; // L: 234 + for (var28 = var27[var29]; var29 > 0; --var29) { + var27[var29] = var27[var29 - 1]; } - var27[0] = var28; // L: 237 - var0.selector[var36] = var28; // L: 238 + var27[0] = var28; + var0.selector[var36] = var28; } int var38; - for (var38 = 0; var38 < var40; ++var38) { // L: 241 - int var50 = BZip2Decompressor_readBits(5, var0); // L: 242 + for (var38 = 0; var38 < var40; ++var38) { + int var50 = BZip2Decompressor_readBits(5, var0); - for (var36 = 0; var36 < var39; ++var36) { // L: 243 + for (var36 = 0; var36 < var39; ++var36) { while (true) { - var1 = BZip2Decompressor_readNextBit(var0); // L: 245 - if (var1 == 0) { // L: 246 - var0.temp_charArray2d[var38][var36] = (byte)var50; // L: 251 + var1 = BZip2Decompressor_readNextBit(var0); + if (var1 == 0) { + var0.temp_charArray2d[var38][var36] = (byte)var50; break; } - var1 = BZip2Decompressor_readNextBit(var0); // L: 247 - if (var1 == 0) { // L: 248 + var1 = BZip2Decompressor_readNextBit(var0); + if (var1 == 0) { ++var50; } else { - --var50; // L: 249 + --var50; } } } } - for (var38 = 0; var38 < var40; ++var38) { // L: 254 - byte var2 = 32; // L: 255 - byte var3 = 0; // L: 256 + for (var38 = 0; var38 < var40; ++var38) { + byte var2 = 32; + byte var3 = 0; - for (var36 = 0; var36 < var39; ++var36) { // L: 257 - if (var0.temp_charArray2d[var38][var36] > var3) { // L: 258 + for (var36 = 0; var36 < var39; ++var36) { + if (var0.temp_charArray2d[var38][var36] > var3) { var3 = var0.temp_charArray2d[var38][var36]; } - if (var0.temp_charArray2d[var38][var36] < var2) { // L: 259 + if (var0.temp_charArray2d[var38][var36] < var2) { var2 = var0.temp_charArray2d[var38][var36]; } } - BZip2Decompressor_createHuffmanTables(var0.limit[var38], var0.base[var38], var0.perm[var38], var0.temp_charArray2d[var38], var2, var3, var39); // L: 261 - var0.minLens[var38] = var2; // L: 262 + BZip2Decompressor_createHuffmanTables(var0.limit[var38], var0.base[var38], var0.perm[var38], var0.temp_charArray2d[var38], var2, var3, var39); + var0.minLens[var38] = var2; } - int var42 = var0.nInUse + 1; // L: 264 - int var43 = -1; // L: 265 - byte var44 = 0; // L: 266 + int var42 = var0.nInUse + 1; + int var43 = -1; + byte var44 = 0; - for (var36 = 0; var36 <= 255; ++var36) { // L: 267 + for (var36 = 0; var36 <= 255; ++var36) { var0.unzftab[var36] = 0; } - int var56 = 4095; // L: 272 + int var56 = 4095; int var35; int var55; - for (var35 = 15; var35 >= 0; --var35) { // L: 273 - for (var55 = 15; var55 >= 0; --var55) { // L: 274 - var0.ll8[var56] = (byte)(var55 + var35 * 16); // L: 275 - --var56; // L: 276 + for (var35 = 15; var35 >= 0; --var35) { + for (var55 = 15; var55 >= 0; --var55) { + var0.ll8[var56] = (byte)(var55 + var35 * 16); + --var56; } - var0.getAndMoveToFrontDecode_yy[var35] = var56 + 1; // L: 278 + var0.getAndMoveToFrontDecode_yy[var35] = var56 + 1; } - int var47 = 0; // L: 281 + int var47 = 0; byte var54; - if (var44 == 0) { // L: 282 - ++var43; // L: 283 - var44 = 50; // L: 284 - var54 = var0.selector[var43]; // L: 285 - var22 = var0.minLens[var54]; // L: 286 - var23 = var0.limit[var54]; // L: 287 - var25 = var0.perm[var54]; // L: 288 - var24 = var0.base[var54]; // L: 289 + if (var44 == 0) { + ++var43; + var44 = 50; + var54 = var0.selector[var43]; + var22 = var0.minLens[var54]; + var23 = var0.limit[var54]; + var25 = var0.perm[var54]; + var24 = var0.base[var54]; } - int var45 = var44 - 1; // L: 291 - int var51 = var22; // L: 292 + int var45 = var44 - 1; + int var51 = var22; int var52; byte var53; - for (var52 = BZip2Decompressor_readBits(var22, var0); var52 > var23[var51]; var52 = var52 << 1 | var53) { // L: 293 295 298 - ++var51; // L: 296 - var53 = BZip2Decompressor_readNextBit(var0); // L: 297 + for (var52 = BZip2Decompressor_readBits(var22, var0); var52 > var23[var51]; var52 = var52 << 1 | var53) { + ++var51; + var53 = BZip2Decompressor_readNextBit(var0); } - int var46 = var25[var52 - var24[var51]]; // L: 300 + int var46 = var25[var52 - var24[var51]]; while (true) { int[] var10000; int var10002; - while (var46 != var42) { // L: 302 - if (var46 != 0 && var46 != 1) { // L: 303 - int var33 = var46 - 1; // L: 349 + while (var46 != var42) { + if (var46 != 0 && var46 != 1) { + int var33 = var46 - 1; int var30; - if (var33 < 16) { // L: 350 - var30 = var0.getAndMoveToFrontDecode_yy[0]; // L: 351 + if (var33 < 16) { + var30 = var0.getAndMoveToFrontDecode_yy[0]; - for (var1 = var0.ll8[var30 + var33]; var33 > 3; var33 -= 4) { // L: 352 353 359 - int var34 = var30 + var33; // L: 354 - var0.ll8[var34] = var0.ll8[var34 - 1]; // L: 355 - var0.ll8[var34 - 1] = var0.ll8[var34 - 2]; // L: 356 - var0.ll8[var34 - 2] = var0.ll8[var34 - 3]; // L: 357 - var0.ll8[var34 - 3] = var0.ll8[var34 - 4]; // L: 358 + for (var1 = var0.ll8[var30 + var33]; var33 > 3; var33 -= 4) { + int var34 = var30 + var33; + var0.ll8[var34] = var0.ll8[var34 - 1]; + var0.ll8[var34 - 1] = var0.ll8[var34 - 2]; + var0.ll8[var34 - 2] = var0.ll8[var34 - 3]; + var0.ll8[var34 - 3] = var0.ll8[var34 - 4]; } - while (var33 > 0) { // L: 361 - var0.ll8[var30 + var33] = var0.ll8[var30 + var33 - 1]; // L: 362 - --var33; // L: 363 + while (var33 > 0) { + var0.ll8[var30 + var33] = var0.ll8[var30 + var33 - 1]; + --var33; } - var0.ll8[var30] = var1; // L: 365 + var0.ll8[var30] = var1; } else { - int var31 = var33 / 16; // L: 368 - int var32 = var33 % 16; // L: 369 - var30 = var0.getAndMoveToFrontDecode_yy[var31] + var32; // L: 370 + int var31 = var33 / 16; + int var32 = var33 % 16; + var30 = var0.getAndMoveToFrontDecode_yy[var31] + var32; - for (var1 = var0.ll8[var30]; var30 > var0.getAndMoveToFrontDecode_yy[var31]; --var30) { // L: 371 372 374 - var0.ll8[var30] = var0.ll8[var30 - 1]; // L: 373 + for (var1 = var0.ll8[var30]; var30 > var0.getAndMoveToFrontDecode_yy[var31]; --var30) { + var0.ll8[var30] = var0.ll8[var30 - 1]; } - for (var10002 = var0.getAndMoveToFrontDecode_yy[var31]++; var31 > 0; --var31) { // L: 376 377 380 - var10002 = var0.getAndMoveToFrontDecode_yy[var31]--; // L: 378 - var0.ll8[var0.getAndMoveToFrontDecode_yy[var31]] = var0.ll8[var0.getAndMoveToFrontDecode_yy[var31 - 1] + 16 - 1]; // L: 379 + for (var10002 = var0.getAndMoveToFrontDecode_yy[var31]++; var31 > 0; --var31) { + var10002 = var0.getAndMoveToFrontDecode_yy[var31]--; + var0.ll8[var0.getAndMoveToFrontDecode_yy[var31]] = var0.ll8[var0.getAndMoveToFrontDecode_yy[var31 - 1] + 16 - 1]; } - var10002 = var0.getAndMoveToFrontDecode_yy[0]--; // L: 382 - var0.ll8[var0.getAndMoveToFrontDecode_yy[0]] = var1; // L: 383 - if (var0.getAndMoveToFrontDecode_yy[0] == 0) { // L: 384 - var56 = 4095; // L: 385 + var10002 = var0.getAndMoveToFrontDecode_yy[0]--; + var0.ll8[var0.getAndMoveToFrontDecode_yy[0]] = var1; + if (var0.getAndMoveToFrontDecode_yy[0] == 0) { + var56 = 4095; - for (var35 = 15; var35 >= 0; --var35) { // L: 386 - for (var55 = 15; var55 >= 0; --var55) { // L: 387 - var0.ll8[var56] = var0.ll8[var0.getAndMoveToFrontDecode_yy[var35] + var55]; // L: 388 - --var56; // L: 389 + for (var35 = 15; var35 >= 0; --var35) { + for (var55 = 15; var55 >= 0; --var55) { + var0.ll8[var56] = var0.ll8[var0.getAndMoveToFrontDecode_yy[var35] + var55]; + --var56; } - var0.getAndMoveToFrontDecode_yy[var35] = var56 + 1; // L: 391 + var0.getAndMoveToFrontDecode_yy[var35] = var56 + 1; } } } - var10002 = var0.unzftab[var0.seqToUnseq[var1 & 255] & 255]++; // L: 396 - class217.BZip2Decompressor_block[var47] = var0.seqToUnseq[var1 & 255] & 255; // L: 397 - ++var47; // L: 398 - if (var45 == 0) { // L: 399 - ++var43; // L: 400 - var45 = 50; // L: 401 - var54 = var0.selector[var43]; // L: 402 - var22 = var0.minLens[var54]; // L: 403 - var23 = var0.limit[var54]; // L: 404 - var25 = var0.perm[var54]; // L: 405 - var24 = var0.base[var54]; // L: 406 + var10002 = var0.unzftab[var0.seqToUnseq[var1 & 255] & 255]++; + TileItemPile.BZip2Decompressor_block[var47] = var0.seqToUnseq[var1 & 255] & 255; + ++var47; + if (var45 == 0) { + ++var43; + var45 = 50; + var54 = var0.selector[var43]; + var22 = var0.minLens[var54]; + var23 = var0.limit[var54]; + var25 = var0.perm[var54]; + var24 = var0.base[var54]; } - --var45; // L: 408 - var51 = var22; // L: 409 + --var45; + var51 = var22; - for (var52 = BZip2Decompressor_readBits(var22, var0); var52 > var23[var51]; var52 = var52 << 1 | var53) { // L: 410 412 415 - ++var51; // L: 413 - var53 = BZip2Decompressor_readNextBit(var0); // L: 414 + for (var52 = BZip2Decompressor_readBits(var22, var0); var52 > var23[var51]; var52 = var52 << 1 | var53) { + ++var51; + var53 = BZip2Decompressor_readNextBit(var0); } - var46 = var25[var52 - var24[var51]]; // L: 417 + var46 = var25[var52 - var24[var51]]; } else { - int var48 = -1; // L: 304 - int var49 = 1; // L: 305 + int var48 = -1; + int var49 = 1; do { - if (var46 == 0) { // L: 307 + if (var46 == 0) { var48 += var49; - } else if (var46 == 1) { // L: 308 + } else if (var46 == 1) { var48 += var49 * 2; } - var49 *= 2; // L: 309 - if (var45 == 0) { // L: 310 - ++var43; // L: 311 - var45 = 50; // L: 312 - var54 = var0.selector[var43]; // L: 313 - var22 = var0.minLens[var54]; // L: 314 - var23 = var0.limit[var54]; // L: 315 - var25 = var0.perm[var54]; // L: 316 - var24 = var0.base[var54]; // L: 317 + var49 *= 2; + if (var45 == 0) { + ++var43; + var45 = 50; + var54 = var0.selector[var43]; + var22 = var0.minLens[var54]; + var23 = var0.limit[var54]; + var25 = var0.perm[var54]; + var24 = var0.base[var54]; } - --var45; // L: 319 - var51 = var22; // L: 320 + --var45; + var51 = var22; - for (var52 = BZip2Decompressor_readBits(var22, var0); var52 > var23[var51]; var52 = var52 << 1 | var53) { // L: 321 323 326 - ++var51; // L: 324 - var53 = BZip2Decompressor_readNextBit(var0); // L: 325 + for (var52 = BZip2Decompressor_readBits(var22, var0); var52 > var23[var51]; var52 = var52 << 1 | var53) { + ++var51; + var53 = BZip2Decompressor_readNextBit(var0); } - var46 = var25[var52 - var24[var51]]; // L: 328 - } while(var46 == 0 || var46 == 1); // L: 329 + var46 = var25[var52 - var24[var51]]; + } while(var46 == 0 || var46 == 1); - ++var48; // L: 330 - var1 = var0.seqToUnseq[var0.ll8[var0.getAndMoveToFrontDecode_yy[0]] & 255]; // L: 331 - var10000 = var0.unzftab; // L: 332 + ++var48; + var1 = var0.seqToUnseq[var0.ll8[var0.getAndMoveToFrontDecode_yy[0]] & 255]; + var10000 = var0.unzftab; - for (var10000[var1 & 255] += var48; var48 > 0; --var48) { // L: 333 336 - class217.BZip2Decompressor_block[var47] = var1 & 255; // L: 334 - ++var47; // L: 335 + for (var10000[var1 & 255] += var48; var48 > 0; --var48) { + TileItemPile.BZip2Decompressor_block[var47] = var1 & 255; + ++var47; } } } - var0.su_rNToGo = 0; // L: 421 - var0.out_char = 0; // L: 422 - var0.cftab[0] = 0; // L: 423 + var0.su_rNToGo = 0; + var0.out_char = 0; + var0.cftab[0] = 0; - for (var36 = 1; var36 <= 256; ++var36) { // L: 424 + for (var36 = 1; var36 <= 256; ++var36) { var0.cftab[var36] = var0.unzftab[var36 - 1]; } - for (var36 = 1; var36 <= 256; ++var36) { // L: 425 + for (var36 = 1; var36 <= 256; ++var36) { var10000 = var0.cftab; var10000[var36] += var0.cftab[var36 - 1]; } - for (var36 = 0; var36 < var47; ++var36) { // L: 426 - var1 = (byte)(class217.BZip2Decompressor_block[var36] & 255); // L: 427 - var10000 = class217.BZip2Decompressor_block; // L: 428 + for (var36 = 0; var36 < var47; ++var36) { + var1 = (byte)(TileItemPile.BZip2Decompressor_block[var36] & 255); + var10000 = TileItemPile.BZip2Decompressor_block; int var10001 = var0.cftab[var1 & 255]; var10000[var10001] |= var36 << 8; - var10002 = var0.cftab[var1 & 255]++; // L: 429 + var10002 = var0.cftab[var1 & 255]++; } - var0.field3761 = class217.BZip2Decompressor_block[var0.originalPointer] >> 8; // L: 431 - var0.nblocks_used = 0; // L: 432 - var0.field3761 = class217.BZip2Decompressor_block[var0.field3761]; // L: 433 - var0.su_ch2 = (byte)(var0.field3761 & 255); // L: 434 - var0.field3761 >>= 8; // L: 436 - ++var0.nblocks_used; // L: 437 - var0.field3791 = var47; // L: 438 - method5912(var0); // L: 439 - if (var0.field3791 + 1 == var0.nblocks_used && var0.su_rNToGo == 0) { // L: 440 + var0.field3779 = TileItemPile.BZip2Decompressor_block[var0.originalPointer] >> 8; + var0.nblocks_used = 0; + var0.field3779 = TileItemPile.BZip2Decompressor_block[var0.field3779]; + var0.su_ch2 = (byte)(var0.field3779 & 255); + var0.field3779 >>= 8; + ++var0.nblocks_used; + var0.field3797 = var47; + method5845(var0); + if (var0.field3797 + 1 == var0.nblocks_used && var0.su_rNToGo == 0) { var26 = true; break; } - var26 = false; // L: 441 + var26 = false; break; } } - return; // L: 443 + return; } } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Llj;)B" + descriptor = "(Lli;)B" ) @Export("BZip2Decompressor_readNextByte") static byte BZip2Decompressor_readNextByte(BZip2State var0) { - return (byte)BZip2Decompressor_readBits(8, var0); // L: 447 + return (byte)BZip2Decompressor_readBits(8, var0); } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(Llj;)B" + descriptor = "(Lli;)B" ) @Export("BZip2Decompressor_readNextBit") static byte BZip2Decompressor_readNextBit(BZip2State var0) { - return (byte)BZip2Decompressor_readBits(1, var0); // L: 451 + return (byte)BZip2Decompressor_readBits(1, var0); } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(ILlj;)I" + descriptor = "(ILli;)I" ) @Export("BZip2Decompressor_readBits") static int BZip2Decompressor_readBits(int var0, BZip2State var1) { - while (var1.bsLive < var0) { // L: 456 - var1.bsBuff = var1.bsBuff << 8 | var1.inputArray[var1.nextByte] & 255; // L: 462 - var1.bsLive += 8; // L: 463 - ++var1.nextByte; // L: 464 - ++var1.nextBit_unused; // L: 465 - if (var1.nextBit_unused == 0) { // L: 466 + while (var1.bsLive < var0) { + var1.bsBuff = var1.bsBuff << 8 | var1.inputArray[var1.nextByte] & 255; + var1.bsLive += 8; + ++var1.nextByte; + ++var1.nextBit_unused; + if (var1.nextBit_unused == 0) { } } - int var2 = var1.bsBuff >> var1.bsLive - var0 & (1 << var0) - 1; // L: 458 - var1.bsLive -= var0; // L: 459 - return var2; // L: 460 + int var2 = var1.bsBuff >> var1.bsLive - var0 & (1 << var0) - 1; + var1.bsLive -= var0; + return var2; } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(Llj;)V" + descriptor = "(Lli;)V" ) @Export("makeMaps") static void makeMaps(BZip2State var0) { - var0.nInUse = 0; // L: 472 + var0.nInUse = 0; - for (int var1 = 0; var1 < 256; ++var1) { // L: 473 - if (var0.inUse[var1]) { // L: 474 - var0.seqToUnseq[var0.nInUse] = (byte)var1; // L: 475 - ++var0.nInUse; // L: 476 + for (int var1 = 0; var1 < 256; ++var1) { + if (var0.inUse[var1]) { + var0.seqToUnseq[var0.nInUse] = (byte)var1; + ++var0.nInUse; } } - } // L: 479 + } - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("BZip2Decompressor_createHuffmanTables") static void BZip2Decompressor_createHuffmanTables(int[] var0, int[] var1, int[] var2, byte[] var3, int var4, int var5, int var6) { - int var7 = 0; // L: 486 + int var7 = 0; int var8; - for (var8 = var4; var8 <= var5; ++var8) { // L: 487 - for (int var9 = 0; var9 < var6; ++var9) { // L: 488 - if (var8 == var3[var9]) { // L: 489 - var2[var7] = var9; // L: 490 - ++var7; // L: 491 + for (var8 = var4; var8 <= var5; ++var8) { + for (int var9 = 0; var9 < var6; ++var9) { + if (var8 == var3[var9]) { + var2[var7] = var9; + ++var7; } } } - for (var8 = 0; var8 < 23; ++var8) { // L: 495 + for (var8 = 0; var8 < 23; ++var8) { var1[var8] = 0; } - for (var8 = 0; var8 < var6; ++var8) { // L: 496 + for (var8 = 0; var8 < var6; ++var8) { ++var1[var3[var8] + 1]; } - for (var8 = 1; var8 < 23; ++var8) { // L: 497 + for (var8 = 1; var8 < 23; ++var8) { var1[var8] += var1[var8 - 1]; } - for (var8 = 0; var8 < 23; ++var8) { // L: 498 + for (var8 = 0; var8 < 23; ++var8) { var0[var8] = 0; } - int var10 = 0; // L: 499 + int var10 = 0; - for (var8 = var4; var8 <= var5; ++var8) { // L: 500 - var10 += var1[var8 + 1] - var1[var8]; // L: 501 - var0[var8] = var10 - 1; // L: 502 - var10 <<= 1; // L: 503 + for (var8 = var4; var8 <= var5; ++var8) { + var10 += var1[var8 + 1] - var1[var8]; + var0[var8] = var10 - 1; + var10 <<= 1; } - for (var8 = var4 + 1; var8 <= var5; ++var8) { // L: 505 - var1[var8] = (var0[var8 - 1] + 1 << 1) - var1[var8]; // L: 506 + for (var8 = var4 + 1; var8 <= var5; ++var8) { + var1[var8] = (var0[var8 - 1] + 1 << 1) - var1[var8]; } - } // L: 508 + } } diff --git a/runescape-client/src/main/java/BZip2State.java b/runescape-client/src/main/java/BZip2State.java index 116ad308d0..0a7aaf4f12 100644 --- a/runescape-client/src/main/java/BZip2State.java +++ b/runescape-client/src/main/java/BZip2State.java @@ -2,180 +2,196 @@ 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("lj") +@ObfuscatedName("li") @Implements("BZip2State") public final class BZip2State { - @ObfuscatedName("f") - final int field3776; - @ObfuscatedName("b") - final int field3760; - @ObfuscatedName("l") - final int field3756; - @ObfuscatedName("m") - final int field3757; - @ObfuscatedName("z") - final int field3758; - @ObfuscatedName("q") - final int field3759; - @ObfuscatedName("k") + @ObfuscatedName("h") + final int field3765; + @ObfuscatedName("v") + final int field3761; + @ObfuscatedName("x") + final int field3762; + @ObfuscatedName("w") + final int field3769; + @ObfuscatedName("t") + final int field3783; + @ObfuscatedName("j") + final int field3793; + @ObfuscatedName("n") @Export("inputArray") byte[] inputArray; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = -2107089089 + intValue = 2048002917 ) @Export("nextByte") int nextByte; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = 1265536035 + intValue = -1387110715 ) @Export("nextBit_unused") int nextBit_unused; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("outputArray") byte[] outputArray; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedGetter( - intValue = -1237814353 + intValue = -124829371 ) @Export("next_out") int next_out; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedGetter( - intValue = -1984438571 + intValue = 990524105 ) @Export("outputLength") int outputLength; - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedGetter( - intValue = 1896689393 + intValue = 1359867971 ) - int field3766; - @ObfuscatedName("x") + int field3772; + @ObfuscatedName("c") @Export("out_char") byte out_char; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedGetter( - intValue = -59946543 + intValue = 370207757 ) @Export("su_rNToGo") int su_rNToGo; - @ObfuscatedName("r") + @ObfuscatedName("f") @ObfuscatedGetter( - intValue = -1329480859 + intValue = -1851938871 ) @Export("bsBuff") int bsBuff; - @ObfuscatedName("y") + @ObfuscatedName("a") @ObfuscatedGetter( - intValue = 1443404011 + intValue = -487654005 ) @Export("bsLive") int bsLive; - @ObfuscatedName("s") + @ObfuscatedName("b") + @ObfuscatedGetter( + intValue = -980784128 + ) @Export("blockSize100k") int blockSize100k; - @ObfuscatedName("j") + @ObfuscatedName("y") @ObfuscatedGetter( - intValue = -872261387 + intValue = -1325444151 ) @Export("originalPointer") int originalPointer; - @ObfuscatedName("w") + @ObfuscatedName("r") @ObfuscatedGetter( - intValue = 1806589357 + intValue = -1685477849 ) - int field3761; - @ObfuscatedName("v") + int field3779; + @ObfuscatedName("q") @ObfuscatedGetter( - intValue = -1647228145 + intValue = -1899062287 ) @Export("su_ch2") int su_ch2; - @ObfuscatedName("d") + @ObfuscatedName("g") @Export("unzftab") int[] unzftab; - @ObfuscatedName("a") + @ObfuscatedName("s") @ObfuscatedGetter( - intValue = -2108747911 + intValue = 995488429 ) @Export("nblocks_used") int nblocks_used; - @ObfuscatedName("g") + @ObfuscatedName("o") @Export("cftab") int[] cftab; - @ObfuscatedName("i") + @ObfuscatedName("d") @ObfuscatedGetter( - intValue = -207358751 + intValue = -1840218043 ) @Export("nInUse") int nInUse; - @ObfuscatedName("ab") + @ObfuscatedName("an") @Export("inUse") boolean[] inUse; - @ObfuscatedName("ac") + @ObfuscatedName("aj") @Export("inUse16") boolean[] inUse16; - @ObfuscatedName("ao") + @ObfuscatedName("ax") @Export("seqToUnseq") byte[] seqToUnseq; - @ObfuscatedName("af") + @ObfuscatedName("ag") @Export("ll8") byte[] ll8; - @ObfuscatedName("av") + @ObfuscatedName("au") @Export("getAndMoveToFrontDecode_yy") int[] getAndMoveToFrontDecode_yy; - @ObfuscatedName("ar") + @ObfuscatedName("as") @Export("selector") byte[] selector; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("selectorMtf") byte[] selectorMtf; - @ObfuscatedName("ah") + @ObfuscatedName("ac") @Export("temp_charArray2d") byte[][] temp_charArray2d; - @ObfuscatedName("az") + @ObfuscatedName("ak") @Export("limit") int[][] limit; - @ObfuscatedName("ak") + @ObfuscatedName("av") @Export("base") int[][] base; - @ObfuscatedName("au") + @ObfuscatedName("aq") @Export("perm") int[][] perm; - @ObfuscatedName("ai") + @ObfuscatedName("ah") @Export("minLens") int[] minLens; - @ObfuscatedName("ax") + @ObfuscatedName("am") @ObfuscatedGetter( - intValue = -974418121 + intValue = -1908981277 ) - int field3791; + int field3797; BZip2State() { - this.field3776 = 4096; // L: 4 - this.field3760 = 16; // L: 5 - this.field3756 = 258; // L: 6 - this.field3757 = 6; // L: 7 - this.field3758 = 50; // L: 8 - this.field3759 = 18002; // L: 9 - this.nextByte = 0; // L: 11 - this.next_out = 0; // L: 14 - this.unzftab = new int[256]; // L: 25 - this.cftab = new int[257]; // L: 27 - this.inUse = new boolean[256]; // L: 30 - this.inUse16 = new boolean[16]; // L: 31 - this.seqToUnseq = new byte[256]; // L: 32 - this.ll8 = new byte[4096]; // L: 33 - this.getAndMoveToFrontDecode_yy = new int[16]; // L: 34 - this.selector = new byte[18002]; // L: 35 - this.selectorMtf = new byte[18002]; // L: 36 - this.temp_charArray2d = new byte[6][258]; // L: 37 - this.limit = new int[6][258]; // L: 38 - this.base = new int[6][258]; // L: 39 - this.perm = new int[6][258]; // L: 40 - this.minLens = new int[6]; // L: 41 - } // L: 44 + this.field3765 = 4096; + this.field3761 = 16; + this.field3762 = 258; + this.field3769 = 6; + this.field3783 = 50; + this.field3793 = 18002; + this.nextByte = 0; + this.next_out = 0; + this.unzftab = new int[256]; + this.cftab = new int[257]; + this.inUse = new boolean[256]; + this.inUse16 = new boolean[16]; + this.seqToUnseq = new byte[256]; + this.ll8 = new byte[4096]; + this.getAndMoveToFrontDecode_yy = new int[16]; + this.selector = new byte[18002]; + this.selectorMtf = new byte[18002]; + this.temp_charArray2d = new byte[6][258]; + this.limit = new int[6][258]; + this.base = new int[6][258]; + this.perm = new int[6][258]; + this.minLens = new int[6]; + } + + @ObfuscatedName("le") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-244499356" + ) + @Export("Clan_leaveChat") + static final void Clan_leaveChat() { + PacketBufferNode var0 = ItemContainer.getPacketBufferNode(ClientPacket.field2285, Client.packetWriter.isaacCipher); + var0.packetBuffer.writeByte(0); + Client.packetWriter.addNode(var0); + } } diff --git a/runescape-client/src/main/java/BoundaryObject.java b/runescape-client/src/main/java/BoundaryObject.java index 8e8c862edd..be8607cc6a 100644 --- a/runescape-client/src/main/java/BoundaryObject.java +++ b/runescape-client/src/main/java/BoundaryObject.java @@ -4,66 +4,123 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("em") +@ObfuscatedName("ev") @Implements("BoundaryObject") public final class BoundaryObject { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 24178129 + intValue = 787394595 ) @Export("tileHeight") int tileHeight; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 840836709 + intValue = 1840852053 ) @Export("x") int x; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 511451679 + intValue = -1985466901 ) @Export("y") int y; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 1059090271 + intValue = -760967019 ) @Export("orientationA") int orientationA; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 237050093 + intValue = -1039727293 ) @Export("orientationB") int orientationB; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lej;" + descriptor = "Ler;" ) @Export("entity1") public Entity entity1; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Lej;" + descriptor = "Ler;" ) @Export("entity2") public Entity entity2; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - longValue = -3078711070799260957L + longValue = 6107262315709824135L ) @Export("tag") public long tag; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = -810696597 + intValue = 582235775 ) @Export("flags") int flags; BoundaryObject() { - this.tag = 0L; // L: 11 - this.flags = 0; // L: 12 - } // L: 14 + this.tag = 0L; + this.flags = 0; + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/CharSequence;I)Ljava/lang/String;", + garbageValue = "-2018740830" + ) + public static String method3343(CharSequence var0) { + int var1 = var0.length(); + StringBuilder var2 = new StringBuilder(var1); + + for (int var3 = 0; var3 < var1; ++var3) { + char var4 = var0.charAt(var3); + if ((var4 < 'a' || var4 > 'z') && (var4 < 'A' || var4 > 'Z') && (var4 < '0' || var4 > '9') && var4 != '.' && var4 != '-' && var4 != '*' && var4 != '_') { + if (var4 == ' ') { + var2.append('+'); + } else { + byte var5 = Varps.charToByteCp1252(var4); + var2.append('%'); + int var6 = var5 >> 4 & 15; + if (var6 >= 10) { + var2.append((char)(var6 + 55)); + } else { + var2.append((char)(var6 + 48)); + } + + var6 = var5 & 15; + if (var6 >= 10) { + var2.append((char)(var6 + 55)); + } else { + var2.append((char)(var6 + 48)); + } + } + } else { + var2.append(var4); + } + } + + return var2.toString(); + } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(IB)Z", + garbageValue = "-57" + ) + public static boolean method3342(int var0) { + return var0 == WorldMapDecorationType.field2766.id; + } + + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "(IB)Z", + garbageValue = "14" + ) + public static boolean method3341(int var0) { + return (var0 >> 29 & 1) != 0; + } } diff --git a/runescape-client/src/main/java/Bounds.java b/runescape-client/src/main/java/Bounds.java index 861fddb8b7..52457e87cb 100644 --- a/runescape-client/src/main/java/Bounds.java +++ b/runescape-client/src/main/java/Bounds.java @@ -4,140 +4,146 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lw") +@ObfuscatedName("lc") @Implements("Bounds") public class Bounds { - @ObfuscatedName("f") + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "Lib;" + ) + @Export("Widget_fontsArchive") + public static AbstractArchive Widget_fontsArchive; + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = -1707768055 + intValue = 1090758865 ) @Export("lowX") public int lowX; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -797109491 + intValue = 518192471 ) @Export("lowY") public int lowY; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1403597143 + intValue = 620953543 ) @Export("highX") public int highX; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 959443313 + intValue = 1803324609 ) @Export("highY") public int highY; public Bounds(int var1, int var2, int var3, int var4) { - this.setLow(var1, var2); // L: 14 - this.setHigh(var3, var4); // L: 15 - } // L: 16 + this.setLow(var1, var2); + this.setHigh(var3, var4); + } public Bounds(int var1, int var2) { - this(0, 0, var1, var2); // L: 10 - } // L: 11 + this(0, 0, var1, var2); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "-124623897" + garbageValue = "-1764840928" ) @Export("setLow") public void setLow(int var1, int var2) { - this.lowX = var1; // L: 19 - this.lowY = var2; // L: 20 - } // L: 21 + this.lowX = var1; + this.lowY = var2; + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "2099079060" + garbageValue = "-1587228886" ) @Export("setHigh") public void setHigh(int var1, int var2) { - this.highX = var1; // L: 24 - this.highY = var2; // L: 25 - } // L: 26 + this.highX = var1; + this.highY = var2; + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Llw;Llw;I)V", - garbageValue = "-1801427398" + descriptor = "(Llc;Llc;I)V", + garbageValue = "-769796699" ) - public void method6129(Bounds var1, Bounds var2) { - this.method6120(var1, var2); // L: 33 - this.method6117(var1, var2); // L: 34 - } // L: 35 + public void method6014(Bounds var1, Bounds var2) { + this.method6015(var1, var2); + this.method6024(var1, var2); + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Llw;Llw;I)V", - garbageValue = "-1914930384" + descriptor = "(Llc;Llc;I)V", + garbageValue = "-1678302488" ) - void method6120(Bounds var1, Bounds var2) { - var2.lowX = this.lowX; // L: 38 - var2.highX = this.highX; // L: 39 - if (this.lowX < var1.lowX) { // L: 40 - var2.highX = (var2.highX * 1436136857 - (var1.lowX * 1436136857 - this.lowX * 1436136857)) * -1403597143; // L: 41 - var2.lowX = var1.lowX; // L: 42 + void method6015(Bounds var1, Bounds var2) { + var2.lowX = this.lowX; + var2.highX = this.highX; + if (this.lowX < var1.lowX) { + var2.highX -= var1.lowX - this.lowX; + var2.lowX = var1.lowX; } - if (var2.method6130() > var1.method6130()) { // L: 44 - var2.highX -= var2.method6130() - var1.method6130(); // L: 45 + if (var2.method6017() > var1.method6017()) { + var2.highX -= var2.method6017() - var1.method6017(); } - if (var2.highX < 0) { // L: 47 + if (var2.highX < 0) { var2.highX = 0; } - } // L: 48 + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(Llw;Llw;I)V", - garbageValue = "1895842322" + descriptor = "(Llc;Llc;I)V", + garbageValue = "394854704" ) - void method6117(Bounds var1, Bounds var2) { - var2.lowY = this.lowY; // L: 51 - var2.highY = this.highY; // L: 52 - if (this.lowY < var1.lowY) { // L: 53 - var2.highY = (var2.highY * -1936937071 - (var1.lowY * -1936937071 - this.lowY * -1936937071)) * 959443313; // L: 54 - var2.lowY = var1.lowY; // L: 55 + void method6024(Bounds var1, Bounds var2) { + var2.lowY = this.lowY; + var2.highY = this.highY; + if (this.lowY < var1.lowY) { + var2.highY -= var1.lowY - this.lowY; + var2.lowY = var1.lowY; } - if (var2.method6122() > var1.method6122()) { // L: 57 - var2.highY -= var2.method6122() - var1.method6122(); // L: 58 + if (var2.method6018() > var1.method6018()) { + var2.highY -= var2.method6018() - var1.method6018(); } - if (var2.highY < 0) { // L: 60 + if (var2.highY < 0) { var2.highY = 0; } - } // L: 61 - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "226030210" - ) - int method6130() { - return this.lowX + this.highX; // L: 64 } - @ObfuscatedName("k") + @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1174684154" + garbageValue = "-1901002144" ) - int method6122() { - return this.lowY + this.highY; // L: 68 + int method6017() { + return this.highX + this.lowX; + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "924077669" + ) + int method6018() { + return this.lowY + this.highY; } public String toString() { - return null; // L: 29 + return null; } } diff --git a/runescape-client/src/main/java/Buddy.java b/runescape-client/src/main/java/Buddy.java index e6b1efb18e..c19b88aa67 100644 --- a/runescape-client/src/main/java/Buddy.java +++ b/runescape-client/src/main/java/Buddy.java @@ -4,78 +4,60 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kl") +@ObfuscatedName("kz") @Implements("Buddy") public class Buddy extends User { - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 11106869 + intValue = -1856185425 ) @Export("world") public int world; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -152395721 + intValue = 503110863 ) @Export("int2") public int int2; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -2046861125 + intValue = 368633443 ) @Export("rank") public int rank; Buddy() { - this.world = -1; // L: 4 - } // L: 8 + this.world = -1; + } - @ObfuscatedName("as") + @ObfuscatedName("af") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "-2040582240" + garbageValue = "1333742475" ) @Export("set") void set(int var1, int var2) { - this.world = var1; // L: 11 - this.int2 = var2; // L: 12 - } // L: 13 + this.world = var1; + this.int2 = var2; + } - @ObfuscatedName("aj") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1227798999" + garbageValue = "-1196815789" ) @Export("getWorld") public int getWorld() { - return this.world; // L: 16 + return this.world; } - @ObfuscatedName("ae") + @ObfuscatedName("az") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-17715809" + garbageValue = "323903236" ) @Export("hasWorld") public boolean hasWorld() { - return this.world > 0; // L: 20 - } - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(S)I", - garbageValue = "3913" - ) - static int method5322() { - return ++Messages.Messages_count - 1; // L: 19 - } - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(IIIB)Llc;", - garbageValue = "-95" - ) - static Sprite method5321(int var0, int var1, int var2) { - return (Sprite)WorldMapRegion.WorldMapRegion_cachedSprites.get(class8.method117(var0, var1, var2)); // L: 42 + return this.world > 0; } } diff --git a/runescape-client/src/main/java/BuddyRankComparator.java b/runescape-client/src/main/java/BuddyRankComparator.java index 17612a02b3..eff8011749 100644 --- a/runescape-client/src/main/java/BuddyRankComparator.java +++ b/runescape-client/src/main/java/BuddyRankComparator.java @@ -1,5 +1,3 @@ -import java.io.File; -import java.io.RandomAccessFile; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; @@ -8,22 +6,28 @@ import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("fm") @Implements("BuddyRankComparator") public class BuddyRankComparator extends AbstractUserComparator { - @ObfuscatedName("f") + @ObfuscatedName("da") + @ObfuscatedSignature( + descriptor = "Lil;" + ) + @Export("archive7") + static Archive archive7; + @ObfuscatedName("h") @Export("reversed") final boolean reversed; public BuddyRankComparator(boolean var1) { - this.reversed = var1; // L: 10 - } // L: 11 + this.reversed = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkl;Lkl;I)I", - garbageValue = "-776394962" + descriptor = "(Lkz;Lkz;I)I", + garbageValue = "1171495407" ) @Export("compareBuddy") int compareBuddy(Buddy var1, Buddy var2) { - if (var2.rank != var1.rank) { // L: 14 + if (var2.rank != var1.rank) { return this.reversed ? var1.rank - var2.rank : var2.rank - var1.rank; } else { return this.compareUser(var1, var2); @@ -34,170 +38,46 @@ public class BuddyRankComparator extends AbstractUserComparator { return this.compareBuddy((Buddy)var1, (Buddy)var2); } - @ObfuscatedName("f") + @ObfuscatedName("ih") @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "1048639306" + descriptor = "(IIS)V", + garbageValue = "9125" ) - static int method3558(int var0, int var1) { - if (var0 == -2) { // L: 15 - return 12345678; - } else if (var0 == -1) { // L: 16 - if (var1 < 0) { // L: 17 - var1 = 0; // L: 18 - } else if (var1 > 127) { // L: 20 - var1 = 127; // L: 21 - } + static void method3522(int var0, int var1) { + int var2 = GrandExchangeOfferTotalQuantityComparator.fontBold12.stringWidth("Choose Option"); - var1 = 127 - var1; - return var1; - } else { - var1 = (var0 & 127) * var1 / 128; - if (var1 < 2) { // L: 27 - var1 = 2; - } else if (var1 > 126) { - var1 = 126; + int var3; + int var4; + for (var3 = 0; var3 < Client.menuOptionsCount; ++var3) { + var4 = GrandExchangeOfferTotalQuantityComparator.fontBold12.stringWidth(ArchiveLoader.method1230(var3)); + if (var4 > var2) { + var2 = var4; } - - return (var0 & 65408) + var1; } + + var2 += 8; + var3 = Client.menuOptionsCount * 15 + 22; + var4 = var0 - var2 / 2; + if (var2 + var4 > IgnoreList.canvasWidth) { + var4 = IgnoreList.canvasWidth - var2; + } + + if (var4 < 0) { + var4 = 0; + } + + int var5 = var1; + if (var3 + var1 > ModelData0.canvasHeight) { + var5 = ModelData0.canvasHeight - var3; + } + + if (var5 < 0) { + var5 = 0; + } + + AbstractUserComparator.menuX = var4; + DynamicObject.menuY = var5; + Occluder.menuWidth = var2; + class182.menuHeight = Client.menuOptionsCount * 15 + 22; } - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)Ljava/io/File;", - garbageValue = "-878017920" - ) - @Export("getFile") - static File getFile(String var0) { - if (!FileSystem.FileSystem_hasPermissions) { // L: 22 - throw new RuntimeException(""); - } else { - File var1 = (File)FileSystem.FileSystem_cacheFiles.get(var0); // L: 23 - if (var1 != null) { // L: 24 - return var1; - } else { - File var2 = new File(FileSystem.FileSystem_cacheDir, var0); // L: 25 - RandomAccessFile var3 = null; // L: 26 - - try { - File var4 = new File(var2.getParent()); - if (!var4.exists()) { - throw new RuntimeException(""); - } else { - var3 = new RandomAccessFile(var2, "rw"); - int var5 = var3.read(); - var3.seek(0L); - var3.write(var5); - var3.seek(0L); // L: 34 - var3.close(); - FileSystem.FileSystem_cacheFiles.put(var0, var2); // L: 36 - return var2; // L: 37 - } - } catch (Exception var8) { - try { - if (var3 != null) { // L: 41 - var3.close(); // L: 42 - var3 = null; // L: 43 - } - } catch (Exception var7) { // L: 46 - } - - throw new RuntimeException(); // L: 48 - } - } - } - } - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(IIB)I", - garbageValue = "18" - ) - static int method3557(int var0, int var1) { - ItemContainer var2 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); // L: 28 - if (var2 == null) { // L: 29 - return 0; - } else if (var1 == -1) { // L: 30 - return 0; - } else { - int var3 = 0; // L: 31 - - for (int var4 = 0; var4 < var2.quantities.length; ++var4) { // L: 32 - if (var2.ids[var4] == var1) { - var3 += var2.quantities[var4]; // L: 33 - } - } - - return var3; // L: 35 - } - } - - @ObfuscatedName("eu") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1535987208" - ) - @Export("updateGameState") - static void updateGameState(int var0) { - if (var0 != Client.gameState) { // L: 1676 - if (Client.gameState == 0) { // L: 1677 - ByteArrayPool.client.method1112(); - } - - if (var0 == 20 || var0 == 40 || var0 == 45) { // L: 1678 - Client.loginState = 0; // L: 1679 - Client.field947 = 0; // L: 1680 - Client.field715 = 0; // L: 1681 - Client.timer.method5153(var0); // L: 1682 - if (var0 != 20) { // L: 1683 - Message.method1314(false); - } - } - - if (var0 != 20 && var0 != 40 && MouseRecorder.field615 != null) { // L: 1685 1686 - MouseRecorder.field615.close(); // L: 1687 - MouseRecorder.field615 = null; // L: 1688 - } - - if (Client.gameState == 25) { // L: 1691 - Client.field722 = 0; // L: 1692 - Client.field734 = 0; // L: 1693 - Client.field735 = 1; // L: 1694 - Client.field848 = 0; // L: 1695 - Client.field737 = 1; // L: 1696 - } - - if (var0 != 5 && var0 != 10) { // L: 1698 - if (var0 == 20) { // L: 1701 - HealthBar.method2141(class281.archive10, GrandExchangeOffer.archive8, true, Client.gameState == 11 ? 4 : 0); // L: 1702 - } else if (var0 == 11) { // L: 1704 - HealthBar.method2141(class281.archive10, GrandExchangeOffer.archive8, false, 4); // L: 1705 - } else if (Login.clearLoginScreen) { // L: 1708 - Tiles.titleboxSprite = null; // L: 1709 - Login.titlebuttonSprite = null; // L: 1710 - class278.runesSprite = null; // L: 1711 - Login.leftTitleSprite = null; // L: 1712 - Login.rightTitleSprite = null; // L: 1713 - SecureRandomFuture.logoSprite = null; // L: 1714 - DefaultsGroup.title_muteSprite = null; // L: 1715 - Login.options_buttons_0Sprite = null; // L: 1716 - Login.options_buttons_2Sprite = null; // L: 1717 - EnumDefinition.worldSelectBackSprites = null; // L: 1718 - FaceNormal.worldSelectFlagSprites = null; // L: 1719 - class301.worldSelectArrows = null; // L: 1720 - GameObject.worldSelectStars = null; // L: 1721 - MouseHandler.field523 = null; // L: 1722 - Login.loginScreenRunesAnimation.method1917(); // L: 1723 - VertexNormal.method3133(2); // L: 1724 - WorldMapSection0.method323(true); // L: 1725 - Login.clearLoginScreen = false; // L: 1726 - } - } else { - HealthBar.method2141(class281.archive10, GrandExchangeOffer.archive8, true, 0); // L: 1699 - } - - Client.gameState = var0; // L: 1728 - } - } // L: 1729 } diff --git a/runescape-client/src/main/java/Buffer.java b/runescape-client/src/main/java/Buffer.java index 0379dabdd3..0fb7e702e7 100644 --- a/runescape-client/src/main/java/Buffer.java +++ b/runescape-client/src/main/java/Buffer.java @@ -5,1083 +5,1040 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kb") +@ObfuscatedName("kj") @Implements("Buffer") public class Buffer extends Node { - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("crc32Table") static int[] crc32Table; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("crc64Table") static long[] crc64Table; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("array") public byte[] array; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -218590717 + intValue = -889542651 ) @Export("offset") public int offset; static { - crc32Table = new int[256]; // L: 14 + crc32Table = new int[256]; int var2; - for (int var1 = 0; var1 < 256; ++var1) { // L: 19 - int var4 = var1; // L: 20 + for (int var1 = 0; var1 < 256; ++var1) { + int var4 = var1; - for (var2 = 0; var2 < 8; ++var2) { // L: 21 - if ((var4 & 1) == 1) { // L: 22 + for (var2 = 0; var2 < 8; ++var2) { + if ((var4 & 1) == 1) { var4 = var4 >>> 1 ^ -306674912; } else { - var4 >>>= 1; // L: 23 + var4 >>>= 1; } } - crc32Table[var1] = var4; // L: 25 + crc32Table[var1] = var4; } - crc64Table = new long[256]; // L: 29 + crc64Table = new long[256]; - for (var2 = 0; var2 < 256; ++var2) { // L: 34 - long var0 = (long)var2; // L: 35 + for (var2 = 0; var2 < 256; ++var2) { + long var0 = (long)var2; - for (int var3 = 0; var3 < 8; ++var3) { // L: 36 - if (1L == (var0 & 1L)) { // L: 37 + for (int var3 = 0; var3 < 8; ++var3) { + if ((var0 & 1L) == 1L) { var0 = var0 >>> 1 ^ -3932672073523589310L; } else { - var0 >>>= 1; // L: 38 + var0 >>>= 1; } } - crc64Table[var2] = var0; // L: 40 + crc64Table[var2] = var0; } - } // L: 42 + } public Buffer(int var1) { - this.array = NetFileRequest.ByteArrayPool_getArray(var1); // L: 54 - this.offset = 0; // L: 55 - } // L: 56 + this.array = class25.ByteArrayPool_getArray(var1); + this.offset = 0; + } public Buffer(byte[] var1) { - this.array = var1; // L: 59 - this.offset = 0; // L: 60 - } // L: 61 + this.array = var1; + this.offset = 0; + } - @ObfuscatedName("at") + @ObfuscatedName("ap") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "0" + garbageValue = "118" ) @Export("releaseArray") public void releaseArray() { - if (this.array != null) { // L: 64 - WorldMapSectionType.ByteArrayPool_release(this.array); + if (this.array != null) { + Tile.ByteArrayPool_release(this.array); } - this.array = null; // L: 65 - } // L: 66 + this.array = null; + } - @ObfuscatedName("as") + @ObfuscatedName("ad") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1071371737" + descriptor = "(IB)V", + garbageValue = "-124" ) @Export("writeByte") public void writeByte(int var1) { - this.array[++this.offset - 1] = (byte)var1; // L: 69 - } // L: 70 + this.array[++this.offset - 1] = (byte)var1; + } - @ObfuscatedName("aj") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-952501591" + descriptor = "(IB)V", + garbageValue = "-96" ) @Export("writeShort") public void writeShort(int var1) { - this.array[++this.offset - 1] = (byte)(var1 >> 8); // L: 73 - this.array[++this.offset - 1] = (byte)var1; // L: 74 - } // L: 75 - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-867756497" - ) - @Export("writeMedium") - public void writeMedium(int var1) { - this.array[++this.offset - 1] = (byte)(var1 >> 16); // L: 78 - this.array[++this.offset - 1] = (byte)(var1 >> 8); // L: 79 - this.array[++this.offset - 1] = (byte)var1; // L: 80 - } // L: 81 + this.array[++this.offset - 1] = (byte)(var1 >> 8); + this.array[++this.offset - 1] = (byte)var1; + } @ObfuscatedName("al") @ObfuscatedSignature( descriptor = "(IB)V", - garbageValue = "-1" + garbageValue = "1" + ) + @Export("writeMedium") + public void writeMedium(int var1) { + this.array[++this.offset - 1] = (byte)(var1 >> 16); + this.array[++this.offset - 1] = (byte)(var1 >> 8); + this.array[++this.offset - 1] = (byte)var1; + } + + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "(IB)V", + garbageValue = "-37" ) @Export("writeInt") public void writeInt(int var1) { - this.array[++this.offset - 1] = (byte)(var1 >> 24); // L: 84 - this.array[++this.offset - 1] = (byte)(var1 >> 16); // L: 85 - this.array[++this.offset - 1] = (byte)(var1 >> 8); // L: 86 - this.array[++this.offset - 1] = (byte)var1; // L: 87 - } // L: 88 + this.array[++this.offset - 1] = (byte)(var1 >> 24); + this.array[++this.offset - 1] = (byte)(var1 >> 16); + this.array[++this.offset - 1] = (byte)(var1 >> 8); + this.array[++this.offset - 1] = (byte)var1; + } - @ObfuscatedName("ap") + @ObfuscatedName("af") @Export("writeLongMedium") public void writeLongMedium(long var1) { - this.array[++this.offset - 1] = (byte)((int)(var1 >> 40)); // L: 91 - this.array[++this.offset - 1] = (byte)((int)(var1 >> 32)); // L: 92 - this.array[++this.offset - 1] = (byte)((int)(var1 >> 24)); // L: 93 - this.array[++this.offset - 1] = (byte)((int)(var1 >> 16)); // L: 94 - this.array[++this.offset - 1] = (byte)((int)(var1 >> 8)); // L: 95 - this.array[++this.offset - 1] = (byte)((int)var1); // L: 96 - } // L: 97 + this.array[++this.offset - 1] = (byte)((int)(var1 >> 40)); + this.array[++this.offset - 1] = (byte)((int)(var1 >> 32)); + this.array[++this.offset - 1] = (byte)((int)(var1 >> 24)); + this.array[++this.offset - 1] = (byte)((int)(var1 >> 16)); + this.array[++this.offset - 1] = (byte)((int)(var1 >> 8)); + this.array[++this.offset - 1] = (byte)((int)var1); + } - @ObfuscatedName("ad") + @ObfuscatedName("ar") @Export("writeLong") public void writeLong(long var1) { - this.array[++this.offset - 1] = (byte)((int)(var1 >> 56)); // L: 100 - this.array[++this.offset - 1] = (byte)((int)(var1 >> 48)); // L: 101 - this.array[++this.offset - 1] = (byte)((int)(var1 >> 40)); // L: 102 - this.array[++this.offset - 1] = (byte)((int)(var1 >> 32)); // L: 103 - this.array[++this.offset - 1] = (byte)((int)(var1 >> 24)); // L: 104 - this.array[++this.offset - 1] = (byte)((int)(var1 >> 16)); // L: 105 - this.array[++this.offset - 1] = (byte)((int)(var1 >> 8)); // L: 106 - this.array[++this.offset - 1] = (byte)((int)var1); // L: 107 - } // L: 108 + this.array[++this.offset - 1] = (byte)((int)(var1 >> 56)); + this.array[++this.offset - 1] = (byte)((int)(var1 >> 48)); + this.array[++this.offset - 1] = (byte)((int)(var1 >> 40)); + this.array[++this.offset - 1] = (byte)((int)(var1 >> 32)); + this.array[++this.offset - 1] = (byte)((int)(var1 >> 24)); + this.array[++this.offset - 1] = (byte)((int)(var1 >> 16)); + this.array[++this.offset - 1] = (byte)((int)(var1 >> 8)); + this.array[++this.offset - 1] = (byte)((int)var1); + } - @ObfuscatedName("bb") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "1071731245" + descriptor = "(ZB)V", + garbageValue = "115" ) @Export("writeBoolean") public void writeBoolean(boolean var1) { - this.writeByte(var1 ? 1 : 0); // L: 111 - } // L: 112 - - @ObfuscatedName("bp") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-1741941254" - ) - @Export("writeStringCp1252NullTerminated") - public void writeStringCp1252NullTerminated(String var1) { - int var2 = var1.indexOf(0); // L: 119 - if (var2 >= 0) { // L: 120 - throw new IllegalArgumentException(""); - } else { - this.offset += Interpreter.encodeStringCp1252(var1, 0, var1.length(), this.array, this.offset); // L: 121 - this.array[++this.offset - 1] = 0; // L: 122 - } - } // L: 123 - - @ObfuscatedName("bc") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)V", - garbageValue = "-79" - ) - @Export("writeStringCp1252NullCircumfixed") - public void writeStringCp1252NullCircumfixed(String var1) { - int var2 = var1.indexOf(0); // L: 130 - if (var2 >= 0) { // L: 131 - throw new IllegalArgumentException(""); - } else { - this.array[++this.offset - 1] = 0; // L: 132 - this.offset += Interpreter.encodeStringCp1252(var1, 0, var1.length(), this.array, this.offset); // L: 133 - this.array[++this.offset - 1] = 0; // L: 134 - } - } // L: 135 - - @ObfuscatedName("bj") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;I)V", - garbageValue = "-462784795" - ) - @Export("writeCESU8") - public void writeCESU8(CharSequence var1) { - int var3 = var1.length(); // L: 140 - int var4 = 0; // L: 141 - - for (int var5 = 0; var5 < var3; ++var5) { // L: 142 - char var6 = var1.charAt(var5); // L: 143 - if (var6 <= 127) { // L: 144 - ++var4; - } else if (var6 <= 2047) { // L: 145 - var4 += 2; - } else { - var4 += 3; // L: 146 - } - } - - this.array[++this.offset - 1] = 0; // L: 151 - this.writeVarInt(var4); // L: 152 - this.offset += GrandExchangeOfferUnitPriceComparator.method219(this.array, this.offset, var1); // L: 153 - } // L: 154 - - @ObfuscatedName("bl") - @ObfuscatedSignature( - descriptor = "([BIIB)V", - garbageValue = "23" - ) - @Export("writeBytes") - public void writeBytes(byte[] var1, int var2, int var3) { - for (int var4 = var2; var4 < var3 + var2; ++var4) { // L: 157 - this.array[++this.offset - 1] = var1[var4]; - } - - } // L: 158 - - @ObfuscatedName("bn") - @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "1203499294" - ) - public void method5713(Buffer var1) { - this.writeBytes(var1.array, 0, var1.offset); // L: 161 - } // L: 162 - - @ObfuscatedName("bo") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1554829948" - ) - @Export("writeLengthInt") - public void writeLengthInt(int var1) { - if (var1 < 0) { // L: 165 - throw new IllegalArgumentException(); // L: 166 - } else { - this.array[this.offset - var1 - 4] = (byte)(var1 >> 24); // L: 168 - this.array[this.offset - var1 - 3] = (byte)(var1 >> 16); // L: 169 - this.array[this.offset - var1 - 2] = (byte)(var1 >> 8); // L: 170 - this.array[this.offset - var1 - 1] = (byte)var1; // L: 171 - } - } // L: 172 - - @ObfuscatedName("be") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1476273531" - ) - @Export("writeLengthShort") - public void writeLengthShort(int var1) { - if (var1 >= 0 && var1 <= 65535) { // L: 175 - this.array[this.offset - var1 - 2] = (byte)(var1 >> 8); // L: 178 - this.array[this.offset - var1 - 1] = (byte)var1; // L: 179 - } else { - throw new IllegalArgumentException(); // L: 176 - } - } // L: 180 - - @ObfuscatedName("ba") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1164604575" - ) - @Export("writeLengthByte") - public void writeLengthByte(int var1) { - if (var1 >= 0 && var1 <= 255) { // L: 183 - this.array[this.offset - var1 - 1] = (byte)var1; // L: 186 - } else { - throw new IllegalArgumentException(); // L: 184 - } - } // L: 187 - - @ObfuscatedName("bt") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "1693951904" - ) - @Export("writeSmartByteShort") - public void writeSmartByteShort(int var1) { - if (var1 >= 0 && var1 < 128) { // L: 190 - this.writeByte(var1); // L: 191 - } else if (var1 >= 0 && var1 < 32768) { // L: 194 - this.writeShort(var1 + 32768); // L: 195 - } else { - throw new IllegalArgumentException(); // L: 198 - } - } // L: 192 196 - - @ObfuscatedName("bw") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "324704874" - ) - @Export("writeVarInt") - public void writeVarInt(int var1) { - if ((var1 & -128) != 0) { // L: 202 - if ((var1 & -16384) != 0) { // L: 203 - if ((var1 & -2097152) != 0) { // L: 204 - if ((var1 & -268435456) != 0) { // L: 205 - this.writeByte(var1 >>> 28 | 128); - } - - this.writeByte(var1 >>> 21 | 128); // L: 206 - } - - this.writeByte(var1 >>> 14 | 128); // L: 208 - } - - this.writeByte(var1 >>> 7 | 128); // L: 210 - } - - this.writeByte(var1 & 127); // L: 212 - } // L: 213 - - @ObfuscatedName("bm") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "0" - ) - @Export("readUnsignedByte") - public int readUnsignedByte() { - return this.array[++this.offset - 1] & 255; // L: 216 - } - - @ObfuscatedName("by") - @ObfuscatedSignature( - descriptor = "(I)B", - garbageValue = "-165326456" - ) - @Export("readByte") - public byte readByte() { - return this.array[++this.offset - 1]; // L: 220 - } - - @ObfuscatedName("bq") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "101" - ) - @Export("readUnsignedShort") - public int readUnsignedShort() { - this.offset += 2; // L: 224 - return (this.array[this.offset - 1] & 255) + ((this.array[this.offset - 2] & 255) << 8); // L: 225 - } - - @ObfuscatedName("bv") - @ObfuscatedSignature( - descriptor = "(S)I", - garbageValue = "-17017" - ) - @Export("readShort") - public int readShort() { - this.offset += 2; // L: 229 - int var1 = (this.array[this.offset - 1] & 255) + ((this.array[this.offset - 2] & 255) << 8); // L: 230 - if (var1 > 32767) { // L: 231 - var1 -= 65536; - } - - return var1; // L: 232 - } - - @ObfuscatedName("br") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-24" - ) - @Export("readMedium") - public int readMedium() { - this.offset += 3; // L: 236 - return ((this.array[this.offset - 3] & 255) << 16) + (this.array[this.offset - 1] & 255) + ((this.array[this.offset - 2] & 255) << 8); // L: 237 - } - - @ObfuscatedName("bs") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1099796533" - ) - @Export("readInt") - public int readInt() { - this.offset += 4; // L: 241 - return ((this.array[this.offset - 3] & 255) << 16) + (this.array[this.offset - 1] & 255) + ((this.array[this.offset - 2] & 255) << 8) + ((this.array[this.offset - 4] & 255) << 24); // L: 242 - } - - @ObfuscatedName("bd") - @ObfuscatedSignature( - descriptor = "(B)J", - garbageValue = "-4" - ) - @Export("readLong") - public long readLong() { - long var1 = (long)this.readInt() & 4294967295L; // L: 246 - long var3 = (long)this.readInt() & 4294967295L; // L: 247 - return (var1 << 32) + var3; // L: 248 + this.writeByte(var1 ? 1 : 0); } @ObfuscatedName("bh") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1959182219" + descriptor = "(Ljava/lang/String;I)V", + garbageValue = "-1748540705" ) - @Export("readBoolean") - public boolean readBoolean() { - return (this.readUnsignedByte() & 1) == 1; // L: 252 + @Export("writeStringCp1252NullTerminated") + public void writeStringCp1252NullTerminated(String var1) { + int var2 = var1.indexOf(0); + if (var2 >= 0) { + throw new IllegalArgumentException(""); + } else { + this.offset += WorldMapManager.encodeStringCp1252(var1, 0, var1.length(), this.array, this.offset); + this.array[++this.offset - 1] = 0; + } } - @ObfuscatedName("bk") + @ObfuscatedName("bs") @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "1907625721" + descriptor = "(Ljava/lang/String;B)V", + garbageValue = "1" ) - @Export("readStringCp1252NullTerminatedOrNull") - public String readStringCp1252NullTerminatedOrNull() { - if (this.array[this.offset] == 0) { // L: 256 - ++this.offset; // L: 257 - return null; // L: 258 + @Export("writeStringCp1252NullCircumfixed") + public void writeStringCp1252NullCircumfixed(String var1) { + int var2 = var1.indexOf(0); + if (var2 >= 0) { + throw new IllegalArgumentException(""); } else { - return this.readStringCp1252NullTerminated(); // L: 260 + this.array[++this.offset - 1] = 0; + this.offset += WorldMapManager.encodeStringCp1252(var1, 0, var1.length(), this.array, this.offset); + this.array[++this.offset - 1] = 0; } } + @ObfuscatedName("br") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/CharSequence;I)V", + garbageValue = "707162171" + ) + @Export("writeCESU8") + public void writeCESU8(CharSequence var1) { + int var2 = UserComparator5.method3500(var1); + this.array[++this.offset - 1] = 0; + this.writeVarInt(var2); + int var3 = this.offset; + byte[] var5 = this.array; + int var6 = this.offset; + int var7 = var1.length(); + int var8 = var6; + + for (int var9 = 0; var9 < var7; ++var9) { + char var10 = var1.charAt(var9); + if (var10 <= 127) { + var5[var8++] = (byte)var10; + } else if (var10 <= 2047) { + var5[var8++] = (byte)(192 | var10 >> 6); + var5[var8++] = (byte)(128 | var10 & '?'); + } else { + var5[var8++] = (byte)(224 | var10 >> '\f'); + var5[var8++] = (byte)(128 | var10 >> 6 & 63); + var5[var8++] = (byte)(128 | var10 & '?'); + } + } + + int var4 = var8 - var6; + this.offset = var4 + var3; + } + + @ObfuscatedName("bl") + @ObfuscatedSignature( + descriptor = "([BIII)V", + garbageValue = "1585895405" + ) + @Export("writeBytes") + public void writeBytes(byte[] var1, int var2, int var3) { + for (int var4 = var2; var4 < var3 + var2; ++var4) { + this.array[++this.offset - 1] = var1[var4]; + } + + } + @ObfuscatedName("bx") @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "-387094332" + descriptor = "(Lkj;I)V", + garbageValue = "-1843609104" ) - @Export("readStringCp1252NullTerminated") - public String readStringCp1252NullTerminated() { - int var1 = this.offset; // L: 264 - - while (this.array[++this.offset - 1] != 0) { // L: 265 - } - - int var2 = this.offset - var1 - 1; // L: 266 - return var2 == 0 ? "" : class52.decodeStringCp1252(this.array, var1, var2); // L: 267 268 + public void method5536(Buffer var1) { + this.writeBytes(var1.array, 0, var1.offset); } - @ObfuscatedName("bi") + @ObfuscatedName("bf") @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "1484768669" + descriptor = "(II)V", + garbageValue = "1998350841" ) - @Export("readStringCp1252NullCircumfixed") - public String readStringCp1252NullCircumfixed() { - byte var1 = this.array[++this.offset - 1]; // L: 272 - if (var1 != 0) { // L: 273 - throw new IllegalStateException(""); + @Export("writeLengthInt") + public void writeLengthInt(int var1) { + if (var1 < 0) { + throw new IllegalArgumentException(); } else { - int var2 = this.offset; // L: 274 - - while (this.array[++this.offset - 1] != 0) { // L: 275 - } - - int var3 = this.offset - var2 - 1; // L: 276 - return var3 == 0 ? "" : class52.decodeStringCp1252(this.array, var2, var3); // L: 277 278 - } - } - - @ObfuscatedName("bu") - @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "722269119" - ) - @Export("readCESU8") - public String readCESU8() { - byte var1 = this.array[++this.offset - 1]; // L: 282 - if (var1 != 0) { // L: 283 - throw new IllegalStateException(""); - } else { - int var2 = this.readVarInt(); // L: 284 - if (var2 + this.offset > this.array.length) { // L: 285 - throw new IllegalStateException(""); - } else { - byte[] var4 = this.array; // L: 287 - int var5 = this.offset; // L: 288 - char[] var6 = new char[var2]; // L: 290 - int var7 = 0; // L: 291 - int var8 = var5; // L: 292 - - int var11; - for (int var9 = var2 + var5; var8 < var9; var6[var7++] = (char)var11) { // L: 293 294 325 - int var10 = var4[var8++] & 255; // L: 295 - if (var10 < 128) { // L: 297 - if (var10 == 0) { // L: 298 - var11 = 65533; - } else { - var11 = var10; // L: 299 - } - } else if (var10 < 192) { // L: 301 - var11 = 65533; - } else if (var10 < 224) { // L: 302 - if (var8 < var9 && (var4[var8] & 192) == 128) { // L: 303 - var11 = (var10 & 31) << 6 | var4[var8++] & 63; // L: 304 - if (var11 < 128) { // L: 305 - var11 = 65533; - } - } else { - var11 = 65533; // L: 307 - } - } else if (var10 < 240) { // L: 309 - if (var8 + 1 < var9 && (var4[var8] & 192) == 128 && (var4[var8 + 1] & 192) == 128) { // L: 310 - var11 = (var10 & 15) << 12 | (var4[var8++] & 63) << 6 | var4[var8++] & 63; // L: 311 - if (var11 < 2048) { // L: 312 - var11 = 65533; - } - } else { - var11 = 65533; // L: 314 - } - } else if (var10 < 248) { // L: 316 - if (var8 + 2 < var9 && (var4[var8] & 192) == 128 && (var4[var8 + 1] & 192) == 128 && (var4[var8 + 2] & 192) == 128) { // L: 317 - var11 = (var10 & 7) << 18 | (var4[var8++] & 63) << 12 | (var4[var8++] & 63) << 6 | var4[var8++] & 63; // L: 318 - if (var11 >= 65536 && var11 <= 1114111) { // L: 319 - var11 = 65533; // L: 320 - } else { - var11 = 65533; - } - } else { - var11 = 65533; // L: 322 - } - } else { - var11 = 65533; // L: 324 - } - } - - String var3 = new String(var6, 0, var7); // L: 327 - this.offset += var2; // L: 330 - return var3; // L: 331 - } + this.array[this.offset - var1 - 4] = (byte)(var1 >> 24); + this.array[this.offset - var1 - 3] = (byte)(var1 >> 16); + this.array[this.offset - var1 - 2] = (byte)(var1 >> 8); + this.array[this.offset - var1 - 1] = (byte)var1; } } @ObfuscatedName("bz") @ObfuscatedSignature( - descriptor = "([BIIB)V", + descriptor = "(IB)V", + garbageValue = "-50" + ) + @Export("writeLengthShort") + public void writeLengthShort(int var1) { + if (var1 >= 0 && var1 <= 65535) { + this.array[this.offset - var1 - 2] = (byte)(var1 >> 8); + this.array[this.offset - var1 - 1] = (byte)var1; + } else { + throw new IllegalArgumentException(); + } + } + + @ObfuscatedName("bm") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-1378695030" + ) + @Export("writeLengthByte") + public void writeLengthByte(int var1) { + if (var1 >= 0 && var1 <= 255) { + this.array[this.offset - var1 - 1] = (byte)var1; + } else { + throw new IllegalArgumentException(); + } + } + + @ObfuscatedName("bn") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "2062071032" + ) + @Export("writeSmartByteShort") + public void writeSmartByteShort(int var1) { + if (var1 >= 0 && var1 < 128) { + this.writeByte(var1); + } else if (var1 >= 0 && var1 < 32768) { + this.writeShort(var1 + 32768); + } else { + throw new IllegalArgumentException(); + } + } + + @ObfuscatedName("bd") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "1932364447" + ) + @Export("writeVarInt") + public void writeVarInt(int var1) { + if ((var1 & -128) != 0) { + if ((var1 & -16384) != 0) { + if ((var1 & -2097152) != 0) { + if ((var1 & -268435456) != 0) { + this.writeByte(var1 >>> 28 | 128); + } + + this.writeByte(var1 >>> 21 | 128); + } + + this.writeByte(var1 >>> 14 | 128); + } + + this.writeByte(var1 >>> 7 | 128); + } + + this.writeByte(var1 & 127); + } + + @ObfuscatedName("bc") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-35" + ) + @Export("readUnsignedByte") + public int readUnsignedByte() { + return this.array[++this.offset - 1] & 255; + } + + @ObfuscatedName("bi") + @ObfuscatedSignature( + descriptor = "(B)B", garbageValue = "0" ) + @Export("readByte") + public byte readByte() { + return this.array[++this.offset - 1]; + } + + @ObfuscatedName("bk") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "1104623987" + ) + @Export("readUnsignedShort") + public int readUnsignedShort() { + this.offset += 2; + return (this.array[this.offset - 1] & 255) + ((this.array[this.offset - 2] & 255) << 8); + } + + @ObfuscatedName("bw") + @ObfuscatedSignature( + descriptor = "(S)I", + garbageValue = "6226" + ) + @Export("readShort") + public int readShort() { + this.offset += 2; + int var1 = (this.array[this.offset - 1] & 255) + ((this.array[this.offset - 2] & 255) << 8); + if (var1 > 32767) { + var1 -= 65536; + } + + return var1; + } + + @ObfuscatedName("bo") + @ObfuscatedSignature( + descriptor = "(S)I", + garbageValue = "239" + ) + @Export("readMedium") + public int readMedium() { + this.offset += 3; + return ((this.array[this.offset - 3] & 255) << 16) + (this.array[this.offset - 1] & 255) + ((this.array[this.offset - 2] & 255) << 8); + } + + @ObfuscatedName("bj") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "111775970" + ) + @Export("readInt") + public int readInt() { + this.offset += 4; + return ((this.array[this.offset - 3] & 255) << 16) + (this.array[this.offset - 1] & 255) + ((this.array[this.offset - 2] & 255) << 8) + ((this.array[this.offset - 4] & 255) << 24); + } + + @ObfuscatedName("bu") + @ObfuscatedSignature( + descriptor = "(I)J", + garbageValue = "-1452316601" + ) + @Export("readLong") + public long readLong() { + long var1 = (long)this.readInt() & 4294967295L; + long var3 = (long)this.readInt() & 4294967295L; + return var3 + (var1 << 32); + } + + @ObfuscatedName("bt") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "1305798677" + ) + @Export("readBoolean") + public boolean readBoolean() { + return (this.readUnsignedByte() & 1) == 1; + } + + @ObfuscatedName("bb") + @ObfuscatedSignature( + descriptor = "(I)Ljava/lang/String;", + garbageValue = "186780327" + ) + @Export("readStringCp1252NullTerminatedOrNull") + public String readStringCp1252NullTerminatedOrNull() { + if (this.array[this.offset] == 0) { + ++this.offset; + return null; + } else { + return this.readStringCp1252NullTerminated(); + } + } + + @ObfuscatedName("bv") + @ObfuscatedSignature( + descriptor = "(I)Ljava/lang/String;", + garbageValue = "1398193536" + ) + @Export("readStringCp1252NullTerminated") + public String readStringCp1252NullTerminated() { + int var1 = this.offset; + + while (this.array[++this.offset - 1] != 0) { + } + + int var2 = this.offset - var1 - 1; + return var2 == 0 ? "" : Clock.decodeStringCp1252(this.array, var1, var2); + } + + @ObfuscatedName("bg") + @ObfuscatedSignature( + descriptor = "(I)Ljava/lang/String;", + garbageValue = "-519852136" + ) + @Export("readStringCp1252NullCircumfixed") + public String readStringCp1252NullCircumfixed() { + byte var1 = this.array[++this.offset - 1]; + if (var1 != 0) { + throw new IllegalStateException(""); + } else { + int var2 = this.offset; + + while (this.array[++this.offset - 1] != 0) { + } + + int var3 = this.offset - var2 - 1; + return var3 == 0 ? "" : Clock.decodeStringCp1252(this.array, var2, var3); + } + } + + @ObfuscatedName("ba") + @ObfuscatedSignature( + descriptor = "(B)Ljava/lang/String;", + garbageValue = "-33" + ) + @Export("readCESU8") + public String readCESU8() { + byte var1 = this.array[++this.offset - 1]; + if (var1 != 0) { + throw new IllegalStateException(""); + } else { + int var2 = this.readVarInt(); + if (var2 + this.offset > this.array.length) { + throw new IllegalStateException(""); + } else { + String var3 = class39.method591(this.array, this.offset, var2); + this.offset += var2; + return var3; + } + } + } + + @ObfuscatedName("bq") + @ObfuscatedSignature( + descriptor = "([BIII)V", + garbageValue = "1075075180" + ) @Export("readBytes") public void readBytes(byte[] var1, int var2, int var3) { for (int var4 = var2; var4 < var3 + var2; ++var4) { - var1[var4] = this.array[++this.offset - 1]; // L: 335 + var1[var4] = this.array[++this.offset - 1]; } - } // L: 336 + } - @ObfuscatedName("cs") + @ObfuscatedName("be") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "202273494" + garbageValue = "130333316" ) @Export("readShortSmart") public int readShortSmart() { - int var1 = this.array[this.offset] & 255; // L: 339 - return var1 < 128 ? this.readUnsignedByte() - 64 : this.readUnsignedShort() - 49152; // L: 340 341 + int var1 = this.array[this.offset] & 255; + return var1 < 128 ? this.readUnsignedByte() - 64 : this.readUnsignedShort() - 49152; } - @ObfuscatedName("ce") + @ObfuscatedName("bp") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1537644945" + garbageValue = "772809583" ) @Export("readUShortSmart") public int readUShortSmart() { - int var1 = this.array[this.offset] & 255; // L: 345 - return var1 < 128 ? this.readUnsignedByte() : this.readUnsignedShort() - 32768; // L: 346 347 + int var1 = this.array[this.offset] & 255; + return var1 < 128 ? this.readUnsignedByte() : this.readUnsignedShort() - 32768; } - @ObfuscatedName("cf") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-1848726522" - ) - public int method5743() { - int var1 = 0; // L: 351 - - int var2; - for (var2 = this.readUShortSmart(); var2 == 32767; var2 = this.readUShortSmart()) { // L: 352 353 355 - var1 += 32767; // L: 354 - } - - var1 += var2; // L: 357 - return var1; // L: 358 - } - - @ObfuscatedName("cg") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-548217756" - ) - public int method5653() { - return this.array[this.offset] < 0 ? this.readInt() & Integer.MAX_VALUE : this.readUnsignedShort(); // L: 362 363 - } - - @ObfuscatedName("cp") - @ObfuscatedSignature( - descriptor = "(S)I", - garbageValue = "25836" - ) - public int method5851() { - if (this.array[this.offset] < 0) { // L: 367 - return this.readInt() & Integer.MAX_VALUE; - } else { - int var1 = this.readUnsignedShort(); // L: 368 - return var1 == 32767 ? -1 : var1; // L: 369 - } - } - - @ObfuscatedName("cc") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-436304655" - ) - @Export("readVarInt") - public int readVarInt() { - byte var1 = this.array[++this.offset - 1]; // L: 374 - - int var2; - for (var2 = 0; var1 < 0; var1 = this.array[++this.offset - 1]) { // L: 375 376 378 - var2 = (var2 | var1 & 127) << 7; // L: 377 - } - - return var2 | var1; // L: 380 - } - - @ObfuscatedName("cl") - @ObfuscatedSignature( - descriptor = "([II)V", - garbageValue = "-1102921575" - ) - @Export("xteaEncryptAll") - public void xteaEncryptAll(int[] var1) { - int var2 = this.offset / 8; // L: 384 - this.offset = 0; // L: 385 - - for (int var3 = 0; var3 < var2; ++var3) { // L: 386 - int var4 = this.readInt(); // L: 387 - int var5 = this.readInt(); // L: 388 - int var6 = 0; // L: 389 - int var7 = -1640531527; // L: 390 - - for (int var8 = 32; var8-- > 0; var5 += var4 + (var4 << 4 ^ var4 >>> 5) ^ var1[var6 >>> 11 & 3] + var6) { // L: 391 392 395 - var4 += var5 + (var5 << 4 ^ var5 >>> 5) ^ var6 + var1[var6 & 3]; // L: 393 - var6 += var7; // L: 394 - } - - this.offset -= 8; // L: 397 - this.writeInt(var4); // L: 398 - this.writeInt(var5); // L: 399 - } - - } // L: 401 - - @ObfuscatedName("ci") - @ObfuscatedSignature( - descriptor = "([IS)V", - garbageValue = "12847" - ) - @Export("xteaDecryptAll") - public void xteaDecryptAll(int[] var1) { - int var2 = this.offset / 8; // L: 404 - this.offset = 0; // L: 405 - - for (int var3 = 0; var3 < var2; ++var3) { // L: 406 - int var4 = this.readInt(); // L: 407 - int var5 = this.readInt(); // L: 408 - int var6 = -957401312; // L: 409 - int var7 = -1640531527; // L: 410 - - for (int var8 = 32; var8-- > 0; var4 -= var5 + (var5 << 4 ^ var5 >>> 5) ^ var6 + var1[var6 & 3]) { // L: 411 412 415 - var5 -= var4 + (var4 << 4 ^ var4 >>> 5) ^ var1[var6 >>> 11 & 3] + var6; // L: 413 - var6 -= var7; // L: 414 - } - - this.offset -= 8; // L: 417 - this.writeInt(var4); // L: 418 - this.writeInt(var5); // L: 419 - } - - } // L: 421 - - @ObfuscatedName("cy") - @ObfuscatedSignature( - descriptor = "([IIII)V", - garbageValue = "1759120286" - ) - @Export("xteaEncrypt") - public void xteaEncrypt(int[] var1, int var2, int var3) { - int var4 = this.offset; // L: 424 - this.offset = var2; // L: 425 - int var5 = (var3 - var2) / 8; // L: 426 - - for (int var6 = 0; var6 < var5; ++var6) { // L: 427 - int var7 = this.readInt(); // L: 428 - int var8 = this.readInt(); // L: 429 - int var9 = 0; // L: 430 - int var10 = -1640531527; // L: 431 - - for (int var11 = 32; var11-- > 0; var8 += var7 + (var7 << 4 ^ var7 >>> 5) ^ var1[var9 >>> 11 & 3] + var9) { // L: 432 433 436 - var7 += var8 + (var8 << 4 ^ var8 >>> 5) ^ var9 + var1[var9 & 3]; // L: 434 - var9 += var10; // L: 435 - } - - this.offset -= 8; // L: 438 - this.writeInt(var7); // L: 439 - this.writeInt(var8); // L: 440 - } - - this.offset = var4; // L: 442 - } // L: 443 - @ObfuscatedName("cx") @ObfuscatedSignature( - descriptor = "([IIII)V", - garbageValue = "-1051721840" + descriptor = "(I)I", + garbageValue = "-561534600" ) - @Export("xteaDecrypt") - public void xteaDecrypt(int[] var1, int var2, int var3) { - int var4 = this.offset; // L: 446 - this.offset = var2; // L: 447 - int var5 = (var3 - var2) / 8; // L: 448 + public int method5557() { + int var1 = 0; - for (int var6 = 0; var6 < var5; ++var6) { // L: 449 - int var7 = this.readInt(); // L: 450 - int var8 = this.readInt(); // L: 451 - int var9 = -957401312; // L: 452 - int var10 = -1640531527; // L: 453 - - for (int var11 = 32; var11-- > 0; var7 -= var8 + (var8 << 4 ^ var8 >>> 5) ^ var9 + var1[var9 & 3]) { // L: 454 455 458 - var8 -= var7 + (var7 << 4 ^ var7 >>> 5) ^ var1[var9 >>> 11 & 3] + var9; // L: 456 - var9 -= var10; // L: 457 - } - - this.offset -= 8; // L: 460 - this.writeInt(var7); // L: 461 - this.writeInt(var8); // L: 462 + int var2; + for (var2 = this.readUShortSmart(); var2 == 32767; var2 = this.readUShortSmart()) { + var1 += 32767; } - this.offset = var4; // L: 464 - } // L: 465 - - @ObfuscatedName("ca") - @ObfuscatedSignature( - descriptor = "(Ljava/math/BigInteger;Ljava/math/BigInteger;I)V", - garbageValue = "747250112" - ) - @Export("encryptRsa") - public void encryptRsa(BigInteger var1, BigInteger var2) { - int var3 = this.offset; // L: 468 - this.offset = 0; // L: 469 - byte[] var4 = new byte[var3]; // L: 470 - this.readBytes(var4, 0, var3); // L: 471 - BigInteger var5 = new BigInteger(var4); // L: 472 - BigInteger var6 = var5.modPow(var1, var2); // L: 473 - byte[] var7 = var6.toByteArray(); // L: 474 - this.offset = 0; // L: 475 - this.writeShort(var7.length); // L: 476 - this.writeBytes(var7, 0, var7.length); // L: 477 - } // L: 478 - - @ObfuscatedName("cn") - @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "-78" - ) - @Export("writeCrc") - public int writeCrc(int var1) { - int var2 = class4.method81(this.array, var1, this.offset); // L: 481 - this.writeInt(var2); // L: 482 - return var2; // L: 483 + var1 += var2; + return var1; } - @ObfuscatedName("cw") + @ObfuscatedName("ci") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "37281244" + descriptor = "(I)I", + garbageValue = "661695765" ) - @Export("checkCrc") - public boolean checkCrc() { - this.offset -= 4; // L: 487 - int var1 = class4.method81(this.array, 0, this.offset); // L: 488 - int var2 = this.readInt(); // L: 489 - return var1 == var2; // L: 490 + public int method5558() { + return this.array[this.offset] < 0 ? this.readInt() & Integer.MAX_VALUE : this.readUnsignedShort(); } - @ObfuscatedName("cu") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "21" - ) - @Export("writeIntME") - public void writeIntME(int var1) { - this.array[++this.offset - 1] = (byte)(var1 + 128); // L: 495 - } // L: 496 - - @ObfuscatedName("cq") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "1590454858" - ) - public void method5664(int var1) { - this.array[++this.offset - 1] = (byte)(0 - var1); // L: 499 - } // L: 500 - - @ObfuscatedName("cd") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-52" - ) - public void method5665(int var1) { - this.array[++this.offset - 1] = (byte)(128 - var1); // L: 503 - } // L: 504 - @ObfuscatedName("cj") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-113" + descriptor = "(S)I", + garbageValue = "1005" ) - public int method5619() { - return this.array[++this.offset - 1] - 128 & 255; // L: 507 + public int method5559() { + if (this.array[this.offset] < 0) { + return this.readInt() & Integer.MAX_VALUE; + } else { + int var1 = this.readUnsignedShort(); + return var1 == 32767 ? -1 : var1; + } + } + + @ObfuscatedName("ca") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-120" + ) + @Export("readVarInt") + public int readVarInt() { + byte var1 = this.array[++this.offset - 1]; + + int var2; + for (var2 = 0; var1 < 0; var1 = this.array[++this.offset - 1]) { + var2 = (var2 | var1 & 127) << 7; + } + + return var2 | var1; + } + + @ObfuscatedName("cd") + @ObfuscatedSignature( + descriptor = "([IB)V", + garbageValue = "0" + ) + @Export("xteaEncryptAll") + public void xteaEncryptAll(int[] var1) { + int var2 = this.offset / 8; + this.offset = 0; + + for (int var3 = 0; var3 < var2; ++var3) { + int var4 = this.readInt(); + int var5 = this.readInt(); + int var6 = 0; + int var7 = -1640531527; + + for (int var8 = 32; var8-- > 0; var5 += var4 + (var4 << 4 ^ var4 >>> 5) ^ var1[var6 >>> 11 & 3] + var6) { + var4 += var5 + (var5 << 4 ^ var5 >>> 5) ^ var6 + var1[var6 & 3]; + var6 += var7; + } + + this.offset -= 8; + this.writeInt(var4); + this.writeInt(var5); + } + } @ObfuscatedName("cm") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-328274489" + descriptor = "([II)V", + garbageValue = "847845555" ) - public int method5650() { - return 0 - this.array[++this.offset - 1] & 255; // L: 511 - } + @Export("xteaDecryptAll") + public void xteaDecryptAll(int[] var1) { + int var2 = this.offset / 8; + this.offset = 0; - @ObfuscatedName("cb") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "2006554033" - ) - public int method5668() { - return 128 - this.array[++this.offset - 1] & 255; // L: 515 - } + for (int var3 = 0; var3 < var2; ++var3) { + int var4 = this.readInt(); + int var5 = this.readInt(); + int var6 = -957401312; + int var7 = -1640531527; - @ObfuscatedName("ct") - @ObfuscatedSignature( - descriptor = "(I)B", - garbageValue = "-1685286261" - ) - public byte method5669() { - return (byte)(this.array[++this.offset - 1] - 128); // L: 519 - } + for (int var8 = 32; var8-- > 0; var4 -= var5 + (var5 << 4 ^ var5 >>> 5) ^ var6 + var1[var6 & 3]) { + var5 -= var4 + (var4 << 4 ^ var4 >>> 5) ^ var1[var6 >>> 11 & 3] + var6; + var6 -= var7; + } + + this.offset -= 8; + this.writeInt(var4); + this.writeInt(var5); + } - @ObfuscatedName("cv") - @ObfuscatedSignature( - descriptor = "(B)B", - garbageValue = "56" - ) - public byte method5688() { - return (byte)(0 - this.array[++this.offset - 1]); // L: 523 } @ObfuscatedName("cz") @ObfuscatedSignature( - descriptor = "(I)B", - garbageValue = "-2075373507" + descriptor = "([IIII)V", + garbageValue = "-362295115" ) - public byte method5837() { - return (byte)(128 - this.array[++this.offset - 1]); // L: 527 + @Export("xteaEncrypt") + public void xteaEncrypt(int[] var1, int var2, int var3) { + int var4 = this.offset; + this.offset = var2; + int var5 = (var3 - var2) / 8; + + for (int var6 = 0; var6 < var5; ++var6) { + int var7 = this.readInt(); + int var8 = this.readInt(); + int var9 = 0; + int var10 = -1640531527; + + for (int var11 = 32; var11-- > 0; var8 += var7 + (var7 << 4 ^ var7 >>> 5) ^ var1[var9 >>> 11 & 3] + var9) { + var7 += var8 + (var8 << 4 ^ var8 >>> 5) ^ var9 + var1[var9 & 3]; + var9 += var10; + } + + this.offset -= 8; + this.writeInt(var7); + this.writeInt(var8); + } + + this.offset = var4; + } + + @ObfuscatedName("cc") + @ObfuscatedSignature( + descriptor = "([IIII)V", + garbageValue = "-1521995814" + ) + @Export("xteaDecrypt") + public void xteaDecrypt(int[] var1, int var2, int var3) { + int var4 = this.offset; + this.offset = var2; + int var5 = (var3 - var2) / 8; + + for (int var6 = 0; var6 < var5; ++var6) { + int var7 = this.readInt(); + int var8 = this.readInt(); + int var9 = -957401312; + int var10 = -1640531527; + + for (int var11 = 32; var11-- > 0; var7 -= var8 + (var8 << 4 ^ var8 >>> 5) ^ var9 + var1[var9 & 3]) { + var8 -= var7 + (var7 << 4 ^ var7 >>> 5) ^ var1[var9 >>> 11 & 3] + var9; + var9 -= var10; + } + + this.offset -= 8; + this.writeInt(var7); + this.writeInt(var8); + } + + this.offset = var4; + } + + @ObfuscatedName("ce") + @ObfuscatedSignature( + descriptor = "(Ljava/math/BigInteger;Ljava/math/BigInteger;I)V", + garbageValue = "-1385542565" + ) + @Export("encryptRsa") + public void encryptRsa(BigInteger var1, BigInteger var2) { + int var3 = this.offset; + this.offset = 0; + byte[] var4 = new byte[var3]; + this.readBytes(var4, 0, var3); + BigInteger var5 = new BigInteger(var4); + BigInteger var6 = var5.modPow(var1, var2); + byte[] var7 = var6.toByteArray(); + this.offset = 0; + this.writeShort(var7.length); + this.writeBytes(var7, 0, var7.length); + } + + @ObfuscatedName("cb") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "1467040648" + ) + @Export("writeCrc") + public int writeCrc(int var1) { + int var2 = WorldMapRectangle.method334(this.array, var1, this.offset); + this.writeInt(var2); + return var2; + } + + @ObfuscatedName("cf") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "-340939132" + ) + @Export("checkCrc") + public boolean checkCrc() { + this.offset -= 4; + int var1 = WorldMapRectangle.method334(this.array, 0, this.offset); + int var2 = this.readInt(); + return var2 == var1; + } + + @ObfuscatedName("cr") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "1712020733" + ) + public void method5568(int var1) { + this.array[++this.offset - 1] = (byte)(var1 + 128); } @ObfuscatedName("ch") @ObfuscatedSignature( - descriptor = "(IS)V", - garbageValue = "-8294" + descriptor = "(II)V", + garbageValue = "859798564" ) - @Export("writeShortLE") - public void writeShortLE(int var1) { - this.array[++this.offset - 1] = (byte)var1; // L: 531 - this.array[++this.offset - 1] = (byte)(var1 >> 8); // L: 532 - } // L: 533 + public void method5569(int var1) { + this.array[++this.offset - 1] = (byte)(0 - var1); + } - @ObfuscatedName("co") + @ObfuscatedName("cq") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-105" + descriptor = "(II)V", + garbageValue = "-1493586164" ) - public void method5673(int var1) { - this.array[++this.offset - 1] = (byte)(var1 >> 8); // L: 536 - this.array[++this.offset - 1] = (byte)(var1 + 128); // L: 537 - } // L: 538 + @Export("writeIntME") + public void writeIntME(int var1) { + this.array[++this.offset - 1] = (byte)(128 - var1); + } + + @ObfuscatedName("cl") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-512224346" + ) + public int method5571() { + return this.array[++this.offset - 1] - 128 & 255; + } + + @ObfuscatedName("cw") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-1946834755" + ) + public int method5572() { + return 0 - this.array[++this.offset - 1] & 255; + } + + @ObfuscatedName("cp") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-50" + ) + public int method5573() { + return 128 - this.array[++this.offset - 1] & 255; + } + + @ObfuscatedName("cu") + @ObfuscatedSignature( + descriptor = "(I)B", + garbageValue = "-498797750" + ) + public byte method5645() { + return (byte)(this.array[++this.offset - 1] - 128); + } + + @ObfuscatedName("ct") + @ObfuscatedSignature( + descriptor = "(B)B", + garbageValue = "4" + ) + public byte method5661() { + return (byte)(0 - this.array[++this.offset - 1]); + } @ObfuscatedName("ck") + @ObfuscatedSignature( + descriptor = "(I)B", + garbageValue = "1416440254" + ) + public byte method5665() { + return (byte)(128 - this.array[++this.offset - 1]); + } + + @ObfuscatedName("cy") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-987978019" + garbageValue = "505043972" ) - public void method5674(int var1) { - this.array[++this.offset - 1] = (byte)(var1 + 128); // L: 541 - this.array[++this.offset - 1] = (byte)(var1 >> 8); // L: 542 - } // L: 543 - - @ObfuscatedName("cr") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-40" - ) - public int method5675() { - this.offset += 2; // L: 546 - return ((this.array[this.offset - 1] & 255) << 8) + (this.array[this.offset - 2] & 255); // L: 547 + public void method5739(int var1) { + this.array[++this.offset - 1] = (byte)var1; + this.array[++this.offset - 1] = (byte)(var1 >> 8); } - @ObfuscatedName("dg") + @ObfuscatedName("cg") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-7" + descriptor = "(IS)V", + garbageValue = "-17430" ) - public int method5659() { - this.offset += 2; // L: 551 - return (this.array[this.offset - 1] - 128 & 255) + ((this.array[this.offset - 2] & 255) << 8); // L: 552 + public void method5578(int var1) { + this.array[++this.offset - 1] = (byte)(var1 >> 8); + this.array[++this.offset - 1] = (byte)(var1 + 128); } - @ObfuscatedName("db") + @ObfuscatedName("cv") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "1133202553" + ) + @Export("writeShortLE") + public void writeShortLE(int var1) { + this.array[++this.offset - 1] = (byte)(var1 + 128); + this.array[++this.offset - 1] = (byte)(var1 >> 8); + } + + @ObfuscatedName("cs") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "537205076" + garbageValue = "-1856185425" ) - public int method5797() { - this.offset += 2; // L: 556 - return ((this.array[this.offset - 1] & 255) << 8) + (this.array[this.offset - 2] - 128 & 255); // L: 557 + public int method5580() { + this.offset += 2; + return ((this.array[this.offset - 1] & 255) << 8) + (this.array[this.offset - 2] & 255); } - @ObfuscatedName("dv") + @ObfuscatedName("cn") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1902869409" + garbageValue = "-1597569596" ) - public int method5678() { - this.offset += 2; // L: 561 - int var1 = ((this.array[this.offset - 1] & 255) << 8) + (this.array[this.offset - 2] & 255); // L: 562 - if (var1 > 32767) { // L: 563 + public int method5539() { + this.offset += 2; + return (this.array[this.offset - 1] - 128 & 255) + ((this.array[this.offset - 2] & 255) << 8); + } + + @ObfuscatedName("co") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "468907616" + ) + public int method5582() { + this.offset += 2; + return ((this.array[this.offset - 1] & 255) << 8) + (this.array[this.offset - 2] - 128 & 255); + } + + @ObfuscatedName("dh") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "12" + ) + public int method5583() { + this.offset += 2; + int var1 = (this.array[this.offset - 1] - 128 & 255) + ((this.array[this.offset - 2] & 255) << 8); + if (var1 > 32767) { var1 -= 65536; } - return var1; // L: 564 + return var1; } - @ObfuscatedName("df") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "2056151189" - ) - public int method5679() { - this.offset += 2; // L: 568 - int var1 = ((this.array[this.offset - 1] & 255) << 8) + (this.array[this.offset - 2] - 128 & 255); // L: 569 - if (var1 > 32767) { // L: 570 - var1 -= 65536; - } - - return var1; // L: 571 - } - - @ObfuscatedName("dd") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "2146489503" - ) - public void method5680(int var1) { - this.array[++this.offset - 1] = (byte)(var1 >> 8); // L: 575 - this.array[++this.offset - 1] = (byte)(var1 >> 16); // L: 576 - this.array[++this.offset - 1] = (byte)var1; // L: 577 - } // L: 578 - @ObfuscatedName("dl") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-520916212" + garbageValue = "581527575" ) - public int method5852() { - this.offset += 3; // L: 581 - return (this.array[this.offset - 1] & 255) + ((this.array[this.offset - 3] & 255) << 8) + ((this.array[this.offset - 2] & 255) << 16); // L: 582 + public int method5584() { + this.offset += 2; + int var1 = ((this.array[this.offset - 1] & 255) << 8) + (this.array[this.offset - 2] - 128 & 255); + if (var1 > 32767) { + var1 -= 65536; + } + + return var1; + } + + @ObfuscatedName("du") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "1773890421" + ) + public void method5585(int var1) { + this.array[++this.offset - 1] = (byte)(var1 >> 8); + this.array[++this.offset - 1] = (byte)(var1 >> 16); + this.array[++this.offset - 1] = (byte)var1; + } + + @ObfuscatedName("de") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "1643414296" + ) + public int method5586() { + this.offset += 3; + return ((this.array[this.offset - 1] & 255) << 8) + ((this.array[this.offset - 3] & 255) << 16) + (this.array[this.offset - 2] & 255); + } + + @ObfuscatedName("dw") + @ObfuscatedSignature( + descriptor = "(IB)V", + garbageValue = "-3" + ) + public void method5587(int var1) { + this.array[++this.offset - 1] = (byte)var1; + this.array[++this.offset - 1] = (byte)(var1 >> 8); + this.array[++this.offset - 1] = (byte)(var1 >> 16); + this.array[++this.offset - 1] = (byte)(var1 >> 24); + } + + @ObfuscatedName("db") + @ObfuscatedSignature( + descriptor = "(IB)V", + garbageValue = "0" + ) + public void method5588(int var1) { + this.array[++this.offset - 1] = (byte)(var1 >> 8); + this.array[++this.offset - 1] = (byte)var1; + this.array[++this.offset - 1] = (byte)(var1 >> 24); + this.array[++this.offset - 1] = (byte)(var1 >> 16); } @ObfuscatedName("dq") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-1394035543" + garbageValue = "570132050" ) - public void method5682(int var1) { - this.array[++this.offset - 1] = (byte)var1; // L: 586 - this.array[++this.offset - 1] = (byte)(var1 >> 8); // L: 587 - this.array[++this.offset - 1] = (byte)(var1 >> 16); // L: 588 - this.array[++this.offset - 1] = (byte)(var1 >> 24); // L: 589 - } // L: 590 + public void method5718(int var1) { + this.array[++this.offset - 1] = (byte)(var1 >> 16); + this.array[++this.offset - 1] = (byte)(var1 >> 24); + this.array[++this.offset - 1] = (byte)var1; + this.array[++this.offset - 1] = (byte)(var1 >> 8); + } - @ObfuscatedName("dp") + @ObfuscatedName("dx") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "1286160069" + descriptor = "(I)I", + garbageValue = "-380994417" ) - public void method5683(int var1) { - this.array[++this.offset - 1] = (byte)(var1 >> 8); // L: 593 - this.array[++this.offset - 1] = (byte)var1; // L: 594 - this.array[++this.offset - 1] = (byte)(var1 >> 24); // L: 595 - this.array[++this.offset - 1] = (byte)(var1 >> 16); // L: 596 - } // L: 597 + public int method5643() { + this.offset += 4; + return (this.array[this.offset - 4] & 255) + ((this.array[this.offset - 3] & 255) << 8) + ((this.array[this.offset - 2] & 255) << 16) + ((this.array[this.offset - 1] & 255) << 24); + } - @ObfuscatedName("do") + @ObfuscatedName("df") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "861596760" + descriptor = "(S)I", + garbageValue = "4556" ) - public void method5684(int var1) { - this.array[++this.offset - 1] = (byte)(var1 >> 16); // L: 600 - this.array[++this.offset - 1] = (byte)(var1 >> 24); // L: 601 - this.array[++this.offset - 1] = (byte)var1; // L: 602 - this.array[++this.offset - 1] = (byte)(var1 >> 8); // L: 603 - } // L: 604 + public int method5591() { + this.offset += 4; + return ((this.array[this.offset - 2] & 255) << 24) + ((this.array[this.offset - 4] & 255) << 8) + (this.array[this.offset - 3] & 255) + ((this.array[this.offset - 1] & 255) << 16); + } @ObfuscatedName("dm") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1015676655" + garbageValue = "-554811296" ) - public int method5685() { - this.offset += 4; // L: 607 - return (this.array[this.offset - 4] & 255) + ((this.array[this.offset - 3] & 255) << 8) + ((this.array[this.offset - 2] & 255) << 16) + ((this.array[this.offset - 1] & 255) << 24); // L: 608 + public int method5592() { + this.offset += 4; + return ((this.array[this.offset - 1] & 255) << 8) + ((this.array[this.offset - 4] & 255) << 16) + (this.array[this.offset - 2] & 255) + ((this.array[this.offset - 3] & 255) << 24); } - @ObfuscatedName("dh") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "703983648" - ) - public int method5686() { - this.offset += 4; // L: 612 - return ((this.array[this.offset - 2] & 255) << 24) + ((this.array[this.offset - 4] & 255) << 8) + (this.array[this.offset - 3] & 255) + ((this.array[this.offset - 1] & 255) << 16); // L: 613 - } - - @ObfuscatedName("da") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-2147178655" - ) - public int method5687() { - this.offset += 4; // L: 617 - return ((this.array[this.offset - 1] & 255) << 8) + ((this.array[this.offset - 4] & 255) << 16) + (this.array[this.offset - 2] & 255) + ((this.array[this.offset - 3] & 255) << 24); // L: 618 - } - - @ObfuscatedName("dz") + @ObfuscatedName("dp") @ObfuscatedSignature( descriptor = "([BIIB)V", - garbageValue = "95" + garbageValue = "15" ) - public void method5833(byte[] var1, int var2, int var3) { - for (int var4 = var2; var4 < var3 + var2; ++var4) { - var1[var4] = (byte)(this.array[++this.offset - 1] - 128); // L: 622 + public void method5593(byte[] var1, int var2, int var3) { + for (int var4 = var3 + var2 - 1; var4 >= var2; --var4) { + var1[var4] = this.array[++this.offset - 1]; } - } // L: 623 + } - @ObfuscatedName("ds") + @ObfuscatedName("dr") @ObfuscatedSignature( descriptor = "([BIIB)V", - garbageValue = "62" + garbageValue = "-110" ) - public void method5689(byte[] var1, int var2, int var3) { - for (int var4 = var3 + var2 - 1; var4 >= var2; --var4) { // L: 626 + public void method5733(byte[] var1, int var2, int var3) { + for (int var4 = var2; var4 < var3 + var2; ++var4) { var1[var4] = (byte)(this.array[++this.offset - 1] - 128); } - } // L: 627 + } } diff --git a/runescape-client/src/main/java/BufferedFile.java b/runescape-client/src/main/java/BufferedFile.java index c8e14f16a8..88ab8ad50f 100644 --- a/runescape-client/src/main/java/BufferedFile.java +++ b/runescape-client/src/main/java/BufferedFile.java @@ -9,377 +9,377 @@ import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("mz") @Implements("BufferedFile") public class BufferedFile { - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lmr;" + descriptor = "Lmy;" ) @Export("accessFile") AccessFile accessFile; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("readBuffer") byte[] readBuffer; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - longValue = -6482337856492114931L + longValue = -3809167848781087131L ) @Export("readBufferOffset") long readBufferOffset; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 1044062057 + intValue = -892196381 ) @Export("readBufferLength") int readBufferLength; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("writeBuffer") byte[] writeBuffer; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - longValue = 2774637488082340967L + longValue = 3089120726843536533L ) @Export("writeBufferOffset") long writeBufferOffset; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 1024497111 + intValue = 958797773 ) @Export("writeBufferLength") int writeBufferLength; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - longValue = -561179162582633637L + longValue = 6318426131394785269L ) @Export("offset") long offset; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - longValue = -2408592665773969817L + longValue = 3544528644384408479L ) @Export("fileLength") long fileLength; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedGetter( - longValue = -5636078881835080275L + longValue = -710356214362963941L ) @Export("length") long length; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedGetter( - longValue = -1026636672774520795L + longValue = 2332608899819250659L ) @Export("fileOffset") long fileOffset; @ObfuscatedSignature( - descriptor = "(Lmr;II)V" + descriptor = "(Lmy;II)V" ) public BufferedFile(AccessFile var1, int var2, int var3) throws IOException { - this.readBufferOffset = -1L; // L: 9 - this.writeBufferOffset = -1L; // L: 12 - this.writeBufferLength = 0; // L: 13 - this.accessFile = var1; // L: 20 - this.length = this.fileLength = var1.length(); // L: 21 - this.readBuffer = new byte[var2]; // L: 22 - this.writeBuffer = new byte[var3]; // L: 23 - this.offset = 0L; // L: 24 - } // L: 25 + this.readBufferOffset = -1L; + this.writeBufferOffset = -1L; + this.writeBufferLength = 0; + this.accessFile = var1; + this.length = this.fileLength = var1.length(); + this.readBuffer = new byte[var2]; + this.writeBuffer = new byte[var3]; + this.offset = 0L; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "36" + descriptor = "(I)V", + garbageValue = "-1667711867" ) @Export("close") public void close() throws IOException { - this.flush(); // L: 28 - this.accessFile.close(); // L: 29 - } // L: 30 + this.flush(); + this.accessFile.close(); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("seek") public void seek(long var1) throws IOException { - if (var1 < 0L) { // L: 33 + if (var1 < 0L) { throw new IOException(""); } else { - this.offset = var1; // L: 34 + this.offset = var1; } - } // L: 35 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(I)J", - garbageValue = "-1848502786" + garbageValue = "-878696422" ) @Export("length") public long length() { - return this.length; // L: 38 + return this.length; } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "([BB)V", - garbageValue = "-4" + garbageValue = "61" ) @Export("readFully") public void readFully(byte[] var1) throws IOException { - this.read(var1, 0, var1.length); // L: 42 - } // L: 43 + this.read(var1, 0, var1.length); + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "([BIII)V", - garbageValue = "-1500902626" + garbageValue = "-707431061" ) @Export("read") public void read(byte[] var1, int var2, int var3) throws IOException { try { - if (var3 + var2 > var1.length) { // L: 47 + if (var3 + var2 > var1.length) { throw new ArrayIndexOutOfBoundsException(var3 + var2 - var1.length); } - if (-1L != this.writeBufferOffset && this.offset >= this.writeBufferOffset && (long)var3 + this.offset <= (long)this.writeBufferLength + this.writeBufferOffset) { // L: 48 - System.arraycopy(this.writeBuffer, (int)(this.offset - this.writeBufferOffset), var1, var2, var3); // L: 49 - this.offset += (long)var3; // L: 50 - return; // L: 51 + if (-1L != this.writeBufferOffset && this.offset >= this.writeBufferOffset && (long)var3 + this.offset <= (long)this.writeBufferLength + this.writeBufferOffset) { + System.arraycopy(this.writeBuffer, (int)(this.offset - this.writeBufferOffset), var1, var2, var3); + this.offset += (long)var3; + return; } - long var4 = this.offset; // L: 53 - int var7 = var3; // L: 55 + long var4 = this.offset; + int var7 = var3; int var8; - if (this.offset >= this.readBufferOffset && this.offset < this.readBufferOffset + (long)this.readBufferLength) { // L: 56 - var8 = (int)((long)this.readBufferLength - (this.offset - this.readBufferOffset)); // L: 57 - if (var8 > var3) { // L: 58 + if (this.offset >= this.readBufferOffset && this.offset < this.readBufferOffset + (long)this.readBufferLength) { + var8 = (int)((long)this.readBufferLength - (this.offset - this.readBufferOffset)); + if (var8 > var3) { var8 = var3; } - System.arraycopy(this.readBuffer, (int)(this.offset - this.readBufferOffset), var1, var2, var8); // L: 59 - this.offset += (long)var8; // L: 60 - var2 += var8; // L: 61 - var3 -= var8; // L: 62 + System.arraycopy(this.readBuffer, (int)(this.offset - this.readBufferOffset), var1, var2, var8); + this.offset += (long)var8; + var2 += var8; + var3 -= var8; } - if (var3 > this.readBuffer.length) { // L: 64 - this.accessFile.seek(this.offset); // L: 65 + if (var3 > this.readBuffer.length) { + this.accessFile.seek(this.offset); - for (this.fileOffset = this.offset; var3 > 0; var3 -= var8) { // L: 66 67 73 - var8 = this.accessFile.read(var1, var2, var3); // L: 68 - if (var8 == -1) { // L: 69 + for (this.fileOffset = this.offset; var3 > 0; var3 -= var8) { + var8 = this.accessFile.read(var1, var2, var3); + if (var8 == -1) { break; } - this.fileOffset += (long)var8; // L: 70 - this.offset += (long)var8; // L: 71 - var2 += var8; // L: 72 + this.fileOffset += (long)var8; + this.offset += (long)var8; + var2 += var8; } - } else if (var3 > 0) { // L: 76 - this.load(); // L: 77 - var8 = var3; // L: 78 - if (var3 > this.readBufferLength) { // L: 79 + } else if (var3 > 0) { + this.load(); + var8 = var3; + if (var3 > this.readBufferLength) { var8 = this.readBufferLength; } - System.arraycopy(this.readBuffer, 0, var1, var2, var8); // L: 80 - var2 += var8; // L: 81 - var3 -= var8; // L: 82 - this.offset += (long)var8; // L: 83 + System.arraycopy(this.readBuffer, 0, var1, var2, var8); + var2 += var8; + var3 -= var8; + this.offset += (long)var8; } - if (-1L != this.writeBufferOffset) { // L: 85 - if (this.writeBufferOffset > this.offset && var3 > 0) { // L: 86 - var8 = var2 + (int)(this.writeBufferOffset - this.offset); // L: 87 - if (var8 > var3 + var2) { // L: 88 + if (-1L != this.writeBufferOffset) { + if (this.writeBufferOffset > this.offset && var3 > 0) { + var8 = var2 + (int)(this.writeBufferOffset - this.offset); + if (var8 > var3 + var2) { var8 = var3 + var2; } - while (var2 < var8) { // L: 89 - var1[var2++] = 0; // L: 90 - --var3; // L: 91 - ++this.offset; // L: 92 + while (var2 < var8) { + var1[var2++] = 0; + --var3; + ++this.offset; } } - long var13 = -1L; // L: 95 - long var10 = -1L; // L: 96 - if (this.writeBufferOffset >= var4 && this.writeBufferOffset < (long)var7 + var4) { // L: 97 - var13 = this.writeBufferOffset; // L: 98 - } else if (var4 >= this.writeBufferOffset && var4 < this.writeBufferOffset + (long)this.writeBufferLength) { // L: 100 - var13 = var4; // L: 101 + long var13 = -1L; + long var10 = -1L; + if (this.writeBufferOffset >= var4 && this.writeBufferOffset < var4 + (long)var7) { + var13 = this.writeBufferOffset; + } else if (var4 >= this.writeBufferOffset && var4 < this.writeBufferOffset + (long)this.writeBufferLength) { + var13 = var4; } - if ((long)this.writeBufferLength + this.writeBufferOffset > var4 && this.writeBufferOffset + (long)this.writeBufferLength <= (long)var7 + var4) { // L: 103 - var10 = this.writeBufferOffset + (long)this.writeBufferLength; // L: 104 - } else if (var4 + (long)var7 > this.writeBufferOffset && (long)var7 + var4 <= this.writeBufferOffset + (long)this.writeBufferLength) { // L: 106 - var10 = var4 + (long)var7; // L: 107 + if (this.writeBufferOffset + (long)this.writeBufferLength > var4 && this.writeBufferOffset + (long)this.writeBufferLength <= var4 + (long)var7) { + var10 = (long)this.writeBufferLength + this.writeBufferOffset; + } else if (var4 + (long)var7 > this.writeBufferOffset && (long)var7 + var4 <= (long)this.writeBufferLength + this.writeBufferOffset) { + var10 = (long)var7 + var4; } - if (var13 > -1L && var10 > var13) { // L: 109 - int var12 = (int)(var10 - var13); // L: 110 - System.arraycopy(this.writeBuffer, (int)(var13 - this.writeBufferOffset), var1, (int)(var13 - var4) + var2, var12); // L: 111 - if (var10 > this.offset) { // L: 112 - var3 = (int)((long)var3 - (var10 - this.offset)); // L: 113 - this.offset = var10; // L: 114 + if (var13 > -1L && var10 > var13) { + int var12 = (int)(var10 - var13); + System.arraycopy(this.writeBuffer, (int)(var13 - this.writeBufferOffset), var1, (int)(var13 - var4) + var2, var12); + if (var10 > this.offset) { + var3 = (int)((long)var3 - (var10 - this.offset)); + this.offset = var10; } } } - } catch (IOException var16) { // L: 120 - this.fileOffset = -1L; // L: 121 - throw var16; // L: 122 + } catch (IOException var16) { + this.fileOffset = -1L; + throw var16; } - if (var3 > 0) { // L: 124 + if (var3 > 0) { throw new EOFException(); } - } // L: 125 + } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "2145784037" + garbageValue = "1871269663" ) @Export("load") void load() throws IOException { - this.readBufferLength = 0; // L: 128 - if (this.fileOffset != this.offset) { // L: 129 - this.accessFile.seek(this.offset); // L: 130 - this.fileOffset = this.offset; // L: 131 + this.readBufferLength = 0; + if (this.fileOffset != this.offset) { + this.accessFile.seek(this.offset); + this.fileOffset = this.offset; } int var2; - for (this.readBufferOffset = this.offset; this.readBufferLength < this.readBuffer.length; this.readBufferLength += var2) { // L: 133 134 140 - int var1 = this.readBuffer.length - this.readBufferLength; // L: 135 - if (var1 > 200000000) { // L: 136 + for (this.readBufferOffset = this.offset; this.readBufferLength < this.readBuffer.length; this.readBufferLength += var2) { + int var1 = this.readBuffer.length - this.readBufferLength; + if (var1 > 200000000) { var1 = 200000000; } - var2 = this.accessFile.read(this.readBuffer, this.readBufferLength, var1); // L: 137 - if (var2 == -1) { // L: 138 + var2 = this.accessFile.read(this.readBuffer, this.readBufferLength, var1); + if (var2 == -1) { break; } - this.fileOffset += (long)var2; // L: 139 + this.fileOffset += (long)var2; } - } // L: 142 + } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "([BIII)V", - garbageValue = "1113982588" + descriptor = "([BIIB)V", + garbageValue = "65" ) @Export("write") public void write(byte[] var1, int var2, int var3) throws IOException { try { - if (this.offset + (long)var3 > this.length) { // L: 146 + if ((long)var3 + this.offset > this.length) { this.length = this.offset + (long)var3; } - if (-1L != this.writeBufferOffset && (this.offset < this.writeBufferOffset || this.offset > this.writeBufferOffset + (long)this.writeBufferLength)) { // L: 147 - this.flush(); // L: 148 + if (this.writeBufferOffset != -1L && (this.offset < this.writeBufferOffset || this.offset > this.writeBufferOffset + (long)this.writeBufferLength)) { + this.flush(); } - if (this.writeBufferOffset != -1L && this.offset + (long)var3 > this.writeBufferOffset + (long)this.writeBuffer.length) { // L: 150 - int var4 = (int)((long)this.writeBuffer.length - (this.offset - this.writeBufferOffset)); // L: 151 - System.arraycopy(var1, var2, this.writeBuffer, (int)(this.offset - this.writeBufferOffset), var4); // L: 152 - this.offset += (long)var4; // L: 153 - var2 += var4; // L: 154 - var3 -= var4; // L: 155 - this.writeBufferLength = this.writeBuffer.length; // L: 156 - this.flush(); // L: 157 + if (this.writeBufferOffset != -1L && (long)var3 + this.offset > this.writeBufferOffset + (long)this.writeBuffer.length) { + int var4 = (int)((long)this.writeBuffer.length - (this.offset - this.writeBufferOffset)); + System.arraycopy(var1, var2, this.writeBuffer, (int)(this.offset - this.writeBufferOffset), var4); + this.offset += (long)var4; + var2 += var4; + var3 -= var4; + this.writeBufferLength = this.writeBuffer.length; + this.flush(); } - if (var3 <= this.writeBuffer.length) { // L: 159 - if (var3 > 0) { // L: 188 - if (this.writeBufferOffset == -1L) { // L: 189 + if (var3 <= this.writeBuffer.length) { + if (var3 > 0) { + if (this.writeBufferOffset == -1L) { this.writeBufferOffset = this.offset; } - System.arraycopy(var1, var2, this.writeBuffer, (int)(this.offset - this.writeBufferOffset), var3); // L: 190 - this.offset += (long)var3; // L: 191 - if (this.offset - this.writeBufferOffset > (long)this.writeBufferLength) { // L: 192 + System.arraycopy(var1, var2, this.writeBuffer, (int)(this.offset - this.writeBufferOffset), var3); + this.offset += (long)var3; + if (this.offset - this.writeBufferOffset > (long)this.writeBufferLength) { this.writeBufferLength = (int)(this.offset - this.writeBufferOffset); } } } else { - if (this.fileOffset != this.offset) { // L: 160 - this.accessFile.seek(this.offset); // L: 161 - this.fileOffset = this.offset; // L: 162 + if (this.offset != this.fileOffset) { + this.accessFile.seek(this.offset); + this.fileOffset = this.offset; } - this.accessFile.write(var1, var2, var3); // L: 164 - this.fileOffset += (long)var3; // L: 165 - if (this.fileOffset > this.fileLength) { // L: 166 + this.accessFile.write(var1, var2, var3); + this.fileOffset += (long)var3; + if (this.fileOffset > this.fileLength) { this.fileLength = this.fileOffset; } - long var9 = -1L; // L: 167 - long var6 = -1L; // L: 168 - if (this.offset >= this.readBufferOffset && this.offset < (long)this.readBufferLength + this.readBufferOffset) { // L: 169 - var9 = this.offset; // L: 170 - } else if (this.readBufferOffset >= this.offset && this.readBufferOffset < this.offset + (long)var3) { // L: 172 - var9 = this.readBufferOffset; // L: 173 + long var9 = -1L; + long var6 = -1L; + if (this.offset >= this.readBufferOffset && this.offset < this.readBufferOffset + (long)this.readBufferLength) { + var9 = this.offset; + } else if (this.readBufferOffset >= this.offset && this.readBufferOffset < this.offset + (long)var3) { + var9 = this.readBufferOffset; } - if ((long)var3 + this.offset > this.readBufferOffset && (long)var3 + this.offset <= this.readBufferOffset + (long)this.readBufferLength) { // L: 175 - var6 = (long)var3 + this.offset; // L: 176 - } else if ((long)this.readBufferLength + this.readBufferOffset > this.offset && (long)this.readBufferLength + this.readBufferOffset <= this.offset + (long)var3) { // L: 178 - var6 = (long)this.readBufferLength + this.readBufferOffset; // L: 179 + if (this.offset + (long)var3 > this.readBufferOffset && (long)var3 + this.offset <= this.readBufferOffset + (long)this.readBufferLength) { + var6 = this.offset + (long)var3; + } else if ((long)this.readBufferLength + this.readBufferOffset > this.offset && (long)this.readBufferLength + this.readBufferOffset <= this.offset + (long)var3) { + var6 = (long)this.readBufferLength + this.readBufferOffset; } - if (var9 > -1L && var6 > var9) { // L: 181 - int var8 = (int)(var6 - var9); // L: 182 - System.arraycopy(var1, (int)(var9 + (long)var2 - this.offset), this.readBuffer, (int)(var9 - this.readBufferOffset), var8); // L: 183 + if (var9 > -1L && var6 > var9) { + int var8 = (int)(var6 - var9); + System.arraycopy(var1, (int)(var9 + (long)var2 - this.offset), this.readBuffer, (int)(var9 - this.readBufferOffset), var8); } - this.offset += (long)var3; // L: 185 + this.offset += (long)var3; } - } catch (IOException var12) { // L: 196 - this.fileOffset = -1L; // L: 197 - throw var12; // L: 198 + } catch (IOException var12) { + this.fileOffset = -1L; + throw var12; } - } // L: 186 193 200 + } - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-540303009" + garbageValue = "-1956599640" ) @Export("flush") void flush() throws IOException { - if (this.writeBufferOffset != -1L) { // L: 203 - if (this.writeBufferOffset != this.fileOffset) { // L: 204 - this.accessFile.seek(this.writeBufferOffset); // L: 205 - this.fileOffset = this.writeBufferOffset; // L: 206 + if (-1L != this.writeBufferOffset) { + if (this.writeBufferOffset != this.fileOffset) { + this.accessFile.seek(this.writeBufferOffset); + this.fileOffset = this.writeBufferOffset; } - this.accessFile.write(this.writeBuffer, 0, this.writeBufferLength); // L: 208 - this.fileOffset += (long)this.writeBufferLength * 1781005947037024257L; // L: 209 - if (this.fileOffset > this.fileLength) { // L: 210 + this.accessFile.write(this.writeBuffer, 0, this.writeBufferLength); + this.fileOffset += 958797773L * (long)(this.writeBufferLength * 1893510405); + if (this.fileOffset > this.fileLength) { this.fileLength = this.fileOffset; } - long var1 = -1L; // L: 211 - long var3 = -1L; // L: 212 - if (this.writeBufferOffset >= this.readBufferOffset && this.writeBufferOffset < this.readBufferOffset + (long)this.readBufferLength) { // L: 213 - var1 = this.writeBufferOffset; // L: 214 - } else if (this.readBufferOffset >= this.writeBufferOffset && this.readBufferOffset < this.writeBufferOffset + (long)this.writeBufferLength) { // L: 216 - var1 = this.readBufferOffset; // L: 217 + long var1 = -1L; + long var3 = -1L; + if (this.writeBufferOffset >= this.readBufferOffset && this.writeBufferOffset < (long)this.readBufferLength + this.readBufferOffset) { + var1 = this.writeBufferOffset; + } else if (this.readBufferOffset >= this.writeBufferOffset && this.readBufferOffset < (long)this.writeBufferLength + this.writeBufferOffset) { + var1 = this.readBufferOffset; } - if (this.writeBufferOffset + (long)this.writeBufferLength > this.readBufferOffset && (long)this.writeBufferLength + this.writeBufferOffset <= this.readBufferOffset + (long)this.readBufferLength) { // L: 219 - var3 = this.writeBufferOffset + (long)this.writeBufferLength; // L: 220 - } else if ((long)this.readBufferLength + this.readBufferOffset > this.writeBufferOffset && this.readBufferOffset + (long)this.readBufferLength <= (long)this.writeBufferLength + this.writeBufferOffset) { // L: 222 - var3 = this.readBufferOffset + (long)this.readBufferLength; // L: 223 + if ((long)this.writeBufferLength + this.writeBufferOffset > this.readBufferOffset && this.writeBufferOffset + (long)this.writeBufferLength <= (long)this.readBufferLength + this.readBufferOffset) { + var3 = this.writeBufferOffset + (long)this.writeBufferLength; + } else if (this.readBufferOffset + (long)this.readBufferLength > this.writeBufferOffset && this.readBufferOffset + (long)this.readBufferLength <= (long)this.writeBufferLength + this.writeBufferOffset) { + var3 = this.readBufferOffset + (long)this.readBufferLength; } - if (var1 > -1L && var3 > var1) { // L: 225 - int var5 = (int)(var3 - var1); // L: 226 - System.arraycopy(this.writeBuffer, (int)(var1 - this.writeBufferOffset), this.readBuffer, (int)(var1 - this.readBufferOffset), var5); // L: 227 + if (var1 > -1L && var3 > var1) { + int var5 = (int)(var3 - var1); + System.arraycopy(this.writeBuffer, (int)(var1 - this.writeBufferOffset), this.readBuffer, (int)(var1 - this.readBufferOffset), var5); } - this.writeBufferOffset = -1L; // L: 229 - this.writeBufferLength = 0; // L: 230 + this.writeBufferOffset = -1L; + this.writeBufferLength = 0; } - } // L: 232 + } } diff --git a/runescape-client/src/main/java/BufferedNetSocket.java b/runescape-client/src/main/java/BufferedNetSocket.java index aacbea8778..58f03c7185 100644 --- a/runescape-client/src/main/java/BufferedNetSocket.java +++ b/runescape-client/src/main/java/BufferedNetSocket.java @@ -5,137 +5,103 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lx") +@ObfuscatedName("le") @Implements("BufferedNetSocket") public class BufferedNetSocket extends AbstractSocket { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("socket") Socket socket; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Llz;" + descriptor = "Llg;" ) @Export("source") BufferedSource source; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lld;" + descriptor = "Llf;" ) @Export("sink") BufferedSink sink; - public BufferedNetSocket(Socket var1, int var2, int var3) throws IOException { - this.socket = var1; // L: 12 - this.socket.setSoTimeout(30000); // L: 13 - this.socket.setTcpNoDelay(true); // L: 14 - this.socket.setReceiveBufferSize(65536); // L: 15 - this.socket.setSendBufferSize(65536); // L: 16 - this.source = new BufferedSource(this.socket.getInputStream(), var2); // L: 17 - this.sink = new BufferedSink(this.socket.getOutputStream(), var3); // L: 18 - } // L: 19 + BufferedNetSocket(Socket var1, int var2, int var3) throws IOException { + this.socket = var1; + this.socket.setSoTimeout(30000); + this.socket.setTcpNoDelay(true); + this.socket.setReceiveBufferSize(65536); + this.socket.setSendBufferSize(65536); + this.source = new BufferedSource(this.socket.getInputStream(), var2); + this.sink = new BufferedSink(this.socket.getOutputStream(), var3); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1983450651" + descriptor = "(B)V", + garbageValue = "-10" ) @Export("close") public void close() { - this.sink.close(); // L: 42 + this.sink.close(); try { - this.socket.close(); // L: 44 - } catch (IOException var2) { // L: 46 + this.socket.close(); + } catch (IOException var2) { } - this.source.close(); // L: 47 - } // L: 48 + this.source.close(); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "1" + garbageValue = "0" ) @Export("readUnsignedByte") public int readUnsignedByte() throws IOException { - return this.source.readUnsignedByte(); // L: 30 + return this.source.readUnsignedByte(); } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "933186835" + garbageValue = "1974658106" ) @Export("available") public int available() throws IOException { - return this.source.available(); // L: 26 + return this.source.available(); } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-916126565" + descriptor = "(IB)Z", + garbageValue = "-7" ) @Export("isAvailable") public boolean isAvailable(int var1) throws IOException { - return this.source.isAvailable(var1); // L: 22 + return this.source.isAvailable(var1); } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "([BIII)I", - garbageValue = "1049423117" + descriptor = "([BIIB)I", + garbageValue = "98" ) @Export("read") public int read(byte[] var1, int var2, int var3) throws IOException { - return this.source.read(var1, var2, var3); // L: 34 + return this.source.read(var1, var2, var3); } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( descriptor = "([BIII)V", - garbageValue = "1456512196" + garbageValue = "-2028715299" ) @Export("write") public void write(byte[] var1, int var2, int var3) throws IOException { - this.sink.write(var1, var2, var3); // L: 38 - } // L: 39 + this.sink.write(var1, var2, var3); + } protected void finalize() { - this.close(); // L: 51 - } // L: 52 - - @ObfuscatedName("ia") - @ObfuscatedSignature( - descriptor = "(Lht;B)Z", - garbageValue = "15" - ) - @Export("runCs1") - static final boolean runCs1(Widget var0) { - if (var0.cs1Comparisons == null) { // L: 9995 - return false; - } else { - for (int var1 = 0; var1 < var0.cs1Comparisons.length; ++var1) { // L: 9996 - int var2 = WorldMapID.method663(var0, var1); // L: 9997 - int var3 = var0.cs1ComparisonValues[var1]; // L: 9998 - if (var0.cs1Comparisons[var1] == 2) { // L: 9999 - if (var2 >= var3) { // L: 10000 - return false; - } - } else if (var0.cs1Comparisons[var1] == 3) { // L: 10002 - if (var2 <= var3) { // L: 10003 - return false; - } - } else if (var0.cs1Comparisons[var1] == 4) { // L: 10005 - if (var2 == var3) { // L: 10006 - return false; - } - } else if (var2 != var3) { // L: 10008 - return false; - } - } - - return true; // L: 10010 - } + this.close(); } } diff --git a/runescape-client/src/main/java/BufferedSink.java b/runescape-client/src/main/java/BufferedSink.java index 0fc85ca8eb..b72763a9e0 100644 --- a/runescape-client/src/main/java/BufferedSink.java +++ b/runescape-client/src/main/java/BufferedSink.java @@ -6,195 +6,204 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ld") +@ObfuscatedName("lf") @Implements("BufferedSink") public class BufferedSink implements Runnable { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("thread") Thread thread; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("outputStream") OutputStream outputStream; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -422941959 + intValue = -1531309645 ) @Export("capacity") int capacity; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("buffer") byte[] buffer; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 1493204291 + intValue = 821195077 ) @Export("position") int position; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -1377573981 + intValue = 1617449547 ) @Export("limit") int limit; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("exception") IOException exception; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("closed") boolean closed; BufferedSink(OutputStream var1, int var2) { - this.position = 0; // L: 186 - this.limit = 0; // L: 187 - this.outputStream = var1; // L: 192 - this.capacity = var2 + 1; // L: 193 - this.buffer = new byte[this.capacity]; // L: 194 - this.thread = new Thread(this); // L: 195 - this.thread.setDaemon(true); // L: 196 - this.thread.start(); // L: 197 - } // L: 198 + this.position = 0; + this.limit = 0; + this.outputStream = var1; + this.capacity = var2 + 1; + this.buffer = new byte[this.capacity]; + this.thread = new Thread(this); + this.thread.setDaemon(true); + this.thread.start(); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "2" + descriptor = "(I)Z", + garbageValue = "-1898190098" ) @Export("isClosed") boolean isClosed() { - if (this.closed) { // L: 201 + if (this.closed) { try { - this.outputStream.close(); // L: 203 + this.outputStream.close(); if (this.exception == null) { - this.exception = new IOException(""); // L: 204 + this.exception = new IOException(""); } - } catch (IOException var2) { // L: 206 + } catch (IOException var2) { if (this.exception == null) { - this.exception = new IOException(var2); // L: 207 + this.exception = new IOException(var2); } } - return true; // L: 209 + return true; } else { - return false; // L: 211 + return false; } } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "([BIIB)V", - garbageValue = "-33" + descriptor = "([BIII)V", + garbageValue = "1673669386" ) @Export("write") void write(byte[] var1, int var2, int var3) throws IOException { - if (var3 >= 0 && var2 >= 0 && var3 + var2 <= var1.length) { // L: 261 - synchronized(this) { // L: 262 - if (this.exception != null) { // L: 263 + if (var3 >= 0 && var2 >= 0 && var3 + var2 <= var1.length) { + synchronized(this) { + if (this.exception != null) { throw new IOException(this.exception.toString()); } else { int var5; - if (this.position <= this.limit) { // L: 265 + if (this.position <= this.limit) { var5 = this.capacity - this.limit + this.position - 1; } else { - var5 = this.position - this.limit - 1; // L: 266 + var5 = this.position - this.limit - 1; } - if (var5 < var3) { // L: 267 + if (var5 < var3) { throw new IOException(""); } else { - if (var3 + this.limit <= this.capacity) { // L: 268 - System.arraycopy(var1, var2, this.buffer, this.limit, var3); // L: 269 + if (var3 + this.limit <= this.capacity) { + System.arraycopy(var1, var2, this.buffer, this.limit, var3); } else { - int var6 = this.capacity - this.limit; // L: 272 - System.arraycopy(var1, var2, this.buffer, this.limit, var6); // L: 273 - System.arraycopy(var1, var6 + var2, this.buffer, 0, var3 - var6); // L: 274 + int var6 = this.capacity - this.limit; + System.arraycopy(var1, var2, this.buffer, this.limit, var6); + System.arraycopy(var1, var6 + var2, this.buffer, 0, var3 - var6); } - this.limit = (var3 + this.limit) % this.capacity; // L: 276 - this.notifyAll(); // L: 277 + this.limit = (var3 + this.limit) % this.capacity; + this.notifyAll(); } } } } else { throw new IOException(); } - } // L: 279 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-2058215649" + descriptor = "(B)V", + garbageValue = "8" ) @Export("close") void close() { - synchronized(this) { // L: 282 - this.closed = true; // L: 283 - this.notifyAll(); // L: 284 - } // L: 285 - - try { - this.thread.join(); // L: 287 - } catch (InterruptedException var3) { // L: 289 + synchronized(this) { + this.closed = true; + this.notifyAll(); } - } // L: 290 + try { + this.thread.join(); + } catch (InterruptedException var3) { + } + + } public void run() { do { int var1; - synchronized(this) { // L: 217 + synchronized(this) { while (true) { - if (this.exception != null) { // L: 219 + if (this.exception != null) { return; } - if (this.position <= this.limit) { // L: 220 + if (this.position <= this.limit) { var1 = this.limit - this.position; } else { - var1 = this.capacity - this.position + this.limit; // L: 221 + var1 = this.capacity - this.position + this.limit; } - if (var1 > 0) { // L: 222 + if (var1 > 0) { break; } try { - this.outputStream.flush(); // L: 224 - } catch (IOException var11) { // L: 226 - this.exception = var11; // L: 227 - return; // L: 228 + this.outputStream.flush(); + } catch (IOException var11) { + this.exception = var11; + return; } - if (this.isClosed()) { // L: 230 + if (this.isClosed()) { return; } try { - this.wait(); // L: 232 - } catch (InterruptedException var12) { // L: 234 + this.wait(); + } catch (InterruptedException var12) { } } } try { - if (var1 + this.position <= this.capacity) { // L: 238 - this.outputStream.write(this.buffer, this.position, var1); // L: 239 + if (var1 + this.position <= this.capacity) { + this.outputStream.write(this.buffer, this.position, var1); } else { - int var7 = this.capacity - this.position; // L: 242 - this.outputStream.write(this.buffer, this.position, var7); // L: 243 - this.outputStream.write(this.buffer, 0, var1 - var7); // L: 244 + int var7 = this.capacity - this.position; + this.outputStream.write(this.buffer, this.position, var7); + this.outputStream.write(this.buffer, 0, var1 - var7); } - } catch (IOException var10) { // L: 247 + } catch (IOException var10) { IOException var2 = var10; - synchronized(this) { // L: 248 - this.exception = var2; // L: 249 - return; // L: 250 + synchronized(this) { + this.exception = var2; + return; } } - synchronized(this) { // L: 253 - this.position = (var1 + this.position) % this.capacity; // L: 254 - } // L: 255 - } while(!this.isClosed()); // L: 256 + synchronized(this) { + this.position = (var1 + this.position) % this.capacity; + } + } while(!this.isClosed()); } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(I)[Lp;", + garbageValue = "248442350" + ) + public static class7[] method5889() { + return new class7[]{class7.field25}; + } } diff --git a/runescape-client/src/main/java/BufferedSource.java b/runescape-client/src/main/java/BufferedSource.java index f7a15c844c..8cddf0c78d 100644 --- a/runescape-client/src/main/java/BufferedSource.java +++ b/runescape-client/src/main/java/BufferedSource.java @@ -7,78 +7,78 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lz") +@ObfuscatedName("lg") @Implements("BufferedSource") public class BufferedSource implements Runnable { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("thread") Thread thread; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("inputStream") InputStream inputStream; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 1503389917 + intValue = -95991525 ) @Export("capacity") int capacity; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("buffer") byte[] buffer; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -212919609 + intValue = -1946581003 ) @Export("position") int position; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = 1323002483 + intValue = 30764979 ) @Export("limit") int limit; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("exception") IOException exception; BufferedSource(InputStream var1, int var2) { - this.position = 0; // L: 59 - this.limit = 0; // L: 60 - this.inputStream = var1; // L: 64 - this.capacity = var2 + 1; // L: 65 - this.buffer = new byte[this.capacity]; // L: 66 - this.thread = new Thread(this); // L: 67 - this.thread.setDaemon(true); // L: 68 - this.thread.start(); // L: 69 - } // L: 70 + this.position = 0; + this.limit = 0; + this.inputStream = var1; + this.capacity = var2 + 1; + this.buffer = new byte[this.capacity]; + this.thread = new Thread(this); + this.thread.setDaemon(true); + this.thread.start(); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "-4" + descriptor = "(II)Z", + garbageValue = "-2116238538" ) @Export("isAvailable") boolean isAvailable(int var1) throws IOException { - if (var1 == 0) { // L: 106 + if (var1 == 0) { return true; - } else if (var1 > 0 && var1 < this.capacity) { // L: 107 - synchronized(this) { // L: 108 + } else if (var1 > 0 && var1 < this.capacity) { + synchronized(this) { int var3; - if (this.position <= this.limit) { // L: 110 + if (this.position <= this.limit) { var3 = this.limit - this.position; } else { - var3 = this.capacity - this.position + this.limit; // L: 111 + var3 = this.capacity - this.position + this.limit; } - if (var3 < var1) { // L: 112 - if (this.exception != null) { // L: 113 + if (var3 < var1) { + if (this.exception != null) { throw new IOException(this.exception.toString()); } else { - this.notifyAll(); // L: 114 - return false; // L: 115 + this.notifyAll(); + return false; } } else { - return true; // L: 117 + return true; } } } else { @@ -86,87 +86,87 @@ public class BufferedSource implements Runnable { } } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "1" + descriptor = "(I)I", + garbageValue = "405355900" ) @Export("available") int available() throws IOException { - synchronized(this) { // L: 122 + synchronized(this) { int var2; - if (this.position <= this.limit) { // L: 124 + if (this.position <= this.limit) { var2 = this.limit - this.position; } else { - var2 = this.capacity - this.position + this.limit; // L: 125 + var2 = this.capacity - this.position + this.limit; } - if (var2 <= 0 && this.exception != null) { // L: 126 - throw new IOException(this.exception.toString()); // L: 127 + if (var2 <= 0 && this.exception != null) { + throw new IOException(this.exception.toString()); } else { - this.notifyAll(); // L: 129 - return var2; // L: 130 + this.notifyAll(); + return var2; } } } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1290457808" + garbageValue = "1222346600" ) @Export("readUnsignedByte") int readUnsignedByte() throws IOException { - synchronized(this) { // L: 135 - if (this.limit == this.position) { // L: 136 - if (this.exception != null) { // L: 137 + synchronized(this) { + if (this.position == this.limit) { + if (this.exception != null) { throw new IOException(this.exception.toString()); } else { - return -1; // L: 138 + return -1; } } else { - int var2 = this.buffer[this.position] & 255; // L: 140 - this.position = (this.position + 1) % this.capacity; // L: 141 - this.notifyAll(); // L: 142 - return var2; // L: 143 + int var2 = this.buffer[this.position] & 255; + this.position = (this.position + 1) % this.capacity; + this.notifyAll(); + return var2; } } } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "([BIII)I", - garbageValue = "-1171838019" + descriptor = "([BIIB)I", + garbageValue = "30" ) @Export("read") int read(byte[] var1, int var2, int var3) throws IOException { - if (var3 >= 0 && var2 >= 0 && var3 + var2 <= var1.length) { // L: 148 - synchronized(this) { // L: 149 + if (var3 >= 0 && var2 >= 0 && var3 + var2 <= var1.length) { + synchronized(this) { int var5; - if (this.position <= this.limit) { // L: 151 + if (this.position <= this.limit) { var5 = this.limit - this.position; } else { - var5 = this.capacity - this.position + this.limit; // L: 152 + var5 = this.capacity - this.position + this.limit; } - if (var3 > var5) { // L: 153 + if (var3 > var5) { var3 = var5; } - if (var3 == 0 && this.exception != null) { // L: 154 + if (var3 == 0 && this.exception != null) { throw new IOException(this.exception.toString()); } else { - if (var3 + this.position <= this.capacity) { // L: 155 - System.arraycopy(this.buffer, this.position, var1, var2, var3); // L: 156 + if (var3 + this.position <= this.capacity) { + System.arraycopy(this.buffer, this.position, var1, var2, var3); } else { - int var6 = this.capacity - this.position; // L: 159 - System.arraycopy(this.buffer, this.position, var1, var2, var6); // L: 160 - System.arraycopy(this.buffer, 0, var1, var6 + var2, var3 - var6); // L: 161 + int var6 = this.capacity - this.position; + System.arraycopy(this.buffer, this.position, var1, var2, var6); + System.arraycopy(this.buffer, 0, var1, var6 + var2, var3 - var6); } - this.position = (var3 + this.position) % this.capacity; // L: 163 - this.notifyAll(); // L: 164 - return var3; // L: 165 + this.position = (var3 + this.position) % this.capacity; + this.notifyAll(); + return var3; } } } else { @@ -174,73 +174,73 @@ public class BufferedSource implements Runnable { } } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1615837406" + descriptor = "(S)V", + garbageValue = "180" ) @Export("close") void close() { - synchronized(this) { // L: 170 + synchronized(this) { if (this.exception == null) { - this.exception = new IOException(""); // L: 171 + this.exception = new IOException(""); } - this.notifyAll(); // L: 172 + this.notifyAll(); } try { - this.thread.join(); // L: 175 - } catch (InterruptedException var3) { // L: 177 + this.thread.join(); + } catch (InterruptedException var3) { } - } // L: 178 + } public void run() { while (true) { int var1; - synchronized(this) { // L: 75 + synchronized(this) { while (true) { - if (this.exception != null) { // L: 77 + if (this.exception != null) { return; } - if (this.position == 0) { // L: 78 + if (this.position == 0) { var1 = this.capacity - this.limit - 1; - } else if (this.position <= this.limit) { // L: 79 + } else if (this.position <= this.limit) { var1 = this.capacity - this.limit; } else { - var1 = this.position - this.limit - 1; // L: 80 + var1 = this.position - this.limit - 1; } - if (var1 > 0) { // L: 81 + if (var1 > 0) { break; } try { - this.wait(); // L: 83 - } catch (InterruptedException var10) { // L: 85 + this.wait(); + } catch (InterruptedException var10) { } } } int var7; try { - var7 = this.inputStream.read(this.buffer, this.limit, var1); // L: 90 + var7 = this.inputStream.read(this.buffer, this.limit, var1); if (var7 == -1) { - throw new EOFException(); // L: 91 + throw new EOFException(); } - } catch (IOException var11) { // L: 93 + } catch (IOException var11) { IOException var3 = var11; - synchronized(this) { // L: 94 - this.exception = var3; // L: 95 - return; // L: 96 + synchronized(this) { + this.exception = var3; + return; } } - synchronized(this) { // L: 99 - this.limit = (var7 + this.limit) % this.capacity; // L: 100 - } // L: 101 + synchronized(this) { + this.limit = (var7 + this.limit) % this.capacity; + } } } } diff --git a/runescape-client/src/main/java/ByteArrayNode.java b/runescape-client/src/main/java/ByteArrayNode.java index f97bc41463..884d2df239 100644 --- a/runescape-client/src/main/java/ByteArrayNode.java +++ b/runescape-client/src/main/java/ByteArrayNode.java @@ -2,14 +2,14 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("gf") +@ObfuscatedName("gg") @Implements("ByteArrayNode") public class ByteArrayNode extends Node { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("byteArray") public byte[] byteArray; public ByteArrayNode(byte[] var1) { - this.byteArray = var1; // L: 7 - } // L: 8 + this.byteArray = var1; + } } diff --git a/runescape-client/src/main/java/ByteArrayPool.java b/runescape-client/src/main/java/ByteArrayPool.java index c796260ef2..06ca3a4634 100644 --- a/runescape-client/src/main/java/ByteArrayPool.java +++ b/runescape-client/src/main/java/ByteArrayPool.java @@ -4,103 +4,94 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ln") +@ObfuscatedName("lt") @Implements("ByteArrayPool") public class ByteArrayPool { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 1202056679 + intValue = 400072039 ) @Export("ByteArrayPool_smallCount") static int ByteArrayPool_smallCount; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -2063240013 + intValue = -692172719 ) @Export("ByteArrayPool_mediumCount") static int ByteArrayPool_mediumCount; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1967432073 + intValue = -774539929 ) @Export("ByteArrayPool_largeCount") static int ByteArrayPool_largeCount; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("ByteArrayPool_small") static byte[][] ByteArrayPool_small; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("ByteArrayPool_medium") static byte[][] ByteArrayPool_medium; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("ByteArrayPool_large") static byte[][] ByteArrayPool_large; - @ObfuscatedName("u") - @Export("ByteArrayPool_arrays") - static byte[][][] ByteArrayPool_arrays; - @ObfuscatedName("ap") - @Export("client") - @ObfuscatedSignature( - descriptor = "Lclient;" - ) - static Client client; static { - ByteArrayPool_smallCount = 0; // L: 4 - ByteArrayPool_mediumCount = 0; // L: 5 - ByteArrayPool_largeCount = 0; // L: 6 - ByteArrayPool_small = new byte[1000][]; // L: 7 - ByteArrayPool_medium = new byte[250][]; // L: 8 - ByteArrayPool_large = new byte[50][]; // L: 9 + ByteArrayPool_smallCount = 0; + ByteArrayPool_mediumCount = 0; + ByteArrayPool_largeCount = 0; + ByteArrayPool_small = new byte[1000][]; + ByteArrayPool_medium = new byte[250][]; + ByteArrayPool_large = new byte[50][]; } - @ObfuscatedName("b") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(IZI)[B", - garbageValue = "-1957443325" + descriptor = "(IZB)[B", + garbageValue = "1" ) @Export("ByteArrayPool_getArrayBool") static synchronized byte[] ByteArrayPool_getArrayBool(int var0, boolean var1) { byte[] var4; - if (var0 != 100) { // L: 35 + if (var0 != 100) { if (var0 < 100) { } } else if (ByteArrayPool_smallCount > 0) { - var4 = ByteArrayPool_small[--ByteArrayPool_smallCount]; // L: 36 - ByteArrayPool_small[ByteArrayPool_smallCount] = null; // L: 37 - return var4; // L: 38 + var4 = ByteArrayPool_small[--ByteArrayPool_smallCount]; + ByteArrayPool_small[ByteArrayPool_smallCount] = null; + return var4; } - if (var0 != 5000) { // L: 40 + if (var0 != 5000) { if (var0 < 5000) { } } else if (ByteArrayPool_mediumCount > 0) { - var4 = ByteArrayPool_medium[--ByteArrayPool_mediumCount]; // L: 41 - ByteArrayPool_medium[ByteArrayPool_mediumCount] = null; // L: 42 - return var4; // L: 43 + var4 = ByteArrayPool_medium[--ByteArrayPool_mediumCount]; + ByteArrayPool_medium[ByteArrayPool_mediumCount] = null; + return var4; } - if (var0 != 30000) { // L: 45 + if (var0 != 30000) { if (var0 < 30000) { } } else if (ByteArrayPool_largeCount > 0) { - var4 = ByteArrayPool_large[--ByteArrayPool_largeCount]; // L: 46 - ByteArrayPool_large[ByteArrayPool_largeCount] = null; // L: 47 - return var4; // L: 48 + var4 = ByteArrayPool_large[--ByteArrayPool_largeCount]; + ByteArrayPool_large[ByteArrayPool_largeCount] = null; + return var4; } - if (ByteArrayPool_arrays != null) { // L: 50 - for (int var2 = 0; var2 < Coord.ByteArrayPool_alternativeSizes.length; ++var2) { // L: 51 - if (Coord.ByteArrayPool_alternativeSizes[var2] != var0) { // L: 52 - if (var0 < Coord.ByteArrayPool_alternativeSizes[var2]) { + if (class23.ByteArrayPool_arrays != null) { + for (int var2 = 0; var2 < SoundCache.ByteArrayPool_alternativeSizes.length; ++var2) { + if (SoundCache.ByteArrayPool_alternativeSizes[var2] != var0) { + if (var0 < SoundCache.ByteArrayPool_alternativeSizes[var2]) { } - } else if (FloorDecoration.ByteArrayPool_altSizeArrayCounts[var2] > 0) { - byte[] var3 = ByteArrayPool_arrays[var2][--FloorDecoration.ByteArrayPool_altSizeArrayCounts[var2]]; // L: 53 - ByteArrayPool_arrays[var2][FloorDecoration.ByteArrayPool_altSizeArrayCounts[var2]] = null; // L: 54 - return var3; // L: 55 + } else if (JagexCache.ByteArrayPool_altSizeArrayCounts[var2] > 0) { + byte[] var3 = class23.ByteArrayPool_arrays[var2][--JagexCache.ByteArrayPool_altSizeArrayCounts[var2]]; + class23.ByteArrayPool_arrays[var2][JagexCache.ByteArrayPool_altSizeArrayCounts[var2]] = null; + return var3; } } } - return new byte[var0]; // L: 68 + return new byte[var0]; } } diff --git a/runescape-client/src/main/java/Calendar.java b/runescape-client/src/main/java/Calendar.java index f78b0e36c6..379d5b2112 100644 --- a/runescape-client/src/main/java/Calendar.java +++ b/runescape-client/src/main/java/Calendar.java @@ -4,802 +4,49 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hn") +@ObfuscatedName("hj") @Implements("Calendar") public class Calendar { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("MONTH_NAMES_ENGLISH_GERMAN") - public static final String[][] MONTH_NAMES_ENGLISH_GERMAN; - @ObfuscatedName("b") + static final String[][] MONTH_NAMES_ENGLISH_GERMAN; + @ObfuscatedName("v") @Export("DAYS_OF_THE_WEEK") - public static final String[] DAYS_OF_THE_WEEK; - @ObfuscatedName("l") + static final String[] DAYS_OF_THE_WEEK; + @ObfuscatedName("x") @Export("Calendar_calendar") - public static java.util.Calendar Calendar_calendar; + static java.util.Calendar Calendar_calendar; static { - MONTH_NAMES_ENGLISH_GERMAN = new String[][]{{"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}, {"Jan", "Feb", "Mär", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"}, {"jan", "fév", "mars", "avr", "mai", "juin", "juil", "août", "sept", "oct", "nov", "déc"}, {"jan", "fev", "mar", "abr", "mai", "jun", "jul", "ago", "set", "out", "nov", "dez"}, {"jan", "feb", "mrt", "apr", "mei", "jun", "jul", "aug", "sep", "okt", "nov", "dec"}, {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}, {"ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic"}}; // L: 7 - DAYS_OF_THE_WEEK = new String[]{"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"}; // L: 17 - java.util.Calendar.getInstance(); // L: 21 - Calendar_calendar = java.util.Calendar.getInstance(TimeZone.getTimeZone("GMT")); // L: 22 - } // L: 23 + MONTH_NAMES_ENGLISH_GERMAN = new String[][]{{"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}, {"Jan", "Feb", "Mär", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"}, {"jan", "fév", "mars", "avr", "mai", "juin", "juil", "août", "sept", "oct", "nov", "déc"}, {"jan", "fev", "mar", "abr", "mai", "jun", "jul", "ago", "set", "out", "nov", "dez"}, {"jan", "feb", "mrt", "apr", "mei", "jun", "jul", "aug", "sep", "okt", "nov", "dec"}, {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}, {"ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic"}}; + DAYS_OF_THE_WEEK = new String[]{"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"}; + java.util.Calendar.getInstance(); + Calendar_calendar = java.util.Calendar.getInstance(TimeZone.getTimeZone("GMT")); + } - @ObfuscatedName("hm") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "(IIIILjava/lang/String;Ljava/lang/String;IIB)V", - garbageValue = "-63" + descriptor = "(I)V", + garbageValue = "-1496948542" ) - @Export("menuAction") - static final void menuAction(int var0, int var1, int var2, int var3, String var4, String var5, int var6, int var7) { - if (var2 >= 2000) { // L: 7947 - var2 -= 2000; - } + static final void method3985() { + Object var10000 = null; + String var0 = "Your friend list is full. Max of 200 for free users, and 400 for members"; + class234.addGameMessage(30, "", var0); + } - PacketBufferNode var8; - if (var2 == 1) { // L: 7948 - Client.mouseCrossX = var6; // L: 7974 - Client.mouseCrossY = var7; // L: 7975 - Client.mouseCrossColor = 2; // L: 7976 - Client.mouseCrossState = 0; // L: 7977 - Client.destinationX = var0; // L: 7978 - Client.destinationY = var1; // L: 7979 - var8 = class4.getPacketBufferNode(ClientPacket.field2293, Client.packetWriter.isaacCipher); // L: 7981 - var8.packetBuffer.method5674(var0 + FloorDecoration.baseX); // L: 7982 - var8.packetBuffer.method5684(SpotAnimationDefinition.selectedItemWidget); // L: 7983 - var8.packetBuffer.method5673(Entity.selectedItemId); // L: 7984 - var8.packetBuffer.method5664(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 7985 - var8.packetBuffer.writeShortLE(InvDefinition.selectedItemSlot); // L: 7986 - var8.packetBuffer.method5674(var3); // L: 7987 - var8.packetBuffer.writeShortLE(WorldMapData_0.baseY + var1); // L: 7988 - Client.packetWriter.addNode(var8); // L: 7989 - } else if (var2 == 2) { - Client.mouseCrossX = var6; // L: 8711 - Client.mouseCrossY = var7; // L: 8712 - Client.mouseCrossColor = 2; // L: 8713 - Client.mouseCrossState = 0; // L: 8714 - Client.destinationX = var0; // L: 8715 - Client.destinationY = var1; // L: 8716 - var8 = class4.getPacketBufferNode(ClientPacket.field2282, Client.packetWriter.isaacCipher); // L: 8718 - var8.packetBuffer.writeShort(WorldMapData_0.baseY + var1); // L: 8719 - var8.packetBuffer.method5683(class307.selectedSpellWidget); // L: 8720 - var8.packetBuffer.method5674(Client.selectedSpellChildIndex); // L: 8721 - var8.packetBuffer.writeByte(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8722 - var8.packetBuffer.writeShort(var0 + FloorDecoration.baseX); // L: 8723 - var8.packetBuffer.method5674(var3); // L: 8724 - Client.packetWriter.addNode(var8); // L: 8725 - } else if (var2 == 3) { - Client.mouseCrossX = var6; // L: 8403 - Client.mouseCrossY = var7; // L: 8404 - Client.mouseCrossColor = 2; // L: 8405 - Client.mouseCrossState = 0; // L: 8406 - Client.destinationX = var0; // L: 8407 - Client.destinationY = var1; // L: 8408 - var8 = class4.getPacketBufferNode(ClientPacket.field2249, Client.packetWriter.isaacCipher); // L: 8410 - var8.packetBuffer.method5673(var0 + FloorDecoration.baseX); // L: 8411 - var8.packetBuffer.method5674(var3); // L: 8412 - var8.packetBuffer.writeShort(WorldMapData_0.baseY + var1); // L: 8413 - var8.packetBuffer.writeByte(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8414 - Client.packetWriter.addNode(var8); // L: 8415 - } else if (var2 == 4) { - Client.mouseCrossX = var6; // L: 8179 - Client.mouseCrossY = var7; // L: 8180 - Client.mouseCrossColor = 2; // L: 8181 - Client.mouseCrossState = 0; // L: 8182 - Client.destinationX = var0; // L: 8183 - Client.destinationY = var1; // L: 8184 - var8 = class4.getPacketBufferNode(ClientPacket.field2301, Client.packetWriter.isaacCipher); // L: 8186 - var8.packetBuffer.writeByte(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8187 - var8.packetBuffer.writeShortLE(var0 + FloorDecoration.baseX); // L: 8188 - var8.packetBuffer.method5674(var3); // L: 8189 - var8.packetBuffer.writeShort(WorldMapData_0.baseY + var1); // L: 8190 - Client.packetWriter.addNode(var8); // L: 8191 - } else if (var2 == 5) { - Client.mouseCrossX = var6; // L: 8197 - Client.mouseCrossY = var7; // L: 8198 - Client.mouseCrossColor = 2; // L: 8199 - Client.mouseCrossState = 0; // L: 8200 - Client.destinationX = var0; // L: 8201 - Client.destinationY = var1; // L: 8202 - var8 = class4.getPacketBufferNode(ClientPacket.field2306, Client.packetWriter.isaacCipher); // L: 8204 - var8.packetBuffer.method5674(var0 + FloorDecoration.baseX); // L: 8205 - var8.packetBuffer.writeIntME(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8206 - var8.packetBuffer.writeShort(WorldMapData_0.baseY + var1); // L: 8207 - var8.packetBuffer.method5674(var3); // L: 8208 - Client.packetWriter.addNode(var8); // L: 8209 - } else if (var2 == 6) { - Client.mouseCrossX = var6; // L: 8122 - Client.mouseCrossY = var7; // L: 8123 - Client.mouseCrossColor = 2; // L: 8124 - Client.mouseCrossState = 0; // L: 8125 - Client.destinationX = var0; // L: 8126 - Client.destinationY = var1; // L: 8127 - var8 = class4.getPacketBufferNode(ClientPacket.field2265, Client.packetWriter.isaacCipher); // L: 8129 - var8.packetBuffer.method5674(WorldMapData_0.baseY + var1); // L: 8130 - var8.packetBuffer.writeByte(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8131 - var8.packetBuffer.method5674(var3); // L: 8132 - var8.packetBuffer.method5674(var0 + FloorDecoration.baseX); // L: 8133 - Client.packetWriter.addNode(var8); // L: 8134 + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(IB)I", + garbageValue = "75" + ) + @Export("Messages_getNextChatID") + static int Messages_getNextChatID(int var0) { + Message var1 = (Message)Messages.Messages_hashTable.get((long)var0); + if (var1 == null) { + return -1; } else { - PacketBufferNode var9; - NPC var13; - if (var2 == 7) { - var13 = Client.npcs[var3]; // L: 8073 - if (var13 != null) { // L: 8074 - Client.mouseCrossX = var6; // L: 8075 - Client.mouseCrossY = var7; // L: 8076 - Client.mouseCrossColor = 2; // L: 8077 - Client.mouseCrossState = 0; // L: 8078 - Client.destinationX = var0; // L: 8079 - Client.destinationY = var1; // L: 8080 - var9 = class4.getPacketBufferNode(ClientPacket.field2332, Client.packetWriter.isaacCipher); // L: 8082 - var9.packetBuffer.writeInt(SpotAnimationDefinition.selectedItemWidget); // L: 8083 - var9.packetBuffer.writeShort(var3); // L: 8084 - var9.packetBuffer.writeShortLE(InvDefinition.selectedItemSlot); // L: 8085 - var9.packetBuffer.writeShort(Entity.selectedItemId); // L: 8086 - var9.packetBuffer.method5665(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8087 - Client.packetWriter.addNode(var9); // L: 8088 - } - } else if (var2 == 8) { - var13 = Client.npcs[var3]; // L: 8591 - if (var13 != null) { // L: 8592 - Client.mouseCrossX = var6; // L: 8593 - Client.mouseCrossY = var7; // L: 8594 - Client.mouseCrossColor = 2; // L: 8595 - Client.mouseCrossState = 0; // L: 8596 - Client.destinationX = var0; // L: 8597 - Client.destinationY = var1; // L: 8598 - var9 = class4.getPacketBufferNode(ClientPacket.field2304, Client.packetWriter.isaacCipher); // L: 8600 - var9.packetBuffer.method5673(Client.selectedSpellChildIndex); // L: 8601 - var9.packetBuffer.writeShortLE(var3); // L: 8602 - var9.packetBuffer.method5665(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8603 - var9.packetBuffer.method5684(class307.selectedSpellWidget); // L: 8604 - Client.packetWriter.addNode(var9); // L: 8605 - } - } else if (var2 == 9) { - var13 = Client.npcs[var3]; // L: 8500 - if (var13 != null) { // L: 8501 - Client.mouseCrossX = var6; // L: 8502 - Client.mouseCrossY = var7; // L: 8503 - Client.mouseCrossColor = 2; // L: 8504 - Client.mouseCrossState = 0; // L: 8505 - Client.destinationX = var0; // L: 8506 - Client.destinationY = var1; // L: 8507 - var9 = class4.getPacketBufferNode(ClientPacket.field2264, Client.packetWriter.isaacCipher); // L: 8509 - var9.packetBuffer.writeByte(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8510 - var9.packetBuffer.method5674(var3); // L: 8511 - Client.packetWriter.addNode(var9); // L: 8512 - } - } else if (var2 == 10) { - var13 = Client.npcs[var3]; // L: 8376 - if (var13 != null) { // L: 8377 - Client.mouseCrossX = var6; // L: 8378 - Client.mouseCrossY = var7; // L: 8379 - Client.mouseCrossColor = 2; // L: 8380 - Client.mouseCrossState = 0; // L: 8381 - Client.destinationX = var0; // L: 8382 - Client.destinationY = var1; // L: 8383 - var9 = class4.getPacketBufferNode(ClientPacket.field2325, Client.packetWriter.isaacCipher); // L: 8385 - var9.packetBuffer.writeShortLE(var3); // L: 8386 - var9.packetBuffer.method5664(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8387 - Client.packetWriter.addNode(var9); // L: 8388 - } - } else if (var2 == 11) { - var13 = Client.npcs[var3]; // L: 8624 - if (var13 != null) { // L: 8625 - Client.mouseCrossX = var6; // L: 8626 - Client.mouseCrossY = var7; // L: 8627 - Client.mouseCrossColor = 2; // L: 8628 - Client.mouseCrossState = 0; // L: 8629 - Client.destinationX = var0; // L: 8630 - Client.destinationY = var1; // L: 8631 - var9 = class4.getPacketBufferNode(ClientPacket.field2290, Client.packetWriter.isaacCipher); // L: 8633 - var9.packetBuffer.writeShort(var3); // L: 8634 - var9.packetBuffer.writeByte(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8635 - Client.packetWriter.addNode(var9); // L: 8636 - } - } else if (var2 == 12) { - var13 = Client.npcs[var3]; // L: 8663 - if (var13 != null) { // L: 8664 - Client.mouseCrossX = var6; // L: 8665 - Client.mouseCrossY = var7; // L: 8666 - Client.mouseCrossColor = 2; // L: 8667 - Client.mouseCrossState = 0; // L: 8668 - Client.destinationX = var0; // L: 8669 - Client.destinationY = var1; // L: 8670 - var9 = class4.getPacketBufferNode(ClientPacket.field2311, Client.packetWriter.isaacCipher); // L: 8672 - var9.packetBuffer.writeShortLE(var3); // L: 8673 - var9.packetBuffer.method5665(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8674 - Client.packetWriter.addNode(var9); // L: 8675 - } - } else if (var2 == 13) { - var13 = Client.npcs[var3]; // L: 8695 - if (var13 != null) { // L: 8696 - Client.mouseCrossX = var6; // L: 8697 - Client.mouseCrossY = var7; // L: 8698 - Client.mouseCrossColor = 2; // L: 8699 - Client.mouseCrossState = 0; // L: 8700 - Client.destinationX = var0; // L: 8701 - Client.destinationY = var1; // L: 8702 - var9 = class4.getPacketBufferNode(ClientPacket.field2235, Client.packetWriter.isaacCipher); // L: 8704 - var9.packetBuffer.method5673(var3); // L: 8705 - var9.packetBuffer.method5664(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8706 - Client.packetWriter.addNode(var9); // L: 8707 - } - } else { - Player var15; - if (var2 == 14) { - var15 = Client.players[var3]; // L: 8092 - if (var15 != null) { // L: 8093 - Client.mouseCrossX = var6; // L: 8094 - Client.mouseCrossY = var7; // L: 8095 - Client.mouseCrossColor = 2; // L: 8096 - Client.mouseCrossState = 0; // L: 8097 - Client.destinationX = var0; // L: 8098 - Client.destinationY = var1; // L: 8099 - var9 = class4.getPacketBufferNode(ClientPacket.field2328, Client.packetWriter.isaacCipher); // L: 8101 - var9.packetBuffer.writeShort(var3); // L: 8102 - var9.packetBuffer.method5665(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8103 - var9.packetBuffer.method5674(InvDefinition.selectedItemSlot); // L: 8104 - var9.packetBuffer.writeInt(SpotAnimationDefinition.selectedItemWidget); // L: 8105 - var9.packetBuffer.method5674(Entity.selectedItemId); // L: 8106 - Client.packetWriter.addNode(var9); // L: 8107 - } - } else if (var2 == 15) { - var15 = Client.players[var3]; // L: 8452 - if (var15 != null) { // L: 8453 - Client.mouseCrossX = var6; // L: 8454 - Client.mouseCrossY = var7; // L: 8455 - Client.mouseCrossColor = 2; // L: 8456 - Client.mouseCrossState = 0; // L: 8457 - Client.destinationX = var0; // L: 8458 - Client.destinationY = var1; // L: 8459 - var9 = class4.getPacketBufferNode(ClientPacket.field2275, Client.packetWriter.isaacCipher); // L: 8461 - var9.packetBuffer.method5682(class307.selectedSpellWidget); // L: 8462 - var9.packetBuffer.writeShort(Client.selectedSpellChildIndex); // L: 8463 - var9.packetBuffer.writeShortLE(var3); // L: 8464 - var9.packetBuffer.method5664(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8465 - Client.packetWriter.addNode(var9); // L: 8466 - } - } else if (var2 == 16) { - Client.mouseCrossX = var6; // L: 8031 - Client.mouseCrossY = var7; // L: 8032 - Client.mouseCrossColor = 2; // L: 8033 - Client.mouseCrossState = 0; // L: 8034 - Client.destinationX = var0; // L: 8035 - Client.destinationY = var1; // L: 8036 - var8 = class4.getPacketBufferNode(ClientPacket.field2299, Client.packetWriter.isaacCipher); // L: 8038 - var8.packetBuffer.writeShortLE(var3); // L: 8039 - var8.packetBuffer.method5673(InvDefinition.selectedItemSlot); // L: 8040 - var8.packetBuffer.writeInt(SpotAnimationDefinition.selectedItemWidget); // L: 8041 - var8.packetBuffer.writeShortLE(WorldMapData_0.baseY + var1); // L: 8042 - var8.packetBuffer.method5674(Entity.selectedItemId); // L: 8043 - var8.packetBuffer.method5673(var0 + FloorDecoration.baseX); // L: 8044 - var8.packetBuffer.method5665(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8045 - Client.packetWriter.addNode(var8); // L: 8046 - } else if (var2 == 17) { - Client.mouseCrossX = var6; // L: 8014 - Client.mouseCrossY = var7; // L: 8015 - Client.mouseCrossColor = 2; // L: 8016 - Client.mouseCrossState = 0; // L: 8017 - Client.destinationX = var0; // L: 8018 - Client.destinationY = var1; // L: 8019 - var8 = class4.getPacketBufferNode(ClientPacket.field2261, Client.packetWriter.isaacCipher); // L: 8021 - var8.packetBuffer.method5665(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8022 - var8.packetBuffer.writeShortLE(var3); // L: 8023 - var8.packetBuffer.method5673(WorldMapData_0.baseY + var1); // L: 8024 - var8.packetBuffer.method5673(Client.selectedSpellChildIndex); // L: 8025 - var8.packetBuffer.method5683(class307.selectedSpellWidget); // L: 8026 - var8.packetBuffer.writeShortLE(var0 + FloorDecoration.baseX); // L: 8027 - Client.packetWriter.addNode(var8); // L: 8028 - } else if (var2 == 18) { - Client.mouseCrossX = var6; // L: 8335 - Client.mouseCrossY = var7; // L: 8336 - Client.mouseCrossColor = 2; // L: 8337 - Client.mouseCrossState = 0; // L: 8338 - Client.destinationX = var0; // L: 8339 - Client.destinationY = var1; // L: 8340 - var8 = class4.getPacketBufferNode(ClientPacket.field2257, Client.packetWriter.isaacCipher); // L: 8342 - var8.packetBuffer.writeShort(WorldMapData_0.baseY + var1); // L: 8343 - var8.packetBuffer.writeShort(var0 + FloorDecoration.baseX); // L: 8344 - var8.packetBuffer.method5673(var3); // L: 8345 - var8.packetBuffer.method5665(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8346 - Client.packetWriter.addNode(var8); // L: 8347 - } else if (var2 == 19) { - Client.mouseCrossX = var6; // L: 8609 - Client.mouseCrossY = var7; // L: 8610 - Client.mouseCrossColor = 2; // L: 8611 - Client.mouseCrossState = 0; // L: 8612 - Client.destinationX = var0; // L: 8613 - Client.destinationY = var1; // L: 8614 - var8 = class4.getPacketBufferNode(ClientPacket.field2258, Client.packetWriter.isaacCipher); // L: 8616 - var8.packetBuffer.method5674(var0 + FloorDecoration.baseX); // L: 8617 - var8.packetBuffer.method5674(var3); // L: 8618 - var8.packetBuffer.writeIntME(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8619 - var8.packetBuffer.method5674(WorldMapData_0.baseY + var1); // L: 8620 - Client.packetWriter.addNode(var8); // L: 8621 - } else if (var2 == 20) { - Client.mouseCrossX = var6; // L: 8485 - Client.mouseCrossY = var7; // L: 8486 - Client.mouseCrossColor = 2; // L: 8487 - Client.mouseCrossState = 0; // L: 8488 - Client.destinationX = var0; // L: 8489 - Client.destinationY = var1; // L: 8490 - var8 = class4.getPacketBufferNode(ClientPacket.field2305, Client.packetWriter.isaacCipher); // L: 8492 - var8.packetBuffer.method5673(var3); // L: 8493 - var8.packetBuffer.method5665(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8494 - var8.packetBuffer.method5674(var0 + FloorDecoration.baseX); // L: 8495 - var8.packetBuffer.method5673(WorldMapData_0.baseY + var1); // L: 8496 - Client.packetWriter.addNode(var8); // L: 8497 - } else if (var2 == 21) { - Client.mouseCrossX = var6; // L: 8546 - Client.mouseCrossY = var7; // L: 8547 - Client.mouseCrossColor = 2; // L: 8548 - Client.mouseCrossState = 0; // L: 8549 - Client.destinationX = var0; // L: 8550 - Client.destinationY = var1; // L: 8551 - var8 = class4.getPacketBufferNode(ClientPacket.field2288, Client.packetWriter.isaacCipher); // L: 8553 - var8.packetBuffer.writeShortLE(var3); // L: 8554 - var8.packetBuffer.method5665(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8555 - var8.packetBuffer.writeShortLE(var0 + FloorDecoration.baseX); // L: 8556 - var8.packetBuffer.writeShort(WorldMapData_0.baseY + var1); // L: 8557 - Client.packetWriter.addNode(var8); // L: 8558 - } else if (var2 == 22) { - Client.mouseCrossX = var6; // L: 8470 - Client.mouseCrossY = var7; // L: 8471 - Client.mouseCrossColor = 2; // L: 8472 - Client.mouseCrossState = 0; // L: 8473 - Client.destinationX = var0; // L: 8474 - Client.destinationY = var1; // L: 8475 - var8 = class4.getPacketBufferNode(ClientPacket.field2246, Client.packetWriter.isaacCipher); // L: 8477 - var8.packetBuffer.method5673(var0 + FloorDecoration.baseX); // L: 8478 - var8.packetBuffer.method5664(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8479 - var8.packetBuffer.method5673(var3); // L: 8480 - var8.packetBuffer.writeShortLE(WorldMapData_0.baseY + var1); // L: 8481 - Client.packetWriter.addNode(var8); // L: 8482 - } else if (var2 == 23) { - if (Client.isMenuOpen) { // L: 8583 - ModeWhere.scene.setViewportWalking(); // L: 8584 - } else { - ModeWhere.scene.menuOpen(GrandExchangeOfferUnitPriceComparator.Client_plane, var0, var1, true); // L: 8587 - } - } else { - PacketBufferNode var10; - Widget var16; - if (var2 == 24) { - var16 = UserComparator4.getWidget(var1); // L: 8365 - boolean var12 = true; // L: 8366 - if (var16.contentType > 0) { // L: 8367 - var12 = Varcs.method2313(var16); - } - - if (var12) { // L: 8368 - var10 = class4.getPacketBufferNode(ClientPacket.field2286, Client.packetWriter.isaacCipher); // L: 8370 - var10.packetBuffer.writeInt(var1); // L: 8371 - Client.packetWriter.addNode(var10); // L: 8372 - } - } else { - if (var2 == 25) { - var16 = ItemContainer.getWidgetChild(var1, var0); // L: 8728 - if (var16 != null) { // L: 8729 - class69.Widget_runOnTargetLeave(); // L: 8730 - class3.selectSpell(var1, var0, JagexCache.Widget_unpackTargetMask(WorldMapData_0.getWidgetFlags(var16)), var16.itemId); // L: 8731 - Client.isItemSelected = 0; // L: 8732 - Client.selectedSpellActionName = PendingSpawn.Widget_getSpellActionName(var16); // L: 8733 - if (Client.selectedSpellActionName == null) { // L: 8734 - Client.selectedSpellActionName = "null"; - } - - if (var16.isIf3) { // L: 8735 - Client.selectedSpellName = var16.dataText + Client.colorStartTag(16777215); - } else { - Client.selectedSpellName = Client.colorStartTag(65280) + var16.spellName + Client.colorStartTag(16777215); // L: 8736 - } - } - - return; // L: 8738 - } - - if (var2 == 26) { - ModeWhere.method3815(); // L: 8532 - } else { - int var11; - Widget var14; - if (var2 == 28) { - var8 = class4.getPacketBufferNode(ClientPacket.field2286, Client.packetWriter.isaacCipher); // L: 8254 - var8.packetBuffer.writeInt(var1); // L: 8255 - Client.packetWriter.addNode(var8); // L: 8256 - var14 = UserComparator4.getWidget(var1); // L: 8257 - if (var14.cs1Instructions != null && var14.cs1Instructions[0][0] == 5) { // L: 8258 - var11 = var14.cs1Instructions[0][1]; // L: 8259 - Varps.Varps_main[var11] = 1 - Varps.Varps_main[var11]; // L: 8260 - class23.changeGameOptions(var11); // L: 8261 - } - } else if (var2 == 29) { - var8 = class4.getPacketBufferNode(ClientPacket.field2286, Client.packetWriter.isaacCipher); // L: 8419 - var8.packetBuffer.writeInt(var1); // L: 8420 - Client.packetWriter.addNode(var8); // L: 8421 - var14 = UserComparator4.getWidget(var1); // L: 8422 - if (var14.cs1Instructions != null && var14.cs1Instructions[0][0] == 5) { // L: 8423 - var11 = var14.cs1Instructions[0][1]; // L: 8424 - if (Varps.Varps_main[var11] != var14.cs1ComparisonValues[0]) { // L: 8425 - Varps.Varps_main[var11] = var14.cs1ComparisonValues[0]; // L: 8426 - class23.changeGameOptions(var11); // L: 8427 - } - } - } else if (var2 == 30) { - if (Client.meslayerContinueWidget == null) { // L: 8656 - class171.resumePauseWidget(var1, var0); // L: 8657 - Client.meslayerContinueWidget = ItemContainer.getWidgetChild(var1, var0); // L: 8658 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(Client.meslayerContinueWidget); // L: 8659 - } - } else if (var2 == 31) { - var8 = class4.getPacketBufferNode(ClientPacket.field2232, Client.packetWriter.isaacCipher); // L: 8224 - var8.packetBuffer.writeShortLE(Entity.selectedItemId); // L: 8225 - var8.packetBuffer.writeShort(var3); // L: 8226 - var8.packetBuffer.method5674(InvDefinition.selectedItemSlot); // L: 8227 - var8.packetBuffer.method5683(var1); // L: 8228 - var8.packetBuffer.writeInt(SpotAnimationDefinition.selectedItemWidget); // L: 8229 - var8.packetBuffer.method5673(var0); // L: 8230 - Client.packetWriter.addNode(var8); // L: 8231 - Client.field828 = 0; // L: 8232 - MouseHandler.field525 = UserComparator4.getWidget(var1); // L: 8233 - Client.field788 = var0; // L: 8234 - } else if (var2 == 32) { - var8 = class4.getPacketBufferNode(ClientPacket.field2236, Client.packetWriter.isaacCipher); // L: 8050 - var8.packetBuffer.method5684(class307.selectedSpellWidget); // L: 8051 - var8.packetBuffer.method5674(var0); // L: 8052 - var8.packetBuffer.method5683(var1); // L: 8053 - var8.packetBuffer.writeShort(var3); // L: 8054 - var8.packetBuffer.method5674(Client.selectedSpellChildIndex); // L: 8055 - Client.packetWriter.addNode(var8); // L: 8056 - Client.field828 = 0; // L: 8057 - MouseHandler.field525 = UserComparator4.getWidget(var1); // L: 8058 - Client.field788 = var0; // L: 8059 - } else if (var2 == 33) { - var8 = class4.getPacketBufferNode(ClientPacket.field2250, Client.packetWriter.isaacCipher); // L: 7993 - var8.packetBuffer.method5673(var0); // L: 7994 - var8.packetBuffer.writeInt(var1); // L: 7995 - var8.packetBuffer.method5674(var3); // L: 7996 - Client.packetWriter.addNode(var8); // L: 7997 - Client.field828 = 0; // L: 7998 - MouseHandler.field525 = UserComparator4.getWidget(var1); // L: 7999 - Client.field788 = var0; // L: 8000 - } else if (var2 == 34) { - var8 = class4.getPacketBufferNode(ClientPacket.field2289, Client.packetWriter.isaacCipher); // L: 8063 - var8.packetBuffer.writeShort(var3); // L: 8064 - var8.packetBuffer.method5684(var1); // L: 8065 - var8.packetBuffer.writeShortLE(var0); // L: 8066 - Client.packetWriter.addNode(var8); // L: 8067 - Client.field828 = 0; // L: 8068 - MouseHandler.field525 = UserComparator4.getWidget(var1); // L: 8069 - Client.field788 = var0; // L: 8070 - } else if (var2 == 35) { - var8 = class4.getPacketBufferNode(ClientPacket.field2263, Client.packetWriter.isaacCipher); // L: 8298 - var8.packetBuffer.writeInt(var1); // L: 8299 - var8.packetBuffer.writeShortLE(var3); // L: 8300 - var8.packetBuffer.method5673(var0); // L: 8301 - Client.packetWriter.addNode(var8); // L: 8302 - Client.field828 = 0; // L: 8303 - MouseHandler.field525 = UserComparator4.getWidget(var1); // L: 8304 - Client.field788 = var0; // L: 8305 - } else if (var2 == 36) { - var8 = class4.getPacketBufferNode(ClientPacket.field2291, Client.packetWriter.isaacCipher); // L: 8112 - var8.packetBuffer.method5673(var0); // L: 8113 - var8.packetBuffer.method5673(var3); // L: 8114 - var8.packetBuffer.method5682(var1); // L: 8115 - Client.packetWriter.addNode(var8); // L: 8116 - Client.field828 = 0; // L: 8117 - MouseHandler.field525 = UserComparator4.getWidget(var1); // L: 8118 - Client.field788 = var0; // L: 8119 - } else if (var2 == 37) { - var8 = class4.getPacketBufferNode(ClientPacket.field2266, Client.packetWriter.isaacCipher); // L: 8004 - var8.packetBuffer.method5674(var0); // L: 8005 - var8.packetBuffer.method5682(var1); // L: 8006 - var8.packetBuffer.writeShortLE(var3); // L: 8007 - Client.packetWriter.addNode(var8); // L: 8008 - Client.field828 = 0; // L: 8009 - MouseHandler.field525 = UserComparator4.getWidget(var1); // L: 8010 - Client.field788 = var0; // L: 8011 - } else { - if (var2 == 38) { - class69.Widget_runOnTargetLeave(); // L: 8167 - var16 = UserComparator4.getWidget(var1); // L: 8168 - Client.isItemSelected = 1; // L: 8169 - InvDefinition.selectedItemSlot = var0; // L: 8170 - SpotAnimationDefinition.selectedItemWidget = var1; // L: 8171 - Entity.selectedItemId = var3; // L: 8172 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var16); // L: 8173 - Client.selectedItemName = Client.colorStartTag(16748608) + AbstractWorldMapData.ItemDefinition_get(var3).name + Client.colorStartTag(16777215); // L: 8174 - if (Client.selectedItemName == null) { // L: 8175 - Client.selectedItemName = "null"; - } - - return; // L: 8176 - } - - if (var2 == 39) { - var8 = class4.getPacketBufferNode(ClientPacket.field2243, Client.packetWriter.isaacCipher); // L: 7950 - var8.packetBuffer.method5674(var3); // L: 7951 - var8.packetBuffer.method5674(var0); // L: 7952 - var8.packetBuffer.writeInt(var1); // L: 7953 - Client.packetWriter.addNode(var8); // L: 7954 - Client.field828 = 0; // L: 7955 - MouseHandler.field525 = UserComparator4.getWidget(var1); // L: 7956 - Client.field788 = var0; // L: 7957 - } else if (var2 == 40) { - var8 = class4.getPacketBufferNode(ClientPacket.field2294, Client.packetWriter.isaacCipher); // L: 8213 - var8.packetBuffer.method5684(var1); // L: 8214 - var8.packetBuffer.method5673(var0); // L: 8215 - var8.packetBuffer.writeShortLE(var3); // L: 8216 - Client.packetWriter.addNode(var8); // L: 8217 - Client.field828 = 0; // L: 8218 - MouseHandler.field525 = UserComparator4.getWidget(var1); // L: 8219 - Client.field788 = var0; // L: 8220 - } else if (var2 == 41) { - var8 = class4.getPacketBufferNode(ClientPacket.field2297, Client.packetWriter.isaacCipher); // L: 8325 - var8.packetBuffer.writeShortLE(var3); // L: 8326 - var8.packetBuffer.writeShortLE(var0); // L: 8327 - var8.packetBuffer.method5683(var1); // L: 8328 - Client.packetWriter.addNode(var8); // L: 8329 - Client.field828 = 0; // L: 8330 - MouseHandler.field525 = UserComparator4.getWidget(var1); // L: 8331 - Client.field788 = var0; // L: 8332 - } else if (var2 == 42) { - var8 = class4.getPacketBufferNode(ClientPacket.field2276, Client.packetWriter.isaacCipher); // L: 8536 - var8.packetBuffer.writeShort(var3); // L: 8537 - var8.packetBuffer.method5674(var0); // L: 8538 - var8.packetBuffer.method5683(var1); // L: 8539 - Client.packetWriter.addNode(var8); // L: 8540 - Client.field828 = 0; // L: 8541 - MouseHandler.field525 = UserComparator4.getWidget(var1); // L: 8542 - Client.field788 = var0; // L: 8543 - } else if (var2 == 43) { - var8 = class4.getPacketBufferNode(ClientPacket.field2313, Client.packetWriter.isaacCipher); // L: 8393 - var8.packetBuffer.method5674(var3); // L: 8394 - var8.packetBuffer.writeInt(var1); // L: 8395 - var8.packetBuffer.method5673(var0); // L: 8396 - Client.packetWriter.addNode(var8); // L: 8397 - Client.field828 = 0; // L: 8398 - MouseHandler.field525 = UserComparator4.getWidget(var1); // L: 8399 - Client.field788 = var0; // L: 8400 - } else if (var2 == 44) { - var15 = Client.players[var3]; // L: 8265 - if (var15 != null) { // L: 8266 - Client.mouseCrossX = var6; // L: 8267 - Client.mouseCrossY = var7; // L: 8268 - Client.mouseCrossColor = 2; // L: 8269 - Client.mouseCrossState = 0; // L: 8270 - Client.destinationX = var0; // L: 8271 - Client.destinationY = var1; // L: 8272 - var9 = class4.getPacketBufferNode(ClientPacket.field2239, Client.packetWriter.isaacCipher); // L: 8274 - var9.packetBuffer.writeByte(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8275 - var9.packetBuffer.method5673(var3); // L: 8276 - Client.packetWriter.addNode(var9); // L: 8277 - } - } else if (var2 == 45) { - var15 = Client.players[var3]; // L: 8516 - if (var15 != null) { // L: 8517 - Client.mouseCrossX = var6; // L: 8518 - Client.mouseCrossY = var7; // L: 8519 - Client.mouseCrossColor = 2; // L: 8520 - Client.mouseCrossState = 0; // L: 8521 - Client.destinationX = var0; // L: 8522 - Client.destinationY = var1; // L: 8523 - var9 = class4.getPacketBufferNode(ClientPacket.field2254, Client.packetWriter.isaacCipher); // L: 8525 - var9.packetBuffer.method5664(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8526 - var9.packetBuffer.method5674(var3); // L: 8527 - Client.packetWriter.addNode(var9); // L: 8528 - } - } else if (var2 == 46) { - var15 = Client.players[var3]; // L: 8640 - if (var15 != null) { // L: 8641 - Client.mouseCrossX = var6; // L: 8642 - Client.mouseCrossY = var7; // L: 8643 - Client.mouseCrossColor = 2; // L: 8644 - Client.mouseCrossState = 0; // L: 8645 - Client.destinationX = var0; // L: 8646 - Client.destinationY = var1; // L: 8647 - var9 = class4.getPacketBufferNode(ClientPacket.field2280, Client.packetWriter.isaacCipher); // L: 8649 - var9.packetBuffer.method5664(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8650 - var9.packetBuffer.method5673(var3); // L: 8651 - Client.packetWriter.addNode(var9); // L: 8652 - } - } else if (var2 == 47) { - var15 = Client.players[var3]; // L: 8679 - if (var15 != null) { // L: 8680 - Client.mouseCrossX = var6; // L: 8681 - Client.mouseCrossY = var7; // L: 8682 - Client.mouseCrossColor = 2; // L: 8683 - Client.mouseCrossState = 0; // L: 8684 - Client.destinationX = var0; // L: 8685 - Client.destinationY = var1; // L: 8686 - var9 = class4.getPacketBufferNode(ClientPacket.field2281, Client.packetWriter.isaacCipher); // L: 8688 - var9.packetBuffer.writeShort(var3); // L: 8689 - var9.packetBuffer.writeByte(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8690 - Client.packetWriter.addNode(var9); // L: 8691 - } - } else if (var2 == 48) { - var15 = Client.players[var3]; // L: 8308 - if (var15 != null) { // L: 8309 - Client.mouseCrossX = var6; // L: 8310 - Client.mouseCrossY = var7; // L: 8311 - Client.mouseCrossColor = 2; // L: 8312 - Client.mouseCrossState = 0; // L: 8313 - Client.destinationX = var0; // L: 8314 - Client.destinationY = var1; // L: 8315 - var9 = class4.getPacketBufferNode(ClientPacket.field2308, Client.packetWriter.isaacCipher); // L: 8317 - var9.packetBuffer.writeIntME(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8318 - var9.packetBuffer.writeShortLE(var3); // L: 8319 - Client.packetWriter.addNode(var9); // L: 8320 - } - } else if (var2 == 49) { - var15 = Client.players[var3]; // L: 8561 - if (var15 != null) { // L: 8562 - Client.mouseCrossX = var6; // L: 8563 - Client.mouseCrossY = var7; // L: 8564 - Client.mouseCrossColor = 2; // L: 8565 - Client.mouseCrossState = 0; // L: 8566 - Client.destinationX = var0; // L: 8567 - Client.destinationY = var1; // L: 8568 - var9 = class4.getPacketBufferNode(ClientPacket.field2323, Client.packetWriter.isaacCipher); // L: 8570 - var9.packetBuffer.writeShort(var3); // L: 8571 - var9.packetBuffer.writeIntME(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8572 - Client.packetWriter.addNode(var9); // L: 8573 - } - } else if (var2 == 50) { - var15 = Client.players[var3]; // L: 8237 - if (var15 != null) { // L: 8238 - Client.mouseCrossX = var6; // L: 8239 - Client.mouseCrossY = var7; // L: 8240 - Client.mouseCrossColor = 2; // L: 8241 - Client.mouseCrossState = 0; // L: 8242 - Client.destinationX = var0; // L: 8243 - Client.destinationY = var1; // L: 8244 - var9 = class4.getPacketBufferNode(ClientPacket.field2324, Client.packetWriter.isaacCipher); // L: 8246 - var9.packetBuffer.method5674(var3); // L: 8247 - var9.packetBuffer.writeIntME(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8248 - Client.packetWriter.addNode(var9); // L: 8249 - } - } else if (var2 == 51) { - var15 = Client.players[var3]; // L: 8281 - if (var15 != null) { // L: 8282 - Client.mouseCrossX = var6; // L: 8283 - Client.mouseCrossY = var7; // L: 8284 - Client.mouseCrossColor = 2; // L: 8285 - Client.mouseCrossState = 0; // L: 8286 - Client.destinationX = var0; // L: 8287 - Client.destinationY = var1; // L: 8288 - var9 = class4.getPacketBufferNode(ClientPacket.field2244, Client.packetWriter.isaacCipher); // L: 8290 - var9.packetBuffer.method5673(var3); // L: 8291 - var9.packetBuffer.writeIntME(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8292 - Client.packetWriter.addNode(var9); // L: 8293 - } - } else { - label638: { - if (var2 != 57) { - if (var2 == 58) { - var16 = ItemContainer.getWidgetChild(var1, var0); // L: 7960 - if (var16 != null) { // L: 7961 - var9 = class4.getPacketBufferNode(ClientPacket.field2238, Client.packetWriter.isaacCipher); // L: 7963 - var9.packetBuffer.method5673(var0); // L: 7964 - var9.packetBuffer.writeShortLE(Client.field838); // L: 7965 - var9.packetBuffer.writeShortLE(Client.selectedSpellChildIndex); // L: 7966 - var9.packetBuffer.writeInt(var1); // L: 7967 - var9.packetBuffer.method5684(class307.selectedSpellWidget); // L: 7968 - var9.packetBuffer.writeShort(var16.itemId); // L: 7969 - Client.packetWriter.addNode(var9); // L: 7970 - } - break label638; - } - - if (var2 == 1001) { - Client.mouseCrossX = var6; // L: 8350 - Client.mouseCrossY = var7; // L: 8351 - Client.mouseCrossColor = 2; // L: 8352 - Client.mouseCrossState = 0; // L: 8353 - Client.destinationX = var0; // L: 8354 - Client.destinationY = var1; // L: 8355 - var8 = class4.getPacketBufferNode(ClientPacket.field2259, Client.packetWriter.isaacCipher); // L: 8357 - var8.packetBuffer.method5664(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); // L: 8358 - var8.packetBuffer.method5674(var3); // L: 8359 - var8.packetBuffer.method5674(WorldMapData_0.baseY + var1); // L: 8360 - var8.packetBuffer.writeShortLE(var0 + FloorDecoration.baseX); // L: 8361 - Client.packetWriter.addNode(var8); // L: 8362 - break label638; - } - - if (var2 == 1002) { - Client.mouseCrossX = var6; // L: 8432 - Client.mouseCrossY = var7; // L: 8433 - Client.mouseCrossColor = 2; // L: 8434 - Client.mouseCrossState = 0; // L: 8435 - var8 = class4.getPacketBufferNode(ClientPacket.field2233, Client.packetWriter.isaacCipher); // L: 8437 - var8.packetBuffer.writeShort(var3); // L: 8438 - Client.packetWriter.addNode(var8); // L: 8439 - break label638; - } - - if (var2 == 1003) { - Client.mouseCrossX = var6; // L: 8150 - Client.mouseCrossY = var7; // L: 8151 - Client.mouseCrossColor = 2; // L: 8152 - Client.mouseCrossState = 0; // L: 8153 - var13 = Client.npcs[var3]; // L: 8154 - if (var13 != null) { // L: 8155 - NPCDefinition var17 = var13.definition; // L: 8156 - if (var17.transforms != null) { // L: 8157 - var17 = var17.transform(); - } - - if (var17 != null) { // L: 8158 - var10 = class4.getPacketBufferNode(ClientPacket.field2284, Client.packetWriter.isaacCipher); // L: 8160 - var10.packetBuffer.writeShortLE(var17.id); // L: 8161 - Client.packetWriter.addNode(var10); // L: 8162 - } - } - break label638; - } - - if (var2 == 1004) { - Client.mouseCrossX = var6; // L: 8442 - Client.mouseCrossY = var7; // L: 8443 - Client.mouseCrossColor = 2; // L: 8444 - Client.mouseCrossState = 0; // L: 8445 - var8 = class4.getPacketBufferNode(ClientPacket.field2317, Client.packetWriter.isaacCipher); // L: 8447 - var8.packetBuffer.writeShortLE(var3); // L: 8448 - Client.packetWriter.addNode(var8); // L: 8449 - break label638; - } - - if (var2 == 1005) { - var16 = UserComparator4.getWidget(var1); // L: 8137 - if (var16 != null && var16.itemQuantities[var0] >= 100000) { // L: 8138 - DevicePcmPlayerProvider.addGameMessage(27, "", var16.itemQuantities[var0] + " x " + AbstractWorldMapData.ItemDefinition_get(var3).name); - } else { - var9 = class4.getPacketBufferNode(ClientPacket.field2317, Client.packetWriter.isaacCipher); // L: 8141 - var9.packetBuffer.writeShortLE(var3); // L: 8142 - Client.packetWriter.addNode(var9); // L: 8143 - } - - Client.field828 = 0; // L: 8145 - MouseHandler.field525 = UserComparator4.getWidget(var1); // L: 8146 - Client.field788 = var0; // L: 8147 - break label638; - } - - if (var2 != 1007) { - if (var2 == 1008 || var2 == 1011 || var2 == 1009 || var2 == 1010 || var2 == 1012) { - KeyHandler.worldMap.worldMapMenuAction(var2, var3, new Coord(var0), new Coord(var1)); // L: 8194 - } - break label638; - } - } - - var16 = ItemContainer.getWidgetChild(var1, var0); // L: 8577 - if (var16 != null) { // L: 8578 - Messages.widgetDefaultMenuAction(var3, var1, var0, var16.itemId, var5); // L: 8579 - } - } - } - } - } - } - } - } + return var1.previousDual == Messages.Messages_queue.sentinel ? -1 : ((Message)var1.previousDual).count; } - - if (Client.isItemSelected != 0) { // L: 8740 - Client.isItemSelected = 0; // L: 8741 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(UserComparator4.getWidget(SpotAnimationDefinition.selectedItemWidget)); // L: 8742 - } - - if (Client.isSpellSelected) { // L: 8744 - class69.Widget_runOnTargetLeave(); - } - - if (MouseHandler.field525 != null && Client.field828 == 0) { // L: 8745 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(MouseHandler.field525); - } - - } // L: 8746 + } } diff --git a/runescape-client/src/main/java/Canvas.java b/runescape-client/src/main/java/Canvas.java index 8d60eb7c0a..a0832e75ba 100644 --- a/runescape-client/src/main/java/Canvas.java +++ b/runescape-client/src/main/java/Canvas.java @@ -1,899 +1,565 @@ import java.awt.Component; import java.awt.Graphics; -import java.awt.Toolkit; -import java.awt.datatransfer.Clipboard; -import java.awt.datatransfer.DataFlavor; -import java.awt.datatransfer.Transferable; -import java.awt.datatransfer.UnsupportedFlavorException; -import java.io.IOException; +import java.awt.Image; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bj") +@ObfuscatedName("bx") @Implements("Canvas") public final class Canvas extends java.awt.Canvas { - @ObfuscatedName("f") + @ObfuscatedName("ak") + static Image field425; + @ObfuscatedName("h") @Export("component") Component component; Canvas(Component var1) { - this.component = var1; // L: 11 - } // L: 12 - - public final void paint(Graphics var1) { - this.component.paint(var1); // L: 19 - } // L: 20 + this.component = var1; + } public final void update(Graphics var1) { - this.component.update(var1); // L: 15 - } // L: 16 - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(Liw;IIIZB)V", - garbageValue = "-116" - ) - public static void method952(AbstractArchive var0, int var1, int var2, int var3, boolean var4) { - class206.musicPlayerStatus = 1; // L: 34 - class23.musicTrackArchive = var0; // L: 35 - TileItem.musicTrackGroupId = var1; // L: 36 - class206.musicTrackFileId = var2; // L: 37 - class206.musicTrackVolume = var3; // L: 38 - class195.musicTrackBoolean = var4; // L: 39 - MusicPatch.pcmSampleLength = 10000; // L: 40 - } // L: 41 - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(Liw;Ljava/lang/String;Ljava/lang/String;I)Lle;", - garbageValue = "1492245151" - ) - @Export("SpriteBuffer_getIndexedSpriteByName") - public static IndexedSprite SpriteBuffer_getIndexedSpriteByName(AbstractArchive var0, String var1, String var2) { - int var3 = var0.getGroupId(var1); // L: 154 - int var4 = var0.getFileId(var3, var2); // L: 155 - return Skeleton.method3215(var0, var3, var4); // L: 156 + this.component.update(var1); } - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(Lba;I)V", - garbageValue = "-860651108" - ) - @Export("doCycleTitle") - static void doCycleTitle(GameShell var0) { - int var2; - int var3; - int var24; - if (Login.worldSelectOpen) { // L: 224 - while (true) { - if (!Clock.isKeyDown()) { // L: 226 - if (MouseHandler.MouseHandler_lastButton != 1 && (MusicPatchNode.mouseCam || MouseHandler.MouseHandler_lastButton != 4)) { // L: 247 - break; - } - - int var1 = Login.xPadding + 280; // L: 248 - if (MouseHandler.MouseHandler_lastPressedX >= var1 && MouseHandler.MouseHandler_lastPressedX <= var1 + 14 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { // L: 249 - FriendSystem.changeWorldSelectSorting(0, 0); // L: 250 - break; // L: 251 - } - - if (MouseHandler.MouseHandler_lastPressedX >= var1 + 15 && MouseHandler.MouseHandler_lastPressedX <= var1 + 80 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { // L: 253 - FriendSystem.changeWorldSelectSorting(0, 1); // L: 254 - break; // L: 255 - } - - var2 = Login.xPadding + 390; // L: 257 - if (MouseHandler.MouseHandler_lastPressedX >= var2 && MouseHandler.MouseHandler_lastPressedX <= var2 + 14 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { // L: 258 - FriendSystem.changeWorldSelectSorting(1, 0); // L: 259 - break; // L: 260 - } - - if (MouseHandler.MouseHandler_lastPressedX >= var2 + 15 && MouseHandler.MouseHandler_lastPressedX <= var2 + 80 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { // L: 262 - FriendSystem.changeWorldSelectSorting(1, 1); // L: 263 - break; // L: 264 - } - - var3 = Login.xPadding + 500; // L: 266 - if (MouseHandler.MouseHandler_lastPressedX >= var3 && MouseHandler.MouseHandler_lastPressedX <= var3 + 14 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { // L: 267 - FriendSystem.changeWorldSelectSorting(2, 0); // L: 268 - break; // L: 269 - } - - if (MouseHandler.MouseHandler_lastPressedX >= var3 + 15 && MouseHandler.MouseHandler_lastPressedX <= var3 + 80 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { // L: 271 - FriendSystem.changeWorldSelectSorting(2, 1); // L: 272 - break; // L: 273 - } - - var24 = Login.xPadding + 610; // L: 275 - if (MouseHandler.MouseHandler_lastPressedX >= var24 && MouseHandler.MouseHandler_lastPressedX <= var24 + 14 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { // L: 276 - FriendSystem.changeWorldSelectSorting(3, 0); // L: 277 - break; // L: 278 - } - - if (MouseHandler.MouseHandler_lastPressedX >= var24 + 15 && MouseHandler.MouseHandler_lastPressedX <= var24 + 80 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { // L: 280 - FriendSystem.changeWorldSelectSorting(3, 1); // L: 281 - break; // L: 282 - } - - if (MouseHandler.MouseHandler_lastPressedX >= Login.xPadding + 708 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedX <= Login.xPadding + 708 + 50 && MouseHandler.MouseHandler_lastPressedY <= 20) { // L: 284 - Login.worldSelectOpen = false; // L: 286 - Login.leftTitleSprite.drawAt(Login.xPadding, 0); // L: 287 - Login.rightTitleSprite.drawAt(Login.xPadding + 382, 0); // L: 288 - SecureRandomFuture.logoSprite.drawAt(Login.xPadding + 382 - SecureRandomFuture.logoSprite.subWidth / 2, 18); // L: 289 - break; // L: 291 - } - - if (Login.hoveredWorldIndex != -1) { // L: 293 - World var5 = DefaultsGroup.World_worlds[Login.hoveredWorldIndex]; // L: 294 - AbstractByteArrayCopier.changeWorld(var5); // L: 295 - Login.worldSelectOpen = false; // L: 297 - Login.leftTitleSprite.drawAt(Login.xPadding, 0); // L: 298 - Login.rightTitleSprite.drawAt(Login.xPadding + 382, 0); // L: 299 - SecureRandomFuture.logoSprite.drawAt(Login.xPadding + 382 - SecureRandomFuture.logoSprite.subWidth / 2, 18); // L: 300 - } else { - if (Login.worldSelectPage > 0 && class323.worldSelectLeftSprite != null && MouseHandler.MouseHandler_lastPressedX >= 0 && MouseHandler.MouseHandler_lastPressedX <= class323.worldSelectLeftSprite.subWidth && MouseHandler.MouseHandler_lastPressedY >= HealthBar.canvasHeight / 2 - 50 && MouseHandler.MouseHandler_lastPressedY <= HealthBar.canvasHeight / 2 + 50) { // L: 304 - --Login.worldSelectPage; // L: 305 - } - - if (Login.worldSelectPage < Login.worldSelectPagesCount && class280.worldSelectRightSprite != null && MouseHandler.MouseHandler_lastPressedX >= ItemContainer.canvasWidth - class280.worldSelectRightSprite.subWidth - 5 && MouseHandler.MouseHandler_lastPressedX <= ItemContainer.canvasWidth && MouseHandler.MouseHandler_lastPressedY >= HealthBar.canvasHeight / 2 - 50 && MouseHandler.MouseHandler_lastPressedY <= HealthBar.canvasHeight / 2 + 50) { // L: 307 - ++Login.worldSelectPage; // L: 308 - } - } - break; - } - - if (SecureRandomCallable.field555 == 13) { // L: 227 - Login.worldSelectOpen = false; // L: 229 - Login.leftTitleSprite.drawAt(Login.xPadding, 0); // L: 230 - Login.rightTitleSprite.drawAt(Login.xPadding + 382, 0); // L: 231 - SecureRandomFuture.logoSprite.drawAt(Login.xPadding + 382 - SecureRandomFuture.logoSprite.subWidth / 2, 18); // L: 232 - break; // L: 234 - } - - if (SecureRandomCallable.field555 == 96) { // L: 236 - if (Login.worldSelectPage > 0 && class323.worldSelectLeftSprite != null) { // L: 237 - --Login.worldSelectPage; // L: 238 - } - } else if (SecureRandomCallable.field555 == 97 && Login.worldSelectPage < Login.worldSelectPagesCount && class280.worldSelectRightSprite != null) { // L: 241 242 - ++Login.worldSelectPage; // L: 243 - } - } - - } else { - if ((MouseHandler.MouseHandler_lastButton == 1 || !MusicPatchNode.mouseCam && MouseHandler.MouseHandler_lastButton == 4) && MouseHandler.MouseHandler_lastPressedX >= Login.xPadding + 765 - 50 && MouseHandler.MouseHandler_lastPressedY >= 453) { // L: 314 - GrandExchangeOfferAgeComparator.clientPreferences.titleMusicDisabled = !GrandExchangeOfferAgeComparator.clientPreferences.titleMusicDisabled; // L: 315 - Tile.savePreferences(); // L: 316 - if (!GrandExchangeOfferAgeComparator.clientPreferences.titleMusicDisabled) { // L: 317 - Archive var15 = ApproximateRouteStrategy.archive6; // L: 318 - var2 = var15.getGroupId("scape main"); // L: 320 - var3 = var15.getFileId(var2, ""); // L: 321 - method952(var15, var2, var3, 255, false); // L: 322 - } else { - class13.midiPcmStream.clear(); // L: 326 - class206.musicPlayerStatus = 1; // L: 327 - class23.musicTrackArchive = null; // L: 328 - } - } - - if (Client.gameState != 5) { // L: 331 - if (-1L == Login.field1223) { // L: 332 - Login.field1223 = User.currentTimeMillis() + 1000L; // L: 333 - } - - long var16 = User.currentTimeMillis(); // L: 335 - if (class52.method897() && -1L == Login.field1241) { // L: 336 337 - Login.field1241 = var16; // L: 338 - if (Login.field1241 > Login.field1223) { // L: 339 - Login.field1223 = Login.field1241; // L: 340 - } - } - - if (Client.gameState == 10 || Client.gameState == 11) { // L: 344 - if (FontName.clientLanguage == Language.Language_EN) { // L: 345 - if (MouseHandler.MouseHandler_lastButton == 1 || !MusicPatchNode.mouseCam && MouseHandler.MouseHandler_lastButton == 4) { // L: 346 - var3 = Login.xPadding + 5; // L: 347 - short var4 = 463; // L: 348 - byte var18 = 100; // L: 349 - byte var6 = 35; // L: 350 - if (MouseHandler.MouseHandler_lastPressedX >= var3 && MouseHandler.MouseHandler_lastPressedX <= var18 + var3 && MouseHandler.MouseHandler_lastPressedY >= var4 && MouseHandler.MouseHandler_lastPressedY <= var6 + var4) { // L: 351 - if (WallDecoration.loadWorlds()) { // L: 353 - Login.worldSelectOpen = true; // L: 354 - Login.worldSelectPage = 0; // L: 355 - Login.worldSelectPagesCount = 0; // L: 356 - } - - return; // L: 359 - } - } - - if (class248.World_request != null && WallDecoration.loadWorlds()) { // L: 362 363 - Login.worldSelectOpen = true; // L: 364 - Login.worldSelectPage = 0; // L: 365 - Login.worldSelectPagesCount = 0; // L: 366 - } - } - - var3 = MouseHandler.MouseHandler_lastButton; // L: 370 - var24 = MouseHandler.MouseHandler_lastPressedX; // L: 371 - int var30 = MouseHandler.MouseHandler_lastPressedY; // L: 372 - if (var3 == 0) { // L: 373 - var24 = MouseHandler.MouseHandler_x; // L: 374 - var30 = MouseHandler.MouseHandler_y; // L: 375 - } - - if (!MusicPatchNode.mouseCam && var3 == 4) { // L: 377 - var3 = 1; - } - - short var27; - int var28; - if (Login.loginIndex == 0) { // L: 378 - boolean var29 = false; // L: 379 - - while (Clock.isKeyDown()) { // L: 380 - if (SecureRandomCallable.field555 == 84) { // L: 381 - var29 = true; // L: 382 - } - } - - var28 = AttackOption.loginBoxCenter - 80; // L: 385 - var27 = 291; // L: 386 - if (var3 == 1 && var24 >= var28 - 75 && var24 <= var28 + 75 && var30 >= var27 - 20 && var30 <= var27 + 20) { // L: 387 - Skeleton.openURL(NPC.method2157("secure", true) + "m=account-creation/g=oldscape/create_account_funnel.ws", true, false); // L: 388 - } - - var28 = AttackOption.loginBoxCenter + 80; // L: 390 - if (var3 == 1 && var24 >= var28 - 75 && var24 <= var28 + 75 && var30 >= var27 - 20 && var30 <= var27 + 20 || var29) { // L: 391 - if ((Client.worldProperties & 33554432) != 0) { // L: 392 - Login.Login_response0 = ""; // L: 393 - Login.Login_response1 = "This is a Beta world."; // L: 394 - Login.Login_response2 = "Your normal account will not be affected."; // L: 395 - Login.Login_response3 = ""; // L: 396 - Login.loginIndex = 1; // L: 397 - if (Client.Login_isUsernameRemembered && Login.Login_username != null && Login.Login_username.length() > 0) { // L: 399 - Login.currentLoginField = 1; // L: 400 - } else { - Login.currentLoginField = 0; // L: 403 - } - } else if ((Client.worldProperties & 4) != 0) { // L: 407 - if ((Client.worldProperties & 1024) != 0) { // L: 408 - Login.Login_response1 = "This is a High Risk PvP world."; // L: 409 - Login.Login_response2 = "Players can attack each other almost everywhere"; // L: 410 - Login.Login_response3 = "and the Protect Item prayer won't work."; // L: 411 - } else { - Login.Login_response1 = "This is a PvP world."; // L: 414 - Login.Login_response2 = "Players can attack each other"; // L: 415 - Login.Login_response3 = "almost everywhere."; // L: 416 - } - - Login.Login_response0 = "Warning!"; // L: 418 - Login.loginIndex = 1; // L: 419 - if (Client.Login_isUsernameRemembered && Login.Login_username != null && Login.Login_username.length() > 0) { // L: 421 - Login.currentLoginField = 1; // L: 422 - } else { - Login.currentLoginField = 0; // L: 425 - } - } else if ((Client.worldProperties & 1024) != 0) { // L: 429 - Login.Login_response1 = "This is a High Risk world."; // L: 430 - Login.Login_response2 = "The Protect Item prayer will"; // L: 431 - Login.Login_response3 = "not work on this world."; // L: 432 - Login.Login_response0 = "Warning!"; // L: 433 - Login.loginIndex = 1; // L: 434 - if (Client.Login_isUsernameRemembered && Login.Login_username != null && Login.Login_username.length() > 0) { // L: 436 - Login.currentLoginField = 1; // L: 437 - } else { - Login.currentLoginField = 0; // L: 440 - } - } else { - HealthBar.Login_promptCredentials(false); // L: 445 - } - } - } else { - short var7; - int var25; - if (Login.loginIndex == 1) { // L: 449 - while (true) { - if (!Clock.isKeyDown()) { // L: 450 - var25 = AttackOption.loginBoxCenter - 80; // L: 458 - var7 = 321; // L: 459 - if (var3 == 1 && var24 >= var25 - 75 && var24 <= var25 + 75 && var30 >= var7 - 20 && var30 <= var7 + 20) { // L: 460 - HealthBar.Login_promptCredentials(false); // L: 461 - } - - var25 = AttackOption.loginBoxCenter + 80; // L: 463 - if (var3 == 1 && var24 >= var25 - 75 && var24 <= var25 + 75 && var30 >= var7 - 20 && var30 <= var7 + 20) { // L: 464 - Login.loginIndex = 0; // L: 465 - } - break; - } - - if (SecureRandomCallable.field555 == 84) { // L: 451 - HealthBar.Login_promptCredentials(false); // L: 452 - } else if (SecureRandomCallable.field555 == 13) { // L: 454 - Login.loginIndex = 0; // L: 455 - } - } - } else { - short var26; - if (Login.loginIndex == 2) { // L: 468 - var26 = 201; // L: 469 - var25 = var26 + 52; // L: 470 - if (var3 == 1 && var30 >= var25 - 12 && var30 < var25 + 2) { // L: 471 - Login.currentLoginField = 0; - } - - var25 += 15; // L: 472 - if (var3 == 1 && var30 >= var25 - 12 && var30 < var25 + 2) { // L: 473 - Login.currentLoginField = 1; - } - - var25 += 15; // L: 474 - var26 = 361; // L: 475 - if (class89.field1163 != null) { // L: 476 - var28 = class89.field1163.highX / 2; // L: 477 - if (var3 == 1 && var24 >= class89.field1163.lowX - var28 && var24 <= var28 + class89.field1163.lowX && var30 >= var26 - 15 && var30 < var26) { // L: 478 - switch(Login.field1217) { // L: 479 - case 1: - GrandExchangeOfferNameComparator.setLoginResponseString("Please enter your username.", "If you created your account after November", "2010, this will be the creation email address."); // L: 482 - Login.loginIndex = 5; // L: 483 - return; // L: 484 - case 2: - Skeleton.openURL("https://support.runescape.com/hc/en-gb", true, false); // L: 488 - } - } - } - - var28 = AttackOption.loginBoxCenter - 80; // L: 494 - var27 = 321; // L: 495 - if (var3 == 1 && var24 >= var28 - 75 && var24 <= var28 + 75 && var30 >= var27 - 20 && var30 <= var27 + 20) { // L: 496 - Login.Login_username = Login.Login_username.trim(); // L: 497 - if (Login.Login_username.length() == 0) { // L: 498 - GrandExchangeOfferNameComparator.setLoginResponseString("", "Please enter your username/email address.", ""); // L: 499 - return; // L: 500 - } - - if (Login.Login_password.length() == 0) { // L: 502 - GrandExchangeOfferNameComparator.setLoginResponseString("", "Please enter your password.", ""); // L: 503 - return; // L: 504 - } - - GrandExchangeOfferNameComparator.setLoginResponseString("", "Connecting to server...", ""); // L: 506 - Message.method1314(false); // L: 507 - BuddyRankComparator.updateGameState(20); // L: 508 - return; // L: 509 - } - - var28 = Login.loginBoxX + 180 + 80; // L: 511 - if (var3 == 1 && var24 >= var28 - 75 && var24 <= var28 + 75 && var30 >= var27 - 20 && var30 <= var27 + 20) { // L: 512 - Login.loginIndex = 0; // L: 513 - Login.Login_username = ""; // L: 514 - Login.Login_password = ""; // L: 515 - class169.field2035 = 0; // L: 516 - EnumDefinition.otp = ""; // L: 517 - Login.field1227 = true; // L: 518 - } - - var28 = AttackOption.loginBoxCenter + -117; // L: 520 - var27 = 277; // L: 521 - Login.field1230 = var24 >= var28 && var24 < var28 + class225.field2576 && var30 >= var27 && var30 < var27 + class232.field2780; // L: 522 - if (var3 == 1 && Login.field1230) { // L: 523 - Client.Login_isUsernameRemembered = !Client.Login_isUsernameRemembered; // L: 524 - if (!Client.Login_isUsernameRemembered && GrandExchangeOfferAgeComparator.clientPreferences.rememberedUsername != null) { // L: 525 - GrandExchangeOfferAgeComparator.clientPreferences.rememberedUsername = null; // L: 526 - Tile.savePreferences(); // L: 527 - } - } - - var28 = AttackOption.loginBoxCenter + 24; // L: 530 - var27 = 277; // L: 531 - Login.field1229 = var24 >= var28 && var24 < var28 + class225.field2576 && var30 >= var27 && var30 < var27 + class232.field2780; // L: 532 - if (var3 == 1 && Login.field1229) { // L: 533 - GrandExchangeOfferAgeComparator.clientPreferences.hideUsername = !GrandExchangeOfferAgeComparator.clientPreferences.hideUsername; // L: 534 - if (!GrandExchangeOfferAgeComparator.clientPreferences.hideUsername) { // L: 535 - Login.Login_username = ""; // L: 536 - GrandExchangeOfferAgeComparator.clientPreferences.rememberedUsername = null; // L: 537 - if (Client.Login_isUsernameRemembered && Login.Login_username != null && Login.Login_username.length() > 0) { // L: 539 - Login.currentLoginField = 1; // L: 540 - } else { - Login.currentLoginField = 0; // L: 543 - } - } - - Tile.savePreferences(); // L: 547 - } - - while (true) { - Transferable var10; - int var11; - do { - while (true) { - label1113: - do { - while (true) { - while (Clock.isKeyDown()) { // L: 549 - if (SecureRandomCallable.field555 != 13) { // L: 550 - if (Login.currentLoginField != 0) { // L: 559 - continue label1113; - } - - class23.method251(WorldMapManager.field335); // L: 560 - if (SecureRandomCallable.field555 == 85 && Login.Login_username.length() > 0) { // L: 561 - Login.Login_username = Login.Login_username.substring(0, Login.Login_username.length() - 1); - } - - if (SecureRandomCallable.field555 == 84 || SecureRandomCallable.field555 == 80) { // L: 562 - Login.currentLoginField = 1; - } - - if (Skeleton.method3212(WorldMapManager.field335) && Login.Login_username.length() < 320) { // L: 563 - Login.Login_username = Login.Login_username + WorldMapManager.field335; - } - } else { - Login.loginIndex = 0; // L: 551 - Login.Login_username = ""; // L: 552 - Login.Login_password = ""; // L: 553 - class169.field2035 = 0; // L: 554 - EnumDefinition.otp = ""; // L: 555 - Login.field1227 = true; // L: 556 - } - } - - return; // L: 804 - } - } while(Login.currentLoginField != 1); // L: 565 - - if (SecureRandomCallable.field555 == 85 && Login.Login_password.length() > 0) { // L: 566 - Login.Login_password = Login.Login_password.substring(0, Login.Login_password.length() - 1); // L: 567 - } else if (SecureRandomCallable.field555 == 84 || SecureRandomCallable.field555 == 80) { // L: 569 - Login.currentLoginField = 0; // L: 570 - if (SecureRandomCallable.field555 == 84) { // L: 571 - Login.Login_username = Login.Login_username.trim(); // L: 572 - if (Login.Login_username.length() == 0) { // L: 573 - GrandExchangeOfferNameComparator.setLoginResponseString("", "Please enter your username/email address.", ""); // L: 574 - return; // L: 575 - } - - if (Login.Login_password.length() == 0) { // L: 577 - GrandExchangeOfferNameComparator.setLoginResponseString("", "Please enter your password.", ""); // L: 578 - return; // L: 579 - } - - GrandExchangeOfferNameComparator.setLoginResponseString("", "Connecting to server...", ""); // L: 581 - Message.method1314(false); // L: 582 - BuddyRankComparator.updateGameState(20); // L: 583 - return; // L: 584 - } - } - - if ((KeyHandler.KeyHandler_pressedKeys[82] || KeyHandler.KeyHandler_pressedKeys[87]) && SecureRandomCallable.field555 == 67) { // L: 587 - Clipboard var9 = Toolkit.getDefaultToolkit().getSystemClipboard(); // L: 588 - var10 = var9.getContents(ByteArrayPool.client); // L: 589 - var11 = 20 - Login.Login_password.length(); // L: 590 - break; - } - - if (Tiles.method1195(WorldMapManager.field335) && Skeleton.method3212(WorldMapManager.field335) && Login.Login_password.length() < 20) { // L: 607 - Login.Login_password = Login.Login_password + WorldMapManager.field335; // L: 608 - } - } - } while(var11 <= 0); // L: 591 - - try { - String var12 = (String)var10.getTransferData(DataFlavor.stringFlavor); // L: 593 - int var13 = Math.min(var11, var12.length()); // L: 594 - - for (int var14 = 0; var14 < var13; ++var14) { // L: 595 - if (!Tiles.method1195(var12.charAt(var14)) || !Skeleton.method3212(var12.charAt(var14))) { // L: 596 - Login.loginIndex = 3; // L: 597 - return; // L: 598 - } - } - - Login.Login_password = Login.Login_password + var12.substring(0, var13); // L: 601 - } catch (UnsupportedFlavorException var22) { // L: 603 - } catch (IOException var23) { // L: 604 - } - } - } else if (Login.loginIndex == 3) { // L: 614 - var25 = Login.loginBoxX + 180; // L: 615 - var7 = 276; // L: 616 - if (var3 == 1 && var24 >= var25 - 75 && var24 <= var25 + 75 && var30 >= var7 - 20 && var30 <= var7 + 20) { // L: 617 - HealthBar.Login_promptCredentials(false); // L: 618 - } - - var25 = Login.loginBoxX + 180; // L: 620 - var7 = 326; // L: 621 - if (var3 == 1 && var24 >= var25 - 75 && var24 <= var25 + 75 && var30 >= var7 - 20 && var30 <= var7 + 20) { // L: 622 - GrandExchangeOfferNameComparator.setLoginResponseString("Please enter your username.", "If you created your account after November", "2010, this will be the creation email address."); // L: 623 - Login.loginIndex = 5; // L: 624 - return; // L: 625 - } - } else { - int var19; - if (Login.loginIndex == 4) { // L: 628 - var25 = Login.loginBoxX + 180 - 80; // L: 629 - var7 = 321; // L: 630 - if (var3 == 1 && var24 >= var25 - 75 && var24 <= var25 + 75 && var30 >= var7 - 20 && var30 <= var7 + 20) { // L: 631 - EnumDefinition.otp.trim(); // L: 632 - if (EnumDefinition.otp.length() != 6) { // L: 633 - GrandExchangeOfferNameComparator.setLoginResponseString("", "Please enter a 6-digit PIN.", ""); // L: 634 - return; // L: 635 - } - - class169.field2035 = Integer.parseInt(EnumDefinition.otp); // L: 637 - EnumDefinition.otp = ""; // L: 638 - Message.method1314(true); // L: 639 - GrandExchangeOfferNameComparator.setLoginResponseString("", "Connecting to server...", ""); // L: 640 - BuddyRankComparator.updateGameState(20); // L: 641 - return; // L: 642 - } - - if (var3 == 1 && var24 >= Login.loginBoxX + 180 - 9 && var24 <= Login.loginBoxX + 180 + 130 && var30 >= 263 && var30 <= 296) { // L: 644 - Login.field1227 = !Login.field1227; // L: 645 - } - - if (var3 == 1 && var24 >= Login.loginBoxX + 180 - 34 && var24 <= Login.loginBoxX + 34 + 180 && var30 >= 351 && var30 <= 363) { // L: 647 - Skeleton.openURL(NPC.method2157("secure", true) + "m=totp-authenticator/disableTOTPRequest", true, false); // L: 648 - } - - var25 = Login.loginBoxX + 180 + 80; // L: 650 - if (var3 == 1 && var24 >= var25 - 75 && var24 <= var25 + 75 && var30 >= var7 - 20 && var30 <= var7 + 20) { // L: 651 - Login.loginIndex = 0; // L: 652 - Login.Login_username = ""; // L: 653 - Login.Login_password = ""; // L: 654 - class169.field2035 = 0; // L: 655 - EnumDefinition.otp = ""; // L: 656 - } - - while (Clock.isKeyDown()) { // L: 658 - boolean var8 = false; // L: 659 - - for (var19 = 0; var19 < "1234567890".length(); ++var19) { // L: 660 - if (WorldMapManager.field335 == "1234567890".charAt(var19)) { // L: 661 - var8 = true; // L: 662 - break; // L: 663 - } - } - - if (SecureRandomCallable.field555 == 13) { - Login.loginIndex = 0; // L: 667 - Login.Login_username = ""; // L: 668 - Login.Login_password = ""; // L: 669 - class169.field2035 = 0; // L: 670 - EnumDefinition.otp = ""; // L: 671 - } else { - if (SecureRandomCallable.field555 == 85 && EnumDefinition.otp.length() > 0) { // L: 674 - EnumDefinition.otp = EnumDefinition.otp.substring(0, EnumDefinition.otp.length() - 1); - } - - if (SecureRandomCallable.field555 == 84) { // L: 675 - EnumDefinition.otp.trim(); // L: 676 - if (EnumDefinition.otp.length() != 6) { // L: 677 - GrandExchangeOfferNameComparator.setLoginResponseString("", "Please enter a 6-digit PIN.", ""); // L: 678 - return; // L: 679 - } - - class169.field2035 = Integer.parseInt(EnumDefinition.otp); // L: 681 - EnumDefinition.otp = ""; // L: 682 - Message.method1314(true); // L: 683 - GrandExchangeOfferNameComparator.setLoginResponseString("", "Connecting to server...", ""); // L: 684 - BuddyRankComparator.updateGameState(20); // L: 685 - return; // L: 686 - } - - if (var8 && EnumDefinition.otp.length() < 6) { // L: 688 - EnumDefinition.otp = EnumDefinition.otp + WorldMapManager.field335; - } - } - } - } else if (Login.loginIndex == 5) { // L: 692 - var25 = Login.loginBoxX + 180 - 80; // L: 693 - var7 = 321; // L: 694 - if (var3 == 1 && var24 >= var25 - 75 && var24 <= var25 + 75 && var30 >= var7 - 20 && var30 <= var7 + 20) { // L: 695 - class2.method38(); // L: 696 - return; // L: 697 - } - - var25 = Login.loginBoxX + 180 + 80; // L: 699 - if (var3 == 1 && var24 >= var25 - 75 && var24 <= var25 + 75 && var30 >= var7 - 20 && var30 <= var7 + 20) { // L: 700 - HealthBar.Login_promptCredentials(true); // L: 701 - } - - var27 = 361; // L: 703 - if (ClientPreferences.field1089 != null) { // L: 704 - var19 = ClientPreferences.field1089.highX / 2; // L: 705 - if (var3 == 1 && var24 >= ClientPreferences.field1089.lowX - var19 && var24 <= var19 + ClientPreferences.field1089.lowX && var30 >= var27 - 15 && var30 < var27) { // L: 706 - Skeleton.openURL(NPC.method2157("secure", true) + "m=weblogin/g=oldscape/cant_log_in", true, false); // L: 707 - } - } - - while (Clock.isKeyDown()) { // L: 710 - boolean var31 = false; // L: 711 - - for (int var20 = 0; var20 < "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"£$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".length(); ++var20) { // L: 712 - if (WorldMapManager.field335 == "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"£$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".charAt(var20)) { // L: 713 - var31 = true; // L: 714 - break; // L: 715 - } - } - - if (SecureRandomCallable.field555 == 13) { // L: 718 - HealthBar.Login_promptCredentials(true); // L: 719 - } else { - if (SecureRandomCallable.field555 == 85 && Login.Login_username.length() > 0) { // L: 722 - Login.Login_username = Login.Login_username.substring(0, Login.Login_username.length() - 1); - } - - if (SecureRandomCallable.field555 == 84) { // L: 723 - class2.method38(); // L: 724 - return; // L: 725 - } - - if (var31 && Login.Login_username.length() < 320) { // L: 727 - Login.Login_username = Login.Login_username + WorldMapManager.field335; - } - } - } - } else if (Login.loginIndex != 6) { // L: 731 - if (Login.loginIndex == 7) { // L: 742 - var25 = Login.loginBoxX + 180 - 80; // L: 743 - var7 = 321; // L: 744 - if (var3 == 1 && var24 >= var25 - 75 && var24 <= var25 + 75 && var30 >= var7 - 20 && var30 <= var7 + 20) { // L: 745 - Skeleton.openURL(NPC.method2157("secure", true) + "m=dob/set_dob.ws", true, false); // L: 746 - GrandExchangeOfferNameComparator.setLoginResponseString("", "Page has opened in a new window.", "(Please check your popup blocker.)"); // L: 747 - Login.loginIndex = 6; // L: 748 - return; // L: 749 - } - - var25 = Login.loginBoxX + 180 + 80; // L: 751 - if (var3 == 1 && var24 >= var25 - 75 && var24 <= var25 + 75 && var30 >= var7 - 20 && var30 <= var7 + 20) { // L: 752 - HealthBar.Login_promptCredentials(true); // L: 753 - } - } else if (Login.loginIndex == 8) { // L: 756 - var25 = Login.loginBoxX + 180 - 80; // L: 757 - var7 = 321; // L: 758 - if (var3 == 1 && var24 >= var25 - 75 && var24 <= var25 + 75 && var30 >= var7 - 20 && var30 <= var7 + 20) { // L: 759 - Skeleton.openURL("https://www.jagex.com/terms/privacy", true, false); // L: 760 - GrandExchangeOfferNameComparator.setLoginResponseString("", "Page has opened in a new window.", "(Please check your popup blocker.)"); // L: 761 - Login.loginIndex = 6; // L: 762 - return; // L: 763 - } - - var25 = Login.loginBoxX + 180 + 80; // L: 765 - if (var3 == 1 && var24 >= var25 - 75 && var24 <= var25 + 75 && var30 >= var7 - 20 && var30 <= var7 + 20) { // L: 766 - HealthBar.Login_promptCredentials(true); // L: 767 - } - } else if (Login.loginIndex == 12) { // L: 770 - String var21 = ""; // L: 771 - switch(Login.field1216) { // L: 772 - case 0: - var21 = "https://support.runescape.com/hc/en-gb/articles/115002238729-Account-Bans"; // L: 780 - break; - case 1: - var21 = "https://support.runescape.com/hc/en-gb/articles/206103939-My-account-is-locked"; // L: 777 - break; // L: 778 - default: - HealthBar.Login_promptCredentials(false); // L: 774 - } - - var28 = Login.loginBoxX + 180; // L: 783 - var27 = 276; // L: 784 - if (var3 == 1 && var24 >= var28 - 75 && var24 <= var28 + 75 && var30 >= var27 - 20 && var30 <= var27 + 20) { // L: 785 - Skeleton.openURL(var21, true, false); // L: 786 - GrandExchangeOfferNameComparator.setLoginResponseString("", "Page has opened in a new window.", "(Please check your popup blocker.)"); // L: 787 - Login.loginIndex = 6; // L: 788 - return; // L: 789 - } - - var28 = Login.loginBoxX + 180; // L: 791 - var27 = 326; // L: 792 - if (var3 == 1 && var24 >= var28 - 75 && var24 <= var28 + 75 && var30 >= var27 - 20 && var30 <= var27 + 20) { // L: 793 - HealthBar.Login_promptCredentials(false); // L: 794 - } - } else if (Login.loginIndex == 24) { // L: 797 - var25 = Login.loginBoxX + 180; // L: 798 - var7 = 301; // L: 799 - if (var3 == 1 && var24 >= var25 - 75 && var24 <= var25 + 75 && var30 >= var7 - 20 && var30 <= var7 + 20) { // L: 800 - HealthBar.Login_promptCredentials(false); // L: 801 - } - } - } else { - while (true) { - do { - if (!Clock.isKeyDown()) { // L: 732 - var26 = 321; // L: 737 - if (var3 == 1 && var30 >= var26 - 20 && var30 <= var26 + 20) { // L: 738 - HealthBar.Login_promptCredentials(true); // L: 739 - } - - return; - } - } while(SecureRandomCallable.field555 != 84 && SecureRandomCallable.field555 != 13); // L: 733 - - HealthBar.Login_promptCredentials(true); // L: 734 - } - } - } - } - } - - } - } - } - } // L: 312 - - @ObfuscatedName("o") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-1888033666" - ) - static final void method949(String var0) { - PacketBufferNode var1 = class4.getPacketBufferNode(ClientPacket.field2334, Client.packetWriter.isaacCipher); // L: 141 - var1.packetBuffer.writeByte(SpriteMask.stringCp1252NullTerminatedByteSize(var0)); // L: 142 - var1.packetBuffer.writeStringCp1252NullTerminated(var0); // L: 143 - Client.packetWriter.addNode(var1); // L: 144 - } // L: 145 - - @ObfuscatedName("ep") - @ObfuscatedSignature( - descriptor = "(I)Lmi;", - garbageValue = "676167972" - ) - @Export("getWorldMap") - static WorldMap getWorldMap() { - return KeyHandler.worldMap; // L: 666 + public final void paint(Graphics var1) { + this.component.paint(var1); } - @ObfuscatedName("gx") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(IIIIII)V", - garbageValue = "-123520476" + descriptor = "(Lib;Lib;Lib;I)V", + garbageValue = "1765160595" ) - @Export("drawObject") - static final void drawObject(int var0, int var1, int var2, int var3, int var4) { - long var5 = ModeWhere.scene.getBoundaryObjectTag(var0, var1, var2); // L: 5717 - int var7; - int var8; - int var9; - int var10; + public static void method912(AbstractArchive var0, AbstractArchive var1, AbstractArchive var2) { + HitSplatDefinition.HitSplatDefinition_archive = var0; + HitSplatDefinition.field3354 = var1; + HitSplatDefinition.HitSplatDefinition_fontsArchive = var2; + } + + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "1227984661" + ) + @Export("Messages_getHistorySize") + static int Messages_getHistorySize(int var0) { + ChatChannel var1 = (ChatChannel)Messages.Messages_channels.get(var0); + return var1 == null ? 0 : var1.size(); + } + + @ObfuscatedName("fh") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "17" + ) + @Export("load") + static void load() { int var12; - int var13; - if (var5 != 0L) { // L: 5718 - var7 = ModeWhere.scene.getObjectFlags(var0, var1, var2, var5); // L: 5719 - var8 = var7 >> 6 & 3; // L: 5720 - var9 = var7 & 31; // L: 5721 - var10 = var3; // L: 5722 - if (DevicePcmPlayerProvider.method941(var5)) { // L: 5723 - var10 = var4; + if (Client.titleLoadingStage == 0) { + ArchiveLoader.scene = new Scene(4, 104, 104, Tiles.Tiles_heights); + + for (var12 = 0; var12 < 4; ++var12) { + Client.collisionMaps[var12] = new CollisionMap(104, 104); } - int[] var11 = InterfaceParent.sceneMinimapSprite.pixels; // L: 5724 - var12 = var1 * 4 + (103 - var2) * 2048 + 24624; // L: 5725 - var13 = ObjectSound.Entity_unpackID(var5); // L: 5726 - ObjectDefinition var14 = ScriptEvent.getObjectDefinition(var13); // L: 5727 - if (var14.mapSceneId != -1) { // L: 5728 - IndexedSprite var15 = AbstractWorldMapIcon.mapSceneSprites[var14.mapSceneId]; // L: 5729 - if (var15 != null) { // L: 5730 - int var16 = (var14.sizeX * 4 - var15.subWidth) / 2; // L: 5731 - int var17 = (var14.sizeY * 4 - var15.subHeight) / 2; // L: 5732 - var15.drawAt(var1 * 4 + var16 + 48, (104 - var2 - var14.sizeY) * 4 + var17 + 48); // L: 5733 + class25.sceneMinimapSprite = new Sprite(512, 512); + Login.Login_loadingText = "Starting game engine..."; + Login.Login_loadingPercent = 5; + Client.titleLoadingStage = 20; + } else if (Client.titleLoadingStage == 20) { + Login.Login_loadingText = "Prepared visibility map"; + Login.Login_loadingPercent = 10; + Client.titleLoadingStage = 30; + } else if (Client.titleLoadingStage == 30) { + TilePaint.archive0 = WorldMapCacheName.newArchive(0, false, true, true); + WorldMapSprite.archive1 = WorldMapCacheName.newArchive(1, false, true, true); + DynamicObject.archive2 = WorldMapCacheName.newArchive(2, true, false, true); + class330.archive3 = WorldMapCacheName.newArchive(3, false, true, true); + class227.archive4 = WorldMapCacheName.newArchive(4, false, true, true); + GameShell.archive5 = WorldMapCacheName.newArchive(5, true, true, true); + class217.archive6 = WorldMapCacheName.newArchive(6, true, true, true); + BuddyRankComparator.archive7 = WorldMapCacheName.newArchive(7, false, true, true); + Messages.archive8 = WorldMapCacheName.newArchive(8, false, true, true); + GrandExchangeOfferUnitPriceComparator.archive9 = WorldMapCacheName.newArchive(9, false, true, true); + class92.archive10 = WorldMapCacheName.newArchive(10, false, true, true); + ItemContainer.archive11 = WorldMapCacheName.newArchive(11, false, true, true); + PacketBufferNode.archive12 = WorldMapCacheName.newArchive(12, false, true, true); + GrandExchangeOfferUnitPriceComparator.archive13 = WorldMapCacheName.newArchive(13, true, false, true); + FontName.archive14 = WorldMapCacheName.newArchive(14, false, true, true); + Client.archive15 = WorldMapCacheName.newArchive(15, false, true, true); + class169.archive17 = WorldMapCacheName.newArchive(17, true, true, true); + class41.archive18 = WorldMapCacheName.newArchive(18, false, true, true); + class195.archive19 = WorldMapCacheName.newArchive(19, false, true, true); + NetFileRequest.archive20 = WorldMapCacheName.newArchive(20, false, true, true); + Login.Login_loadingText = "Connecting to update server"; + Login.Login_loadingPercent = 20; + Client.titleLoadingStage = 40; + } else if (Client.titleLoadingStage == 40) { + byte var23 = 0; + var12 = var23 + TilePaint.archive0.percentage() * 4 / 100; + var12 += WorldMapSprite.archive1.percentage() * 4 / 100; + var12 += DynamicObject.archive2.percentage() * 2 / 100; + var12 += class330.archive3.percentage() * 2 / 100; + var12 += class227.archive4.percentage() * 6 / 100; + var12 += GameShell.archive5.percentage() * 4 / 100; + var12 += class217.archive6.percentage() * 2 / 100; + var12 += BuddyRankComparator.archive7.percentage() * 56 / 100; + var12 += Messages.archive8.percentage() * 2 / 100; + var12 += GrandExchangeOfferUnitPriceComparator.archive9.percentage() * 2 / 100; + var12 += class92.archive10.percentage() * 2 / 100; + var12 += ItemContainer.archive11.percentage() * 2 / 100; + var12 += PacketBufferNode.archive12.percentage() * 2 / 100; + var12 += GrandExchangeOfferUnitPriceComparator.archive13.percentage() * 2 / 100; + var12 += FontName.archive14.percentage() * 2 / 100; + var12 += Client.archive15.percentage() * 2 / 100; + var12 += class195.archive19.percentage() / 100; + var12 += class41.archive18.percentage() / 100; + var12 += NetFileRequest.archive20.percentage() / 100; + var12 += class169.archive17.method4304() && class169.archive17.isFullyLoaded() ? 1 : 0; + if (var12 != 100) { + if (var12 != 0) { + Login.Login_loadingText = "Checking for updates - " + var12 + "%"; + } + + Login.Login_loadingPercent = 30; + } else { + UserComparator4.method3469(TilePaint.archive0, "Animations"); + UserComparator4.method3469(WorldMapSprite.archive1, "Skeletons"); + UserComparator4.method3469(class227.archive4, "Sound FX"); + UserComparator4.method3469(GameShell.archive5, "Maps"); + UserComparator4.method3469(class217.archive6, "Music Tracks"); + UserComparator4.method3469(BuddyRankComparator.archive7, "Models"); + UserComparator4.method3469(Messages.archive8, "Sprites"); + UserComparator4.method3469(ItemContainer.archive11, "Music Jingles"); + UserComparator4.method3469(FontName.archive14, "Music Samples"); + UserComparator4.method3469(Client.archive15, "Music Patches"); + UserComparator4.method3469(class195.archive19, "World Map"); + UserComparator4.method3469(class41.archive18, "World Map Geography"); + UserComparator4.method3469(NetFileRequest.archive20, "World Map Ground"); + WorldMapManager.spriteIds = new GraphicsDefaults(); + WorldMapManager.spriteIds.decode(class169.archive17); + Login.Login_loadingText = "Loaded update list"; + Login.Login_loadingPercent = 30; + Client.titleLoadingStage = 45; + } + } else { + Archive var2; + Archive var16; + Archive var21; + if (Client.titleLoadingStage == 45) { + WorldMapIcon_0.method270(22050, !Client.isLowDetail, 2); + MidiPcmStream var20 = new MidiPcmStream(); + var20.method3759(9, 128); + AbstractWorldMapData.pcmPlayer0 = UserComparator6.method3526(GameShell.taskHandler, 0, 22050); + AbstractWorldMapData.pcmPlayer0.setStream(var20); + var21 = Client.archive15; + var2 = FontName.archive14; + var16 = class227.archive4; + class206.musicPatchesArchive = var21; + class206.musicSamplesArchive = var2; + class206.soundEffectsArchive = var16; + class206.midiPcmStream = var20; + FriendLoginUpdate.pcmPlayer1 = UserComparator6.method3526(GameShell.taskHandler, 1, 2048); + WorldMapManager.pcmStreamMixer = new PcmStreamMixer(); + FriendLoginUpdate.pcmPlayer1.setStream(WorldMapManager.pcmStreamMixer); + TileItemPile.decimator = new Decimator(22050, PcmPlayer.field1443); + Login.Login_loadingText = "Prepared sound engine"; + Login.Login_loadingPercent = 35; + Client.titleLoadingStage = 50; + WorldMapLabel.WorldMapElement_fonts = new Fonts(Messages.archive8, GrandExchangeOfferUnitPriceComparator.archive13); + } else if (Client.titleLoadingStage == 50) { + var12 = FontName.method5353().length; + Client.fontsMap = WorldMapLabel.WorldMapElement_fonts.createMap(FontName.method5353()); + if (Client.fontsMap.size() < var12) { + Login.Login_loadingText = "Loading fonts - " + Client.fontsMap.size() * 100 / var12 + "%"; + Login.Login_loadingPercent = 40; + } else { + class297.fontPlain11 = (Font)Client.fontsMap.get(FontName.FontName_plain11); + WorldMapLabelSize.fontPlain12 = (Font)Client.fontsMap.get(FontName.FontName_plain12); + GrandExchangeOfferTotalQuantityComparator.fontBold12 = (Font)Client.fontsMap.get(FontName.FontName_bold12); + class58.platformInfo = Client.platformInfoProvider.get(); + Login.Login_loadingText = "Loaded fonts"; + Login.Login_loadingPercent = 40; + Client.titleLoadingStage = 60; } } else { - if (var9 == 0 || var9 == 2) { // L: 5737 - if (var8 == 0) { // L: 5738 - var11[var12] = var10; // L: 5739 - var11[var12 + 512] = var10; // L: 5740 - var11[var12 + 1024] = var10; // L: 5741 - var11[var12 + 1536] = var10; // L: 5742 - } else if (var8 == 1) { // L: 5744 - var11[var12] = var10; // L: 5745 - var11[var12 + 1] = var10; // L: 5746 - var11[var12 + 2] = var10; // L: 5747 - var11[var12 + 3] = var10; // L: 5748 - } else if (var8 == 2) { // L: 5750 - var11[var12 + 3] = var10; // L: 5751 - var11[var12 + 512 + 3] = var10; // L: 5752 - var11[var12 + 1024 + 3] = var10; // L: 5753 - var11[var12 + 1536 + 3] = var10; // L: 5754 - } else if (var8 == 3) { // L: 5756 - var11[var12 + 1536] = var10; // L: 5757 - var11[var12 + 1536 + 1] = var10; // L: 5758 - var11[var12 + 1536 + 2] = var10; // L: 5759 - var11[var12 + 1536 + 3] = var10; // L: 5760 + int var3; + int var15; + if (Client.titleLoadingStage == 60) { + var21 = class92.archive10; + var2 = Messages.archive8; + var3 = 0; + if (var21.tryLoadFileByNames("title.jpg", "")) { + ++var3; } - } - if (var9 == 3) { // L: 5763 - if (var8 == 0) { // L: 5764 - var11[var12] = var10; - } else if (var8 == 1) { // L: 5765 - var11[var12 + 3] = var10; - } else if (var8 == 2) { // L: 5766 - var11[var12 + 1536 + 3] = var10; - } else if (var8 == 3) { // L: 5767 - var11[var12 + 1536] = var10; + if (var2.tryLoadFileByNames("logo", "")) { + ++var3; } - } - if (var9 == 2) { // L: 5769 - if (var8 == 3) { // L: 5770 - var11[var12] = var10; // L: 5771 - var11[var12 + 512] = var10; // L: 5772 - var11[var12 + 1024] = var10; // L: 5773 - var11[var12 + 1536] = var10; // L: 5774 - } else if (var8 == 0) { // L: 5776 - var11[var12] = var10; // L: 5777 - var11[var12 + 1] = var10; // L: 5778 - var11[var12 + 2] = var10; // L: 5779 - var11[var12 + 3] = var10; // L: 5780 - } else if (var8 == 1) { // L: 5782 - var11[var12 + 3] = var10; // L: 5783 - var11[var12 + 512 + 3] = var10; // L: 5784 - var11[var12 + 1024 + 3] = var10; // L: 5785 - var11[var12 + 1536 + 3] = var10; // L: 5786 - } else if (var8 == 2) { // L: 5788 - var11[var12 + 1536] = var10; // L: 5789 - var11[var12 + 1536 + 1] = var10; // L: 5790 - var11[var12 + 1536 + 2] = var10; // L: 5791 - var11[var12 + 1536 + 3] = var10; // L: 5792 + if (var2.tryLoadFileByNames("logo_deadman_mode", "")) { + ++var3; } + + if (var2.tryLoadFileByNames("logo_seasonal_mode", "")) { + ++var3; + } + + if (var2.tryLoadFileByNames("titlebox", "")) { + ++var3; + } + + if (var2.tryLoadFileByNames("titlebutton", "")) { + ++var3; + } + + if (var2.tryLoadFileByNames("runes", "")) { + ++var3; + } + + if (var2.tryLoadFileByNames("title_mute", "")) { + ++var3; + } + + if (var2.tryLoadFileByNames("options_radio_buttons,0", "")) { + ++var3; + } + + if (var2.tryLoadFileByNames("options_radio_buttons,2", "")) { + ++var3; + } + + if (var2.tryLoadFileByNames("options_radio_buttons,4", "")) { + ++var3; + } + + if (var2.tryLoadFileByNames("options_radio_buttons,6", "")) { + ++var3; + } + + var2.tryLoadFileByNames("sl_back", ""); + var2.tryLoadFileByNames("sl_flags", ""); + var2.tryLoadFileByNames("sl_arrows", ""); + var2.tryLoadFileByNames("sl_stars", ""); + var2.tryLoadFileByNames("sl_button", ""); + var15 = DynamicObject.method2304(); + if (var3 < var15) { + Login.Login_loadingText = "Loading title screen - " + var3 * 100 / var15 + "%"; + Login.Login_loadingPercent = 50; + } else { + Login.Login_loadingText = "Loaded title screen"; + Login.Login_loadingPercent = 50; + WorldMapCacheName.updateGameState(5); + Client.titleLoadingStage = 70; + } + } else if (Client.titleLoadingStage == 70) { + if (!DynamicObject.archive2.isFullyLoaded()) { + Login.Login_loadingText = "Loading config - " + DynamicObject.archive2.loadPercent() + "%"; + Login.Login_loadingPercent = 60; + } else { + MouseHandler.method1157(DynamicObject.archive2); + Archive var19 = DynamicObject.archive2; + FloorUnderlayDefinition.FloorUnderlayDefinition_archive = var19; + var21 = DynamicObject.archive2; + var2 = BuddyRankComparator.archive7; + KitDefinition.KitDefinition_archive = var21; + class227.KitDefinition_modelsArchive = var2; + KitDefinition.KitDefinition_fileCount = KitDefinition.KitDefinition_archive.getGroupFileCount(3); + var16 = DynamicObject.archive2; + Archive var4 = BuddyRankComparator.archive7; + boolean var17 = Client.isLowDetail; + ObjectDefinition.ObjectDefinition_archive = var16; + ObjectDefinition.ObjectDefinition_modelsArchive = var4; + ObjectDefinition.ObjectDefinition_isLowDetail = var17; + World.method1849(DynamicObject.archive2, BuddyRankComparator.archive7); + ParamDefinition.method4526(DynamicObject.archive2); + Actor.method1821(DynamicObject.archive2, BuddyRankComparator.archive7, Client.isMembersWorld, class297.fontPlain11); + PcmPlayer.method2538(DynamicObject.archive2, TilePaint.archive0, WorldMapSprite.archive1); + ModelData0.method3331(DynamicObject.archive2, BuddyRankComparator.archive7); + class200.method3712(DynamicObject.archive2); + Archive var18 = DynamicObject.archive2; + class1.VarpDefinition_archive = var18; + VarpDefinition.VarpDefinition_fileCount = class1.VarpDefinition_archive.getGroupFileCount(16); + Archive var22 = class330.archive3; + Archive var8 = BuddyRankComparator.archive7; + Archive var9 = Messages.archive8; + Archive var10 = GrandExchangeOfferUnitPriceComparator.archive13; + class58.Widget_archive = var22; + GrandExchangeOfferWorldComparator.Widget_modelsArchive = var8; + class1.Widget_spritesArchive = var9; + Bounds.Widget_fontsArchive = var10; + class9.Widget_interfaceComponents = new Widget[class58.Widget_archive.getGroupCount()][]; + class195.Widget_loadedInterfaces = new boolean[class58.Widget_archive.getGroupCount()]; + Archive var11 = DynamicObject.archive2; + InvDefinition.InvDefinition_archive = var11; + StructDefinition.method4545(DynamicObject.archive2); + ModelData0.method3330(DynamicObject.archive2); + class13.method129(DynamicObject.archive2); + Varcs.varcs = new Varcs(); + method912(DynamicObject.archive2, Messages.archive8, GrandExchangeOfferUnitPriceComparator.archive13); + ServerPacket.method3669(DynamicObject.archive2, Messages.archive8); + class219.method4010(DynamicObject.archive2, Messages.archive8); + Login.Login_loadingText = "Loaded config"; + Login.Login_loadingPercent = 60; + Client.titleLoadingStage = 80; + } + } else if (Client.titleLoadingStage == 80) { + var12 = 0; + if (UrlRequester.compass == null) { + UrlRequester.compass = Skills.SpriteBuffer_getSprite(Messages.archive8, WorldMapManager.spriteIds.compass, 0); + } else { + ++var12; + } + + if (ViewportMouse.redHintArrowSprite == null) { + ViewportMouse.redHintArrowSprite = Skills.SpriteBuffer_getSprite(Messages.archive8, WorldMapManager.spriteIds.field3845, 0); + } else { + ++var12; + } + + IndexedSprite[] var1; + IndexedSprite[] var5; + int var6; + IndexedSprite var7; + if (WorldMapRegion.mapSceneSprites == null) { + var2 = Messages.archive8; + var3 = WorldMapManager.spriteIds.mapScenes; + if (!class304.method5363(var2, var3, 0)) { + var1 = null; + } else { + var5 = new IndexedSprite[class336.SpriteBuffer_spriteCount]; + + for (var6 = 0; var6 < class336.SpriteBuffer_spriteCount; ++var6) { + var7 = var5[var6] = new IndexedSprite(); + var7.width = DirectByteArrayCopier.SpriteBuffer_spriteWidth; + var7.height = class336.SpriteBuffer_spriteHeight; + var7.xOffset = class336.SpriteBuffer_xOffsets[var6]; + var7.yOffset = class336.SpriteBuffer_yOffsets[var6]; + var7.subWidth = class336.SpriteBuffer_spriteWidths[var6]; + var7.subHeight = class336.SpriteBuffer_spriteHeights[var6]; + var7.palette = class336.SpriteBuffer_spritePalette; + var7.pixels = GrandExchangeEvents.SpriteBuffer_pixels[var6]; + } + + class336.SpriteBuffer_xOffsets = null; + class336.SpriteBuffer_yOffsets = null; + class336.SpriteBuffer_spriteWidths = null; + class336.SpriteBuffer_spriteHeights = null; + class336.SpriteBuffer_spritePalette = null; + GrandExchangeEvents.SpriteBuffer_pixels = null; + var1 = var5; + } + + WorldMapRegion.mapSceneSprites = var1; + } else { + ++var12; + } + + if (Message.headIconPkSprites == null) { + Message.headIconPkSprites = ClientPreferences.method1918(Messages.archive8, WorldMapManager.spriteIds.headIconsPk, 0); + } else { + ++var12; + } + + if (Client.headIconPrayerSprites == null) { + Client.headIconPrayerSprites = ClientPreferences.method1918(Messages.archive8, WorldMapManager.spriteIds.field3844, 0); + } else { + ++var12; + } + + if (AbstractWorldMapIcon.headIconHintSprites == null) { + AbstractWorldMapIcon.headIconHintSprites = ClientPreferences.method1918(Messages.archive8, WorldMapManager.spriteIds.field3843, 0); + } else { + ++var12; + } + + if (GrandExchangeOfferUnitPriceComparator.mapMarkerSprites == null) { + GrandExchangeOfferUnitPriceComparator.mapMarkerSprites = ClientPreferences.method1918(Messages.archive8, WorldMapManager.spriteIds.field3846, 0); + } else { + ++var12; + } + + if (GrandExchangeOfferAgeComparator.crossSprites == null) { + GrandExchangeOfferAgeComparator.crossSprites = ClientPreferences.method1918(Messages.archive8, WorldMapManager.spriteIds.field3847, 0); + } else { + ++var12; + } + + if (Actor.mapDotSprites == null) { + Actor.mapDotSprites = ClientPreferences.method1918(Messages.archive8, WorldMapManager.spriteIds.field3848, 0); + } else { + ++var12; + } + + if (InterfaceParent.scrollBarSprites == null) { + var2 = Messages.archive8; + var3 = WorldMapManager.spriteIds.field3849; + if (!class304.method5363(var2, var3, 0)) { + var1 = null; + } else { + var5 = new IndexedSprite[class336.SpriteBuffer_spriteCount]; + + for (var6 = 0; var6 < class336.SpriteBuffer_spriteCount; ++var6) { + var7 = var5[var6] = new IndexedSprite(); + var7.width = DirectByteArrayCopier.SpriteBuffer_spriteWidth; + var7.height = class336.SpriteBuffer_spriteHeight; + var7.xOffset = class336.SpriteBuffer_xOffsets[var6]; + var7.yOffset = class336.SpriteBuffer_yOffsets[var6]; + var7.subWidth = class336.SpriteBuffer_spriteWidths[var6]; + var7.subHeight = class336.SpriteBuffer_spriteHeights[var6]; + var7.palette = class336.SpriteBuffer_spritePalette; + var7.pixels = GrandExchangeEvents.SpriteBuffer_pixels[var6]; + } + + class336.SpriteBuffer_xOffsets = null; + class336.SpriteBuffer_yOffsets = null; + class336.SpriteBuffer_spriteWidths = null; + class336.SpriteBuffer_spriteHeights = null; + class336.SpriteBuffer_spritePalette = null; + GrandExchangeEvents.SpriteBuffer_pixels = null; + var1 = var5; + } + + InterfaceParent.scrollBarSprites = var1; + } else { + ++var12; + } + + if (class39.modIconSprites == null) { + var2 = Messages.archive8; + var3 = WorldMapManager.spriteIds.field3850; + if (!class304.method5363(var2, var3, 0)) { + var1 = null; + } else { + var5 = new IndexedSprite[class336.SpriteBuffer_spriteCount]; + + for (var6 = 0; var6 < class336.SpriteBuffer_spriteCount; ++var6) { + var7 = var5[var6] = new IndexedSprite(); + var7.width = DirectByteArrayCopier.SpriteBuffer_spriteWidth; + var7.height = class336.SpriteBuffer_spriteHeight; + var7.xOffset = class336.SpriteBuffer_xOffsets[var6]; + var7.yOffset = class336.SpriteBuffer_yOffsets[var6]; + var7.subWidth = class336.SpriteBuffer_spriteWidths[var6]; + var7.subHeight = class336.SpriteBuffer_spriteHeights[var6]; + var7.palette = class336.SpriteBuffer_spritePalette; + var7.pixels = GrandExchangeEvents.SpriteBuffer_pixels[var6]; + } + + class336.SpriteBuffer_xOffsets = null; + class336.SpriteBuffer_yOffsets = null; + class336.SpriteBuffer_spriteWidths = null; + class336.SpriteBuffer_spriteHeights = null; + class336.SpriteBuffer_spritePalette = null; + GrandExchangeEvents.SpriteBuffer_pixels = null; + var1 = var5; + } + + class39.modIconSprites = var1; + } else { + ++var12; + } + + if (var12 < 11) { + Login.Login_loadingText = "Loading sprites - " + var12 * 100 / 12 + "%"; + Login.Login_loadingPercent = 70; + } else { + AbstractFont.AbstractFont_modIconSprites = class39.modIconSprites; + ViewportMouse.redHintArrowSprite.normalize(); + int var13 = (int)(Math.random() * 21.0D) - 10; + int var14 = (int)(Math.random() * 21.0D) - 10; + var3 = (int)(Math.random() * 21.0D) - 10; + var15 = (int)(Math.random() * 41.0D) - 20; + WorldMapRegion.mapSceneSprites[0].shiftColors(var13 + var15, var14 + var15, var15 + var3); + Login.Login_loadingText = "Loaded sprites"; + Login.Login_loadingPercent = 70; + Client.titleLoadingStage = 90; + } + } else if (Client.titleLoadingStage == 90) { + if (!GrandExchangeOfferUnitPriceComparator.archive9.isFullyLoaded()) { + Login.Login_loadingText = "Loading textures - " + "0%"; + Login.Login_loadingPercent = 90; + } else { + class307.textureProvider = new TextureProvider(GrandExchangeOfferUnitPriceComparator.archive9, Messages.archive8, 20, Timer.clientPreferences.field1057, Client.isLowDetail ? 64 : 128); + Rasterizer3D.Rasterizer3D_setTextureLoader(class307.textureProvider); + Rasterizer3D.Rasterizer3D_setBrightness(Timer.clientPreferences.field1057); + Client.titleLoadingStage = 100; + } + } else if (Client.titleLoadingStage == 100) { + var12 = class307.textureProvider.getLoadedPercentage(); + if (var12 < 100) { + Login.Login_loadingText = "Loading textures - " + var12 + "%"; + Login.Login_loadingPercent = 90; + } else { + Login.Login_loadingText = "Loaded textures"; + Login.Login_loadingPercent = 90; + Client.titleLoadingStage = 110; + } + } else if (Client.titleLoadingStage == 110) { + SoundCache.mouseRecorder = new MouseRecorder(); + GameShell.taskHandler.newThreadTask(SoundCache.mouseRecorder, 10); + Login.Login_loadingText = "Loaded input handler"; + Login.Login_loadingPercent = 92; + Client.titleLoadingStage = 120; + } else if (Client.titleLoadingStage == 120) { + if (!class92.archive10.tryLoadFileByNames("huffman", "")) { + Login.Login_loadingText = "Loading wordpack - " + 0 + "%"; + Login.Login_loadingPercent = 94; + } else { + Huffman var0 = new Huffman(class92.archive10.takeFileByNames("huffman", "")); + RouteStrategy.method3643(var0); + Login.Login_loadingText = "Loaded wordpack"; + Login.Login_loadingPercent = 94; + Client.titleLoadingStage = 130; + } + } else if (Client.titleLoadingStage == 130) { + if (!class330.archive3.isFullyLoaded()) { + Login.Login_loadingText = "Loading interfaces - " + class330.archive3.loadPercent() * 4 / 5 + "%"; + Login.Login_loadingPercent = 96; + } else if (!PacketBufferNode.archive12.isFullyLoaded()) { + Login.Login_loadingText = "Loading interfaces - " + (80 + PacketBufferNode.archive12.loadPercent() / 6) + "%"; + Login.Login_loadingPercent = 96; + } else if (!GrandExchangeOfferUnitPriceComparator.archive13.isFullyLoaded()) { + Login.Login_loadingText = "Loading interfaces - " + (96 + GrandExchangeOfferUnitPriceComparator.archive13.loadPercent() / 50) + "%"; + Login.Login_loadingPercent = 96; + } else { + Login.Login_loadingText = "Loaded interfaces"; + Login.Login_loadingPercent = 98; + Client.titleLoadingStage = 140; + } + } else if (Client.titleLoadingStage == 140) { + Login.Login_loadingPercent = 100; + if (!class195.archive19.tryLoadGroupByName(WorldMapCacheName.field328.name)) { + Login.Login_loadingText = "Loading world map - " + class195.archive19.groupLoadPercentByName(WorldMapCacheName.field328.name) / 10 + "%"; + } else { + if (WorldMapRectangle.worldMap == null) { + WorldMapRectangle.worldMap = new WorldMap(); + WorldMapRectangle.worldMap.init(class195.archive19, class41.archive18, NetFileRequest.archive20, GrandExchangeOfferTotalQuantityComparator.fontBold12, Client.fontsMap, WorldMapRegion.mapSceneSprites); + } + + Login.Login_loadingText = "Loaded world map"; + Client.titleLoadingStage = 150; + } + } else if (Client.titleLoadingStage == 150) { + WorldMapCacheName.updateGameState(10); } } } + } - var5 = ModeWhere.scene.getGameObjectTag(var0, var1, var2); // L: 5797 - if (var5 != 0L) { // L: 5798 - var7 = ModeWhere.scene.getObjectFlags(var0, var1, var2, var5); // L: 5799 - var8 = var7 >> 6 & 3; // L: 5800 - var9 = var7 & 31; // L: 5801 - var10 = ObjectSound.Entity_unpackID(var5); // L: 5802 - ObjectDefinition var24 = ScriptEvent.getObjectDefinition(var10); // L: 5803 - int var19; - if (var24.mapSceneId != -1) { // L: 5804 - IndexedSprite var20 = AbstractWorldMapIcon.mapSceneSprites[var24.mapSceneId]; // L: 5805 - if (var20 != null) { // L: 5806 - var13 = (var24.sizeX * 4 - var20.subWidth) / 2; // L: 5807 - var19 = (var24.sizeY * 4 - var20.subHeight) / 2; // L: 5808 - var20.drawAt(var13 + var1 * 4 + 48, var19 + (104 - var2 - var24.sizeY) * 4 + 48); // L: 5809 - } - } else if (var9 == 9) { // L: 5812 - var12 = 15658734; // L: 5813 - if (DevicePcmPlayerProvider.method941(var5)) { // L: 5814 - var12 = 15597568; - } - - int[] var18 = InterfaceParent.sceneMinimapSprite.pixels; // L: 5815 - var19 = var1 * 4 + (103 - var2) * 2048 + 24624; // L: 5816 - if (var8 != 0 && var8 != 2) { // L: 5817 - var18[var19] = var12; // L: 5824 - var18[var19 + 1 + 512] = var12; // L: 5825 - var18[var19 + 1024 + 2] = var12; // L: 5826 - var18[var19 + 1536 + 3] = var12; // L: 5827 - } else { - var18[var19 + 1536] = var12; // L: 5818 - var18[var19 + 1 + 1024] = var12; // L: 5819 - var18[var19 + 512 + 2] = var12; // L: 5820 - var18[var19 + 3] = var12; // L: 5821 - } + @ObfuscatedName("kf") + @ObfuscatedSignature( + descriptor = "(IB)Z", + garbageValue = "27" + ) + static boolean method911(int var0) { + for (int var1 = 0; var1 < Client.field870; ++var1) { + if (Client.field693[var1] == var0) { + return true; } } - var5 = ModeWhere.scene.getFloorDecorationTag(var0, var1, var2); // L: 5831 - if (var5 != 0L) { // L: 5832 - var7 = ObjectSound.Entity_unpackID(var5); // L: 5833 - ObjectDefinition var21 = ScriptEvent.getObjectDefinition(var7); // L: 5834 - if (var21.mapSceneId != -1) { // L: 5835 - IndexedSprite var22 = AbstractWorldMapIcon.mapSceneSprites[var21.mapSceneId]; // L: 5836 - if (var22 != null) { // L: 5837 - var10 = (var21.sizeX * 4 - var22.subWidth) / 2; // L: 5838 - int var23 = (var21.sizeY * 4 - var22.subHeight) / 2; // L: 5839 - var22.drawAt(var1 * 4 + var10 + 48, var23 + (104 - var2 - var21.sizeY) * 4 + 48); // L: 5840 - } - } - } - - } // L: 5844 + return false; + } } diff --git a/runescape-client/src/main/java/ChatChannel.java b/runescape-client/src/main/java/ChatChannel.java index a87a53711c..e467be3601 100644 --- a/runescape-client/src/main/java/ChatChannel.java +++ b/runescape-client/src/main/java/ChatChannel.java @@ -4,225 +4,246 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cr") +@ObfuscatedName("co") @Implements("ChatChannel") public class ChatChannel { - @ObfuscatedName("bp") - @ObfuscatedSignature( - descriptor = "Lio;" - ) - static GameBuild field1334; - @ObfuscatedName("hx") + @ObfuscatedName("mf") @ObfuscatedGetter( - intValue = -690692767 + intValue = 29773269 ) - @Export("cameraY") - static int cameraY; - @ObfuscatedName("b") + @Export("selectedItemSlot") + static int selectedItemSlot; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "[Lbk;" + descriptor = "[Lbg;" ) @Export("messages") Message[] messages; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1674280871 + intValue = -259879771 ) @Export("count") int count; ChatChannel() { - this.messages = new Message[100]; // L: 96 - } // L: 99 + this.messages = new Message[100]; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)Lbk;", - garbageValue = "-1425925685" + descriptor = "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)Lbg;", + garbageValue = "2065978922" ) @Export("addMessage") Message addMessage(int var1, String var2, String var3, String var4) { - Message var5 = this.messages[99]; // L: 102 + Message var5 = this.messages[99]; - for (int var6 = this.count; var6 > 0; --var6) { // L: 103 - if (var6 != 100) { // L: 104 - this.messages[var6] = this.messages[var6 - 1]; // L: 105 + for (int var6 = this.count; var6 > 0; --var6) { + if (var6 != 100) { + this.messages[var6] = this.messages[var6 - 1]; } } - if (var5 == null) { // L: 107 + if (var5 == null) { var5 = new Message(var1, var2, var4, var3); } else { - var5.remove(); // L: 109 - var5.removeDual(); // L: 110 - var5.set(var1, var2, var4, var3); // L: 111 + var5.remove(); + var5.removeDual(); + var5.set(var1, var2, var4, var3); } - this.messages[0] = var5; // L: 113 - if (this.count < 100) { // L: 114 + this.messages[0] = var5; + if (this.count < 100) { ++this.count; } - return var5; // L: 115 + return var5; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IB)Lbk;", - garbageValue = "50" + descriptor = "(II)Lbg;", + garbageValue = "-52136333" ) @Export("getMessage") Message getMessage(int var1) { - return var1 >= 0 && var1 < this.count ? this.messages[var1] : null; // L: 119 120 + return var1 >= 0 && var1 < this.count ? this.messages[var1] : null; } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "771657019" + garbageValue = "-845683507" ) @Export("size") int size() { - return this.count; // L: 124 + return this.count; } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)Lgk;", - garbageValue = "-921051133" + descriptor = "(II)Lcs;", + garbageValue = "1674386327" ) - static PacketBufferNode method2363() { - return PacketBufferNode.PacketBufferNode_packetBufferNodeCount == 0 ? new PacketBufferNode() : PacketBufferNode.PacketBufferNode_packetBufferNodes[--PacketBufferNode.PacketBufferNode_packetBufferNodeCount]; // L: 22 23 - } - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "([BI)Lau;", - garbageValue = "-2139002337" - ) - static WorldMapSprite method2375(byte[] var0) { - return var0 == null ? new WorldMapSprite() : new WorldMapSprite(class39.convertJpgToSprite(var0).pixels); // L: 19 20 - } - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(Lht;I[B[BI)V", - garbageValue = "1292250703" - ) - @Export("Widget_setKey") - static final void Widget_setKey(Widget var0, int var1, byte[] var2, byte[] var3) { - if (var0.field2668 == null) { // L: 902 - if (var2 == null) { // L: 903 - return; // L: 909 - } - - var0.field2668 = new byte[11][]; // L: 904 - var0.field2649 = new byte[11][]; // L: 905 - var0.field2670 = new int[11]; // L: 906 - var0.field2671 = new int[11]; // L: 907 - } - - var0.field2668[var1] = var2; // L: 911 - if (var2 != null) { - var0.field2667 = true; // L: 912 + @Export("getScript") + static Script getScript(int var0) { + Script var1 = (Script)Script.Script_cached.get((long)var0); + if (var1 != null) { + return var1; } else { - var0.field2667 = false; // L: 914 - - for (int var4 = 0; var4 < var0.field2668.length; ++var4) { // L: 915 - if (var0.field2668[var4] != null) { // L: 916 - var0.field2667 = true; // L: 917 - break; - } - } - } - - var0.field2649[var1] = var3; // L: 922 - } // L: 923 - - @ObfuscatedName("fj") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "70" - ) - static final void method2381() { - for (int var0 = 0; var0 < Client.soundEffectCount; ++var0) { // L: 3496 - int var10002 = Client.queuedSoundEffectDelays[var0]--; // L: 3497 - if (Client.queuedSoundEffectDelays[var0] >= -10) { // L: 3498 - SoundEffect var1 = Client.soundEffects[var0]; // L: 3510 - if (var1 == null) { // L: 3511 - Object var10000 = null; // L: 3512 - var1 = SoundEffect.readSoundEffect(Username.archive4, Client.soundEffectIds[var0], 0); - if (var1 == null) { // L: 3513 - continue; - } - - int[] var12 = Client.queuedSoundEffectDelays; // L: 3514 - var12[var0] += var1.calculateDelay(); - Client.soundEffects[var0] = var1; // L: 3515 - } - - if (Client.queuedSoundEffectDelays[var0] < 0) { // L: 3521 - int var2; - if (Client.soundLocations[var0] != 0) { // L: 3523 - int var3 = (Client.soundLocations[var0] & 255) * 128; // L: 3524 - int var4 = Client.soundLocations[var0] >> 16 & 255; // L: 3525 - int var5 = var4 * 128 + 64 - PlayerType.localPlayer.x; // L: 3526 - if (var5 < 0) { // L: 3527 - var5 = -var5; - } - - int var6 = Client.soundLocations[var0] >> 8 & 255; // L: 3528 - int var7 = var6 * 128 + 64 - PlayerType.localPlayer.y; // L: 3529 - if (var7 < 0) { // L: 3530 - var7 = -var7; - } - - int var8 = var7 + var5 - 128; // L: 3531 - if (var8 > var3) { // L: 3532 - Client.queuedSoundEffectDelays[var0] = -100; // L: 3533 - continue; // L: 3534 - } - - if (var8 < 0) { // L: 3536 - var8 = 0; - } - - var2 = (var3 - var8) * Client.areaSoundEffectVolume / var3; // L: 3537 - } else { - var2 = Client.soundEffectVolume; // L: 3539 - } - - if (var2 > 0) { // L: 3540 - RawSound var9 = var1.toRawSound().resample(NetSocket.decimator); // L: 3541 - RawPcmStream var10 = RawPcmStream.createRawPcmStream(var9, 100, var2); // L: 3542 - var10.setNumLoops(Client.queuedSoundEffectLoops[var0] - 1); // L: 3543 - GrandExchangeEvents.pcmStreamMixer.addSubStream(var10); // L: 3544 - } - - Client.queuedSoundEffectDelays[var0] = -100; // L: 3546 - } + byte[] var2 = PacketBufferNode.archive12.takeFile(var0, 0); + if (var2 == null) { + return null; } else { - --Client.soundEffectCount; // L: 3499 + var1 = Actor.newScript(var2); + Script.Script_cached.put(var1, (long)var0); + return var1; + } + } + } - for (int var11 = var0; var11 < Client.soundEffectCount; ++var11) { // L: 3500 - Client.soundEffectIds[var11] = Client.soundEffectIds[var11 + 1]; // L: 3501 - Client.soundEffects[var11] = Client.soundEffects[var11 + 1]; // L: 3502 - Client.queuedSoundEffectLoops[var11] = Client.queuedSoundEffectLoops[var11 + 1]; // L: 3503 - Client.queuedSoundEffectDelays[var11] = Client.queuedSoundEffectDelays[var11 + 1]; // L: 3504 - Client.soundLocations[var11] = Client.soundLocations[var11 + 1]; // L: 3505 + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(II)Ljl;", + garbageValue = "1207819240" + ) + @Export("getParamDefinition") + public static ParamDefinition getParamDefinition(int var0) { + ParamDefinition var1 = (ParamDefinition)ParamDefinition.ParamDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = ParamDefinition.ParamDefinition_archive.takeFile(11, var0); + var1 = new ParamDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); + } + + var1.postDecode(); + ParamDefinition.ParamDefinition_cached.put(var1, (long)var0); + return var1; + } + } + + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "([Lcj;II[I[II)V", + garbageValue = "-740794716" + ) + @Export("sortWorlds") + static void sortWorlds(World[] var0, int var1, int var2, int[] var3, int[] var4) { + if (var1 < var2) { + int var5 = var1 - 1; + int var6 = var2 + 1; + int var7 = (var2 + var1) / 2; + World var8 = var0[var7]; + var0[var7] = var0[var1]; + var0[var1] = var8; + + while (var5 < var6) { + boolean var9 = true; + + int var10; + int var11; + int var12; + do { + --var6; + + for (var10 = 0; var10 < 4; ++var10) { + if (var3[var10] == 2) { + var11 = var0[var6].index; + var12 = var8.index; + } else if (var3[var10] == 1) { + var11 = var0[var6].population; + var12 = var8.population; + if (var11 == -1 && var4[var10] == 1) { + var11 = 2001; + } + + if (var12 == -1 && var4[var10] == 1) { + var12 = 2001; + } + } else if (var3[var10] == 3) { + var11 = var0[var6].isMembersOnly() ? 1 : 0; + var12 = var8.isMembersOnly() ? 1 : 0; + } else { + var11 = var0[var6].id; + var12 = var8.id; + } + + if (var11 != var12) { + if ((var4[var10] != 1 || var11 <= var12) && (var4[var10] != 0 || var11 >= var12)) { + var9 = false; + } + break; + } + + if (var10 == 3) { + var9 = false; + } + } + } while(var9); + + var9 = true; + + do { + ++var5; + + for (var10 = 0; var10 < 4; ++var10) { + if (var3[var10] == 2) { + var11 = var0[var5].index; + var12 = var8.index; + } else if (var3[var10] == 1) { + var11 = var0[var5].population; + var12 = var8.population; + if (var11 == -1 && var4[var10] == 1) { + var11 = 2001; + } + + if (var12 == -1 && var4[var10] == 1) { + var12 = 2001; + } + } else if (var3[var10] == 3) { + var11 = var0[var5].isMembersOnly() ? 1 : 0; + var12 = var8.isMembersOnly() ? 1 : 0; + } else { + var11 = var0[var5].id; + var12 = var8.id; + } + + if (var11 != var12) { + if ((var4[var10] != 1 || var11 >= var12) && (var4[var10] != 0 || var11 <= var12)) { + var9 = false; + } + break; + } + + if (var10 == 3) { + var9 = false; + } + } + } while(var9); + + if (var5 < var6) { + World var13 = var0[var5]; + var0[var5] = var0[var6]; + var0[var6] = var13; } - - --var0; // L: 3507 - } - } - - if (Client.field916 && !class58.method957()) { // L: 3549 - if (Client.musicVolume != 0 && Client.currentTrackGroupId != -1) { // L: 3550 - Canvas.method952(ApproximateRouteStrategy.archive6, Client.currentTrackGroupId, 0, Client.musicVolume, false); } - Client.field916 = false; // L: 3551 + sortWorlds(var0, var1, var6, var3, var4); + sortWorlds(var0, var6 + 1, var2, var3, var4); } - } // L: 3553 + } + + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "(IB)V", + garbageValue = "57" + ) + public static void method2317(int var0) { + MouseHandler.MouseHandler_idleCycles = var0; + } } diff --git a/runescape-client/src/main/java/ClanChat.java b/runescape-client/src/main/java/ClanChat.java index da4841e6a3..990f5beb8c 100644 --- a/runescape-client/src/main/java/ClanChat.java +++ b/runescape-client/src/main/java/ClanChat.java @@ -4,253 +4,199 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kv") +@ObfuscatedName("kt") @Implements("ClanChat") public class ClanChat extends UserList { - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lmc;" + descriptor = "Lmu;" ) @Export("loginType") final LoginType loginType; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "Lka;" ) @Export("localUser") final Usernamed localUser; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("name") public String name; - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("owner") public String owner; - @ObfuscatedName("o") + @ObfuscatedName("e") @Export("minKick") public byte minKick; - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedGetter( - intValue = 1444461207 + intValue = 1015634539 ) @Export("rank") public int rank; - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedGetter( - intValue = -1905995869 + intValue = 1149112931 ) - int field3662; + int field3676; @ObfuscatedSignature( - descriptor = "(Lmc;Lka;)V" + descriptor = "(Lmu;Lka;)V" ) public ClanChat(LoginType var1, Usernamed var2) { - super(100); // L: 18 - this.name = null; // L: 11 - this.owner = null; // L: 12 - this.field3662 = 1; // L: 15 - this.loginType = var1; // L: 19 - this.localUser = var2; // L: 20 - } // L: 21 + super(100); + this.name = null; + this.owner = null; + this.field3676 = 1; + this.loginType = var1; + this.localUser = var2; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)Ljh;", - garbageValue = "-1664145399" + descriptor = "(B)Lju;", + garbageValue = "-99" ) @Export("newInstance") User newInstance() { - return new ClanMate(); // L: 24 + return new ClanMate(); } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IB)[Ljh;", - garbageValue = "-35" + descriptor = "(II)[Lju;", + garbageValue = "-1524839332" ) @Export("newTypedArray") User[] newTypedArray(int var1) { - return new ClanMate[var1]; // L: 28 + return new ClanMate[var1]; } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-2147338724" + garbageValue = "-513801120" ) @Export("readName") final void readName(String var1) { - this.name = Login.method2219(var1); // L: 32 - } // L: 33 + this.name = class238.method4166(var1); + } @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "1637949193" + descriptor = "(Ljava/lang/String;B)V", + garbageValue = "-83" ) @Export("setOwner") final void setOwner(String var1) { - this.owner = Login.method2219(var1); // L: 36 - } // L: 37 - - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "(Lkb;S)V", - garbageValue = "-26042" - ) - @Export("readUpdate") - public final void readUpdate(Buffer var1) { - this.setOwner(var1.readStringCp1252NullTerminated()); // L: 40 - long var2 = var1.readLong(); // L: 41 - long var5 = var2; // L: 43 - String var4; - int var7; - if (var2 > 0L && var2 < 6582952005840035281L) { // L: 45 - if (0L == var2 % 37L) { // L: 49 - var4 = null; // L: 50 - } else { - var7 = 0; // L: 53 - - for (long var8 = var2; 0L != var8; var8 /= 37L) { // L: 54 55 57 - ++var7; // L: 56 - } - - StringBuilder var10 = new StringBuilder(var7); // L: 59 - - while (var5 != 0L) { // L: 60 - long var11 = var5; // L: 61 - var5 /= 37L; // L: 62 - var10.append(class299.base37Table[(int)(var11 - var5 * 37L)]); // L: 63 - } - - var4 = var10.reverse().toString(); // L: 65 - } - } else { - var4 = null; // L: 46 - } - - this.readName(var4); // L: 67 - this.minKick = var1.readByte(); // L: 68 - var7 = var1.readUnsignedByte(); // L: 69 - if (var7 != 255) { // L: 70 - this.clear(); // L: 71 - - for (int var13 = 0; var13 < var7; ++var13) { // L: 72 - ClanMate var9 = (ClanMate)this.addLastNoPreviousUsername(new Username(var1.readStringCp1252NullTerminated(), this.loginType)); // L: 73 - int var14 = var1.readUnsignedShort(); // L: 74 - var9.set(var14, ++this.field3662 - 1); // L: 75 - var9.rank = var1.readByte(); // L: 76 - var1.readStringCp1252NullTerminated(); // L: 77 - this.isLocalPlayer(var9); // L: 78 - } - - } - } // L: 80 + this.owner = class238.method4166(var1); + } @ObfuscatedName("e") @ObfuscatedSignature( - descriptor = "(Lkb;S)V", - garbageValue = "179" + descriptor = "(Lkj;I)V", + garbageValue = "-147839496" ) - public final void method5371(Buffer var1) { - Username var2 = new Username(var1.readStringCp1252NullTerminated(), this.loginType); // L: 83 - int var3 = var1.readUnsignedShort(); // L: 84 - byte var4 = var1.readByte(); // L: 85 - boolean var5 = false; // L: 86 - if (var4 == -128) { // L: 87 + @Export("readUpdate") + public final void readUpdate(Buffer var1) { + this.setOwner(var1.readStringCp1252NullTerminated()); + long var2 = var1.readLong(); + this.readName(SecureRandomCallable.method1218(var2)); + this.minKick = var1.readByte(); + int var4 = var1.readUnsignedByte(); + if (var4 != 255) { + this.clear(); + + for (int var5 = 0; var5 < var4; ++var5) { + ClanMate var6 = (ClanMate)this.addLastNoPreviousUsername(new Username(var1.readStringCp1252NullTerminated(), this.loginType)); + int var7 = var1.readUnsignedShort(); + var6.set(var7, ++this.field3676 - 1); + var6.rank = var1.readByte(); + var1.readStringCp1252NullTerminated(); + this.isLocalPlayer(var6); + } + + } + } + + @ObfuscatedName("m") + @ObfuscatedSignature( + descriptor = "(Lkj;S)V", + garbageValue = "255" + ) + public final void method5251(Buffer var1) { + Username var2 = new Username(var1.readStringCp1252NullTerminated(), this.loginType); + int var3 = var1.readUnsignedShort(); + byte var4 = var1.readByte(); + boolean var5 = false; + if (var4 == -128) { var5 = true; } ClanMate var6; - if (var5) { // L: 88 - if (this.getSize() == 0) { // L: 89 + if (var5) { + if (this.getSize() == 0) { return; } - var6 = (ClanMate)this.getByCurrentUsername(var2); // L: 90 - if (var6 != null && var6.getWorld() == var3) { // L: 91 - this.remove(var6); // L: 92 + var6 = (ClanMate)this.getByCurrentUsername(var2); + if (var6 != null && var6.getWorld() == var3) { + this.remove(var6); } } else { - var1.readStringCp1252NullTerminated(); // L: 96 - var6 = (ClanMate)this.getByCurrentUsername(var2); // L: 97 - if (var6 == null) { // L: 98 - if (this.getSize() > super.capacity) { // L: 99 + var1.readStringCp1252NullTerminated(); + var6 = (ClanMate)this.getByCurrentUsername(var2); + if (var6 == null) { + if (this.getSize() > super.capacity) { return; } - var6 = (ClanMate)this.addLastNoPreviousUsername(var2); // L: 100 + var6 = (ClanMate)this.addLastNoPreviousUsername(var2); } - var6.set(var3, ++this.field3662 - 1); // L: 102 - var6.rank = var4; // L: 103 - this.isLocalPlayer(var6); // L: 104 + var6.set(var3, ++this.field3676 - 1); + var6.rank = var4; + this.isLocalPlayer(var6); } - } // L: 106 + } - @ObfuscatedName("ci") + @ObfuscatedName("cz") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1379027801" + descriptor = "(B)V", + garbageValue = "29" ) @Export("clearFriends") public final void clearFriends() { - for (int var1 = 0; var1 < this.getSize(); ++var1) { // L: 109 - ((ClanMate)this.get(var1)).clearIsFriend(); // L: 110 + for (int var1 = 0; var1 < this.getSize(); ++var1) { + ((ClanMate)this.get(var1)).clearIsFriend(); } - } // L: 112 + } - @ObfuscatedName("cy") + @ObfuscatedName("cc") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-958910490" + descriptor = "(B)V", + garbageValue = "82" ) @Export("invalidateIgnoreds") public final void invalidateIgnoreds() { - for (int var1 = 0; var1 < this.getSize(); ++var1) { // L: 115 - ((ClanMate)this.get(var1)).clearIsIgnored(); // L: 116 + for (int var1 = 0; var1 < this.getSize(); ++var1) { + ((ClanMate)this.get(var1)).clearIsIgnored(); } - } // L: 118 + } - @ObfuscatedName("cx") + @ObfuscatedName("ce") @ObfuscatedSignature( - descriptor = "(Ljf;I)V", - garbageValue = "1754058775" + descriptor = "(Ljz;I)V", + garbageValue = "353715814" ) @Export("isLocalPlayer") final void isLocalPlayer(ClanMate var1) { - if (var1.getUsername().equals(this.localUser.username())) { // L: 121 + if (var1.getUsername().equals(this.localUser.username())) { this.rank = var1.rank; } - } // L: 122 - - @ObfuscatedName("io") - @ObfuscatedSignature( - descriptor = "(IIIIIIIII)V", - garbageValue = "-1171740375" - ) - @Export("drawWidgets") - static final void drawWidgets(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { - if (ScriptFrame.loadInterface(var0)) { // L: 9322 - ItemContainer.field572 = null; // L: 9329 - WorldMapRegion.drawInterface(Widget.Widget_interfaceComponents[var0], -1, var1, var2, var3, var4, var5, var6, var7); // L: 9330 - if (ItemContainer.field572 != null) { // L: 9331 - WorldMapRegion.drawInterface(ItemContainer.field572, -1412584499, var1, var2, var3, var4, WorldMapSprite.field256, GrandExchangeOffer.field87, var7); // L: 9332 - ItemContainer.field572 = null; // L: 9333 - } - - } else { - if (var7 != -1) { // L: 9323 - Client.field834[var7] = true; - } else { - for (int var8 = 0; var8 < 100; ++var8) { // L: 9325 - Client.field834[var8] = true; - } - } - - } - } // L: 9327 9335 + } } diff --git a/runescape-client/src/main/java/ClanMate.java b/runescape-client/src/main/java/ClanMate.java index 989ec9a8e0..1f754d6167 100644 --- a/runescape-client/src/main/java/ClanMate.java +++ b/runescape-client/src/main/java/ClanMate.java @@ -3,92 +3,92 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jf") +@ObfuscatedName("jz") @Implements("ClanMate") public class ClanMate extends Buddy { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lkz;" + descriptor = "Lkn;" ) @Export("friend") TriBool friend; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lkz;" + descriptor = "Lkn;" ) @Export("ignored") TriBool ignored; ClanMate() { - this.friend = TriBool.TriBool_unknown; // L: 6 - this.ignored = TriBool.TriBool_unknown; // L: 7 - } // L: 9 + this.friend = TriBool.TriBool_unknown; + this.ignored = TriBool.TriBool_unknown; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "203874469" + garbageValue = "-1060606481" ) @Export("clearIsFriend") void clearIsFriend() { - this.friend = TriBool.TriBool_unknown; // L: 12 - } // L: 13 + this.friend = TriBool.TriBool_unknown; + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-2063904436" + garbageValue = "-1638349091" ) @Export("isFriend") public final boolean isFriend() { - if (this.friend == TriBool.TriBool_unknown) { // L: 16 - this.fillIsFriend(); // L: 17 + if (this.friend == TriBool.TriBool_unknown) { + this.fillIsFriend(); } - return this.friend == TriBool.TriBool_true; // L: 19 + return this.friend == TriBool.TriBool_true; } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-170481426" + descriptor = "(B)V", + garbageValue = "62" ) @Export("fillIsFriend") void fillIsFriend() { - this.friend = WorldMapLabelSize.friendSystem.friendsList.contains(super.username) ? TriBool.TriBool_true : TriBool.TriBool_false; // L: 23 - } // L: 24 + this.friend = MilliClock.friendSystem.friendsList.contains(super.username) ? TriBool.TriBool_true : TriBool.TriBool_false; + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1476758779" + garbageValue = "-1987329827" ) @Export("clearIsIgnored") void clearIsIgnored() { - this.ignored = TriBool.TriBool_unknown; // L: 27 - } // L: 28 + this.ignored = TriBool.TriBool_unknown; + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-6155848" + garbageValue = "-842680773" ) @Export("isIgnored") public final boolean isIgnored() { - if (this.ignored == TriBool.TriBool_unknown) { // L: 31 - this.fillIsIgnored(); // L: 32 + if (this.ignored == TriBool.TriBool_unknown) { + this.fillIsIgnored(); } - return this.ignored == TriBool.TriBool_true; // L: 34 + return this.ignored == TriBool.TriBool_true; } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "224401479" + descriptor = "(B)V", + garbageValue = "-77" ) @Export("fillIsIgnored") void fillIsIgnored() { - this.ignored = WorldMapLabelSize.friendSystem.ignoreList.contains(super.username) ? TriBool.TriBool_true : TriBool.TriBool_false; // L: 38 - } // L: 39 + this.ignored = MilliClock.friendSystem.ignoreList.contains(super.username) ? TriBool.TriBool_true : TriBool.TriBool_false; + } } diff --git a/runescape-client/src/main/java/Client.java b/runescape-client/src/main/java/Client.java index be94a56702..f953b3d29f 100644 --- a/runescape-client/src/main/java/Client.java +++ b/runescape-client/src/main/java/Client.java @@ -1,4 +1,6 @@ +import java.io.File; import java.io.IOException; +import java.io.RandomAccessFile; import java.net.Socket; import java.util.ArrayList; import java.util.HashMap; @@ -9,2098 +11,1943 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import netscape.javascript.JSObject; @Implements("Client") @ObfuscatedName("client") public final class Client extends GameShell implements Usernamed { - @ObfuscatedName("nt") + @ObfuscatedName("ns") @ObfuscatedSignature( - descriptor = "Lht;" + descriptor = "Lhe;" ) @Export("clickedWidget") static Widget clickedWidget; - @ObfuscatedName("of") + @ObfuscatedName("op") @ObfuscatedGetter( - intValue = -967608343 + intValue = 1970983367 ) - static int field748; - @ObfuscatedName("od") + static int field852; + @ObfuscatedName("og") @ObfuscatedGetter( - intValue = -159421781 + intValue = 763008721 ) @Export("rootWidgetCount") static int rootWidgetCount; - @ObfuscatedName("op") + @ObfuscatedName("ov") @ObfuscatedGetter( - longValue = 3335751163548503689L + longValue = -3960298575830209827L ) - static long field879; - @ObfuscatedName("ou") - static boolean[] field834; + static long field861; + @ObfuscatedName("ol") + static boolean[] field901; + @ObfuscatedName("oi") + static boolean[] field855; @ObfuscatedName("ot") - static boolean[] field745; - @ObfuscatedName("oj") - static boolean[] field758; - @ObfuscatedName("nl") - static boolean field705; - @ObfuscatedName("no") + static boolean[] field854; + @ObfuscatedName("ny") + static boolean field829; + @ObfuscatedName("nr") + static boolean field859; + @ObfuscatedName("nb") @ObfuscatedGetter( - intValue = -1723544013 + intValue = -1525007605 ) @Export("cycleCntr") static int cycleCntr; - @ObfuscatedName("pz") + @ObfuscatedName("pb") @Export("isResizable") static boolean isResizable; - @ObfuscatedName("sp") + @ObfuscatedName("sg") @ObfuscatedGetter( - intValue = 954341551 + intValue = -1236989805 ) - public static int field950; - @ObfuscatedName("oy") + public static int field915; + @ObfuscatedName("oh") @ObfuscatedGetter( - intValue = 1826821479 + intValue = -834376263 ) - static int field874; - @ObfuscatedName("nx") - static boolean field859; - @ObfuscatedName("qq") - static boolean field916; - @ObfuscatedName("nj") + static int field879; + @ObfuscatedName("qk") + static boolean field883; + @ObfuscatedName("ni") @ObfuscatedGetter( - intValue = -115501903 + intValue = -964374005 ) @Export("widgetClickX") static int widgetClickX; - @ObfuscatedName("nh") + @ObfuscatedName("nl") @ObfuscatedGetter( - intValue = -1615551305 + intValue = 663873135 ) @Export("widgetClickY") static int widgetClickY; - @ObfuscatedName("nd") + @ObfuscatedName("nv") @ObfuscatedGetter( - intValue = 897589711 + intValue = -863251767 ) - static int field860; - @ObfuscatedName("ov") + static int field827; + @ObfuscatedName("of") @ObfuscatedSignature( - descriptor = "Llp;" + descriptor = "Lls;" ) @Export("widgetFlags") static NodeHashTable widgetFlags; - @ObfuscatedName("ni") + @ObfuscatedName("nm") @ObfuscatedSignature( - descriptor = "Lht;" + descriptor = "Lhe;" ) @Export("clickedWidgetParent") static Widget clickedWidgetParent; - @ObfuscatedName("ob") - @Export("rootWidgetWidths") - static int[] rootWidgetWidths; - @ObfuscatedName("ol") + @ObfuscatedName("ou") @Export("rootWidgetXs") static int[] rootWidgetXs; - @ObfuscatedName("ng") + @ObfuscatedName("oy") + @Export("rootWidgetWidths") + static int[] rootWidgetWidths; + @ObfuscatedName("nf") @ObfuscatedGetter( - intValue = -1965324355 + intValue = -1253957595 ) - static int field861; - @ObfuscatedName("nr") + static int field716; + @ObfuscatedName("ng") @ObfuscatedSignature( - descriptor = "Lht;" + descriptor = "Lhe;" ) @Export("viewportWidget") static Widget viewportWidget; - @ObfuscatedName("oa") + @ObfuscatedName("ok") @ObfuscatedGetter( - intValue = -1215664047 + intValue = 619022291 ) @Export("gameDrawingMode") static int gameDrawingMode; - @ObfuscatedName("on") - @Export("rootWidgetHeights") - static int[] rootWidgetHeights; - @ObfuscatedName("ms") - @ObfuscatedGetter( - intValue = 1050326365 - ) - @Export("staffModLevel") - static int staffModLevel; - @ObfuscatedName("oh") + @ObfuscatedName("oe") @Export("rootWidgetYs") static int[] rootWidgetYs; - @ObfuscatedName("tz") - @ObfuscatedSignature( - descriptor = "Lbx;" + @ObfuscatedName("om") + @ObfuscatedGetter( + intValue = 44319291 ) - static final ApproximateRouteStrategy field877; - @ObfuscatedName("og") + @Export("mouseWheelRotation") + static int mouseWheelRotation; + @ObfuscatedName("mm") + @ObfuscatedGetter( + intValue = 760468781 + ) + @Export("staffModLevel") + public static int staffModLevel; + @ObfuscatedName("oa") + @Export("rootWidgetHeights") + static int[] rootWidgetHeights; + @ObfuscatedName("tj") @ObfuscatedSignature( - descriptor = "Lja;" + descriptor = "Lba;" + ) + static final ApproximateRouteStrategy field919; + @ObfuscatedName("qc") + @ObfuscatedGetter( + intValue = 1338518997 + ) + @Export("currentTrackGroupId") + static int currentTrackGroupId; + @ObfuscatedName("oo") + @ObfuscatedSignature( + descriptor = "Ljp;" ) @Export("scriptEvents") static NodeDeque scriptEvents; @ObfuscatedName("ne") @ObfuscatedGetter( - intValue = -532029863 + intValue = -1341323171 ) - static int field931; - @ObfuscatedName("ny") + static int field853; + @ObfuscatedName("no") @ObfuscatedGetter( - intValue = -467484497 + intValue = -1828083517 ) - static int field868; - @ObfuscatedName("nz") + static int field923; + @ObfuscatedName("nh") @ObfuscatedGetter( - intValue = -400221737 + intValue = 701419483 ) - static int field701; - @ObfuscatedName("rj") - @Export("isCameraLocked") - static boolean isCameraLocked; - @ObfuscatedName("po") + static int field862; + @ObfuscatedName("nt") @ObfuscatedGetter( - intValue = 2067578655 + intValue = 1311691811 ) - @Export("publicChatMode") - static int publicChatMode; - @ObfuscatedName("px") - @ObfuscatedGetter( - intValue = -1857927441 - ) - @Export("tradeChatMode") - static int tradeChatMode; - @ObfuscatedName("tl") - static int[] field695; - @ObfuscatedName("tj") - static int[] field956; - @ObfuscatedName("np") - @Export("isDraggingWidget") - static boolean isDraggingWidget; - @ObfuscatedName("oq") - @ObfuscatedGetter( - intValue = 1446456861 - ) - @Export("mouseWheelRotation") - static int mouseWheelRotation; - @ObfuscatedName("mg") - @ObfuscatedSignature( - descriptor = "Lht;" - ) - @Export("meslayerContinueWidget") - static Widget meslayerContinueWidget; - @ObfuscatedName("mq") - @ObfuscatedGetter( - intValue = 1875055983 - ) - @Export("runEnergy") - static int runEnergy; - @ObfuscatedName("qy") - @ObfuscatedGetter( - intValue = 12933011 - ) - @Export("destinationX") - static int destinationX; - @ObfuscatedName("mt") - @ObfuscatedGetter( - intValue = 373944835 - ) - @Export("weight") - static int weight; - @ObfuscatedName("qb") - @ObfuscatedGetter( - intValue = 1660756197 - ) - @Export("destinationY") - static int destinationY; - @ObfuscatedName("rg") - static boolean[] field926; - @ObfuscatedName("rw") - static int[] field927; - @ObfuscatedName("sy") - @ObfuscatedGetter( - intValue = -905823515 - ) - static int field945; - @ObfuscatedName("ro") - static int[] field928; - @ObfuscatedName("sa") - @ObfuscatedSignature( - descriptor = "Lhu;" - ) - @Export("playerAppearance") - static PlayerAppearance playerAppearance; - @ObfuscatedName("ru") - static int[] field898; - @ObfuscatedName("qh") - @ObfuscatedGetter( - intValue = 1478190693 - ) - @Export("areaSoundEffectVolume") - static int areaSoundEffectVolume; - @ObfuscatedName("sb") + static int field835; + @ObfuscatedName("tc") + static int[] field920; + @ObfuscatedName("tr") + static int[] field921; + @ObfuscatedName("sr") @Export("archiveLoaders") static ArrayList archiveLoaders; - @ObfuscatedName("rp") - static int[] field918; - @ObfuscatedName("so") + @ObfuscatedName("sm") @ObfuscatedGetter( - intValue = 1105285413 - ) - static int field895; - @ObfuscatedName("nb") - @ObfuscatedSignature( - descriptor = "Lht;" - ) - @Export("draggedOnWidget") - static Widget draggedOnWidget; - @ObfuscatedName("qn") - @ObfuscatedGetter( - intValue = 2064359385 - ) - @Export("minimapState") - static int minimapState; - @ObfuscatedName("sh") - @ObfuscatedGetter( - intValue = -361533157 + intValue = -1916983899 ) @Export("archiveLoadersDone") static int archiveLoadersDone; - @ObfuscatedName("pb") - static long[] field900; - @ObfuscatedName("sn") + @ObfuscatedName("oj") + @ObfuscatedGetter( + intValue = 1100002729 + ) + static int field842; + @ObfuscatedName("na") + @Export("isDraggingWidget") + static boolean isDraggingWidget; + @ObfuscatedName("mp") + @ObfuscatedGetter( + intValue = -46428687 + ) + @Export("runEnergy") + static int runEnergy; + @ObfuscatedName("mo") + @ObfuscatedGetter( + intValue = 1591102325 + ) + @Export("weight") + static int weight; + @ObfuscatedName("ss") @ObfuscatedSignature( - descriptor = "[Lj;" + descriptor = "[Ly;" ) @Export("grandExchangeOffers") static GrandExchangeOffer[] grandExchangeOffers; - @ObfuscatedName("pa") + @ObfuscatedName("si") @ObfuscatedGetter( - intValue = 845536339 + intValue = -1073533511 ) - static int field901; - @ObfuscatedName("oc") + static int field813; + @ObfuscatedName("or") @ObfuscatedGetter( - intValue = 1746826411 + intValue = 1164434239 ) - static int field885; - @ObfuscatedName("nk") - static int[] field867; - @ObfuscatedName("oo") - @ObfuscatedGetter( - intValue = 1183562103 - ) - static int field878; - @ObfuscatedName("oe") - @ObfuscatedGetter( - intValue = -770002343 - ) - static int field875; - @ObfuscatedName("na") - @Export("changedSkills") - static int[] changedSkills; - @ObfuscatedName("ox") - @ObfuscatedGetter( - intValue = -1931074951 - ) - @Export("changedSkillsCount") - static int changedSkillsCount; - @ObfuscatedName("pk") - @ObfuscatedGetter( - longValue = 7054518271740632067L - ) - static long field905; - @ObfuscatedName("pc") - @ObfuscatedGetter( - intValue = 743392311 - ) - static int field906; - @ObfuscatedName("sw") + static int field685; + @ObfuscatedName("sl") @ObfuscatedSignature( - descriptor = "Lmy;" + descriptor = "Lhh;" ) - @Export("platformInfoProvider") - static PlatformInfoProvider platformInfoProvider; - @ObfuscatedName("ss") + @Export("playerAppearance") + static PlayerAppearance playerAppearance; + @ObfuscatedName("sk") @ObfuscatedGetter( - intValue = -1587883567 + intValue = -1302699221 ) - @Export("viewportOffsetX") - static int viewportOffsetX; - @ObfuscatedName("sr") - @ObfuscatedGetter( - intValue = -1411709539 + static int field911; + @ObfuscatedName("nc") + @ObfuscatedSignature( + descriptor = "Lhe;" ) - @Export("viewportOffsetY") - static int viewportOffsetY; - @ObfuscatedName("sm") + @Export("draggedOnWidget") + static Widget draggedOnWidget; + @ObfuscatedName("qb") @ObfuscatedGetter( - intValue = -1821649225 + intValue = 823228995 ) - @Export("viewportWidth") - static int viewportWidth; - @ObfuscatedName("sq") + @Export("minimapState") + static int minimapState; + @ObfuscatedName("qs") @ObfuscatedGetter( - intValue = 637100393 - ) - @Export("viewportHeight") - static int viewportHeight; - @ObfuscatedName("nv") - @Export("changedItemContainers") - static int[] changedItemContainers; - @ObfuscatedName("nq") - @ObfuscatedGetter( - intValue = -1001910639 - ) - static int field941; - @ObfuscatedName("qo") - @ObfuscatedGetter( - intValue = -696027355 + intValue = 424329615 ) @Export("soundEffectCount") static int soundEffectCount; - @ObfuscatedName("qw") - @Export("queuedSoundEffectDelays") - static int[] queuedSoundEffectDelays; - @ObfuscatedName("qv") + @ObfuscatedName("sq") + @ObfuscatedSignature( + descriptor = "Lmi;" + ) + @Export("platformInfoProvider") + static PlatformInfoProvider platformInfoProvider; + @ObfuscatedName("qg") @Export("soundEffectIds") static int[] soundEffectIds; - @ObfuscatedName("qf") + @ObfuscatedName("qo") @Export("queuedSoundEffectLoops") static int[] queuedSoundEffectLoops; + @ObfuscatedName("rd") + static boolean[] field902; + @ObfuscatedName("qd") + @Export("queuedSoundEffectDelays") + static int[] queuedSoundEffectDelays; + @ObfuscatedName("ri") + static int[] field679; + @ObfuscatedName("rj") + static int[] field893; @ObfuscatedName("qj") - @ObfuscatedGetter( - intValue = 1888830449 - ) - @Export("musicVolume") - static int musicVolume; - @ObfuscatedName("qs") @ObfuscatedSignature( descriptor = "[Ldq;" ) @Export("soundEffects") static SoundEffect[] soundEffects; - @ObfuscatedName("qc") + @ObfuscatedName("qf") @ObfuscatedGetter( - intValue = -481995573 + intValue = -1261756273 ) - @Export("currentTrackGroupId") - static int currentTrackGroupId; - @ObfuscatedName("pe") + @Export("destinationX") + static int destinationX; + @ObfuscatedName("rt") + static int[] field705; + @ObfuscatedName("oc") @ObfuscatedGetter( - intValue = 977040321 + intValue = -1187221809 + ) + static int field845; + @ObfuscatedName("mh") + @ObfuscatedSignature( + descriptor = "Lhe;" + ) + @Export("meslayerContinueWidget") + static Widget meslayerContinueWidget; + @ObfuscatedName("qt") + @Export("soundLocations") + static int[] soundLocations; + @ObfuscatedName("qu") + @ObfuscatedGetter( + intValue = 102746825 + ) + @Export("destinationY") + static int destinationY; + @ObfuscatedName("rc") + static int[] field644; + @ObfuscatedName("pw") + @ObfuscatedGetter( + intValue = -59171105 + ) + static int field874; + @ObfuscatedName("py") + @ObfuscatedGetter( + longValue = 7233000865691692987L + ) + static long field817; + @ObfuscatedName("qx") + @Export("isCameraLocked") + static boolean isCameraLocked; + @ObfuscatedName("pz") + @ObfuscatedGetter( + intValue = 982246175 ) @Export("mapIconCount") static int mapIconCount; - @ObfuscatedName("py") + @ObfuscatedName("pa") @Export("mapIconXs") static int[] mapIconXs; - @ObfuscatedName("qg") - @Export("soundLocations") - static int[] soundLocations; - @ObfuscatedName("qd") + @ObfuscatedName("ps") @ObfuscatedGetter( - intValue = -1728090839 + intValue = 31385275 ) - @Export("soundEffectVolume") - static int soundEffectVolume; - @ObfuscatedName("pd") + @Export("tradeChatMode") + static int tradeChatMode; + @ObfuscatedName("sp") + @ObfuscatedGetter( + intValue = -1928794307 + ) + static int field666; + @ObfuscatedName("px") + @ObfuscatedGetter( + intValue = 1307916999 + ) + @Export("publicChatMode") + static int publicChatMode; + @ObfuscatedName("pf") @Export("mapIconYs") static int[] mapIconYs; - @ObfuscatedName("rt") - static short field873; - @ObfuscatedName("rc") - static short field932; - @ObfuscatedName("rd") - static short field937; - @ObfuscatedName("rz") - static short field935; - @ObfuscatedName("qt") + @ObfuscatedName("rx") + static short field896; + @ObfuscatedName("rq") + static short field897; + @ObfuscatedName("ql") @ObfuscatedSignature( - descriptor = "[Llc;" + descriptor = "[Llm;" ) @Export("mapIcons") static Sprite[] mapIcons; + @ObfuscatedName("rb") + static short field828; @ObfuscatedName("ra") - static short field753; - @ObfuscatedName("or") + static short field903; + @ObfuscatedName("re") + static short field731; + @ObfuscatedName("sf") @ObfuscatedGetter( - intValue = -840703781 - ) - static int field852; - @ObfuscatedName("sl") - @ObfuscatedGetter( - intValue = -462473275 + intValue = 2093134959 ) @Export("viewportZoom") static int viewportZoom; - @ObfuscatedName("rs") - static short field865; - @ObfuscatedName("mb") + @ObfuscatedName("rp") + static short field900; + @ObfuscatedName("rg") @ObfuscatedGetter( - intValue = 476049569 + intValue = 165183815 + ) + @Export("viewportWidth") + static int viewportWidth; + @ObfuscatedName("sd") + @ObfuscatedGetter( + intValue = -1667977405 + ) + @Export("viewportHeight") + static int viewportHeight; + @ObfuscatedName("nq") + static int[] field834; + @ObfuscatedName("rh") + @ObfuscatedGetter( + intValue = -1202571805 + ) + @Export("viewportOffsetX") + static int viewportOffsetX; + @ObfuscatedName("rw") + @ObfuscatedGetter( + intValue = 1226538775 + ) + @Export("viewportOffsetY") + static int viewportOffsetY; + @ObfuscatedName("np") + @Export("changedItemContainers") + static int[] changedItemContainers; + @ObfuscatedName("nd") + @ObfuscatedGetter( + intValue = -756396665 + ) + static int field837; + @ObfuscatedName("pg") + static long[] field868; + @ObfuscatedName("pq") + @ObfuscatedGetter( + intValue = 1378550147 + ) + static int field870; + @ObfuscatedName("mt") + @ObfuscatedGetter( + intValue = 2082201915 ) @Export("chatEffects") static int chatEffects; - @ObfuscatedName("sd") + @ObfuscatedName("ml") @ObfuscatedGetter( - intValue = 996380993 + intValue = 2082785677 ) - static int field953; - @ObfuscatedName("mf") - @ObfuscatedGetter( - intValue = 1006230257 - ) - static int field846; - @ObfuscatedName("pn") - @ObfuscatedGetter( - intValue = 1182698243 - ) - static int field902; + static int field865; @ObfuscatedName("rm") - @Export("zoomWidth") - static short zoomWidth; - @ObfuscatedName("ry") @Export("zoomHeight") static short zoomHeight; - @ObfuscatedName("mk") + @ObfuscatedName("pk") @ObfuscatedGetter( - intValue = -1815216699 + intValue = -556724327 + ) + static int field707; + @ObfuscatedName("rr") + @Export("zoomWidth") + static short zoomWidth; + @ObfuscatedName("nu") + @Export("playerMod") + static boolean playerMod; + @ObfuscatedName("pl") + static int[] field693; + @ObfuscatedName("ow") + @ObfuscatedSignature( + descriptor = "Ljp;" + ) + static NodeDeque field715; + @ObfuscatedName("pi") + static int[] field661; + @ObfuscatedName("mx") + @ObfuscatedGetter( + intValue = -1910543551 ) @Export("followerIndex") static int followerIndex; - @ObfuscatedName("pm") - static int[] field904; - @ObfuscatedName("pu") - static int[] field903; - @ObfuscatedName("oz") + @ObfuscatedName("on") @ObfuscatedSignature( - descriptor = "Lja;" + descriptor = "Ljp;" ) - static NodeDeque field881; - @ObfuscatedName("om") + static NodeDeque field849; + @ObfuscatedName("nk") + @Export("changedSkills") + static int[] changedSkills; + @ObfuscatedName("ob") + @ObfuscatedGetter( + intValue = 125760777 + ) + @Export("changedSkillsCount") + static int changedSkillsCount; + @ObfuscatedName("mr") + @ObfuscatedGetter( + intValue = 404828477 + ) + static int field810; + @ObfuscatedName("pc") @ObfuscatedSignature( - descriptor = "Lja;" + descriptor = "Llw;" ) - static NodeDeque field939; - @ObfuscatedName("ns") - @Export("playerMod") - static boolean playerMod; - @ObfuscatedName("mv") + @Export("privateChatMode") + static PrivateChatMode privateChatMode; + @ObfuscatedName("mk") @ObfuscatedGetter( - intValue = 1489885445 + intValue = 1150371503 ) - static int field843; - @ObfuscatedName("ok") + static int field811; + @ObfuscatedName("ox") @ObfuscatedGetter( - intValue = -1530697045 + intValue = -1643930355 + ) + static int field680; + @ObfuscatedName("od") + @ObfuscatedGetter( + intValue = -1235624719 ) @Export("chatCycle") static int chatCycle; - @ObfuscatedName("ml") - @ObfuscatedGetter( - intValue = 1279066227 - ) - static int field844; - @ObfuscatedName("ps") - static String field710; - @ObfuscatedName("pq") - static int[] field896; - @ObfuscatedName("su") + @ObfuscatedName("ph") + static int[] field863; + @ObfuscatedName("pm") + static String field871; + @ObfuscatedName("sw") @ObfuscatedSignature( - descriptor = "Lbu;" + descriptor = "Lbe;" ) @Export("GrandExchangeEvents_worldComparator") static GrandExchangeOfferOwnWorldComparator GrandExchangeEvents_worldComparator; - @ObfuscatedName("s") - static String[] field957; @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "[Lfh;" + descriptor = "[Lfo;" ) @Export("collisionMaps") static CollisionMap[] collisionMaps; - @ObfuscatedName("ad") - static boolean field772; - @ObfuscatedName("bb") + @ObfuscatedName("at") + static boolean field907; + @ObfuscatedName("bh") @ObfuscatedGetter( - intValue = -1952252433 + intValue = 605856319 ) @Export("worldId") public static int worldId; - @ObfuscatedName("bf") + @ObfuscatedName("by") @ObfuscatedGetter( - intValue = 1836293151 + intValue = -1172386423 ) @Export("worldProperties") static int worldProperties; - @ObfuscatedName("bg") + @ObfuscatedName("br") @ObfuscatedGetter( - intValue = 1500455873 + intValue = -1849937955 ) @Export("gameBuild") static int gameBuild; - @ObfuscatedName("bl") + @ObfuscatedName("bf") @Export("isMembersWorld") public static boolean isMembersWorld; - @ObfuscatedName("bn") + @ObfuscatedName("bz") @Export("isLowDetail") static boolean isLowDetail; - @ObfuscatedName("bw") + @ObfuscatedName("bi") @ObfuscatedGetter( - intValue = 530446497 + intValue = -605979109 ) @Export("clientType") static int clientType; - @ObfuscatedName("bm") + @ObfuscatedName("bk") @ObfuscatedGetter( - intValue = -1817623855 + intValue = 272012315 ) - static int field686; - @ObfuscatedName("by") + static int field651; + @ObfuscatedName("bw") @Export("onMobile") static boolean onMobile; - @ObfuscatedName("bq") + @ObfuscatedName("bo") @ObfuscatedGetter( - intValue = 1008452177 + intValue = 615918673 ) @Export("gameState") static int gameState; - @ObfuscatedName("ca") + @ObfuscatedName("cf") @Export("isLoading") static boolean isLoading; - @ObfuscatedName("cn") + @ObfuscatedName("cr") @ObfuscatedGetter( - intValue = -1633145881 + intValue = 719785889 ) @Export("cycle") static int cycle; - @ObfuscatedName("cw") + @ObfuscatedName("ch") @ObfuscatedGetter( - longValue = -7364036271402416249L + longValue = -2825275797086768431L ) @Export("mouseLastLastPressedTimeMillis") static long mouseLastLastPressedTimeMillis; - @ObfuscatedName("cq") + @ObfuscatedName("cl") @ObfuscatedGetter( - intValue = -345670979 + intValue = 1844754083 ) - static int field719; - @ObfuscatedName("cd") + static int field657; + @ObfuscatedName("cw") @ObfuscatedGetter( - intValue = 711078459 + intValue = -322437819 ) - static int field693; - @ObfuscatedName("cj") + static int field658; + @ObfuscatedName("cp") @ObfuscatedGetter( - longValue = 6513468436641987539L + longValue = 8108394182568559769L ) - static long field694; - @ObfuscatedName("cm") + static long field794; + @ObfuscatedName("cu") @Export("hadFocus") static boolean hadFocus; - @ObfuscatedName("cb") + @ObfuscatedName("ct") @Export("displayFps") static boolean displayFps; - @ObfuscatedName("ct") + @ObfuscatedName("ck") @ObfuscatedGetter( - intValue = -1097232173 + intValue = 437393179 ) @Export("rebootTimer") static int rebootTimer; - @ObfuscatedName("cv") + @ObfuscatedName("cy") @ObfuscatedGetter( - intValue = 663263241 + intValue = -234391383 ) @Export("hintArrowType") static int hintArrowType; - @ObfuscatedName("cz") + @ObfuscatedName("cg") @ObfuscatedGetter( - intValue = -1168701183 + intValue = -1281221669 ) @Export("hintArrowNpcIndex") static int hintArrowNpcIndex; - @ObfuscatedName("ch") + @ObfuscatedName("cv") @ObfuscatedGetter( - intValue = -1852952069 + intValue = -2046139677 ) @Export("hintArrowPlayerIndex") static int hintArrowPlayerIndex; - @ObfuscatedName("co") + @ObfuscatedName("cs") @ObfuscatedGetter( - intValue = 1012584603 + intValue = -758214641 ) @Export("hintArrowX") static int hintArrowX; - @ObfuscatedName("ck") + @ObfuscatedName("cn") @ObfuscatedGetter( - intValue = 285496787 + intValue = -129094787 ) @Export("hintArrowY") static int hintArrowY; - @ObfuscatedName("cr") + @ObfuscatedName("co") @ObfuscatedGetter( - intValue = -679069747 + intValue = 1167284940 ) @Export("hintArrowHeight") static int hintArrowHeight; - @ObfuscatedName("dg") + @ObfuscatedName("dh") @ObfuscatedGetter( - intValue = 286843445 + intValue = -1763909312 ) @Export("hintArrowSubX") static int hintArrowSubX; - @ObfuscatedName("db") + @ObfuscatedName("dl") @ObfuscatedGetter( - intValue = 551746543 + intValue = -1394707008 ) @Export("hintArrowSubY") static int hintArrowSubY; - @ObfuscatedName("df") + @ObfuscatedName("de") @ObfuscatedSignature( - descriptor = "Lcd;" + descriptor = "Lcw;" ) @Export("playerAttackOption") static AttackOption playerAttackOption; - @ObfuscatedName("dd") + @ObfuscatedName("dw") @ObfuscatedSignature( - descriptor = "Lcd;" + descriptor = "Lcw;" ) @Export("npcAttackOption") static AttackOption npcAttackOption; @ObfuscatedName("dq") @ObfuscatedGetter( - intValue = -772944549 + intValue = -1533630561 ) @Export("titleLoadingStage") static int titleLoadingStage; @ObfuscatedName("dm") @ObfuscatedGetter( - intValue = -207137197 + intValue = -1287826553 ) @Export("js5ConnectState") static int js5ConnectState; - @ObfuscatedName("dh") + @ObfuscatedName("dp") @ObfuscatedGetter( - intValue = -910834387 + intValue = -795471171 ) - static int field794; - @ObfuscatedName("da") - @ObfuscatedGetter( - longValue = 1178443596221129289L + static int field864; + @ObfuscatedName("eq") + @ObfuscatedSignature( + descriptor = "Lil;" ) - static long field696; + @Export("archive15") + static Archive archive15; @ObfuscatedName("eh") @ObfuscatedGetter( - intValue = -85937083 + intValue = -1029151173 ) @Export("js5Errors") static int js5Errors; - @ObfuscatedName("ep") + @ObfuscatedName("eb") @ObfuscatedGetter( - intValue = 474300455 + intValue = 965496535 ) @Export("loginState") static int loginState; - @ObfuscatedName("et") + @ObfuscatedName("ek") @ObfuscatedGetter( - intValue = 506244731 + intValue = 114444977 ) - static int field947; - @ObfuscatedName("eu") + static int field892; + @ObfuscatedName("ew") @ObfuscatedGetter( - intValue = 1618145807 + intValue = -1250433749 ) - static int field715; - @ObfuscatedName("ei") + static int field681; + @ObfuscatedName("ej") @ObfuscatedGetter( - intValue = 764009473 + intValue = 1777018145 ) - static int field716; - @ObfuscatedName("ef") + static int field682; + @ObfuscatedName("eo") @ObfuscatedSignature( - descriptor = "Lfz;" + descriptor = "Lfq;" ) - static class169 field717; + static class169 field872; @ObfuscatedName("el") @Export("Login_isUsernameRemembered") static boolean Login_isUsernameRemembered; - @ObfuscatedName("es") + @ObfuscatedName("ea") @ObfuscatedSignature( - descriptor = "Lct;" + descriptor = "Lck;" ) @Export("secureRandomFuture") static SecureRandomFuture secureRandomFuture; - @ObfuscatedName("fw") + @ObfuscatedName("ft") @Export("randomDatData") static byte[] randomDatData; - @ObfuscatedName("fo") + @ObfuscatedName("fj") @ObfuscatedSignature( - descriptor = "[Lca;" + descriptor = "[Lcf;" ) @Export("npcs") static NPC[] npcs; - @ObfuscatedName("fy") + @ObfuscatedName("fp") @ObfuscatedGetter( - intValue = -2146265857 + intValue = -2095920813 ) @Export("npcCount") static int npcCount; @ObfuscatedName("ff") @Export("npcIndices") static int[] npcIndices; - @ObfuscatedName("fb") + @ObfuscatedName("fs") @ObfuscatedGetter( - intValue = -1153230115 + intValue = 144391847 ) - static int field726; - @ObfuscatedName("fv") - static int[] field727; - @ObfuscatedName("fg") + static int field826; + @ObfuscatedName("fk") + static int[] field654; + @ObfuscatedName("fx") @ObfuscatedSignature( - descriptor = "Ldg;" + descriptor = "Ldh;" ) @Export("packetWriter") public static final PacketWriter packetWriter; - @ObfuscatedName("fd") + @ObfuscatedName("fh") @ObfuscatedGetter( - intValue = 416640201 + intValue = -179896895 ) @Export("logoutTimer") static int logoutTimer; - @ObfuscatedName("fe") - static boolean field730; - @ObfuscatedName("fx") + @ObfuscatedName("fy") + static boolean field696; + @ObfuscatedName("fb") @Export("useBufferedSocket") static boolean useBufferedSocket; - @ObfuscatedName("fc") + @ObfuscatedName("fg") @ObfuscatedSignature( - descriptor = "Ljr;" + descriptor = "Ljc;" ) @Export("timer") static Timer timer; - @ObfuscatedName("ft") + @ObfuscatedName("fl") @Export("fontsMap") static HashMap fontsMap; - @ObfuscatedName("gf") + @ObfuscatedName("gg") @ObfuscatedGetter( - intValue = 955711481 + intValue = -1853046907 ) - static int field734; - @ObfuscatedName("gq") + static int field700; + @ObfuscatedName("gm") @ObfuscatedGetter( - intValue = 926514475 + intValue = 252683765 ) - static int field735; + static int field701; @ObfuscatedName("gh") @ObfuscatedGetter( - intValue = 1079386381 + intValue = -1311284153 ) - static int field848; - @ObfuscatedName("gn") - @ObfuscatedGetter( - intValue = 28672383 - ) - static int field737; - @ObfuscatedName("gt") - @ObfuscatedGetter( - intValue = 1298064441 - ) - static int field722; + static int field702; @ObfuscatedName("gu") + @ObfuscatedGetter( + intValue = 1834916753 + ) + static int field703; + @ObfuscatedName("go") + @ObfuscatedGetter( + intValue = 1906817031 + ) + static int field704; + @ObfuscatedName("ga") @Export("isInInstance") static boolean isInInstance; - @ObfuscatedName("gb") + @ObfuscatedName("gi") @Export("instanceChunkTemplates") static int[][][] instanceChunkTemplates; - @ObfuscatedName("gj") - static final int[] field954; - @ObfuscatedName("ga") + @ObfuscatedName("gp") + static final int[] field708; + @ObfuscatedName("gd") @ObfuscatedGetter( - intValue = -1423039985 + intValue = -904067663 ) - static int field743; + static int field850; + @ObfuscatedName("hn") + @ObfuscatedSignature( + descriptor = "[Llm;" + ) + @Export("headIconPrayerSprites") + static Sprite[] headIconPrayerSprites; @ObfuscatedName("hv") @ObfuscatedGetter( - intValue = 2098595987 + intValue = -1487008623 ) - static int field925; - @ObfuscatedName("hn") + static int field711; + @ObfuscatedName("hj") @ObfuscatedGetter( - intValue = -1305614333 + intValue = -408397879 ) - static int field765; - @ObfuscatedName("hq") + static int field712; + @ObfuscatedName("hm") @ObfuscatedGetter( - intValue = 1632535067 + intValue = 2027186317 ) - static int field746; - @ObfuscatedName("hi") + static int field713; + @ObfuscatedName("hu") @ObfuscatedGetter( - intValue = 845386571 + intValue = 265625939 ) - static int field747; - @ObfuscatedName("hp") - static boolean field690; + static int field714; + @ObfuscatedName("hx") + static boolean field692; @ObfuscatedName("ho") @ObfuscatedGetter( - intValue = -504309469 + intValue = 1926073649 ) @Export("alternativeScrollbarWidth") static int alternativeScrollbarWidth; - @ObfuscatedName("hc") + @ObfuscatedName("hr") @ObfuscatedGetter( - intValue = 694250825 + intValue = 256130781 ) @Export("camAngleX") static int camAngleX; - @ObfuscatedName("ha") + @ObfuscatedName("ht") @ObfuscatedGetter( - intValue = -1414005751 + intValue = -933249295 ) @Export("camAngleY") static int camAngleY; - @ObfuscatedName("hf") + @ObfuscatedName("hp") @ObfuscatedGetter( - intValue = -1795969885 + intValue = -1941667663 ) @Export("camAngleDY") static int camAngleDY; - @ObfuscatedName("hd") + @ObfuscatedName("hb") @ObfuscatedGetter( - intValue = -56354123 + intValue = 842676911 ) @Export("camAngleDX") static int camAngleDX; - @ObfuscatedName("hg") + @ObfuscatedName("hd") @ObfuscatedGetter( - intValue = 2135930637 + intValue = -159731927 ) @Export("mouseCamClickedX") static int mouseCamClickedX; - @ObfuscatedName("he") + @ObfuscatedName("hw") @ObfuscatedGetter( - intValue = -77775685 + intValue = 797966877 ) @Export("mouseCamClickedY") static int mouseCamClickedY; - @ObfuscatedName("is") + @ObfuscatedName("iq") @ObfuscatedGetter( - intValue = -1649155215 + intValue = 1791733175 ) @Export("oculusOrbState") static int oculusOrbState; - @ObfuscatedName("ic") + @ObfuscatedName("ip") @ObfuscatedGetter( - intValue = 39732577 + intValue = 1677697591 ) @Export("camFollowHeight") static int camFollowHeight; @ObfuscatedName("in") @ObfuscatedGetter( - intValue = 1110148459 + intValue = 1012131865 ) - static int field692; + static int field755; @ObfuscatedName("io") @ObfuscatedGetter( - intValue = -2023417181 + intValue = 755654585 ) - static int field759; - @ObfuscatedName("ik") + static int field761; + @ObfuscatedName("ic") @ObfuscatedGetter( - intValue = 2143690291 + intValue = 1441714075 ) - static int field760; - @ObfuscatedName("iw") + static int field788; + @ObfuscatedName("ia") @ObfuscatedGetter( - intValue = -1776720113 + intValue = 1697208315 ) @Export("oculusOrbNormalSpeed") static int oculusOrbNormalSpeed; - @ObfuscatedName("il") + @ObfuscatedName("ib") @ObfuscatedGetter( - intValue = -285231223 + intValue = 762441025 ) @Export("oculusOrbSlowedSpeed") static int oculusOrbSlowedSpeed; - @ObfuscatedName("id") + @ObfuscatedName("ij") @ObfuscatedGetter( - intValue = 1473843199 + intValue = -380994417 ) - static int field763; - @ObfuscatedName("ib") - static boolean field725; - @ObfuscatedName("iq") + public static int field730; + @ObfuscatedName("il") + static boolean field649; + @ObfuscatedName("im") @ObfuscatedGetter( - intValue = 1886979431 + intValue = -1396000555 ) - static int field882; - @ObfuscatedName("ir") - static boolean field750; + static int field732; @ObfuscatedName("it") @Export("selectedItemName") static String selectedItemName; - @ObfuscatedName("ig") + @ObfuscatedName("is") + static boolean field843; + @ObfuscatedName("iy") @ObfuscatedGetter( - intValue = 300729757 + intValue = -1991795959 ) - static int field810; - @ObfuscatedName("ij") + static int field918; + @ObfuscatedName("ir") @ObfuscatedGetter( - intValue = -735595377 + intValue = 664038093 ) @Export("overheadTextCount") static int overheadTextCount; - @ObfuscatedName("if") + @ObfuscatedName("ik") @ObfuscatedGetter( - intValue = -251508065 + intValue = 1616827889 ) @Export("overheadTextLimit") static int overheadTextLimit; - @ObfuscatedName("ie") + @ObfuscatedName("iw") @Export("overheadTextXs") static int[] overheadTextXs; - @ObfuscatedName("ia") + @ObfuscatedName("if") @Export("overheadTextYs") static int[] overheadTextYs; - @ObfuscatedName("ii") + @ObfuscatedName("ie") @Export("overheadTextAscents") static int[] overheadTextAscents; @ObfuscatedName("iu") @Export("overheadTextXOffsets") static int[] overheadTextXOffsets; - @ObfuscatedName("iy") + @ObfuscatedName("iv") @Export("overheadTextColors") static int[] overheadTextColors; - @ObfuscatedName("ju") + @ObfuscatedName("jl") @Export("overheadTextEffects") static int[] overheadTextEffects; - @ObfuscatedName("jo") + @ObfuscatedName("jb") @Export("overheadTextCyclesRemaining") static int[] overheadTextCyclesRemaining; - @ObfuscatedName("jd") + @ObfuscatedName("jx") @Export("overheadText") static String[] overheadText; - @ObfuscatedName("jx") + @ObfuscatedName("je") @Export("tileLastDrawnActor") static int[][] tileLastDrawnActor; - @ObfuscatedName("je") + @ObfuscatedName("jm") @ObfuscatedGetter( - intValue = -1171972661 + intValue = -31866267 ) @Export("viewportDrawCount") static int viewportDrawCount; - @ObfuscatedName("jk") + @ObfuscatedName("jq") @ObfuscatedGetter( - intValue = 1986908281 + intValue = 2071172407 ) @Export("viewportTempX") static int viewportTempX; - @ObfuscatedName("jy") + @ObfuscatedName("jt") @ObfuscatedGetter( - intValue = 1344112683 + intValue = 473576557 ) @Export("viewportTempY") static int viewportTempY; - @ObfuscatedName("jn") + @ObfuscatedName("jd") @ObfuscatedGetter( - intValue = -1678392525 + intValue = -501291535 ) @Export("mouseCrossX") static int mouseCrossX; - @ObfuscatedName("jp") + @ObfuscatedName("jv") @ObfuscatedGetter( - intValue = 379363511 + intValue = 1855983379 ) @Export("mouseCrossY") static int mouseCrossY; - @ObfuscatedName("jg") + @ObfuscatedName("jy") @ObfuscatedGetter( - intValue = 2115175527 + intValue = 58718588 ) @Export("mouseCrossState") static int mouseCrossState; - @ObfuscatedName("jv") + @ObfuscatedName("ji") @ObfuscatedGetter( - intValue = -1792879987 + intValue = -1330486485 ) @Export("mouseCrossColor") static int mouseCrossColor; - @ObfuscatedName("js") + @ObfuscatedName("jn") @Export("showMouseCross") static boolean showMouseCross; @ObfuscatedName("jj") @ObfuscatedGetter( - intValue = 1659427899 + intValue = 2114809505 ) - static int field828; - @ObfuscatedName("jb") + static int field754; + @ObfuscatedName("jw") @ObfuscatedGetter( - intValue = -1858381215 + intValue = 1360375965 ) - static int field788; - @ObfuscatedName("ji") + static int field881; + @ObfuscatedName("jh") @ObfuscatedGetter( - intValue = 1955491125 + intValue = -2111776897 ) @Export("dragItemSlotSource") static int dragItemSlotSource; - @ObfuscatedName("jq") + @ObfuscatedName("jo") @ObfuscatedGetter( - intValue = 2107596607 + intValue = -174164729 ) @Export("draggedWidgetX") static int draggedWidgetX; - @ObfuscatedName("jm") + @ObfuscatedName("ja") @ObfuscatedGetter( - intValue = -1255636543 + intValue = -563995015 ) @Export("draggedWidgetY") static int draggedWidgetY; - @ObfuscatedName("jl") + @ObfuscatedName("jg") @ObfuscatedGetter( - intValue = 1843538815 + intValue = 1906459091 ) @Export("dragItemSlotDestination") static int dragItemSlotDestination; - @ObfuscatedName("jw") - static boolean field830; - @ObfuscatedName("jr") + @ObfuscatedName("jk") + static boolean field848; + @ObfuscatedName("jc") @ObfuscatedGetter( - intValue = 1543846117 + intValue = 529038183 ) @Export("itemDragDuration") static int itemDragDuration; - @ObfuscatedName("jf") - @ObfuscatedGetter( - intValue = 1665596697 - ) - static int field795; @ObfuscatedName("jz") + @ObfuscatedGetter( + intValue = -416908103 + ) + static int field762; + @ObfuscatedName("jr") @Export("showLoadingMessages") static boolean showLoadingMessages; - @ObfuscatedName("ku") + @ObfuscatedName("kb") @ObfuscatedSignature( - descriptor = "[Lbi;" + descriptor = "[Lbq;" ) @Export("players") static Player[] players; - @ObfuscatedName("kl") + @ObfuscatedName("kz") @ObfuscatedGetter( - intValue = 1876036055 + intValue = -1303961589 ) @Export("localPlayerIndex") static int localPlayerIndex; @ObfuscatedName("ka") @ObfuscatedGetter( - intValue = -651069671 + intValue = -191235223 ) - static int field799; - @ObfuscatedName("kd") + static int field766; + @ObfuscatedName("ko") @Export("renderSelf") static boolean renderSelf; - @ObfuscatedName("kx") + @ObfuscatedName("kp") @ObfuscatedGetter( - intValue = 1408541917 + intValue = -1760199693 ) @Export("drawPlayerNames") static int drawPlayerNames; - @ObfuscatedName("kg") - @ObfuscatedGetter( - intValue = 725006111 - ) - static int field802; - @ObfuscatedName("kf") - static int[] field803; - @ObfuscatedName("kr") - @Export("playerMenuOpcodes") - static final int[] playerMenuOpcodes; - @ObfuscatedName("ko") - @Export("playerMenuActions") - static String[] playerMenuActions; - @ObfuscatedName("kn") - @Export("playerOptionsPriorities") - static boolean[] playerOptionsPriorities; - @ObfuscatedName("kc") - @Export("defaultRotations") - static int[] defaultRotations; @ObfuscatedName("kq") @ObfuscatedGetter( - intValue = -1515987941 + intValue = 248476299 + ) + static int field769; + @ObfuscatedName("kk") + static int[] field770; + @ObfuscatedName("kl") + @Export("playerMenuOpcodes") + static final int[] playerMenuOpcodes; + @ObfuscatedName("kr") + @Export("playerMenuActions") + static String[] playerMenuActions; + @ObfuscatedName("kv") + @Export("playerOptionsPriorities") + static boolean[] playerOptionsPriorities; + @ObfuscatedName("kw") + @Export("defaultRotations") + static int[] defaultRotations; + @ObfuscatedName("ku") + @ObfuscatedGetter( + intValue = -1934640101 ) @Export("combatTargetPlayerIndex") static int combatTargetPlayerIndex; - @ObfuscatedName("ky") + @ObfuscatedName("kc") @ObfuscatedSignature( - descriptor = "[[[Lja;" + descriptor = "[[[Ljp;" ) @Export("groundItems") static NodeDeque[][][] groundItems; - @ObfuscatedName("kp") + @ObfuscatedName("kh") @ObfuscatedSignature( - descriptor = "Lja;" + descriptor = "Ljp;" ) @Export("pendingSpawns") static NodeDeque pendingSpawns; - @ObfuscatedName("kj") + @ObfuscatedName("km") @ObfuscatedSignature( - descriptor = "Lja;" + descriptor = "Ljp;" ) @Export("projectiles") static NodeDeque projectiles; - @ObfuscatedName("ks") + @ObfuscatedName("ky") @ObfuscatedSignature( - descriptor = "Lja;" + descriptor = "Ljp;" ) @Export("graphicsObjects") static NodeDeque graphicsObjects; - @ObfuscatedName("kb") + @ObfuscatedName("kj") @Export("currentLevels") static int[] currentLevels; - @ObfuscatedName("kh") + @ObfuscatedName("kd") @Export("levels") static int[] levels; - @ObfuscatedName("ln") + @ObfuscatedName("lt") @Export("experience") static int[] experience; - @ObfuscatedName("lj") + @ObfuscatedName("li") @ObfuscatedGetter( - intValue = 1331910575 + intValue = 362480773 ) @Export("leftClickOpensMenu") static int leftClickOpensMenu; - @ObfuscatedName("lg") + @ObfuscatedName("lk") @Export("isMenuOpen") static boolean isMenuOpen; - @ObfuscatedName("lb") + @ObfuscatedName("lw") @ObfuscatedGetter( - intValue = -315201447 + intValue = 1250252403 ) @Export("menuOptionsCount") static int menuOptionsCount; - @ObfuscatedName("lk") + @ObfuscatedName("ld") @Export("menuArguments1") static int[] menuArguments1; - @ObfuscatedName("lo") + @ObfuscatedName("ln") @Export("menuArguments2") static int[] menuArguments2; - @ObfuscatedName("lh") + @ObfuscatedName("lz") @Export("menuOpcodes") static int[] menuOpcodes; - @ObfuscatedName("lr") + @ObfuscatedName("lp") @Export("menuIdentifiers") static int[] menuIdentifiers; - @ObfuscatedName("la") + @ObfuscatedName("lv") @Export("menuActions") static String[] menuActions; - @ObfuscatedName("ll") + @ObfuscatedName("la") @Export("menuTargets") static String[] menuTargets; - @ObfuscatedName("ls") + @ObfuscatedName("lb") @Export("menuShiftClick") static boolean[] menuShiftClick; - @ObfuscatedName("lp") + @ObfuscatedName("ls") @Export("followerOpsLowPriority") static boolean followerOpsLowPriority; - @ObfuscatedName("lf") + @ObfuscatedName("ly") @Export("shiftClickDrop") static boolean shiftClickDrop; - @ObfuscatedName("lm") + @ObfuscatedName("lq") @Export("tapToDrop") static boolean tapToDrop; - @ObfuscatedName("ly") + @ObfuscatedName("lu") @Export("showMouseOverText") static boolean showMouseOverText; - @ObfuscatedName("lu") + @ObfuscatedName("lj") @ObfuscatedGetter( - intValue = -689178451 + intValue = 1731176677 ) @Export("viewportX") static int viewportX; - @ObfuscatedName("le") + @ObfuscatedName("lo") @ObfuscatedGetter( - intValue = -1951728151 + intValue = -958797827 ) @Export("viewportY") static int viewportY; - @ObfuscatedName("mh") + @ObfuscatedName("md") @ObfuscatedGetter( - intValue = 812853429 + intValue = -987373017 ) - static int field832; - @ObfuscatedName("mx") + static int field799; + @ObfuscatedName("mc") @ObfuscatedGetter( - intValue = -2049020101 + intValue = -96598345 ) - static int field833; - @ObfuscatedName("my") + static int field751; + @ObfuscatedName("mi") @ObfuscatedGetter( - intValue = 1700020883 + intValue = 1915140309 ) @Export("isItemSelected") static int isItemSelected; - @ObfuscatedName("ma") + @ObfuscatedName("mv") @Export("isSpellSelected") static boolean isSpellSelected; - @ObfuscatedName("mw") + @ObfuscatedName("ms") @ObfuscatedGetter( - intValue = -718961001 + intValue = -1478069303 ) @Export("selectedSpellChildIndex") static int selectedSpellChildIndex; - @ObfuscatedName("mj") + @ObfuscatedName("mb") @ObfuscatedGetter( - intValue = 2082291921 + intValue = 703379227 ) - static int field838; - @ObfuscatedName("mo") + static int field836; + @ObfuscatedName("mj") @Export("selectedSpellActionName") static String selectedSpellActionName; - @ObfuscatedName("mc") + @ObfuscatedName("mu") @Export("selectedSpellName") static String selectedSpellName; - @ObfuscatedName("mn") + @ObfuscatedName("mw") @ObfuscatedGetter( - intValue = -906778899 + intValue = -1575535357 ) @Export("rootInterface") static int rootInterface; - @ObfuscatedName("mm") + @ObfuscatedName("mn") @ObfuscatedSignature( - descriptor = "Llp;" + descriptor = "Lls;" ) @Export("interfaceParents") static NodeHashTable interfaceParents; - @ObfuscatedName("ee") + @ObfuscatedName("en") @ObfuscatedSignature( - descriptor = "Lkb;" + descriptor = "Lkj;" ) - Buffer field720; - @ObfuscatedName("fs") + Buffer field686; + @ObfuscatedName("fn") @ObfuscatedSignature( - descriptor = "Lt;" + descriptor = "Lz;" ) - class9 field721; + class9 field687; static { - field772 = true; // L: 183 - worldId = 1; // L: 184 - worldProperties = 0; // L: 185 - gameBuild = 0; // L: 187 - isMembersWorld = false; // L: 190 - isLowDetail = false; // L: 191 - clientType = -1; // L: 196 - field686 = -1; // L: 197 - onMobile = false; // L: 198 - gameState = 0; // L: 199 - isLoading = true; // L: 220 - cycle = 0; // L: 221 - mouseLastLastPressedTimeMillis = -1L; // L: 222 - field719 = -1; // L: 224 - field693 = -1; // L: 225 - field694 = -1L; // L: 226 - hadFocus = true; // L: 227 - displayFps = false; // L: 228 - rebootTimer = 0; // L: 229 - hintArrowType = 0; // L: 230 - hintArrowNpcIndex = 0; // L: 231 - hintArrowPlayerIndex = 0; // L: 232 - hintArrowX = 0; // L: 233 - hintArrowY = 0; // L: 234 - hintArrowHeight = 0; // L: 235 - hintArrowSubX = 0; // L: 236 - hintArrowSubY = 0; // L: 237 - playerAttackOption = AttackOption.AttackOption_hidden; // L: 239 - npcAttackOption = AttackOption.AttackOption_hidden; // L: 240 - titleLoadingStage = 0; // L: 242 - js5ConnectState = 0; // L: 245 - field794 = 0; // L: 246 - js5Errors = 0; // L: 268 - loginState = 0; // L: 270 - field947 = 0; // L: 271 - field715 = 0; // L: 272 - field716 = 0; // L: 273 - field717 = class169.field2028; // L: 274 - Login_isUsernameRemembered = false; // L: 283 - secureRandomFuture = new SecureRandomFuture(); // L: 284 - randomDatData = null; // L: 289 - npcs = new NPC[32768]; // L: 293 - npcCount = 0; // L: 294 - npcIndices = new int[32768]; // L: 295 - field726 = 0; // L: 296 - field727 = new int[250]; // L: 297 - packetWriter = new PacketWriter(); // L: 300 - logoutTimer = 0; // L: 302 - field730 = false; // L: 303 - useBufferedSocket = true; // L: 304 - timer = new Timer(); // L: 305 - fontsMap = new HashMap(); // L: 311 - field734 = 0; // L: 318 - field735 = 1; // L: 319 - field848 = 0; // L: 320 - field737 = 1; // L: 321 - field722 = 0; // L: 322 - collisionMaps = new CollisionMap[4]; // L: 330 - isInInstance = false; // L: 331 - instanceChunkTemplates = new int[4][13][13]; // L: 332 - field954 = new int[]{0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3}; // L: 333 - field743 = 0; // L: 336 - field925 = 2301979; // L: 348 - field765 = 5063219; // L: 349 - field746 = 3353893; // L: 350 - field747 = 7759444; // L: 351 - field690 = false; // L: 352 - alternativeScrollbarWidth = 0; // L: 353 - camAngleX = 128; // L: 361 - camAngleY = 0; // L: 362 - camAngleDY = 0; // L: 363 - camAngleDX = 0; // L: 364 - mouseCamClickedX = 0; // L: 365 - mouseCamClickedY = 0; // L: 366 - oculusOrbState = 0; // L: 367 - camFollowHeight = 50; // L: 368 - field692 = 0; // L: 372 - field759 = 0; // L: 373 - field760 = 0; // L: 374 - oculusOrbNormalSpeed = 12; // L: 376 - oculusOrbSlowedSpeed = 6; // L: 377 - field763 = 0; // L: 378 - field725 = false; // L: 379 - field882 = 0; // L: 380 - field750 = false; // L: 381 - field810 = 0; // L: 382 - overheadTextCount = 0; // L: 383 - overheadTextLimit = 50; // L: 384 - overheadTextXs = new int[overheadTextLimit]; // L: 385 - overheadTextYs = new int[overheadTextLimit]; // L: 386 - overheadTextAscents = new int[overheadTextLimit]; // L: 387 - overheadTextXOffsets = new int[overheadTextLimit]; // L: 388 - overheadTextColors = new int[overheadTextLimit]; // L: 389 - overheadTextEffects = new int[overheadTextLimit]; // L: 390 - overheadTextCyclesRemaining = new int[overheadTextLimit]; // L: 391 - overheadText = new String[overheadTextLimit]; // L: 392 - tileLastDrawnActor = new int[104][104]; // L: 393 - viewportDrawCount = 0; // L: 394 - viewportTempX = -1; // L: 395 - viewportTempY = -1; // L: 396 - mouseCrossX = 0; // L: 397 - mouseCrossY = 0; // L: 398 - mouseCrossState = 0; // L: 399 - mouseCrossColor = 0; // L: 400 - showMouseCross = true; // L: 401 - field828 = 0; // L: 403 - field788 = 0; // L: 404 - dragItemSlotSource = 0; // L: 407 - draggedWidgetX = 0; // L: 408 - draggedWidgetY = 0; // L: 409 - dragItemSlotDestination = 0; // L: 410 - field830 = false; // L: 411 - itemDragDuration = 0; // L: 412 - field795 = 0; // L: 413 - showLoadingMessages = true; // L: 415 - players = new Player[2048]; // L: 417 - localPlayerIndex = -1; // L: 419 - field799 = 0; // L: 420 - renderSelf = true; // L: 422 - drawPlayerNames = 0; // L: 427 - field802 = 0; // L: 428 - field803 = new int[1000]; // L: 429 - playerMenuOpcodes = new int[]{44, 45, 46, 47, 48, 49, 50, 51}; // L: 431 - playerMenuActions = new String[8]; // L: 432 - playerOptionsPriorities = new boolean[8]; // L: 433 - defaultRotations = new int[]{768, 1024, 1280, 512, 1536, 256, 0, 1792}; // L: 434 - combatTargetPlayerIndex = -1; // L: 435 - groundItems = new NodeDeque[4][104][104]; // L: 436 - pendingSpawns = new NodeDeque(); // L: 437 - projectiles = new NodeDeque(); // L: 438 - graphicsObjects = new NodeDeque(); // L: 439 - currentLevels = new int[25]; // L: 440 - levels = new int[25]; // L: 441 - experience = new int[25]; // L: 442 - leftClickOpensMenu = 0; // L: 443 - isMenuOpen = false; // L: 444 - menuOptionsCount = 0; // L: 450 - menuArguments1 = new int[500]; // L: 451 - menuArguments2 = new int[500]; // L: 452 - menuOpcodes = new int[500]; // L: 453 - menuIdentifiers = new int[500]; // L: 454 - menuActions = new String[500]; // L: 455 - menuTargets = new String[500]; // L: 456 - menuShiftClick = new boolean[500]; // L: 457 - followerOpsLowPriority = false; // L: 458 - shiftClickDrop = false; // L: 460 - tapToDrop = false; // L: 461 - showMouseOverText = true; // L: 462 - viewportX = -1; // L: 463 - viewportY = -1; // L: 464 - field832 = 0; // L: 468 - field833 = 50; // L: 469 - isItemSelected = 0; // L: 470 - selectedItemName = null; // L: 474 - isSpellSelected = false; // L: 475 - selectedSpellChildIndex = -1; // L: 477 - field838 = -1; // L: 478 - selectedSpellActionName = null; // L: 480 - selectedSpellName = null; // L: 481 - rootInterface = -1; // L: 482 - interfaceParents = new NodeHashTable(8); // L: 483 - field843 = 0; // L: 488 - field844 = -1; // L: 489 - chatEffects = 0; // L: 490 - field846 = 0; // L: 491 - meslayerContinueWidget = null; // L: 492 - runEnergy = 0; // L: 493 - weight = 0; // L: 494 - staffModLevel = 0; // L: 495 - followerIndex = -1; // L: 496 - playerMod = false; // L: 497 - viewportWidget = null; // L: 498 - clickedWidget = null; // L: 499 - clickedWidgetParent = null; // L: 500 - widgetClickX = 0; // L: 501 - widgetClickY = 0; // L: 502 - draggedOnWidget = null; // L: 503 - field859 = false; // L: 504 - field860 = -1; // L: 505 - field861 = -1; // L: 506 - field705 = false; // L: 507 - field931 = -1; // L: 508 - field701 = -1; // L: 509 - isDraggingWidget = false; // L: 510 - cycleCntr = 1; // L: 515 - field867 = new int[32]; // L: 518 - field868 = 0; // L: 519 - changedItemContainers = new int[32]; // L: 520 - field941 = 0; // L: 521 - changedSkills = new int[32]; // L: 522 - changedSkillsCount = 0; // L: 523 - chatCycle = 0; // L: 524 - field874 = 0; // L: 525 - field875 = 0; // L: 526 - field885 = 0; // L: 527 - field852 = 0; // L: 528 - field878 = 0; // L: 529 - mouseWheelRotation = 0; // L: 532 - scriptEvents = new NodeDeque(); // L: 533 - field881 = new NodeDeque(); // L: 534 - field939 = new NodeDeque(); // L: 535 - widgetFlags = new NodeHashTable(512); // L: 536 - rootWidgetCount = 0; // L: 538 - field748 = -2; // L: 539 - field834 = new boolean[100]; // L: 540 - field758 = new boolean[100]; // L: 541 - field745 = new boolean[100]; // L: 542 - rootWidgetXs = new int[100]; // L: 543 - rootWidgetYs = new int[100]; // L: 544 - rootWidgetWidths = new int[100]; // L: 545 - rootWidgetHeights = new int[100]; // L: 546 - gameDrawingMode = 0; // L: 547 - field879 = 0L; // L: 548 - isResizable = true; // L: 549 - field896 = new int[]{16776960, 16711680, 65280, 65535, 16711935, 16777215}; // L: 556 - publicChatMode = 0; // L: 557 - tradeChatMode = 0; // L: 559 - field710 = ""; // L: 560 - field900 = new long[100]; // L: 562 - field901 = 0; // L: 563 - field902 = 0; // L: 565 - field903 = new int[128]; // L: 566 - field904 = new int[128]; // L: 567 - field905 = -1L; // L: 568 - field906 = -1; // L: 571 - mapIconCount = 0; // L: 572 - mapIconXs = new int[1000]; // L: 573 - mapIconYs = new int[1000]; // L: 574 - mapIcons = new Sprite[1000]; // L: 575 - destinationX = 0; // L: 576 - destinationY = 0; // L: 577 - minimapState = 0; // L: 584 - musicVolume = 255; // L: 585 - currentTrackGroupId = -1; // L: 586 - field916 = false; // L: 587 - soundEffectVolume = 127; // L: 589 - areaSoundEffectVolume = 127; // L: 590 - soundEffectCount = 0; // L: 595 - soundEffectIds = new int[50]; // L: 596 - queuedSoundEffectLoops = new int[50]; // L: 597 - queuedSoundEffectDelays = new int[50]; // L: 598 - soundLocations = new int[50]; // L: 599 - soundEffects = new SoundEffect[50]; // L: 600 - isCameraLocked = false; // L: 602 - field926 = new boolean[5]; // L: 614 - field927 = new int[5]; // L: 615 - field928 = new int[5]; // L: 616 - field898 = new int[5]; // L: 617 - field918 = new int[5]; // L: 618 - field873 = 256; // L: 619 - field932 = 205; // L: 620 - zoomHeight = 256; // L: 621 - zoomWidth = 320; // L: 622 - field865 = 1; // L: 623 - field753 = 32767; // L: 624 - field937 = 1; // L: 625 - field935 = 32767; // L: 626 - viewportOffsetX = 0; // L: 627 - viewportOffsetY = 0; // L: 628 - viewportWidth = 0; // L: 629 - viewportHeight = 0; // L: 630 - viewportZoom = 0; // L: 631 - playerAppearance = new PlayerAppearance(); // L: 633 - field945 = -1; // L: 634 - field895 = -1; // L: 635 - platformInfoProvider = new DesktopPlatformInfoProvider(); // L: 637 - grandExchangeOffers = new GrandExchangeOffer[8]; // L: 639 - GrandExchangeEvents_worldComparator = new GrandExchangeOfferOwnWorldComparator(); // L: 642 - field950 = -1; // L: 649 - archiveLoaders = new ArrayList(10); // L: 650 - archiveLoadersDone = 0; // L: 651 - field953 = 0; // L: 652 - field877 = new ApproximateRouteStrategy(); // L: 661 - field695 = new int[50]; // L: 662 - field956 = new int[50]; // L: 663 + field907 = true; + worldId = 1; + worldProperties = 0; + gameBuild = 0; + isMembersWorld = false; + isLowDetail = false; + clientType = -1; + field651 = -1; + onMobile = false; + gameState = 0; + isLoading = true; + cycle = 0; + mouseLastLastPressedTimeMillis = 1L; + field657 = -1; + field658 = -1; + field794 = -1L; + hadFocus = true; + displayFps = false; + rebootTimer = 0; + hintArrowType = 0; + hintArrowNpcIndex = 0; + hintArrowPlayerIndex = 0; + hintArrowX = 0; + hintArrowY = 0; + hintArrowHeight = 0; + hintArrowSubX = 0; + hintArrowSubY = 0; + playerAttackOption = AttackOption.AttackOption_hidden; + npcAttackOption = AttackOption.AttackOption_hidden; + titleLoadingStage = 0; + js5ConnectState = 0; + field864 = 0; + js5Errors = 0; + loginState = 0; + field892 = 0; + field681 = 0; + field682 = 0; + field872 = class169.field2021; + Login_isUsernameRemembered = false; + secureRandomFuture = new SecureRandomFuture(); + randomDatData = null; + npcs = new NPC[32768]; + npcCount = 0; + npcIndices = new int[32768]; + field826 = 0; + field654 = new int[250]; + packetWriter = new PacketWriter(); + logoutTimer = 0; + field696 = false; + useBufferedSocket = true; + timer = new Timer(); + fontsMap = new HashMap(); + field700 = 0; + field701 = 1; + field702 = 0; + field703 = 1; + field704 = 0; + collisionMaps = new CollisionMap[4]; + isInInstance = false; + instanceChunkTemplates = new int[4][13][13]; + field708 = new int[]{0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3}; + field850 = 0; + field711 = 2301979; + field712 = 5063219; + field713 = 3353893; + field714 = 7759444; + field692 = false; + alternativeScrollbarWidth = 0; + camAngleX = 128; + camAngleY = 0; + camAngleDY = 0; + camAngleDX = 0; + mouseCamClickedX = 0; + mouseCamClickedY = 0; + oculusOrbState = 0; + camFollowHeight = 50; + field755 = 0; + field761 = 0; + field788 = 0; + oculusOrbNormalSpeed = 12; + oculusOrbSlowedSpeed = 6; + field730 = 0; + field649 = false; + field732 = 0; + field843 = false; + field918 = 0; + overheadTextCount = 0; + overheadTextLimit = 50; + overheadTextXs = new int[overheadTextLimit]; + overheadTextYs = new int[overheadTextLimit]; + overheadTextAscents = new int[overheadTextLimit]; + overheadTextXOffsets = new int[overheadTextLimit]; + overheadTextColors = new int[overheadTextLimit]; + overheadTextEffects = new int[overheadTextLimit]; + overheadTextCyclesRemaining = new int[overheadTextLimit]; + overheadText = new String[overheadTextLimit]; + tileLastDrawnActor = new int[104][104]; + viewportDrawCount = 0; + viewportTempX = -1; + viewportTempY = -1; + mouseCrossX = 0; + mouseCrossY = 0; + mouseCrossState = 0; + mouseCrossColor = 0; + showMouseCross = true; + field754 = 0; + field881 = 0; + dragItemSlotSource = 0; + draggedWidgetX = 0; + draggedWidgetY = 0; + dragItemSlotDestination = 0; + field848 = false; + itemDragDuration = 0; + field762 = 0; + showLoadingMessages = true; + players = new Player[2048]; + localPlayerIndex = -1; + field766 = 0; + renderSelf = true; + drawPlayerNames = 0; + field769 = 0; + field770 = new int[1000]; + playerMenuOpcodes = new int[]{44, 45, 46, 47, 48, 49, 50, 51}; + playerMenuActions = new String[8]; + playerOptionsPriorities = new boolean[8]; + defaultRotations = new int[]{768, 1024, 1280, 512, 1536, 256, 0, 1792}; + combatTargetPlayerIndex = -1; + groundItems = new NodeDeque[4][104][104]; + pendingSpawns = new NodeDeque(); + projectiles = new NodeDeque(); + graphicsObjects = new NodeDeque(); + currentLevels = new int[25]; + levels = new int[25]; + experience = new int[25]; + leftClickOpensMenu = 0; + isMenuOpen = false; + menuOptionsCount = 0; + menuArguments1 = new int[500]; + menuArguments2 = new int[500]; + menuOpcodes = new int[500]; + menuIdentifiers = new int[500]; + menuActions = new String[500]; + menuTargets = new String[500]; + menuShiftClick = new boolean[500]; + followerOpsLowPriority = false; + shiftClickDrop = false; + tapToDrop = false; + showMouseOverText = true; + viewportX = -1; + viewportY = -1; + field799 = 0; + field751 = 50; + isItemSelected = 0; + selectedItemName = null; + isSpellSelected = false; + selectedSpellChildIndex = -1; + field836 = -1; + selectedSpellActionName = null; + selectedSpellName = null; + rootInterface = -1; + interfaceParents = new NodeHashTable(8); + field810 = 0; + field811 = -1; + chatEffects = 0; + field865 = 0; + meslayerContinueWidget = null; + runEnergy = 0; + weight = 0; + staffModLevel = 0; + followerIndex = -1; + playerMod = false; + viewportWidget = null; + clickedWidget = null; + clickedWidgetParent = null; + widgetClickX = 0; + widgetClickY = 0; + draggedOnWidget = null; + field859 = false; + field827 = -1; + field716 = -1; + field829 = false; + field853 = -1; + field862 = -1; + isDraggingWidget = false; + cycleCntr = 1; + field834 = new int[32]; + field835 = 0; + changedItemContainers = new int[32]; + field837 = 0; + changedSkills = new int[32]; + changedSkillsCount = 0; + chatCycle = 0; + field879 = 0; + field842 = 0; + field685 = 0; + field680 = 0; + field845 = 0; + mouseWheelRotation = 0; + scriptEvents = new NodeDeque(); + field715 = new NodeDeque(); + field849 = new NodeDeque(); + widgetFlags = new NodeHashTable(512); + rootWidgetCount = 0; + field852 = -2; + field901 = new boolean[100]; + field854 = new boolean[100]; + field855 = new boolean[100]; + rootWidgetXs = new int[100]; + rootWidgetYs = new int[100]; + rootWidgetWidths = new int[100]; + rootWidgetHeights = new int[100]; + gameDrawingMode = 0; + field861 = 0L; + isResizable = true; + field863 = new int[]{16776960, 16711680, 65280, 65535, 16711935, 16777215}; + publicChatMode = 0; + tradeChatMode = 0; + field871 = ""; + field868 = new long[100]; + field707 = 0; + field870 = 0; + field661 = new int[128]; + field693 = new int[128]; + field817 = -1L; + field874 = -1; + mapIconCount = 0; + mapIconXs = new int[1000]; + mapIconYs = new int[1000]; + mapIcons = new Sprite[1000]; + destinationX = 0; + destinationY = 0; + minimapState = 0; + currentTrackGroupId = -1; + field883 = false; + soundEffectCount = 0; + soundEffectIds = new int[50]; + queuedSoundEffectLoops = new int[50]; + queuedSoundEffectDelays = new int[50]; + soundLocations = new int[50]; + soundEffects = new SoundEffect[50]; + isCameraLocked = false; + field902 = new boolean[5]; + field679 = new int[5]; + field893 = new int[5]; + field705 = new int[5]; + field644 = new int[5]; + field896 = 256; + field897 = 205; + zoomHeight = 256; + zoomWidth = 320; + field900 = 1; + field731 = 32767; + field828 = 1; + field903 = 32767; + viewportOffsetX = 0; + viewportOffsetY = 0; + viewportWidth = 0; + viewportHeight = 0; + viewportZoom = 0; + playerAppearance = new PlayerAppearance(); + field813 = -1; + field911 = -1; + platformInfoProvider = new DesktopPlatformInfoProvider(); + grandExchangeOffers = new GrandExchangeOffer[8]; + GrandExchangeEvents_worldComparator = new GrandExchangeOfferOwnWorldComparator(); + field915 = -1; + archiveLoaders = new ArrayList(10); + archiveLoadersDone = 0; + field666 = 0; + field919 = new ApproximateRouteStrategy(); + field920 = new int[50]; + field921 = new int[50]; } - @ObfuscatedName("n") + @ObfuscatedName("y") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1977357922" + garbageValue = "312942940" ) @Export("resizeGame") protected final void resizeGame() { - field879 = User.currentTimeMillis() + 500L; // L: 4226 - this.resizeJS(); // L: 4227 - if (rootInterface != -1) { // L: 4228 + field861 = class298.currentTimeMillis() + 500L; + this.resizeJS(); + if (rootInterface != -1) { this.resizeRoot(true); } - } // L: 4229 + } - @ObfuscatedName("ah") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1060461771" + descriptor = "(B)V", + garbageValue = "-91" ) @Export("setUp") protected final void setUp() { - FaceNormal.method3392(new int[]{20, 260, 10000}, new int[]{1000, 100, 500}); // L: 798 - Coord.port1 = gameBuild == 0 ? 43594 : worldId + 40000; // L: 799 - Coord.port2 = gameBuild == 0 ? 443 : worldId + 50000; // L: 800 - class41.port3 = Coord.port1; // L: 801 - PlayerAppearance.field2559 = class224.field2570; // L: 802 - MouseRecorder.field628 = class224.field2573; // L: 803 - FriendLoginUpdate.field3671 = class224.field2571; // L: 804 - MusicPatchPcmStream.field2516 = class224.field2572; // L: 805 - class52.urlRequester = new UrlRequester(); // L: 806 - this.setUpKeyboard(); // L: 807 - this.setUpMouse(); // L: 808 - class8.mouseWheel = this.mouseWheel(); // L: 809 - GrandExchangeOfferWorldComparator.masterDisk = new ArchiveDisk(255, JagexCache.JagexCache_dat2File, JagexCache.JagexCache_idx255File, 500000); // L: 810 - AccessFile var2 = null; // L: 813 - ClientPreferences var3 = new ClientPreferences(); // L: 814 + int[] var1 = new int[]{20, 260, 10000}; + int[] var2 = new int[]{1000, 100, 500}; + if (var1 != null && var2 != null) { + SoundCache.ByteArrayPool_alternativeSizes = var1; + JagexCache.ByteArrayPool_altSizeArrayCounts = new int[var1.length]; + class23.ByteArrayPool_arrays = new byte[var1.length][][]; + + for (int var3 = 0; var3 < SoundCache.ByteArrayPool_alternativeSizes.length; ++var3) { + class23.ByteArrayPool_arrays[var3] = new byte[var2[var3]][]; + } + } else { + SoundCache.ByteArrayPool_alternativeSizes = null; + JagexCache.ByteArrayPool_altSizeArrayCounts = null; + class23.ByteArrayPool_arrays = null; + } + + class278.port1 = gameBuild == 0 ? 43594 : worldId + 40000; + Players.port2 = gameBuild == 0 ? 443 : worldId + 50000; + ArchiveDiskAction.port3 = class278.port1; + PlayerAppearance.field2551 = class224.field2569; + WorldMapScaleHandler.field366 = class224.field2565; + PlayerAppearance.field2557 = class224.field2566; + WorldMapCacheName.field331 = class224.field2567; + GrandExchangeOfferAgeComparator.urlRequester = new UrlRequester(); + this.setUpKeyboard(); + this.setUpMouse(); + KitDefinition.mouseWheel = this.mouseWheel(); + class7.masterDisk = new ArchiveDisk(255, JagexCache.JagexCache_dat2File, JagexCache.JagexCache_idx255File, 500000); + AccessFile var4 = null; + ClientPreferences var5 = new ClientPreferences(); try { - var2 = WorldMapID.getPreferencesFile("", GrandExchangeOfferWorldComparator.field58.name, false); // L: 816 - byte[] var4 = new byte[(int)var2.length()]; // L: 817 + var4 = WorldMapRegion.getPreferencesFile("", AttackOption.field1174.name, false); + byte[] var6 = new byte[(int)var4.length()]; - int var6; - for (int var5 = 0; var5 < var4.length; var5 += var6) { // L: 818 819 822 - var6 = var2.read(var4, var5, var4.length - var5); // L: 820 - if (var6 == -1) { // L: 821 + int var8; + for (int var7 = 0; var7 < var6.length; var7 += var8) { + var8 = var4.read(var6, var7, var6.length - var7); + if (var8 == -1) { throw new IOException(); } } - var3 = new ClientPreferences(new Buffer(var4)); // L: 824 - } catch (Exception var8) { // L: 826 + var5 = new ClientPreferences(new Buffer(var6)); + } catch (Exception var11) { } try { - if (var2 != null) { // L: 828 - var2.close(); + if (var4 != null) { + var4.close(); } - } catch (Exception var7) { // L: 830 + } catch (Exception var10) { } - GrandExchangeOfferAgeComparator.clientPreferences = var3; // L: 833 - this.setUpClipboard(); // L: 834 - String var9 = PendingSpawn.null_string; // L: 836 - class60.applet = this; // L: 838 - if (var9 != null) { // L: 839 - class60.field453 = var9; + Timer.clientPreferences = var5; + this.setUpClipboard(); + String var12 = Message.null_string; + class60.applet = this; + if (var12 != null) { + class60.field439 = var12; } - if (gameBuild != 0) { // L: 841 + if (gameBuild != 0) { displayFps = true; } - class277.setWindowedMode(GrandExchangeOfferAgeComparator.clientPreferences.windowMode); // L: 842 - WorldMapLabelSize.friendSystem = new FriendSystem(UserComparator4.loginType); // L: 843 - } // L: 844 + class13.setWindowedMode(Timer.clientPreferences.windowMode); + MilliClock.friendSystem = new FriendSystem(GrandExchangeOfferUnitPriceComparator.loginType); + } - @ObfuscatedName("az") + @ObfuscatedName("ak") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1100660042" + garbageValue = "-1376035132" ) @Export("doCycle") protected final void doCycle() { - ++cycle; // L: 847 - this.doCycleJs5(); // L: 848 + ++cycle; + this.doCycleJs5(); + WorldMapEvent.method809(); + UrlRequester.method3381(); + FontName.playPcmPlayers(); + GraphicsObject.method2090(); + class4.method53(); + if (KitDefinition.mouseWheel != null) { + int var1 = KitDefinition.mouseWheel.useRotation(); + mouseWheelRotation = var1; + } - while (true) { - ArchiveDiskAction var1; - synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue) { // L: 852 - var1 = (ArchiveDiskAction)ArchiveDiskActionHandler.ArchiveDiskActionHandler_responseQueue.removeLast(); // L: 853 - } // L: 854 + if (gameState == 0) { + Canvas.load(); + GrandExchangeEvent.method153(); + } else if (gameState == 5) { + SequenceDefinition.doCycleTitle(this); + Canvas.load(); + GrandExchangeEvent.method153(); + } else if (gameState != 10 && gameState != 11) { + if (gameState == 20) { + SequenceDefinition.doCycleTitle(this); + this.doCycleLoggedOut(); + } else if (gameState == 25) { + WorldMapSection2.method377(false); + field700 = 0; + boolean var43 = true; - if (var1 == null) { // L: 855 - int var45; - try { - if (class206.musicPlayerStatus == 1) { // L: 861 - var45 = class13.midiPcmStream.method3856(); // L: 862 - if (var45 > 0 && class13.midiPcmStream.isReady()) { // L: 863 - var45 -= MusicPatch.pcmSampleLength; // L: 864 - if (var45 < 0) { // L: 865 - var45 = 0; - } - - class13.midiPcmStream.setPcmStreamVolume(var45); // L: 866 - } else { - class13.midiPcmStream.clear(); // L: 869 - class13.midiPcmStream.removeAll(); // L: 870 - if (class23.musicTrackArchive != null) { // L: 871 - class206.musicPlayerStatus = 2; - } else { - class206.musicPlayerStatus = 0; // L: 872 - } - - InterfaceParent.musicTrack = null; // L: 873 - LoginType.soundCache = null; // L: 874 + int var2; + for (var2 = 0; var2 < WorldMapIcon_0.regionLandArchives.length; ++var2) { + if (class41.regionMapArchiveIds[var2] != -1 && WorldMapIcon_0.regionLandArchives[var2] == null) { + WorldMapIcon_0.regionLandArchives[var2] = GameShell.archive5.takeFile(class41.regionMapArchiveIds[var2], 0); + if (WorldMapIcon_0.regionLandArchives[var2] == null) { + var43 = false; + ++field700; + } + } + + if (GrandExchangeOfferTotalQuantityComparator.regionLandArchiveIds[var2] != -1 && MouseRecorder.regionMapArchives[var2] == null) { + MouseRecorder.regionMapArchives[var2] = GameShell.archive5.takeFileEncrypted(GrandExchangeOfferTotalQuantityComparator.regionLandArchiveIds[var2], 0, class227.xteaKeys[var2]); + if (MouseRecorder.regionMapArchives[var2] == null) { + var43 = false; + ++field700; } } - } catch (Exception var64) { // L: 877 - var64.printStackTrace(); // L: 878 - class13.midiPcmStream.clear(); // L: 879 - class206.musicPlayerStatus = 0; // L: 880 - InterfaceParent.musicTrack = null; // L: 881 - LoginType.soundCache = null; // L: 882 - class23.musicTrackArchive = null; // L: 883 } - FriendSystem.playPcmPlayers(); // L: 886 - FriendSystem.method2017(); // L: 887 - synchronized(MouseHandler.MouseHandler_instance) { // L: 889 - MouseHandler.MouseHandler_currentButton = MouseHandler.MouseHandler_currentButtonVolatile; // L: 890 - MouseHandler.MouseHandler_x = MouseHandler.MouseHandler_xVolatile; // L: 891 - MouseHandler.MouseHandler_y = MouseHandler.MouseHandler_yVolatile; // L: 892 - MouseHandler.MouseHandler_millis = MouseHandler.MouseHandler_lastMovedVolatile; // L: 893 - MouseHandler.MouseHandler_lastButton = MouseHandler.MouseHandler_lastButtonVolatile; // L: 894 - MouseHandler.MouseHandler_lastPressedX = MouseHandler.MouseHandler_lastPressedXVolatile; // L: 895 - MouseHandler.MouseHandler_lastPressedY = MouseHandler.MouseHandler_lastPressedYVolatile; // L: 896 - MouseHandler.MouseHandler_lastPressedTimeMillis = MouseHandler.MouseHandler_lastPressedTimeMillisVolatile; // L: 897 - MouseHandler.MouseHandler_lastButtonVolatile = 0; // L: 898 - } // L: 899 + if (!var43) { + field704 = 1; + } else { + field702 = 0; + var43 = true; - if (class8.mouseWheel != null) { // L: 901 - var45 = class8.mouseWheel.useRotation(); // L: 902 - mouseWheelRotation = var45; // L: 903 - } - - if (gameState == 0) { // L: 905 - class336.load(); // L: 906 - WorldMapLabel.method519(); // L: 907 - } else if (gameState == 5) { // L: 909 - Canvas.doCycleTitle(this); // L: 910 - class336.load(); // L: 911 - WorldMapLabel.method519(); // L: 912 - } else if (gameState != 10 && gameState != 11) { // L: 914 - if (gameState == 20) { // L: 915 - Canvas.doCycleTitle(this); // L: 916 - this.doCycleLoggedOut(); // L: 917 - } else if (gameState == 25) { // L: 919 - GrandExchangeOfferAgeComparator.method243(false); // L: 920 - field734 = 0; // L: 921 - boolean var75 = true; // L: 922 - - int var46; - for (var46 = 0; var46 < GrandExchangeOffer.regionLandArchives.length; ++var46) { // L: 923 - if (class22.regionMapArchiveIds[var46] != -1 && GrandExchangeOffer.regionLandArchives[var46] == null) { // L: 924 925 - GrandExchangeOffer.regionLandArchives[var46] = Varcs.archive5.takeFile(class22.regionMapArchiveIds[var46], 0); // L: 926 - if (GrandExchangeOffer.regionLandArchives[var46] == null) { // L: 927 - var75 = false; // L: 928 - ++field734; // L: 929 - } + int var4; + int var5; + int var10; + int var11; + int var12; + int var14; + int var15; + int var16; + int var17; + for (var2 = 0; var2 < WorldMapIcon_0.regionLandArchives.length; ++var2) { + byte[] var3 = MouseRecorder.regionMapArchives[var2]; + if (var3 != null) { + var4 = (FileSystem.regions[var2] >> 8) * 64 - NetFileRequest.baseX * 64; + var5 = (FileSystem.regions[var2] & 255) * 64 - class41.baseY * 64; + if (isInInstance) { + var4 = 10; + var5 = 10; } - if (WallDecoration.regionLandArchiveIds[var46] != -1 && GameShell.regionMapArchives[var46] == null) { // L: 933 934 - GameShell.regionMapArchives[var46] = Varcs.archive5.takeFileEncrypted(WallDecoration.regionLandArchiveIds[var46], 0, WorldMapEvent.xteaKeys[var46]); // L: 935 - if (GameShell.regionMapArchives[var46] == null) { // L: 936 - var75 = false; // L: 937 - ++field734; // L: 938 + boolean var8 = true; + Buffer var40 = new Buffer(var3); + var10 = -1; + + label565: + while (true) { + var11 = var40.method5557(); + if (var11 == 0) { + var43 &= var8; + break; + } + + var10 += var11; + var12 = 0; + boolean var38 = false; + + while (true) { + while (!var38) { + var14 = var40.readUShortSmart(); + if (var14 == 0) { + continue label565; + } + + var12 += var14 - 1; + var15 = var12 & 63; + var16 = var12 >> 6 & 63; + var17 = var40.readUnsignedByte() >> 2; + int var41 = var4 + var16; + int var42 = var5 + var15; + if (var41 > 0 && var42 > 0 && var41 < 103 && var42 < 103) { + ObjectDefinition var20 = WorldMapDecoration.getObjectDefinition(var10); + if (var17 != 22 || !isLowDetail || var20.int1 != 0 || var20.interactType == 1 || var20.boolean2) { + if (!var20.needsModelFiles()) { + ++field702; + var8 = false; + } + + var38 = true; + } + } + } + + var14 = var40.readUShortSmart(); + if (var14 == 0) { + break; + } + + var40.readUnsignedByte(); + } + } + } + } + + if (!var43) { + field704 = 2; + } else { + if (field704 != 0) { + Varps.drawLoadingMessage("Loading - please wait." + "
" + " (" + 100 + "%" + ")", true); + } + + FontName.playPcmPlayers(); + ArchiveLoader.scene.clear(); + + for (var2 = 0; var2 < 4; ++var2) { + collisionMaps[var2].clear(); + } + + int var36; + for (var2 = 0; var2 < 4; ++var2) { + for (var36 = 0; var36 < 104; ++var36) { + for (var4 = 0; var4 < 104; ++var4) { + Tiles.Tiles_renderFlags[var2][var36][var4] = 0; } } } - if (!var75) { // L: 943 - field722 = 1; // L: 944 - } else { - field848 = 0; // L: 947 - var75 = true; // L: 948 + FontName.playPcmPlayers(); + DirectByteArrayCopier.method3983(); + var2 = WorldMapIcon_0.regionLandArchives.length; - int var5; - Buffer var9; - int var10; - int var11; - int var12; - int var14; - int var15; - int var16; - int var17; - int var18; - int var19; - int var47; - for (var46 = 0; var46 < GrandExchangeOffer.regionLandArchives.length; ++var46) { // L: 949 - byte[] var3 = GameShell.regionMapArchives[var46]; // L: 950 - if (var3 != null) { // L: 951 - var47 = (class52.regions[var46] >> 8) * 64 - FloorDecoration.baseX; // L: 952 - var5 = (class52.regions[var46] & 255) * 64 - WorldMapData_0.baseY; // L: 953 - if (isInInstance) { // L: 954 - var47 = 10; // L: 955 - var5 = 10; // L: 956 - } + for (ObjectSound var44 = (ObjectSound)ObjectSound.objectSounds.last(); var44 != null; var44 = (ObjectSound)ObjectSound.objectSounds.previous()) { + if (var44.stream1 != null) { + WorldMapManager.pcmStreamMixer.removeSubStream(var44.stream1); + var44.stream1 = null; + } - boolean var8 = true; // L: 961 - var9 = new Buffer(var3); // L: 962 - var10 = -1; // L: 963 + if (var44.stream2 != null) { + WorldMapManager.pcmStreamMixer.removeSubStream(var44.stream2); + var44.stream2 = null; + } + } - label1377: - while (true) { - var11 = var9.method5743(); // L: 965 - if (var11 == 0) { // L: 966 - var75 &= var8; // L: 999 - break; - } - - var10 += var11; // L: 967 - var12 = 0; // L: 968 - boolean var13 = false; // L: 969 - - while (true) { - while (!var13) { // L: 971 - var14 = var9.readUShortSmart(); // L: 977 - if (var14 == 0) { // L: 978 - continue label1377; - } - - var12 += var14 - 1; // L: 979 - var15 = var12 & 63; // L: 980 - var16 = var12 >> 6 & 63; // L: 981 - var17 = var9.readUnsignedByte() >> 2; // L: 982 - var18 = var47 + var16; // L: 983 - var19 = var15 + var5; // L: 984 - if (var18 > 0 && var19 > 0 && var18 < 103 && var19 < 103) { // L: 985 - ObjectDefinition var20 = ScriptEvent.getObjectDefinition(var10); // L: 986 - if (var17 != 22 || !isLowDetail || var20.int1 != 0 || var20.interactType == 1 || var20.boolean2) { // L: 987 - if (!var20.needsModelFiles()) { // L: 988 - ++field848; // L: 989 - var8 = false; // L: 990 - } - - var13 = true; // L: 992 - } - } - } - - var14 = var9.readUShortSmart(); // L: 972 - if (var14 == 0) { // L: 973 - break; - } - - var9.readUnsignedByte(); // L: 974 - } - } + ObjectSound.objectSounds.clear(); + WorldMapSection2.method377(true); + int var6; + if (!isInInstance) { + byte[] var39; + for (var36 = 0; var36 < var2; ++var36) { + var4 = (FileSystem.regions[var36] >> 8) * 64 - NetFileRequest.baseX * 64; + var5 = (FileSystem.regions[var36] & 255) * 64 - class41.baseY * 64; + var39 = WorldMapIcon_0.regionLandArchives[var36]; + if (var39 != null) { + FontName.playPcmPlayers(); + class69.method1252(var39, var4, var5, class182.field2112 * 8 - 48, UserComparator6.field2013 * 8 - 48, collisionMaps); } } - if (!var75) { // L: 1002 - field722 = 2; // L: 1003 - } else { - if (field722 != 0) { // L: 1006 - AbstractWorldMapData.drawLoadingMessage("Loading - please wait." + "
" + " (" + 100 + "%" + ")", true); + for (var36 = 0; var36 < var2; ++var36) { + var4 = (FileSystem.regions[var36] >> 8) * 64 - NetFileRequest.baseX * 64; + var5 = (FileSystem.regions[var36] & 255) * 64 - class41.baseY * 64; + var39 = WorldMapIcon_0.regionLandArchives[var36]; + if (var39 == null && UserComparator6.field2013 < 800) { + FontName.playPcmPlayers(); + class39.method594(var4, var5, 64, 64); } + } - FriendSystem.playPcmPlayers(); // L: 1007 - ModeWhere.scene.clear(); // L: 1008 + WorldMapSection2.method377(true); - for (var46 = 0; var46 < 4; ++var46) { // L: 1009 - collisionMaps[var46].clear(); + for (var36 = 0; var36 < var2; ++var36) { + byte[] var37 = MouseRecorder.regionMapArchives[var36]; + if (var37 != null) { + var5 = (FileSystem.regions[var36] >> 8) * 64 - NetFileRequest.baseX * 64; + var6 = (FileSystem.regions[var36] & 255) * 64 - class41.baseY * 64; + FontName.playPcmPlayers(); + class169.method3533(var37, var5, var6, ArchiveLoader.scene, collisionMaps); } + } + } - int var48; - for (var46 = 0; var46 < 4; ++var46) { // L: 1010 - for (var48 = 0; var48 < 104; ++var48) { // L: 1011 - for (var47 = 0; var47 < 104; ++var47) { // L: 1012 - Tiles.Tiles_renderFlags[var46][var48][var47] = 0; // L: 1013 + int var7; + int var9; + int var46; + if (isInInstance) { + var36 = 0; + + label477: + while (true) { + if (var36 >= 4) { + for (var36 = 0; var36 < 13; ++var36) { + for (var4 = 0; var4 < 13; ++var4) { + var5 = instanceChunkTemplates[0][var36][var4]; + if (var5 == -1) { + class39.method594(var36 * 8, var4 * 8, 8, 8); + } } } - } - FriendSystem.playPcmPlayers(); // L: 1017 - AbstractArchive.method4397(); // L: 1018 - var46 = GrandExchangeOffer.regionLandArchives.length; // L: 1019 + WorldMapSection2.method377(true); + var36 = 0; - for (ObjectSound var65 = (ObjectSound)ObjectSound.objectSounds.last(); var65 != null; var65 = (ObjectSound)ObjectSound.objectSounds.previous()) { // L: 1021 - if (var65.stream1 != null) { // L: 1022 - GrandExchangeEvents.pcmStreamMixer.removeSubStream(var65.stream1); // L: 1023 - var65.stream1 = null; // L: 1024 - } - - if (var65.stream2 != null) { // L: 1026 - GrandExchangeEvents.pcmStreamMixer.removeSubStream(var65.stream2); // L: 1027 - var65.stream2 = null; // L: 1028 - } - } - - ObjectSound.objectSounds.clear(); // L: 1031 - GrandExchangeOfferAgeComparator.method243(true); // L: 1033 - int var6; - int var7; - int[] var10000; - int var21; - int var22; - int var53; - int var69; - int var71; - if (!isInInstance) { // L: 1034 - var48 = 0; - - label1309: while (true) { - byte[] var49; - if (var48 >= var46) { - for (var48 = 0; var48 < var46; ++var48) { // L: 1063 - var47 = (class52.regions[var48] >> 8) * 64 - FloorDecoration.baseX; // L: 1064 - var5 = (class52.regions[var48] & 255) * 64 - WorldMapData_0.baseY; // L: 1065 - var49 = GrandExchangeOffer.regionLandArchives[var48]; // L: 1066 - if (var49 == null && AbstractWorldMapData.field198 < 800) { // L: 1067 - FriendSystem.playPcmPlayers(); // L: 1068 - method1838(var47, var5, 64, 64); // L: 1069 - } - } + if (var36 >= 4) { + break label477; + } - GrandExchangeOfferAgeComparator.method243(true); // L: 1072 - var48 = 0; + FontName.playPcmPlayers(); - while (true) { - if (var48 >= var46) { - break label1309; - } + for (var4 = 0; var4 < 13; ++var4) { + label434: + for (var5 = 0; var5 < 13; ++var5) { + var6 = instanceChunkTemplates[var36][var4][var5]; + if (var6 != -1) { + var7 = var6 >> 24 & 3; + var46 = var6 >> 1 & 3; + var9 = var6 >> 14 & 1023; + var10 = var6 >> 3 & 2047; + var11 = (var9 / 8 << 8) + var10 / 8; - byte[] var4 = GameShell.regionMapArchives[var48]; // L: 1074 - if (var4 != null) { // L: 1075 - var5 = (class52.regions[var48] >> 8) * 64 - FloorDecoration.baseX; // L: 1076 - var6 = (class52.regions[var48] & 255) * 64 - WorldMapData_0.baseY; // L: 1077 - FriendSystem.playPcmPlayers(); // L: 1078 - Scene var51 = ModeWhere.scene; // L: 1079 - CollisionMap[] var52 = collisionMaps; // L: 1080 - var9 = new Buffer(var4); // L: 1082 - var10 = -1; // L: 1083 + for (var12 = 0; var12 < FileSystem.regions.length; ++var12) { + if (FileSystem.regions[var12] == var11 && MouseRecorder.regionMapArchives[var12] != null) { + byte[] var13 = MouseRecorder.regionMapArchives[var12]; + var14 = var4 * 8; + var15 = var5 * 8; + var16 = (var9 & 7) * 8; + var17 = (var10 & 7) * 8; + Scene var18 = ArchiveLoader.scene; + CollisionMap[] var19 = collisionMaps; + Buffer var47 = new Buffer(var13); + int var21 = -1; - while (true) { - var11 = var9.method5743(); // L: 1085 - if (var11 == 0) { // L: 1086 - break; - } - - var10 += var11; // L: 1087 - var12 = 0; // L: 1088 - - while (true) { - var71 = var9.readUShortSmart(); // L: 1090 - if (var71 == 0) { // L: 1091 - break; - } - - var12 += var71 - 1; // L: 1092 - var14 = var12 & 63; // L: 1093 - var15 = var12 >> 6 & 63; // L: 1094 - var16 = var12 >> 12; // L: 1095 - var17 = var9.readUnsignedByte(); // L: 1096 - var18 = var17 >> 2; // L: 1097 - var19 = var17 & 3; // L: 1098 - var53 = var5 + var15; // L: 1099 - var21 = var14 + var6; // L: 1100 - if (var53 > 0 && var21 > 0 && var53 < 103 && var21 < 103) { // L: 1101 - var22 = var16; // L: 1102 - if ((Tiles.Tiles_renderFlags[1][var53][var21] & 2) == 2) { // L: 1103 - var22 = var16 - 1; + while (true) { + int var22 = var47.method5557(); + if (var22 == 0) { + continue label434; } - CollisionMap var23 = null; // L: 1104 - if (var22 >= 0) { // L: 1105 - var23 = var52[var22]; - } + var21 += var22; + int var23 = 0; - NPC.method2160(var16, var53, var21, var10, var19, var18, var51, var23); // L: 1106 - } - } - } - } + while (true) { + int var24 = var47.readUShortSmart(); + if (var24 == 0) { + break; + } - ++var48; // L: 1073 - } - } - - var47 = (class52.regions[var48] >> 8) * 64 - FloorDecoration.baseX; // L: 1036 - var5 = (class52.regions[var48] & 255) * 64 - WorldMapData_0.baseY; // L: 1037 - var49 = GrandExchangeOffer.regionLandArchives[var48]; // L: 1038 - if (var49 != null) { // L: 1039 - FriendSystem.playPcmPlayers(); // L: 1040 - var7 = GrandExchangeEvent.field78 * 8 - 48; // L: 1041 - var69 = AbstractWorldMapData.field198 * 8 - 48; // L: 1042 - CollisionMap[] var70 = collisionMaps; // L: 1043 - var10 = 0; - - label1306: - while (true) { - if (var10 >= 4) { - Buffer var50 = new Buffer(var49); // L: 1052 - var11 = 0; - - while (true) { - if (var11 >= 4) { - break label1306; - } - - for (var12 = 0; var12 < 64; ++var12) { // L: 1054 - for (var71 = 0; var71 < 64; ++var71) { // L: 1055 - HealthBarUpdate.loadTerrain(var50, var11, var47 + var12, var5 + var71, var7, var69, 0); // L: 1056 - } - } - - ++var11; // L: 1053 - } - } - - for (var11 = 0; var11 < 64; ++var11) { // L: 1046 - for (var12 = 0; var12 < 64; ++var12) { // L: 1047 - if (var11 + var47 > 0 && var47 + var11 < 103 && var12 + var5 > 0 && var5 + var12 < 103) { // L: 1048 - var10000 = var70[var10].flags[var11 + var47]; - var10000[var5 + var12] &= -16777217; - } - } - } - - ++var10; // L: 1045 - } - } - - ++var48; // L: 1035 - } - } - - int var24; - int var25; - int var26; - int var27; - int var28; - int var29; - int var30; - int var32; - int var33; - int var34; - int var54; - int var58; - if (isInInstance) { // L: 1114 - var48 = 0; - - label1242: - while (true) { - if (var48 >= 4) { - for (var48 = 0; var48 < 13; ++var48) { // L: 1141 - for (var47 = 0; var47 < 13; ++var47) { // L: 1142 - var5 = instanceChunkTemplates[0][var48][var47]; // L: 1143 - if (var5 == -1) { // L: 1144 - method1838(var48 * 8, var47 * 8, 8, 8); // L: 1145 - } - } - } - - GrandExchangeOfferAgeComparator.method243(true); // L: 1149 - var48 = 0; - - while (true) { - if (var48 >= 4) { - break label1242; - } - - FriendSystem.playPcmPlayers(); // L: 1151 - - for (var47 = 0; var47 < 13; ++var47) { // L: 1152 - label1199: - for (var5 = 0; var5 < 13; ++var5) { // L: 1153 - var6 = instanceChunkTemplates[var48][var47][var5]; // L: 1154 - if (var6 != -1) { // L: 1155 - var7 = var6 >> 24 & 3; // L: 1156 - var69 = var6 >> 1 & 3; // L: 1157 - var54 = var6 >> 14 & 1023; // L: 1158 - var10 = var6 >> 3 & 2047; // L: 1159 - var11 = (var54 / 8 << 8) + var10 / 8; // L: 1160 - - for (var12 = 0; var12 < class52.regions.length; ++var12) { // L: 1161 - if (class52.regions[var12] == var11 && GameShell.regionMapArchives[var12] != null) { // L: 1162 - byte[] var55 = GameShell.regionMapArchives[var12]; // L: 1163 - var14 = var47 * 8; // L: 1164 - var15 = var5 * 8; // L: 1165 - var16 = (var54 & 7) * 8; // L: 1166 - var17 = (var10 & 7) * 8; // L: 1167 - Scene var56 = ModeWhere.scene; // L: 1168 - CollisionMap[] var57 = collisionMaps; // L: 1169 - Buffer var72 = new Buffer(var55); // L: 1171 - var21 = -1; // L: 1172 - - while (true) { - var22 = var72.method5743(); // L: 1174 - if (var22 == 0) { // L: 1175 - continue label1199; - } - - var21 += var22; // L: 1176 - var58 = 0; // L: 1177 - - while (true) { - var24 = var72.readUShortSmart(); // L: 1179 - if (var24 == 0) { // L: 1180 - break; + var23 += var24 - 1; + int var25 = var23 & 63; + int var26 = var23 >> 6 & 63; + int var27 = var23 >> 12; + int var28 = var47.readUnsignedByte(); + int var29 = var28 >> 2; + int var30 = var28 & 3; + if (var27 == var7 && var26 >= var16 && var26 < var16 + 8 && var25 >= var17 && var25 < var17 + 8) { + ObjectDefinition var31 = WorldMapDecoration.getObjectDefinition(var21); + int var32 = var14 + HitSplatDefinition.method4612(var26 & 7, var25 & 7, var46, var31.sizeX, var31.sizeY, var30); + int var33 = var15 + World.method1871(var26 & 7, var25 & 7, var46, var31.sizeX, var31.sizeY, var30); + if (var32 > 0 && var33 > 0 && var32 < 103 && var33 < 103) { + int var34 = var36; + if ((Tiles.Tiles_renderFlags[1][var32][var33] & 2) == 2) { + var34 = var36 - 1; } - var58 += var24 - 1; // L: 1181 - var25 = var58 & 63; // L: 1182 - var26 = var58 >> 6 & 63; // L: 1183 - var27 = var58 >> 12; // L: 1184 - var28 = var72.readUnsignedByte(); // L: 1185 - var29 = var28 >> 2; // L: 1186 - var30 = var28 & 3; // L: 1187 - if (var7 == var27 && var26 >= var16 && var26 < var16 + 8 && var25 >= var17 && var25 < var17 + 8) { // L: 1188 - ObjectDefinition var31 = ScriptEvent.getObjectDefinition(var21); // L: 1189 - var32 = var14 + TextureProvider.method2906(var26 & 7, var25 & 7, var69, var31.sizeX, var31.sizeY, var30); // L: 1190 - var33 = var15 + InterfaceParent.method1272(var26 & 7, var25 & 7, var69, var31.sizeX, var31.sizeY, var30); // L: 1191 - if (var32 > 0 && var33 > 0 && var32 < 103 && var33 < 103) { // L: 1192 - var34 = var48; // L: 1193 - if ((Tiles.Tiles_renderFlags[1][var32][var33] & 2) == 2) { // L: 1194 - var34 = var48 - 1; - } - - CollisionMap var35 = null; // L: 1195 - if (var34 >= 0) { // L: 1196 - var35 = var57[var34]; - } - - NPC.method2160(var48, var32, var33, var21, var69 + var30 & 3, var29, var56, var35); // L: 1197 - } + CollisionMap var35 = null; + if (var34 >= 0) { + var35 = var19[var34]; } + + class7.method90(var36, var32, var33, var21, var30 + var46 & 3, var29, var18, var35); } } } @@ -2108,728 +1955,299 @@ public final class Client extends GameShell implements Usernamed { } } } - - ++var48; // L: 1150 } } - FriendSystem.playPcmPlayers(); // L: 1116 + ++var36; + } + } - for (var47 = 0; var47 < 13; ++var47) { // L: 1117 - for (var5 = 0; var5 < 13; ++var5) { // L: 1118 - boolean var68 = false; // L: 1119 - var7 = instanceChunkTemplates[var48][var47][var5]; // L: 1120 - if (var7 != -1) { // L: 1121 - var69 = var7 >> 24 & 3; // L: 1122 - var54 = var7 >> 1 & 3; // L: 1123 - var10 = var7 >> 14 & 1023; // L: 1124 - var11 = var7 >> 3 & 2047; // L: 1125 - var12 = (var10 / 8 << 8) + var11 / 8; // L: 1126 + FontName.playPcmPlayers(); - for (var71 = 0; var71 < class52.regions.length; ++var71) { // L: 1127 - if (class52.regions[var71] == var12 && GrandExchangeOffer.regionLandArchives[var71] != null) { // L: 1128 - MouseHandler.method1174(GrandExchangeOffer.regionLandArchives[var71], var48, var47 * 8, var5 * 8, var69, (var10 & 7) * 8, (var11 & 7) * 8, var54, collisionMaps); // L: 1129 - var68 = true; // L: 1130 - break; // L: 1131 - } - } - } + for (var4 = 0; var4 < 13; ++var4) { + for (var5 = 0; var5 < 13; ++var5) { + boolean var45 = false; + var7 = instanceChunkTemplates[var36][var4][var5]; + if (var7 != -1) { + var46 = var7 >> 24 & 3; + var9 = var7 >> 1 & 3; + var10 = var7 >> 14 & 1023; + var11 = var7 >> 3 & 2047; + var12 = (var10 / 8 << 8) + var11 / 8; - if (!var68) { // L: 1135 - NetFileRequest.method4293(var48, var47 * 8, var5 * 8); // L: 1136 + for (int var50 = 0; var50 < FileSystem.regions.length; ++var50) { + if (FileSystem.regions[var50] == var12 && WorldMapIcon_0.regionLandArchives[var50] != null) { + WorldMapDecoration.method381(WorldMapIcon_0.regionLandArchives[var50], var36, var4 * 8, var5 * 8, var46, (var10 & 7) * 8, (var11 & 7) * 8, var9, collisionMaps); + var45 = true; + break; } } } - ++var48; // L: 1115 - } - } - - GrandExchangeOfferAgeComparator.method243(true); // L: 1211 - FriendSystem.playPcmPlayers(); // L: 1212 - Scene var66 = ModeWhere.scene; // L: 1213 - CollisionMap[] var67 = collisionMaps; // L: 1214 - - for (var5 = 0; var5 < 4; ++var5) { // L: 1216 - for (var6 = 0; var6 < 104; ++var6) { // L: 1217 - for (var7 = 0; var7 < 104; ++var7) { // L: 1218 - if ((Tiles.Tiles_renderFlags[var5][var6][var7] & 1) == 1) { // L: 1219 - var69 = var5; // L: 1220 - if ((Tiles.Tiles_renderFlags[1][var6][var7] & 2) == 2) { // L: 1221 - var69 = var5 - 1; - } - - if (var69 >= 0) { // L: 1222 - var67[var69].setBlockedByFloor(var6, var7); - } - } + if (!var45) { + ReflectionCheck.method2350(var36, var4 * 8, var5 * 8); } } } - Tiles.field539 += (int)(Math.random() * 5.0D) - 2; // L: 1227 - if (Tiles.field539 < -8) { // L: 1228 - Tiles.field539 = -8; - } - - if (Tiles.field539 > 8) { // L: 1229 - Tiles.field539 = 8; - } - - Tiles.field540 += (int)(Math.random() * 5.0D) - 2; // L: 1230 - if (Tiles.field540 < -16) { // L: 1231 - Tiles.field540 = -16; - } - - if (Tiles.field540 > 16) { // L: 1232 - Tiles.field540 = 16; - } - - for (var5 = 0; var5 < 4; ++var5) { // L: 1233 - byte[][] var76 = class299.field3679[var5]; // L: 1234 - var12 = (int)Math.sqrt(5100.0D); // L: 1240 - var71 = var12 * 768 >> 8; // L: 1241 - - for (var14 = 1; var14 < 103; ++var14) { // L: 1242 - for (var15 = 1; var15 < 103; ++var15) { // L: 1243 - var16 = Tiles.Tiles_heights[var5][var15 + 1][var14] - Tiles.Tiles_heights[var5][var15 - 1][var14]; // L: 1244 - var17 = Tiles.Tiles_heights[var5][var15][var14 + 1] - Tiles.Tiles_heights[var5][var15][var14 - 1]; // L: 1245 - var18 = (int)Math.sqrt((double)(var16 * var16 + var17 * var17 + 65536)); // L: 1246 - var19 = (var16 << 8) / var18; // L: 1247 - var53 = 65536 / var18; // L: 1248 - var21 = (var17 << 8) / var18; // L: 1249 - var22 = (var19 * -50 + var21 * -50 + var53 * -10) / var71 + 96; // L: 1250 - var58 = (var76[var15 - 1][var14] >> 2) + (var76[var15][var14 - 1] >> 2) + (var76[var15 + 1][var14] >> 3) + (var76[var15][var14 + 1] >> 3) + (var76[var15][var14] >> 1); // L: 1251 - UserComparator10.field1999[var15][var14] = var22 - var58; // L: 1252 - } - } - - for (var14 = 0; var14 < 104; ++var14) { // L: 1255 - GrandExchangeOfferOwnWorldComparator.Tiles_hue[var14] = 0; // L: 1256 - class238.Tiles_saturation[var14] = 0; // L: 1257 - TileItemPile.Tiles_lightness[var14] = 0; // L: 1258 - class248.Tiles_hueMultiplier[var14] = 0; // L: 1259 - class1.field1[var14] = 0; // L: 1260 - } - - for (var14 = -5; var14 < 109; ++var14) { // L: 1262 - for (var15 = 0; var15 < 104; ++var15) { // L: 1263 - var16 = var14 + 5; // L: 1264 - int var10002; - if (var16 >= 0 && var16 < 104) { // L: 1265 - var17 = TileItem.field1273[var5][var16][var15] & 255; // L: 1266 - if (var17 > 0) { // L: 1267 - FloorUnderlayDefinition var79 = class234.method4260(var17 - 1); // L: 1268 - var10000 = GrandExchangeOfferOwnWorldComparator.Tiles_hue; // L: 1269 - var10000[var15] += var79.hue; - var10000 = class238.Tiles_saturation; // L: 1270 - var10000[var15] += var79.saturation; - var10000 = TileItemPile.Tiles_lightness; // L: 1271 - var10000[var15] += var79.lightness; - var10000 = class248.Tiles_hueMultiplier; // L: 1272 - var10000[var15] += var79.hueMultiplier; - var10002 = class1.field1[var15]++; // L: 1273 - } - } - - var17 = var14 - 5; // L: 1276 - if (var17 >= 0 && var17 < 104) { // L: 1277 - var18 = TileItem.field1273[var5][var17][var15] & 255; // L: 1278 - if (var18 > 0) { // L: 1279 - FloorUnderlayDefinition var80 = class234.method4260(var18 - 1); // L: 1280 - var10000 = GrandExchangeOfferOwnWorldComparator.Tiles_hue; // L: 1281 - var10000[var15] -= var80.hue; - var10000 = class238.Tiles_saturation; // L: 1282 - var10000[var15] -= var80.saturation; - var10000 = TileItemPile.Tiles_lightness; // L: 1283 - var10000[var15] -= var80.lightness; - var10000 = class248.Tiles_hueMultiplier; // L: 1284 - var10000[var15] -= var80.hueMultiplier; - var10002 = class1.field1[var15]--; // L: 1285 - } - } - } - - if (var14 >= 1 && var14 < 103) { // L: 1289 - var15 = 0; // L: 1290 - var16 = 0; // L: 1291 - var17 = 0; // L: 1292 - var18 = 0; // L: 1293 - var19 = 0; // L: 1294 - - for (var53 = -5; var53 < 109; ++var53) { // L: 1295 - var21 = var53 + 5; // L: 1296 - if (var21 >= 0 && var21 < 104) { // L: 1297 - var15 += GrandExchangeOfferOwnWorldComparator.Tiles_hue[var21]; // L: 1298 - var16 += class238.Tiles_saturation[var21]; // L: 1299 - var17 += TileItemPile.Tiles_lightness[var21]; // L: 1300 - var18 += class248.Tiles_hueMultiplier[var21]; // L: 1301 - var19 += class1.field1[var21]; // L: 1302 - } - - var22 = var53 - 5; // L: 1304 - if (var22 >= 0 && var22 < 104) { // L: 1305 - var15 -= GrandExchangeOfferOwnWorldComparator.Tiles_hue[var22]; // L: 1306 - var16 -= class238.Tiles_saturation[var22]; // L: 1307 - var17 -= TileItemPile.Tiles_lightness[var22]; // L: 1308 - var18 -= class248.Tiles_hueMultiplier[var22]; // L: 1309 - var19 -= class1.field1[var22]; // L: 1310 - } - - if (var53 >= 1 && var53 < 103 && (!isLowDetail || (Tiles.Tiles_renderFlags[0][var14][var53] & 2) != 0 || (Tiles.Tiles_renderFlags[var5][var14][var53] & 16) == 0)) { // L: 1312 1313 1314 1315 - if (var5 < Tiles.Tiles_minPlane) { // L: 1318 - Tiles.Tiles_minPlane = var5; - } - - var58 = TileItem.field1273[var5][var14][var53] & 255; // L: 1319 - var24 = NPC.field1161[var5][var14][var53] & 255; // L: 1320 - if (var58 > 0 || var24 > 0) { // L: 1321 - var25 = Tiles.Tiles_heights[var5][var14][var53]; // L: 1322 - var26 = Tiles.Tiles_heights[var5][var14 + 1][var53]; // L: 1323 - var27 = Tiles.Tiles_heights[var5][var14 + 1][var53 + 1]; // L: 1324 - var28 = Tiles.Tiles_heights[var5][var14][var53 + 1]; // L: 1325 - var29 = UserComparator10.field1999[var14][var53]; // L: 1326 - var30 = UserComparator10.field1999[var14 + 1][var53]; // L: 1327 - int var59 = UserComparator10.field1999[var14 + 1][var53 + 1]; // L: 1328 - var32 = UserComparator10.field1999[var14][var53 + 1]; // L: 1329 - var33 = -1; // L: 1330 - var34 = -1; // L: 1331 - int var36; - int var60; - if (var58 > 0) { // L: 1332 - var60 = var15 * 256 / var18; // L: 1333 - var36 = var16 / var19; // L: 1334 - int var37 = var17 / var19; // L: 1335 - var33 = WorldMapEvent.hslToRgb(var60, var36, var37); // L: 1336 - var60 = var60 + Tiles.field539 & 255; // L: 1337 - var37 += Tiles.field540; // L: 1338 - if (var37 < 0) { // L: 1339 - var37 = 0; - } else if (var37 > 255) { // L: 1340 - var37 = 255; - } - - var34 = WorldMapEvent.hslToRgb(var60, var36, var37); // L: 1341 - } - - if (var5 > 0) { // L: 1343 - boolean var81 = true; // L: 1344 - if (var58 == 0 && Tiles.field531[var5][var14][var53] != 0) { // L: 1345 - var81 = false; - } - - if (var24 > 0 && !PendingSpawn.method1839(var24 - 1).hideUnderlay) { // L: 1346 - var81 = false; - } - - if (var81 && var26 == var25 && var25 == var27 && var25 == var28) { // L: 1347 1348 - var10000 = UserComparator10.field2000[var5][var14]; - var10000[var53] |= 2340; - } - } - - var60 = 0; // L: 1351 - if (var34 != -1) { // L: 1352 - var60 = Rasterizer3D.Rasterizer3D_colorPalette[VarcInt.method4555(var34, 96)]; - } - - if (var24 == 0) { // L: 1353 - var66.addTile(var5, var14, var53, 0, 0, -1, var25, var26, var27, var28, VarcInt.method4555(var33, var29), VarcInt.method4555(var33, var30), VarcInt.method4555(var33, var59), VarcInt.method4555(var33, var32), 0, 0, 0, 0, var60, 0); // L: 1354 - } else { - var36 = Tiles.field531[var5][var14][var53] + 1; // L: 1357 - byte var74 = UserComparator2.field3859[var5][var14][var53]; // L: 1358 - FloorOverlayDefinition var38 = PendingSpawn.method1839(var24 - 1); // L: 1359 - int var39 = var38.texture; // L: 1360 - int var40; - int var41; - int var42; - int var43; - if (var39 >= 0) { // L: 1363 - var41 = Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var39); // L: 1364 - var40 = -1; // L: 1365 - } else if (var38.primaryRgb == 16711935) { // L: 1368 - var40 = -2; // L: 1369 - var39 = -1; // L: 1370 - var41 = -2; // L: 1371 - } else { - var40 = WorldMapEvent.hslToRgb(var38.hue, var38.saturation, var38.lightness); // L: 1374 - var42 = var38.hue + Tiles.field539 & 255; // L: 1375 - var43 = var38.lightness + Tiles.field540; // L: 1376 - if (var43 < 0) { // L: 1377 - var43 = 0; - } else if (var43 > 255) { // L: 1378 - var43 = 255; - } - - var41 = WorldMapEvent.hslToRgb(var42, var38.saturation, var43); // L: 1379 - } - - var42 = 0; // L: 1382 - if (var41 != -2) { // L: 1383 - var42 = Rasterizer3D.Rasterizer3D_colorPalette[class1.method20(var41, 96)]; - } - - if (var38.secondaryRgb != -1) { // L: 1384 - var43 = var38.secondaryHue + Tiles.field539 & 255; // L: 1385 - int var44 = var38.secondaryLightness + Tiles.field540; // L: 1386 - if (var44 < 0) { // L: 1387 - var44 = 0; - } else if (var44 > 255) { // L: 1388 - var44 = 255; - } - - var41 = WorldMapEvent.hslToRgb(var43, var38.secondarySaturation, var44); // L: 1389 - var42 = Rasterizer3D.Rasterizer3D_colorPalette[class1.method20(var41, 96)]; // L: 1390 - } - - var66.addTile(var5, var14, var53, var36, var74, var39, var25, var26, var27, var28, VarcInt.method4555(var33, var29), VarcInt.method4555(var33, var30), VarcInt.method4555(var33, var59), VarcInt.method4555(var33, var32), class1.method20(var40, var29), class1.method20(var40, var30), class1.method20(var40, var59), class1.method20(var40, var32), var60, var42); // L: 1392 - } - } - } - } - } - } - - for (var14 = 1; var14 < 103; ++var14) { // L: 1399 - for (var15 = 1; var15 < 103; ++var15) { // L: 1400 - if ((Tiles.Tiles_renderFlags[var5][var15][var14] & 8) != 0) { // L: 1407 - var53 = 0; // L: 1408 - } else if (var5 > 0 && (Tiles.Tiles_renderFlags[1][var15][var14] & 2) != 0) { // L: 1411 - var53 = var5 - 1; // L: 1412 - } else { - var53 = var5; // L: 1415 - } - - var66.setTileMinPlane(var5, var15, var14, var53); // L: 1417 - } - } - - TileItem.field1273[var5] = null; // L: 1420 - NPC.field1161[var5] = null; // L: 1421 - Tiles.field531[var5] = null; // L: 1422 - UserComparator2.field3859[var5] = null; // L: 1423 - class299.field3679[var5] = null; // L: 1424 - } - - var66.method3248(-50, -10, -50); // L: 1426 - - for (var5 = 0; var5 < 104; ++var5) { // L: 1427 - for (var6 = 0; var6 < 104; ++var6) { // L: 1428 - if ((Tiles.Tiles_renderFlags[1][var5][var6] & 2) == 2) { // L: 1429 - var66.setLinkBelow(var5, var6); - } - } - } - - var5 = 1; // L: 1432 - var6 = 2; // L: 1433 - var7 = 4; // L: 1434 - - for (var69 = 0; var69 < 4; ++var69) { // L: 1435 - if (var69 > 0) { // L: 1436 - var5 <<= 3; // L: 1437 - var6 <<= 3; // L: 1438 - var7 <<= 3; // L: 1439 - } - - for (var54 = 0; var54 <= var69; ++var54) { // L: 1441 - for (var10 = 0; var10 <= 104; ++var10) { // L: 1442 - for (var11 = 0; var11 <= 104; ++var11) { // L: 1443 - short var73; - if ((UserComparator10.field2000[var54][var11][var10] & var5) != 0) { // L: 1444 - var12 = var10; // L: 1445 - var71 = var10; // L: 1446 - var14 = var54; // L: 1447 - - for (var15 = var54; var12 > 0 && (UserComparator10.field2000[var54][var11][var12 - 1] & var5) != 0; --var12) { // L: 1448 1449 - } - - while (var71 < 104 && (UserComparator10.field2000[var54][var11][var71 + 1] & var5) != 0) { // L: 1450 - ++var71; - } - - label918: - while (var14 > 0) { // L: 1451 - for (var16 = var12; var16 <= var71; ++var16) { // L: 1452 - if ((UserComparator10.field2000[var14 - 1][var11][var16] & var5) == 0) { - break label918; - } - } - - --var14; // L: 1453 - } - - label907: - while (var15 < var69) { // L: 1455 - for (var16 = var12; var16 <= var71; ++var16) { // L: 1456 - if ((UserComparator10.field2000[var15 + 1][var11][var16] & var5) == 0) { - break label907; - } - } - - ++var15; // L: 1457 - } - - var16 = (var71 - var12 + 1) * (var15 + 1 - var14); // L: 1459 - if (var16 >= 8) { // L: 1460 - var73 = 240; // L: 1461 - var18 = Tiles.Tiles_heights[var15][var11][var12] - var73; // L: 1462 - var19 = Tiles.Tiles_heights[var14][var11][var12]; // L: 1463 - Scene.Scene_addOccluder(var69, 1, var11 * 128, var11 * 128, var12 * 128, var71 * 128 + 128, var18, var19); // L: 1464 - - for (var53 = var14; var53 <= var15; ++var53) { // L: 1465 - for (var21 = var12; var21 <= var71; ++var21) { // L: 1466 - var10000 = UserComparator10.field2000[var53][var11]; - var10000[var21] &= ~var5; - } - } - } - } - - if ((UserComparator10.field2000[var54][var11][var10] & var6) != 0) { // L: 1470 - var12 = var11; // L: 1471 - var71 = var11; // L: 1472 - var14 = var54; // L: 1473 - - for (var15 = var54; var12 > 0 && (UserComparator10.field2000[var54][var12 - 1][var10] & var6) != 0; --var12) { // L: 1474 1475 - } - - while (var71 < 104 && (UserComparator10.field2000[var54][var71 + 1][var10] & var6) != 0) { // L: 1476 - ++var71; - } - - label971: - while (var14 > 0) { // L: 1477 - for (var16 = var12; var16 <= var71; ++var16) { // L: 1478 - if ((UserComparator10.field2000[var14 - 1][var16][var10] & var6) == 0) { - break label971; - } - } - - --var14; // L: 1479 - } - - label960: - while (var15 < var69) { // L: 1481 - for (var16 = var12; var16 <= var71; ++var16) { // L: 1482 - if ((UserComparator10.field2000[var15 + 1][var16][var10] & var6) == 0) { - break label960; - } - } - - ++var15; // L: 1483 - } - - var16 = (var71 - var12 + 1) * (var15 + 1 - var14); // L: 1485 - if (var16 >= 8) { // L: 1486 - var73 = 240; // L: 1487 - var18 = Tiles.Tiles_heights[var15][var12][var10] - var73; // L: 1488 - var19 = Tiles.Tiles_heights[var14][var12][var10]; // L: 1489 - Scene.Scene_addOccluder(var69, 2, var12 * 128, var71 * 128 + 128, var10 * 128, var10 * 128, var18, var19); // L: 1490 - - for (var53 = var14; var53 <= var15; ++var53) { // L: 1491 - for (var21 = var12; var21 <= var71; ++var21) { // L: 1492 - var10000 = UserComparator10.field2000[var53][var21]; - var10000[var10] &= ~var6; - } - } - } - } - - if ((UserComparator10.field2000[var54][var11][var10] & var7) != 0) { // L: 1496 - var12 = var11; // L: 1497 - var71 = var11; // L: 1498 - var14 = var10; // L: 1499 - - for (var15 = var10; var14 > 0 && (UserComparator10.field2000[var54][var11][var14 - 1] & var7) != 0; --var14) { // L: 1500 1501 - } - - while (var15 < 104 && (UserComparator10.field2000[var54][var11][var15 + 1] & var7) != 0) { // L: 1502 - ++var15; - } - - label1024: - while (var12 > 0) { // L: 1503 - for (var16 = var14; var16 <= var15; ++var16) { // L: 1504 - if ((UserComparator10.field2000[var54][var12 - 1][var16] & var7) == 0) { - break label1024; - } - } - - --var12; // L: 1505 - } - - label1013: - while (var71 < 104) { // L: 1507 - for (var16 = var14; var16 <= var15; ++var16) { // L: 1508 - if ((UserComparator10.field2000[var54][var71 + 1][var16] & var7) == 0) { - break label1013; - } - } - - ++var71; // L: 1509 - } - - if ((var71 - var12 + 1) * (var15 - var14 + 1) >= 4) { // L: 1511 - var16 = Tiles.Tiles_heights[var54][var12][var14]; // L: 1512 - Scene.Scene_addOccluder(var69, 4, var12 * 128, var71 * 128 + 128, var14 * 128, var15 * 128 + 128, var16, var16); // L: 1513 - - for (var17 = var12; var17 <= var71; ++var17) { // L: 1514 - for (var18 = var14; var18 <= var15; ++var18) { // L: 1515 - var10000 = UserComparator10.field2000[var54][var17]; - var10000[var18] &= ~var7; - } - } - } - } - } - } - } - } - - GrandExchangeOfferAgeComparator.method243(true); // L: 1524 - var5 = Tiles.Tiles_minPlane; // L: 1525 - if (var5 > GrandExchangeOfferUnitPriceComparator.Client_plane) { // L: 1526 - var5 = GrandExchangeOfferUnitPriceComparator.Client_plane; - } - - if (var5 < GrandExchangeOfferUnitPriceComparator.Client_plane - 1) { // L: 1527 - var5 = GrandExchangeOfferUnitPriceComparator.Client_plane - 1; - } - - if (isLowDetail) { // L: 1528 - ModeWhere.scene.init(Tiles.Tiles_minPlane); - } else { - ModeWhere.scene.init(0); // L: 1529 - } - - for (var6 = 0; var6 < 104; ++var6) { // L: 1530 - for (var7 = 0; var7 < 104; ++var7) { // L: 1531 - class41.updateItemPile(var6, var7); // L: 1532 - } - } - - FriendSystem.playPcmPlayers(); // L: 1535 - - for (PendingSpawn var77 = (PendingSpawn)pendingSpawns.last(); var77 != null; var77 = (PendingSpawn)pendingSpawns.previous()) { // L: 1537 1538 1544 - if (var77.hitpoints == -1) { // L: 1539 - var77.delay = 0; // L: 1540 - JagexCache.method3619(var77); // L: 1541 - } else { - var77.remove(); // L: 1543 - } - } - - ObjectDefinition.ObjectDefinition_cachedModelData.clear(); // L: 1547 - PacketBufferNode var78; - if (ByteArrayPool.client.hasFrame()) { // L: 1548 - var78 = class4.getPacketBufferNode(ClientPacket.field2330, packetWriter.isaacCipher); // L: 1550 - var78.packetBuffer.writeInt(1057001181); // L: 1551 - packetWriter.addNode(var78); // L: 1552 - } - - if (!isInInstance) { // L: 1554 - var6 = (GrandExchangeEvent.field78 - 6) / 8; // L: 1555 - var7 = (GrandExchangeEvent.field78 + 6) / 8; // L: 1556 - var69 = (AbstractWorldMapData.field198 - 6) / 8; // L: 1557 - var54 = (AbstractWorldMapData.field198 + 6) / 8; // L: 1558 - - for (var10 = var6 - 1; var10 <= var7 + 1; ++var10) { // L: 1559 - for (var11 = var69 - 1; var11 <= var54 + 1; ++var11) { // L: 1560 - if (var10 < var6 || var10 > var7 || var11 < var69 || var11 > var54) { // L: 1561 - Varcs.archive5.loadRegionFromName("m" + var10 + "_" + var11); // L: 1562 - Varcs.archive5.loadRegionFromName("l" + var10 + "_" + var11); // L: 1563 - } - } - } - } - - BuddyRankComparator.updateGameState(30); // L: 1567 - FriendSystem.playPcmPlayers(); // L: 1568 - TileItem.field1273 = null; // L: 1570 - NPC.field1161 = null; // L: 1571 - Tiles.field531 = null; // L: 1572 - UserComparator2.field3859 = null; // L: 1573 - UserComparator10.field2000 = null; // L: 1574 - class299.field3679 = null; // L: 1575 - UserComparator10.field1999 = null; // L: 1576 - GrandExchangeOfferOwnWorldComparator.Tiles_hue = null; // L: 1577 - class238.Tiles_saturation = null; // L: 1578 - TileItemPile.Tiles_lightness = null; // L: 1579 - class248.Tiles_hueMultiplier = null; // L: 1580 - class1.field1 = null; // L: 1581 - var78 = class4.getPacketBufferNode(ClientPacket.field2319, packetWriter.isaacCipher); // L: 1583 - packetWriter.addNode(var78); // L: 1584 - WorldMapLabel.method519(); // L: 1585 + ++var36; } } + + WorldMapSection2.method377(true); + FontName.playPcmPlayers(); + LoginPacket.method3673(ArchiveLoader.scene, collisionMaps); + WorldMapSection2.method377(true); + var36 = Tiles.Tiles_minPlane; + if (var36 > GameObject.Client_plane) { + var36 = GameObject.Client_plane; + } + + if (var36 < GameObject.Client_plane - 1) { + var36 = GameObject.Client_plane - 1; + } + + if (isLowDetail) { + ArchiveLoader.scene.init(Tiles.Tiles_minPlane); + } else { + ArchiveLoader.scene.init(0); + } + + for (var4 = 0; var4 < 104; ++var4) { + for (var5 = 0; var5 < 104; ++var5) { + MouseRecorder.updateItemPile(var4, var5); + } + } + + FontName.playPcmPlayers(); + + for (PendingSpawn var48 = (PendingSpawn)pendingSpawns.last(); var48 != null; var48 = (PendingSpawn)pendingSpawns.previous()) { + if (var48.hitpoints == -1) { + var48.delay = 0; + class7.method86(var48); + } else { + var48.remove(); + } + } + + ObjectDefinition.ObjectDefinition_cachedModelData.clear(); + PacketBufferNode var49; + if (WorldMapIcon_0.client.hasFrame()) { + var49 = ItemContainer.getPacketBufferNode(ClientPacket.field2299, packetWriter.isaacCipher); + var49.packetBuffer.writeInt(1057001181); + packetWriter.addNode(var49); + } + + if (!isInInstance) { + var4 = (class182.field2112 - 6) / 8; + var5 = (class182.field2112 + 6) / 8; + var6 = (UserComparator6.field2013 - 6) / 8; + var7 = (UserComparator6.field2013 + 6) / 8; + + for (var46 = var4 - 1; var46 <= var5 + 1; ++var46) { + for (var9 = var6 - 1; var9 <= var7 + 1; ++var9) { + if (var46 < var4 || var46 > var5 || var9 < var6 || var9 > var7) { + GameShell.archive5.loadRegionFromName("m" + var46 + "_" + var9); + GameShell.archive5.loadRegionFromName("l" + var46 + "_" + var9); + } + } + } + } + + WorldMapCacheName.updateGameState(30); + FontName.playPcmPlayers(); + Tiles.field514 = null; + Tiles.field508 = null; + class9.field40 = null; + Username.field3663 = null; + GrandExchangeOfferWorldComparator.field52 = null; + Tiles.field511 = null; + class92.field1173 = null; + VarbitDefinition.Tiles_hue = null; + ArchiveDiskActionHandler.Tiles_saturation = null; + class92.Tiles_lightness = null; + UserComparator7.Tiles_hueMultiplier = null; + Varcs.field1283 = null; + var49 = ItemContainer.getPacketBufferNode(ClientPacket.field2235, packetWriter.isaacCipher); + packetWriter.addNode(var49); + class225.clock.mark(); + + for (var5 = 0; var5 < 32; ++var5) { + GameShell.graphicsTickTimes[var5] = 0L; + } + + for (var5 = 0; var5 < 32; ++var5) { + GameShell.clientTickTimes[var5] = 0L; + } + + class8.gameCyclesToDo = 0; } - } else { - Canvas.doCycleTitle(this); } - - if (gameState == 30) { // L: 1587 - this.doCycleLoggedIn(); - } else if (gameState == 40 || gameState == 45) { // L: 1588 - this.doCycleLoggedOut(); - } - - return; // L: 1589 } - - var1.archive.load(var1.archiveDisk, (int)var1.key, var1.data, false); // L: 856 + } else { + SequenceDefinition.doCycleTitle(this); } + + if (gameState == 30) { + this.doCycleLoggedIn(); + } else if (gameState == 40 || gameState == 45) { + this.doCycleLoggedOut(); + } + } - @ObfuscatedName("ak") + @ObfuscatedName("av") @ObfuscatedSignature( descriptor = "(ZI)V", - garbageValue = "-1812204618" + garbageValue = "-20163413" ) @Export("draw") protected final void draw(boolean var1) { - boolean var2 = GrandExchangeOfferTotalQuantityComparator.method174(); // L: 1592 - if (var2 && field916 && class195.pcmPlayer0 != null) { // L: 1593 1594 - class195.pcmPlayer0.tryDiscard(); + boolean var2 = WorldMapIcon_1.method355(); + if (var2 && field883 && AbstractWorldMapData.pcmPlayer0 != null) { + AbstractWorldMapData.pcmPlayer0.tryDiscard(); } - if ((gameState == 10 || gameState == 20 || gameState == 30) && field879 != 0L && User.currentTimeMillis() > field879) { // L: 1596 1597 - class277.setWindowedMode(UrlRequester.getWindowedMode()); // L: 1598 + if ((gameState == 10 || gameState == 20 || gameState == 30) && field861 != 0L && class298.currentTimeMillis() > field861) { + class13.setWindowedMode(SoundSystem.getWindowedMode()); } int var3; - if (var1) { // L: 1601 - for (var3 = 0; var3 < 100; ++var3) { // L: 1602 - field834[var3] = true; + if (var1) { + for (var3 = 0; var3 < 100; ++var3) { + field901[var3] = true; } } - if (gameState == 0) { // L: 1604 + if (gameState == 0) { this.drawInitial(Login.Login_loadingPercent, Login.Login_loadingText, var1); - } else if (gameState == 5) { // L: 1605 - class60.drawTitle(ReflectionCheck.fontBold12, DevicePcmPlayerProvider.fontPlain11, WorldMapCacheName.fontPlain12); - } else if (gameState != 10 && gameState != 11) { // L: 1606 - if (gameState == 20) { // L: 1607 - class60.drawTitle(ReflectionCheck.fontBold12, DevicePcmPlayerProvider.fontPlain11, WorldMapCacheName.fontPlain12); - } else if (gameState == 25) { // L: 1608 - if (field722 == 1) { // L: 1609 - if (field734 > field735) { // L: 1610 - field735 = field734; + } else if (gameState == 5) { + ArchiveLoader.drawTitle(GrandExchangeOfferTotalQuantityComparator.fontBold12, class297.fontPlain11, WorldMapLabelSize.fontPlain12); + } else if (gameState != 10 && gameState != 11) { + if (gameState == 20) { + ArchiveLoader.drawTitle(GrandExchangeOfferTotalQuantityComparator.fontBold12, class297.fontPlain11, WorldMapLabelSize.fontPlain12); + } else if (gameState == 25) { + if (field704 == 1) { + if (field700 > field701) { + field701 = field700; } - var3 = (field735 * 50 - field734 * 50) / field735; // L: 1611 - AbstractWorldMapData.drawLoadingMessage("Loading - please wait." + "
" + " (" + var3 + "%" + ")", false); // L: 1612 - } else if (field722 == 2) { // L: 1614 - if (field848 > field737) { // L: 1615 - field737 = field848; + var3 = (field701 * 50 - field700 * 50) / field701; + Varps.drawLoadingMessage("Loading - please wait." + "
" + " (" + var3 + "%" + ")", false); + } else if (field704 == 2) { + if (field702 > field703) { + field703 = field702; } - var3 = (field737 * 50 - field848 * 50) / field737 + 50; // L: 1616 - AbstractWorldMapData.drawLoadingMessage("Loading - please wait." + "
" + " (" + var3 + "%" + ")", false); // L: 1617 + var3 = (field703 * 50 - field702 * 50) / field703 + 50; + Varps.drawLoadingMessage("Loading - please wait." + "
" + " (" + var3 + "%" + ")", false); } else { - AbstractWorldMapData.drawLoadingMessage("Loading - please wait.", false); // L: 1619 + Varps.drawLoadingMessage("Loading - please wait.", false); } - } else if (gameState == 30) { // L: 1621 + } else if (gameState == 30) { this.drawLoggedIn(); - } else if (gameState == 40) { // L: 1622 - AbstractWorldMapData.drawLoadingMessage("Connection lost" + "
" + "Please wait - attempting to reestablish", false); - } else if (gameState == 45) { // L: 1623 - AbstractWorldMapData.drawLoadingMessage("Please wait...", false); + } else if (gameState == 40) { + Varps.drawLoadingMessage("Connection lost" + "
" + "Please wait - attempting to reestablish", false); + } else if (gameState == 45) { + Varps.drawLoadingMessage("Please wait...", false); } } else { - class60.drawTitle(ReflectionCheck.fontBold12, DevicePcmPlayerProvider.fontPlain11, WorldMapCacheName.fontPlain12); // L: 1613 + ArchiveLoader.drawTitle(GrandExchangeOfferTotalQuantityComparator.fontBold12, class297.fontPlain11, WorldMapLabelSize.fontPlain12); } - if (gameState == 30 && gameDrawingMode == 0 && !var1 && !isResizable) { // L: 1624 - for (var3 = 0; var3 < rootWidgetCount; ++var3) { // L: 1625 - if (field758[var3]) { // L: 1626 - class22.rasterProvider.draw(rootWidgetXs[var3], rootWidgetYs[var3], rootWidgetWidths[var3], rootWidgetHeights[var3]); // L: 1627 - field758[var3] = false; // L: 1628 + if (gameState == 30 && gameDrawingMode == 0 && !var1 && !isResizable) { + for (var3 = 0; var3 < rootWidgetCount; ++var3) { + if (field854[var3]) { + WorldMapIcon_0.rasterProvider.draw(rootWidgetXs[var3], rootWidgetYs[var3], rootWidgetWidths[var3], rootWidgetHeights[var3]); + field854[var3] = false; } } - } else if (gameState > 0) { // L: 1632 - class22.rasterProvider.drawFull(0, 0); // L: 1633 + } else if (gameState > 0) { + WorldMapIcon_0.rasterProvider.drawFull(0, 0); - for (var3 = 0; var3 < rootWidgetCount; ++var3) { // L: 1634 - field758[var3] = false; + for (var3 = 0; var3 < rootWidgetCount; ++var3) { + field854[var3] = false; } } - } // L: 1636 + } - @ObfuscatedName("au") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "118" + descriptor = "(I)V", + garbageValue = "-6923156" ) @Export("kill0") protected final void kill0() { - if (FriendSystem.varcs.hasUnwrittenChanges()) { // L: 1639 - FriendSystem.varcs.write(); + if (Varcs.varcs.hasUnwrittenChanges()) { + Varcs.varcs.write(); } - if (class204.mouseRecorder != null) { // L: 1640 - class204.mouseRecorder.isRunning = false; + if (SoundCache.mouseRecorder != null) { + SoundCache.mouseRecorder.isRunning = false; } - class204.mouseRecorder = null; // L: 1641 - packetWriter.close(); // L: 1642 - if (KeyHandler.KeyHandler_instance != null) { // L: 1644 - synchronized(KeyHandler.KeyHandler_instance) { // L: 1645 - KeyHandler.KeyHandler_instance = null; // L: 1646 - } // L: 1647 + SoundCache.mouseRecorder = null; + packetWriter.close(); + WorldMapEvent.method807(); + class3.method43(); + KitDefinition.mouseWheel = null; + if (AbstractWorldMapData.pcmPlayer0 != null) { + AbstractWorldMapData.pcmPlayer0.shutdown(); } - NPC.method2146(); // L: 1650 - class8.mouseWheel = null; // L: 1651 - if (class195.pcmPlayer0 != null) { // L: 1652 - class195.pcmPlayer0.shutdown(); + if (FriendLoginUpdate.pcmPlayer1 != null) { + FriendLoginUpdate.pcmPlayer1.shutdown(); } - if (class23.pcmPlayer1 != null) { // L: 1653 - class23.pcmPlayer1.shutdown(); - } - - if (NetCache.NetCache_socket != null) { // L: 1655 - NetCache.NetCache_socket.close(); - } - - synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_lock) { // L: 1658 - if (ArchiveDiskActionHandler.field3176 != 0) { // L: 1659 - ArchiveDiskActionHandler.field3176 = 1; // L: 1660 + method1583(); + synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_lock) { + if (ArchiveDiskActionHandler.field3178 != 0) { + ArchiveDiskActionHandler.field3178 = 1; try { - ArchiveDiskActionHandler.ArchiveDiskActionHandler_lock.wait(); // L: 1662 - } catch (InterruptedException var4) { // L: 1664 + ArchiveDiskActionHandler.ArchiveDiskActionHandler_lock.wait(); + } catch (InterruptedException var5) { } } } - if (class52.urlRequester != null) { // L: 1668 - class52.urlRequester.close(); // L: 1669 - class52.urlRequester = null; // L: 1670 + if (GrandExchangeOfferAgeComparator.urlRequester != null) { + GrandExchangeOfferAgeComparator.urlRequester.close(); + GrandExchangeOfferAgeComparator.urlRequester = null; } - InterfaceParent.method1270(); // L: 1672 - } // L: 1673 + try { + JagexCache.JagexCache_dat2File.close(); - @ObfuscatedName("aa") + for (int var4 = 0; var4 < MusicPatchPcmStream.idxCount; ++var4) { + PlayerAppearance.JagexCache_idxFiles[var4].close(); + } + + JagexCache.JagexCache_idx255File.close(); + JagexCache.JagexCache_randomDat.close(); + } catch (Exception var6) { + } + + } + + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "-51" + garbageValue = "96" ) - protected final void vmethod1384() { - } // L: 670 + protected final void vmethod1777() { + } public final void init() { try { - if (this.checkHost()) { // L: 676 - for (int var1 = 0; var1 <= 20; ++var1) { // L: 677 - String var2 = this.getParameter(Integer.toString(var1)); // L: 678 - if (var2 != null) { // L: 679 - switch(var1) { // L: 680 + if (this.checkHost()) { + for (int var1 = 0; var1 <= 20; ++var1) { + String var2 = this.getParameter(Integer.toString(var1)); + if (var2 != null) { + switch(var1) { case 1: - useBufferedSocket = Integer.parseInt(var2) != 0; // L: 765 + useBufferedSocket = Integer.parseInt(var2) != 0; case 2: case 11: case 13: @@ -2837,941 +2255,1126 @@ public final class Client extends GameShell implements Usernamed { default: break; case 3: - if (var2.equalsIgnoreCase("true")) { // L: 688 + if (var2.equalsIgnoreCase("true")) { isMembersWorld = true; } else { - isMembersWorld = false; // L: 689 + isMembersWorld = false; } break; case 4: - if (clientType == -1) { // L: 751 - clientType = Integer.parseInt(var2); // L: 752 + if (clientType == -1) { + clientType = Integer.parseInt(var2); } break; case 5: - worldProperties = Integer.parseInt(var2); // L: 770 + worldProperties = Integer.parseInt(var2); break; case 6: - FontName.clientLanguage = Language.method3800(Integer.parseInt(var2)); // L: 694 - break; // L: 695 + WorldMapScaleHandler.clientLanguage = Language.method3701(Integer.parseInt(var2)); + break; case 7: - int var4 = Integer.parseInt(var2); // L: 726 - GameBuild[] var5 = new GameBuild[]{GameBuild.RC, GameBuild.BUILDLIVE, GameBuild.LIVE, GameBuild.WIP}; // L: 731 - GameBuild[] var6 = var5; // L: 733 - int var7 = 0; - - GameBuild var3; - while (true) { - if (var7 >= var6.length) { - var3 = null; // L: 744 - break; - } - - GameBuild var8 = var6[var7]; // L: 735 - if (var4 == var8.buildId) { // L: 737 - var3 = var8; // L: 738 - break; // L: 739 - } - - ++var7; // L: 734 - } - - ChatChannel.field1334 = var3; // L: 746 - break; // L: 747 + class25.field125 = ArchiveLoader.method1225(Integer.parseInt(var2)); + break; case 8: - if (var2.equalsIgnoreCase("true")) { // L: 704 + if (var2.equalsIgnoreCase("true")) { } break; case 9: - WorldMapRegion.field281 = var2; // L: 715 - break; // L: 716 + WorldMapSection1.field317 = var2; + break; case 10: - GrandExchangeOfferWorldComparator.field58 = (StudioGame)class195.findEnumerated(TileItem.method2237(), Integer.parseInt(var2)); // L: 758 - if (StudioGame.oldscape == GrandExchangeOfferWorldComparator.field58) { // L: 759 - UserComparator4.loginType = LoginType.oldscape; + StudioGame[] var3 = new StudioGame[]{StudioGame.runescape, StudioGame.stellardawn, StudioGame.game4, StudioGame.game5, StudioGame.game3, StudioGame.oldscape}; + AttackOption.field1174 = (StudioGame)UrlRequester.findEnumerated(var3, Integer.parseInt(var2)); + if (StudioGame.oldscape == AttackOption.field1174) { + GrandExchangeOfferUnitPriceComparator.loginType = LoginType.oldscape; } else { - UserComparator4.loginType = LoginType.field4061; // L: 760 + GrandExchangeOfferUnitPriceComparator.loginType = LoginType.field4072; } break; case 12: - worldId = Integer.parseInt(var2); // L: 710 - break; // L: 711 + worldId = Integer.parseInt(var2); + break; case 14: - TextureProvider.field1561 = Integer.parseInt(var2); // L: 720 - break; // L: 721 + MidiPcmStream.field2455 = Integer.parseInt(var2); + break; case 15: - gameBuild = Integer.parseInt(var2); // L: 699 - break; // L: 700 + gameBuild = Integer.parseInt(var2); + break; case 17: - PcmPlayer.worldListURL = var2; // L: 683 + GrandExchangeOfferTotalQuantityComparator.field75 = var2; } } } - Scene.Scene_isLowDetail = false; // L: 777 - isLowDetail = false; // L: 778 - UserComparator6.worldHost = this.getCodeBase().getHost(); // L: 780 - String var9 = ChatChannel.field1334.name; // L: 781 - byte var10 = 0; // L: 782 + class39.method596(); + WorldMapSprite.worldHost = this.getCodeBase().getHost(); + String var11 = class25.field125.name; + byte var12 = 0; try { - MusicPatchPcmStream.method4041("oldschool", var9, var10, 21); // L: 784 - } catch (Exception var11) { // L: 786 - PacketWriter.RunException_sendStackTrace((String)null, var11); // L: 787 + MusicPatchPcmStream.idxCount = 21; + JagexCache.cacheGamebuild = var12; + + try { + WorldMapScaleHandler.field365 = System.getProperty("os.name"); + } catch (Exception var18) { + WorldMapScaleHandler.field365 = "Unknown"; + } + + ObjectSound.field1077 = WorldMapScaleHandler.field365.toLowerCase(); + + try { + TileItemPile.userHomeDirectory = System.getProperty("user.home"); + if (TileItemPile.userHomeDirectory != null) { + TileItemPile.userHomeDirectory = TileItemPile.userHomeDirectory + "/"; + } + } catch (Exception var17) { + } + + try { + if (ObjectSound.field1077.startsWith("win")) { + if (TileItemPile.userHomeDirectory == null) { + TileItemPile.userHomeDirectory = System.getenv("USERPROFILE"); + } + } else if (TileItemPile.userHomeDirectory == null) { + TileItemPile.userHomeDirectory = System.getenv("HOME"); + } + + if (TileItemPile.userHomeDirectory != null) { + TileItemPile.userHomeDirectory = TileItemPile.userHomeDirectory + "/"; + } + } catch (Exception var16) { + } + + if (TileItemPile.userHomeDirectory == null) { + TileItemPile.userHomeDirectory = "~/"; + } + + GraphicsObject.field1117 = new String[]{"c:/rscache/", "/rscache/", "c:/windows/", "c:/winnt/", "c:/", TileItemPile.userHomeDirectory, "/tmp/", ""}; + DynamicObject.field1318 = new String[]{".jagex_cache_" + JagexCache.cacheGamebuild, ".file_store_" + JagexCache.cacheGamebuild}; + + label144: + for (int var13 = 0; var13 < 4; ++var13) { + JagexCache.cacheDir = class58.method917("oldschool", var11, var13); + if (!JagexCache.cacheDir.exists()) { + JagexCache.cacheDir.mkdirs(); + } + + File[] var4 = JagexCache.cacheDir.listFiles(); + if (var4 == null) { + break; + } + + File[] var5 = var4; + int var6 = 0; + + while (true) { + if (var6 >= var5.length) { + break label144; + } + + File var7 = var5[var6]; + + boolean var8; + try { + RandomAccessFile var9 = new RandomAccessFile(var7, "rw"); + int var10 = var9.read(); + var9.seek(0L); + var9.write(var10); + var9.seek(0L); + var9.close(); + var8 = true; + } catch (Exception var15) { + var8 = false; + } + + if (!var8) { + break; + } + + ++var6; + } + } + + File var21 = JagexCache.cacheDir; + FileSystem.FileSystem_cacheDir = var21; + if (!FileSystem.FileSystem_cacheDir.exists()) { + throw new RuntimeException(""); + } + + FileSystem.FileSystem_hasPermissions = true; + WorldMapData_0.method237(); + JagexCache.JagexCache_dat2File = new BufferedFile(new AccessFile(ModelData0.getFile("main_file_cache.dat2"), "rw", 1048576000L), 5200, 0); + JagexCache.JagexCache_idx255File = new BufferedFile(new AccessFile(ModelData0.getFile("main_file_cache.idx255"), "rw", 1048576L), 6000, 0); + PlayerAppearance.JagexCache_idxFiles = new BufferedFile[MusicPatchPcmStream.idxCount]; + + for (int var14 = 0; var14 < MusicPatchPcmStream.idxCount; ++var14) { + PlayerAppearance.JagexCache_idxFiles[var14] = new BufferedFile(new AccessFile(ModelData0.getFile("main_file_cache.idx" + var14), "rw", 1048576L), 6000, 0); + } + } catch (Exception var19) { + PlayerAppearance.RunException_sendStackTrace((String)null, var19); } - ByteArrayPool.client = this; // L: 789 - NetFileRequest.clientType = clientType; // L: 790 - if (field686 == -1) { // L: 791 - field686 = 0; // L: 792 + WorldMapIcon_0.client = this; + class39.clientType = clientType; + if (field651 == -1) { + field651 = 0; } - this.startThread(765, 503, 192); // L: 794 + this.startThread(765, 503, 193); } - } catch (RuntimeException var12) { - throw Login.newRunException(var12, "client.init(" + ')'); + } catch (RuntimeException var20) { + throw UserComparator9.newRunException(var20, "client.init(" + ')'); } - } // L: 795 + } - @ObfuscatedName("ei") + @ObfuscatedName("ff") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "627377805" + descriptor = "(B)V", + garbageValue = "0" ) @Export("doCycleJs5") void doCycleJs5() { - if (gameState != 1000) { // L: 1732 - boolean var1 = Occluder.method3411(); // L: 1733 - if (!var1) { // L: 1734 + if (gameState != 1000) { + long var2 = class298.currentTimeMillis(); + int var4 = (int)(var2 - NetCache.field3195); + NetCache.field3195 = var2; + if (var4 > 200) { + var4 = 200; + } + + NetCache.NetCache_loadTime += var4; + boolean var1; + if (NetCache.NetCache_pendingResponsesCount == 0 && NetCache.NetCache_pendingPriorityResponsesCount == 0 && NetCache.NetCache_pendingWritesCount == 0 && NetCache.NetCache_pendingPriorityWritesCount == 0) { + var1 = true; + } else if (NetCache.NetCache_socket == null) { + var1 = false; + } else { + try { + label246: { + if (NetCache.NetCache_loadTime > 30000) { + throw new IOException(); + } + + NetFileRequest var5; + Buffer var6; + while (NetCache.NetCache_pendingPriorityResponsesCount < 200 && NetCache.NetCache_pendingPriorityWritesCount > 0) { + var5 = (NetFileRequest)NetCache.NetCache_pendingPriorityWrites.first(); + var6 = new Buffer(4); + var6.writeByte(1); + var6.writeMedium((int)var5.key); + NetCache.NetCache_socket.write(var6.array, 0, 4); + NetCache.NetCache_pendingPriorityResponses.put(var5, var5.key); + --NetCache.NetCache_pendingPriorityWritesCount; + ++NetCache.NetCache_pendingPriorityResponsesCount; + } + + while (NetCache.NetCache_pendingResponsesCount < 200 && NetCache.NetCache_pendingWritesCount > 0) { + var5 = (NetFileRequest)NetCache.NetCache_pendingWritesQueue.removeLast(); + var6 = new Buffer(4); + var6.writeByte(0); + var6.writeMedium((int)var5.key); + NetCache.NetCache_socket.write(var6.array, 0, 4); + var5.removeDual(); + NetCache.NetCache_pendingResponses.put(var5, var5.key); + --NetCache.NetCache_pendingWritesCount; + ++NetCache.NetCache_pendingResponsesCount; + } + + for (int var17 = 0; var17 < 100; ++var17) { + int var18 = NetCache.NetCache_socket.available(); + if (var18 < 0) { + throw new IOException(); + } + + if (var18 == 0) { + break; + } + + NetCache.NetCache_loadTime = 0; + byte var7 = 0; + if (NetCache.NetCache_currentResponse == null) { + var7 = 8; + } else if (NetCache.field3207 == 0) { + var7 = 1; + } + + int var8; + int var9; + int var10; + int var12; + byte[] var10000; + int var10001; + Buffer var25; + if (var7 > 0) { + var8 = var7 - NetCache.NetCache_responseHeaderBuffer.offset; + if (var8 > var18) { + var8 = var18; + } + + NetCache.NetCache_socket.read(NetCache.NetCache_responseHeaderBuffer.array, NetCache.NetCache_responseHeaderBuffer.offset, var8); + if (NetCache.field3210 != 0) { + for (var9 = 0; var9 < var8; ++var9) { + var10000 = NetCache.NetCache_responseHeaderBuffer.array; + var10001 = var9 + NetCache.NetCache_responseHeaderBuffer.offset; + var10000[var10001] ^= NetCache.field3210; + } + } + + var25 = NetCache.NetCache_responseHeaderBuffer; + var25.offset += var8; + if (NetCache.NetCache_responseHeaderBuffer.offset < var7) { + break; + } + + if (NetCache.NetCache_currentResponse == null) { + NetCache.NetCache_responseHeaderBuffer.offset = 0; + var9 = NetCache.NetCache_responseHeaderBuffer.readUnsignedByte(); + var10 = NetCache.NetCache_responseHeaderBuffer.readUnsignedShort(); + int var11 = NetCache.NetCache_responseHeaderBuffer.readUnsignedByte(); + var12 = NetCache.NetCache_responseHeaderBuffer.readInt(); + long var13 = (long)(var10 + (var9 << 16)); + NetFileRequest var15 = (NetFileRequest)NetCache.NetCache_pendingPriorityResponses.get(var13); + UserComparator4.field1988 = true; + if (var15 == null) { + var15 = (NetFileRequest)NetCache.NetCache_pendingResponses.get(var13); + UserComparator4.field1988 = false; + } + + if (var15 == null) { + throw new IOException(); + } + + int var16 = var11 == 0 ? 5 : 9; + NetCache.NetCache_currentResponse = var15; + class206.NetCache_responseArchiveBuffer = new Buffer(var16 + var12 + NetCache.NetCache_currentResponse.padding); + class206.NetCache_responseArchiveBuffer.writeByte(var11); + class206.NetCache_responseArchiveBuffer.writeInt(var12); + NetCache.field3207 = 8; + NetCache.NetCache_responseHeaderBuffer.offset = 0; + } else if (NetCache.field3207 == 0) { + if (NetCache.NetCache_responseHeaderBuffer.array[0] == -1) { + NetCache.field3207 = 1; + NetCache.NetCache_responseHeaderBuffer.offset = 0; + } else { + NetCache.NetCache_currentResponse = null; + } + } + } else { + var8 = class206.NetCache_responseArchiveBuffer.array.length - NetCache.NetCache_currentResponse.padding; + var9 = 512 - NetCache.field3207; + if (var9 > var8 - class206.NetCache_responseArchiveBuffer.offset) { + var9 = var8 - class206.NetCache_responseArchiveBuffer.offset; + } + + if (var9 > var18) { + var9 = var18; + } + + NetCache.NetCache_socket.read(class206.NetCache_responseArchiveBuffer.array, class206.NetCache_responseArchiveBuffer.offset, var9); + if (NetCache.field3210 != 0) { + for (var10 = 0; var10 < var9; ++var10) { + var10000 = class206.NetCache_responseArchiveBuffer.array; + var10001 = class206.NetCache_responseArchiveBuffer.offset + var10; + var10000[var10001] ^= NetCache.field3210; + } + } + + var25 = class206.NetCache_responseArchiveBuffer; + var25.offset += var9; + NetCache.field3207 += var9; + if (var8 == class206.NetCache_responseArchiveBuffer.offset) { + if (16711935L == NetCache.NetCache_currentResponse.key) { + WorldMapLabel.NetCache_reference = class206.NetCache_responseArchiveBuffer; + + for (var10 = 0; var10 < 256; ++var10) { + Archive var19 = NetCache.NetCache_archives[var10]; + if (var19 != null) { + WorldMapLabel.NetCache_reference.offset = var10 * 8 + 5; + var12 = WorldMapLabel.NetCache_reference.readInt(); + int var20 = WorldMapLabel.NetCache_reference.readInt(); + var19.loadIndex(var12, var20); + } + } + } else { + NetCache.NetCache_crc.reset(); + NetCache.NetCache_crc.update(class206.NetCache_responseArchiveBuffer.array, 0, var8); + var10 = (int)NetCache.NetCache_crc.getValue(); + if (var10 != NetCache.NetCache_currentResponse.crc) { + try { + NetCache.NetCache_socket.close(); + } catch (Exception var23) { + } + + ++NetCache.NetCache_crcMismatches; + NetCache.NetCache_socket = null; + NetCache.field3210 = (byte)((int)(Math.random() * 255.0D + 1.0D)); + var1 = false; + break label246; + } + + NetCache.NetCache_crcMismatches = 0; + NetCache.NetCache_ioExceptions = 0; + NetCache.NetCache_currentResponse.archive.write((int)(NetCache.NetCache_currentResponse.key & 65535L), class206.NetCache_responseArchiveBuffer.array, (NetCache.NetCache_currentResponse.key & 16711680L) == 16711680L, UserComparator4.field1988); + } + + NetCache.NetCache_currentResponse.remove(); + if (UserComparator4.field1988) { + --NetCache.NetCache_pendingPriorityResponsesCount; + } else { + --NetCache.NetCache_pendingResponsesCount; + } + + NetCache.field3207 = 0; + NetCache.NetCache_currentResponse = null; + class206.NetCache_responseArchiveBuffer = null; + } else { + if (NetCache.field3207 != 512) { + break; + } + + NetCache.field3207 = 0; + } + } + } + + var1 = true; + } + } catch (IOException var24) { + try { + NetCache.NetCache_socket.close(); + } catch (Exception var22) { + } + + ++NetCache.NetCache_ioExceptions; + NetCache.NetCache_socket = null; + var1 = false; + } + } + + if (!var1) { this.doCycleJs5Connect(); } } - } // L: 1735 + } - @ObfuscatedName("ef") + @ObfuscatedName("fs") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-55" + descriptor = "(I)V", + garbageValue = "-278380129" ) @Export("doCycleJs5Connect") void doCycleJs5Connect() { - if (NetCache.NetCache_crcMismatches >= 4) { // L: 1738 - this.error("js5crc"); // L: 1739 - gameState = 1000; // L: 1740 + if (NetCache.NetCache_crcMismatches >= 4) { + this.error("js5crc"); + gameState = 1000; } else { - if (NetCache.NetCache_ioExceptions >= 4) { // L: 1743 - if (gameState <= 5) { // L: 1744 - this.error("js5io"); // L: 1745 - gameState = 1000; // L: 1746 - return; // L: 1747 + if (NetCache.NetCache_ioExceptions >= 4) { + if (gameState <= 5) { + this.error("js5io"); + gameState = 1000; + return; } - field794 = 3000; // L: 1750 - NetCache.NetCache_ioExceptions = 3; // L: 1751 + field864 = 3000; + NetCache.NetCache_ioExceptions = 3; } - if (--field794 + 1 <= 0) { // L: 1754 + if (--field864 + 1 <= 0) { try { - if (js5ConnectState == 0) { // L: 1756 - UserComparator10.js5SocketTask = GameShell.taskHandler.newSocketTask(UserComparator6.worldHost, class41.port3); // L: 1757 - ++js5ConnectState; // L: 1758 + if (js5ConnectState == 0) { + WorldMapManager.js5SocketTask = GameShell.taskHandler.newSocketTask(WorldMapSprite.worldHost, ArchiveDiskAction.port3); + ++js5ConnectState; } - if (js5ConnectState == 1) { // L: 1760 - if (UserComparator10.js5SocketTask.status == 2) { // L: 1761 - this.js5Error(-1); // L: 1762 - return; // L: 1763 + if (js5ConnectState == 1) { + if (WorldMapManager.js5SocketTask.status == 2) { + this.js5Error(-1); + return; } - if (UserComparator10.js5SocketTask.status == 1) { // L: 1765 + if (WorldMapManager.js5SocketTask.status == 1) { ++js5ConnectState; } } - if (js5ConnectState == 2) { // L: 1767 - if (useBufferedSocket) { // L: 1768 - Socket var2 = (Socket)UserComparator10.js5SocketTask.result; // L: 1770 - BufferedNetSocket var1 = new BufferedNetSocket(var2, 40000, 5000); // L: 1772 - KeyHandler.js5Socket = var1; // L: 1774 + if (js5ConnectState == 2) { + if (useBufferedSocket) { + TaskHandler.js5Socket = class219.method4011((Socket)WorldMapManager.js5SocketTask.result, 40000, 5000); } else { - KeyHandler.js5Socket = new NetSocket((Socket)UserComparator10.js5SocketTask.result, GameShell.taskHandler, 5000); // L: 1777 + TaskHandler.js5Socket = new NetSocket((Socket)WorldMapManager.js5SocketTask.result, GameShell.taskHandler, 5000); } - Buffer var11 = new Buffer(5); // L: 1779 - var11.writeByte(15); // L: 1780 - var11.writeInt(192); // L: 1781 - KeyHandler.js5Socket.write(var11.array, 0, 5); // L: 1782 - ++js5ConnectState; // L: 1783 - field696 = User.currentTimeMillis(); // L: 1784 + Buffer var1 = new Buffer(5); + var1.writeByte(15); + var1.writeInt(193); + TaskHandler.js5Socket.write(var1.array, 0, 5); + ++js5ConnectState; + LoginPacket.field2341 = class298.currentTimeMillis(); } - if (js5ConnectState == 3) { // L: 1786 - if (KeyHandler.js5Socket.available() > 0 || !useBufferedSocket && gameState <= 5) { // L: 1787 - int var5 = KeyHandler.js5Socket.readUnsignedByte(); // L: 1788 - if (var5 != 0) { // L: 1789 - this.js5Error(var5); // L: 1790 - return; // L: 1791 + if (js5ConnectState == 3) { + if (TaskHandler.js5Socket.available() > 0 || !useBufferedSocket && gameState <= 5) { + int var5 = TaskHandler.js5Socket.readUnsignedByte(); + if (var5 != 0) { + this.js5Error(var5); + return; } - ++js5ConnectState; // L: 1793 - } else if (User.currentTimeMillis() - field696 > 30000L) { // L: 1796 - this.js5Error(-2); // L: 1797 - return; // L: 1798 + ++js5ConnectState; + } else if (class298.currentTimeMillis() - LoginPacket.field2341 > 30000L) { + this.js5Error(-2); + return; } } - if (js5ConnectState == 4) { // L: 1802 - AbstractSocket var12 = KeyHandler.js5Socket; // L: 1803 - boolean var6 = gameState > 20; // L: 1804 - if (NetCache.NetCache_socket != null) { // L: 1806 + if (js5ConnectState == 4) { + AbstractSocket var10 = TaskHandler.js5Socket; + boolean var2 = gameState > 20; + if (NetCache.NetCache_socket != null) { try { - NetCache.NetCache_socket.close(); // L: 1808 - } catch (Exception var9) { // L: 1810 + NetCache.NetCache_socket.close(); + } catch (Exception var8) { } - NetCache.NetCache_socket = null; // L: 1811 + NetCache.NetCache_socket = null; } - NetCache.NetCache_socket = var12; // L: 1813 - WorldMapSection0.method323(var6); // L: 1814 - NetCache.NetCache_responseHeaderBuffer.offset = 0; // L: 1815 - NetCache.NetCache_currentResponse = null; // L: 1816 - NetCache.NetCache_responseArchiveBuffer = null; // L: 1817 - NetCache.field3190 = 0; // L: 1818 + NetCache.NetCache_socket = var10; + SoundSystem.method2564(var2); + NetCache.NetCache_responseHeaderBuffer.offset = 0; + NetCache.NetCache_currentResponse = null; + class206.NetCache_responseArchiveBuffer = null; + NetCache.field3207 = 0; while (true) { - NetFileRequest var3 = (NetFileRequest)NetCache.NetCache_pendingPriorityResponses.first(); // L: 1820 - if (var3 == null) { // L: 1821 + NetFileRequest var3 = (NetFileRequest)NetCache.NetCache_pendingPriorityResponses.first(); + if (var3 == null) { while (true) { - var3 = (NetFileRequest)NetCache.NetCache_pendingResponses.first(); // L: 1827 - if (var3 == null) { // L: 1828 - if (NetCache.field3207 != 0) { // L: 1834 + var3 = (NetFileRequest)NetCache.NetCache_pendingResponses.first(); + if (var3 == null) { + if (NetCache.field3210 != 0) { try { - Buffer var13 = new Buffer(4); // L: 1836 - var13.writeByte(4); // L: 1837 - var13.writeByte(NetCache.field3207); // L: 1838 - var13.writeShort(0); // L: 1839 - NetCache.NetCache_socket.write(var13.array, 0, 4); // L: 1840 - } catch (IOException var8) { + Buffer var11 = new Buffer(4); + var11.writeByte(4); + var11.writeByte(NetCache.field3210); + var11.writeShort(0); + NetCache.NetCache_socket.write(var11.array, 0, 4); + } catch (IOException var7) { try { - NetCache.NetCache_socket.close(); // L: 1844 - } catch (Exception var7) { // L: 1846 + NetCache.NetCache_socket.close(); + } catch (Exception var6) { } - ++NetCache.NetCache_ioExceptions; // L: 1847 - NetCache.NetCache_socket = null; // L: 1848 + ++NetCache.NetCache_ioExceptions; + NetCache.NetCache_socket = null; } } - NetCache.NetCache_loadTime = 0; // L: 1851 - JagexCache.field2081 = User.currentTimeMillis(); // L: 1852 - UserComparator10.js5SocketTask = null; // L: 1854 - KeyHandler.js5Socket = null; // L: 1855 - js5ConnectState = 0; // L: 1856 - js5Errors = 0; // L: 1857 - return; // L: 1863 + NetCache.NetCache_loadTime = 0; + NetCache.field3195 = class298.currentTimeMillis(); + WorldMapManager.js5SocketTask = null; + TaskHandler.js5Socket = null; + js5ConnectState = 0; + js5Errors = 0; + return; } - NetCache.NetCache_pendingWritesQueue.addLast(var3); // L: 1829 - NetCache.NetCache_pendingWrites.put(var3, var3.key); // L: 1830 - ++NetCache.NetCache_pendingWritesCount; // L: 1831 - --NetCache.NetCache_pendingResponsesCount; // L: 1832 + NetCache.NetCache_pendingWritesQueue.addLast(var3); + NetCache.NetCache_pendingWrites.put(var3, var3.key); + ++NetCache.NetCache_pendingWritesCount; + --NetCache.NetCache_pendingResponsesCount; } } - NetCache.NetCache_pendingPriorityWrites.put(var3, var3.key); // L: 1822 - ++NetCache.NetCache_pendingPriorityWritesCount; // L: 1823 - --NetCache.NetCache_pendingPriorityResponsesCount; // L: 1824 + NetCache.NetCache_pendingPriorityWrites.put(var3, var3.key); + ++NetCache.NetCache_pendingPriorityWritesCount; + --NetCache.NetCache_pendingPriorityResponsesCount; } } - } catch (IOException var10) { // L: 1860 - this.js5Error(-3); // L: 1861 + } catch (IOException var9) { + this.js5Error(-3); } } } - } // L: 1741 + } - @ObfuscatedName("ec") + @ObfuscatedName("fk") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "1036771448" + garbageValue = "1103110959" ) @Export("js5Error") void js5Error(int var1) { - UserComparator10.js5SocketTask = null; // L: 1866 - KeyHandler.js5Socket = null; // L: 1867 - js5ConnectState = 0; // L: 1868 - if (Coord.port1 == class41.port3) { // L: 1869 - class41.port3 = Coord.port2; + WorldMapManager.js5SocketTask = null; + TaskHandler.js5Socket = null; + js5ConnectState = 0; + if (ArchiveDiskAction.port3 == class278.port1) { + ArchiveDiskAction.port3 = Players.port2; } else { - class41.port3 = Coord.port1; // L: 1870 + ArchiveDiskAction.port3 = class278.port1; } - ++js5Errors; // L: 1871 - if (js5Errors < 2 || var1 != 7 && var1 != 9) { // L: 1872 - if (js5Errors >= 2 && var1 == 6) { // L: 1879 - this.error("js5connect_outofdate"); // L: 1880 - gameState = 1000; // L: 1881 - } else if (js5Errors >= 4) { // L: 1883 - if (gameState <= 5) { // L: 1884 - this.error("js5connect"); // L: 1885 - gameState = 1000; // L: 1886 - } else { - field794 = 3000; // L: 1888 - } + ++js5Errors; + if (js5Errors >= 2 && (var1 == 7 || var1 == 9)) { + if (gameState <= 5) { + this.error("js5connect_full"); + gameState = 1000; + } else { + field864 = 3000; + } + } else if (js5Errors >= 2 && var1 == 6) { + this.error("js5connect_outofdate"); + gameState = 1000; + } else if (js5Errors >= 4) { + if (gameState <= 5) { + this.error("js5connect"); + gameState = 1000; + } else { + field864 = 3000; } - } else if (gameState <= 5) { // L: 1873 - this.error("js5connect_full"); // L: 1874 - gameState = 1000; // L: 1875 - } else { - field794 = 3000; // L: 1877 } - } // L: 1890 + } - @ObfuscatedName("ey") + @ObfuscatedName("fb") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-89707600" + descriptor = "(B)V", + garbageValue = "-34" ) @Export("doCycleLoggedOut") final void doCycleLoggedOut() { - Object var1 = packetWriter.getSocket(); // L: 2303 - PacketBuffer var2 = packetWriter.packetBuffer; // L: 2304 + Object var1 = packetWriter.getSocket(); + PacketBuffer var2 = packetWriter.packetBuffer; try { - if (loginState == 0) { // L: 2306 - if (class195.secureRandom == null && (secureRandomFuture.isDone() || field947 > 250)) { // L: 2307 - class195.secureRandom = secureRandomFuture.get(); // L: 2308 - secureRandomFuture.shutdown(); // L: 2309 - secureRandomFuture = null; // L: 2310 + if (loginState == 0) { + if (WorldMapData_0.secureRandom == null && (secureRandomFuture.isDone() || field892 > 250)) { + WorldMapData_0.secureRandom = secureRandomFuture.get(); + secureRandomFuture.shutdown(); + secureRandomFuture = null; } - if (class195.secureRandom != null) { // L: 2312 - if (var1 != null) { // L: 2313 - ((AbstractSocket)var1).close(); // L: 2314 - var1 = null; // L: 2315 + if (WorldMapData_0.secureRandom != null) { + if (var1 != null) { + ((AbstractSocket)var1).close(); + var1 = null; } - UserComparator5.socketTask = null; // L: 2317 - field730 = false; // L: 2318 - field947 = 0; // L: 2319 - loginState = 1; // L: 2320 + WorldMapID.socketTask = null; + field696 = false; + field892 = 0; + loginState = 1; } } - if (loginState == 1) { // L: 2323 - if (UserComparator5.socketTask == null) { // L: 2324 - UserComparator5.socketTask = GameShell.taskHandler.newSocketTask(UserComparator6.worldHost, class41.port3); // L: 2325 + if (loginState == 1) { + if (WorldMapID.socketTask == null) { + WorldMapID.socketTask = GameShell.taskHandler.newSocketTask(WorldMapSprite.worldHost, ArchiveDiskAction.port3); } - if (UserComparator5.socketTask.status == 2) { // L: 2327 + if (WorldMapID.socketTask.status == 2) { throw new IOException(); } - if (UserComparator5.socketTask.status == 1) { // L: 2328 - if (useBufferedSocket) { // L: 2329 - Socket var4 = (Socket)UserComparator5.socketTask.result; // L: 2331 - BufferedNetSocket var3 = new BufferedNetSocket(var4, 40000, 5000); // L: 2333 - var1 = var3; // L: 2335 + if (WorldMapID.socketTask.status == 1) { + if (useBufferedSocket) { + var1 = class219.method4011((Socket)WorldMapID.socketTask.result, 40000, 5000); } else { - var1 = new NetSocket((Socket)UserComparator5.socketTask.result, GameShell.taskHandler, 5000); // L: 2338 + var1 = new NetSocket((Socket)WorldMapID.socketTask.result, GameShell.taskHandler, 5000); } - packetWriter.setSocket((AbstractSocket)var1); // L: 2340 - UserComparator5.socketTask = null; // L: 2341 - loginState = 2; // L: 2342 + packetWriter.setSocket((AbstractSocket)var1); + WorldMapID.socketTask = null; + loginState = 2; } } - PacketBufferNode var22; - if (loginState == 2) { // L: 2345 - packetWriter.clearBuffer(); // L: 2346 - var22 = class206.method3853(); // L: 2347 - var22.packetBuffer.writeByte(LoginPacket.field2340.id); // L: 2348 - packetWriter.addNode(var22); // L: 2349 - packetWriter.flush(); // L: 2350 - var2.offset = 0; // L: 2351 - loginState = 3; // L: 2352 + PacketBufferNode var3; + if (loginState == 2) { + packetWriter.clearBuffer(); + var3 = class236.method4163(); + var3.packetBuffer.writeByte(LoginPacket.field2332.id); + packetWriter.addNode(var3); + packetWriter.flush(); + var2.offset = 0; + loginState = 3; } + int var4; boolean var12; - int var13; - if (loginState == 3) { // L: 2354 - if (class195.pcmPlayer0 != null) { // L: 2355 - class195.pcmPlayer0.method2562(); + if (loginState == 3) { + if (AbstractWorldMapData.pcmPlayer0 != null) { + AbstractWorldMapData.pcmPlayer0.method2485(); } - if (class23.pcmPlayer1 != null) { // L: 2356 - class23.pcmPlayer1.method2562(); + if (FriendLoginUpdate.pcmPlayer1 != null) { + FriendLoginUpdate.pcmPlayer1.method2485(); } - var12 = true; // L: 2357 - if (useBufferedSocket && !((AbstractSocket)var1).isAvailable(1)) { // L: 2358 2359 + var12 = true; + if (useBufferedSocket && !((AbstractSocket)var1).isAvailable(1)) { var12 = false; } - if (var12) { // L: 2361 - var13 = ((AbstractSocket)var1).readUnsignedByte(); // L: 2362 - if (class195.pcmPlayer0 != null) { // L: 2363 - class195.pcmPlayer0.method2562(); + if (var12) { + var4 = ((AbstractSocket)var1).readUnsignedByte(); + if (AbstractWorldMapData.pcmPlayer0 != null) { + AbstractWorldMapData.pcmPlayer0.method2485(); } - if (class23.pcmPlayer1 != null) { // L: 2364 - class23.pcmPlayer1.method2562(); + if (FriendLoginUpdate.pcmPlayer1 != null) { + FriendLoginUpdate.pcmPlayer1.method2485(); } - if (var13 != 0) { // L: 2365 - WorldMapData_0.getLoginError(var13); // L: 2366 - return; // L: 2367 + if (var4 != 0) { + UserComparator8.getLoginError(var4); + return; } - var2.offset = 0; // L: 2369 - loginState = 4; // L: 2370 + var2.offset = 0; + loginState = 4; } } - int var37; - if (loginState == 4) { // L: 2373 - if (var2.offset < 8) { // L: 2374 - var37 = ((AbstractSocket)var1).available(); // L: 2375 - if (var37 > 8 - var2.offset) { // L: 2376 - var37 = 8 - var2.offset; + int var31; + if (loginState == 4) { + if (var2.offset < 8) { + var31 = ((AbstractSocket)var1).available(); + if (var31 > 8 - var2.offset) { + var31 = 8 - var2.offset; } - if (var37 > 0) { // L: 2377 - ((AbstractSocket)var1).read(var2.array, var2.offset, var37); // L: 2378 - var2.offset += var37; // L: 2379 + if (var31 > 0) { + ((AbstractSocket)var1).read(var2.array, var2.offset, var31); + var2.offset += var31; } } - if (var2.offset == 8) { // L: 2382 - var2.offset = 0; // L: 2383 - VerticalAlignment.field3222 = var2.readLong(); // L: 2384 - loginState = 5; // L: 2385 + if (var2.offset == 8) { + var2.offset = 0; + class69.field557 = var2.readLong(); + loginState = 5; } } int var7; int var9; int var14; - if (loginState == 5) { // L: 2388 - packetWriter.packetBuffer.offset = 0; // L: 2389 - packetWriter.clearBuffer(); // L: 2390 - PacketBuffer var23 = new PacketBuffer(500); // L: 2391 - int[] var25 = new int[]{class195.secureRandom.nextInt(), class195.secureRandom.nextInt(), class195.secureRandom.nextInt(), class195.secureRandom.nextInt()}; // L: 2392 2393 2394 2395 2396 - var23.offset = 0; // L: 2397 - var23.writeByte(1); // L: 2398 - var23.writeInt(var25[0]); // L: 2399 - var23.writeInt(var25[1]); // L: 2400 - var23.writeInt(var25[2]); // L: 2401 - var23.writeInt(var25[3]); // L: 2402 - var23.writeLong(VerticalAlignment.field3222); // L: 2403 + if (loginState == 5) { + packetWriter.packetBuffer.offset = 0; + packetWriter.clearBuffer(); + PacketBuffer var22 = new PacketBuffer(500); + int[] var13 = new int[]{WorldMapData_0.secureRandom.nextInt(), WorldMapData_0.secureRandom.nextInt(), WorldMapData_0.secureRandom.nextInt(), WorldMapData_0.secureRandom.nextInt()}; + var22.offset = 0; + var22.writeByte(1); + var22.writeInt(var13[0]); + var22.writeInt(var13[1]); + var22.writeInt(var13[2]); + var22.writeInt(var13[3]); + var22.writeLong(class69.field557); int var10; - if (gameState == 40) { // L: 2404 - var23.writeInt(GrandExchangeEvent.field77[0]); // L: 2405 - var23.writeInt(GrandExchangeEvent.field77[1]); // L: 2406 - var23.writeInt(GrandExchangeEvent.field77[2]); // L: 2407 - var23.writeInt(GrandExchangeEvent.field77[3]); // L: 2408 + if (gameState == 40) { + var22.writeInt(MouseHandler.field487[0]); + var22.writeInt(MouseHandler.field487[1]); + var22.writeInt(MouseHandler.field487[2]); + var22.writeInt(MouseHandler.field487[3]); } else { - var23.writeByte(field717.rsOrdinal()); // L: 2411 - switch(field717.field2032) { // L: 2412 + var22.writeByte(field872.rsOrdinal()); + switch(field872.field2022) { case 0: - case 3: - var23.writeMedium(class169.field2035); // L: 2421 - ++var23.offset; // L: 2422 - break; // L: 2423 - case 1: - var23.offset += 4; // L: 2415 - break; // L: 2416 - case 2: - LinkedHashMap var6 = GrandExchangeOfferAgeComparator.clientPreferences.parameters; // L: 2428 - String var8 = Login.Login_username; // L: 2430 - var9 = var8.length(); // L: 2432 - var10 = 0; // L: 2433 + LinkedHashMap var6 = Timer.clientPreferences.parameters; + String var8 = Login.Login_username; + var9 = var8.length(); + var10 = 0; - for (int var11 = 0; var11 < var9; ++var11) { // L: 2434 + for (int var11 = 0; var11 < var9; ++var11) { var10 = (var10 << 5) - var10 + var8.charAt(var11); } - var23.writeInt((Integer)var6.get(var10)); // L: 2437 + var22.writeInt((Integer)var6.get(var10)); + break; + case 1: + var22.offset += 4; + break; + case 2: + case 3: + var22.writeMedium(WorldMapSection1.field313); + ++var22.offset; } - var23.writeByte(class323.field3849.rsOrdinal()); // L: 2441 - var23.writeStringCp1252NullTerminated(Login.Login_password); // L: 2442 + var22.writeByte(class323.field3857.rsOrdinal()); + var22.writeStringCp1252NullTerminated(Login.Login_password); } - var23.encryptRsa(class92.field1198, class92.field1197); // L: 2444 - GrandExchangeEvent.field77 = var25; // L: 2445 - PacketBufferNode var5 = class206.method3853(); // L: 2446 - var5.packetBuffer.offset = 0; // L: 2447 - if (gameState == 40) { // L: 2448 - var5.packetBuffer.writeByte(LoginPacket.field2341.id); // L: 2449 + var22.encryptRsa(class92.field1170, class92.field1168); + MouseHandler.field487 = var13; + PacketBufferNode var5 = class236.method4163(); + var5.packetBuffer.offset = 0; + if (gameState == 40) { + var5.packetBuffer.writeByte(LoginPacket.field2335.id); } else { - var5.packetBuffer.writeByte(LoginPacket.field2339.id); // L: 2452 + var5.packetBuffer.writeByte(LoginPacket.field2334.id); } - var5.packetBuffer.writeShort(0); // L: 2454 - var14 = var5.packetBuffer.offset; // L: 2455 - var5.packetBuffer.writeInt(192); // L: 2456 - var5.packetBuffer.writeInt(1); // L: 2457 - var5.packetBuffer.writeByte(clientType); // L: 2458 - var5.packetBuffer.writeByte(field686); // L: 2459 - var5.packetBuffer.writeBytes(var23.array, 0, var23.offset); // L: 2460 - var7 = var5.packetBuffer.offset; // L: 2461 - var5.packetBuffer.writeStringCp1252NullTerminated(Login.Login_username); // L: 2462 - var5.packetBuffer.writeByte((isResizable ? 1 : 0) << 1 | (isLowDetail ? 1 : 0)); // L: 2463 - var5.packetBuffer.writeShort(ItemContainer.canvasWidth); // L: 2464 - var5.packetBuffer.writeShort(HealthBar.canvasHeight); // L: 2465 - Language.method3801(var5.packetBuffer); // L: 2466 - var5.packetBuffer.writeStringCp1252NullTerminated(WorldMapRegion.field281); // L: 2467 - var5.packetBuffer.writeInt(TextureProvider.field1561); // L: 2468 - Buffer var35 = new Buffer(Skills.platformInfo.size()); // L: 2469 - Skills.platformInfo.write(var35); // L: 2470 - var5.packetBuffer.writeBytes(var35.array, 0, var35.array.length); // L: 2471 - var5.packetBuffer.writeByte(clientType); // L: 2472 - var5.packetBuffer.writeInt(0); // L: 2473 - var5.packetBuffer.writeInt(Username.archive4.hash); // L: 2474 - var5.packetBuffer.writeInt(class1.archive15.hash); // L: 2475 - var5.packetBuffer.writeInt(FaceNormal.archive3.hash); // L: 2476 - var5.packetBuffer.method5684(Tiles.archive20.hash); // L: 2477 - var5.packetBuffer.writeInt(class281.archive10.hash); // L: 2478 - var5.packetBuffer.method5684(MenuAction.archive0.hash); // L: 2479 - var5.packetBuffer.method5682(class236.archive7.hash); // L: 2480 - var5.packetBuffer.method5683(AbstractByteArrayCopier.archive11.hash); // L: 2481 - var5.packetBuffer.method5682(AbstractByteArrayCopier.archive14.hash); // L: 2482 - var5.packetBuffer.method5682(GrandExchangeOffer.archive8.hash); // L: 2483 - var5.packetBuffer.method5683(ViewportMouse.archive12.hash); // L: 2484 - var5.packetBuffer.method5683(ModelData0.archive18.hash); // L: 2485 - var5.packetBuffer.method5682(class8.archive13.hash); // L: 2486 - var5.packetBuffer.writeInt(ApproximateRouteStrategy.archive6.hash); // L: 2487 - var5.packetBuffer.writeInt(class60.archive19.hash); // L: 2488 - var5.packetBuffer.writeInt(class23.archive17.hash); // L: 2489 - var5.packetBuffer.method5683(WorldMapManager.archive1.hash); // L: 2490 - var5.packetBuffer.method5682(0); // L: 2491 - var5.packetBuffer.writeInt(WorldMapSection3.archive2.hash); // L: 2492 - var5.packetBuffer.method5682(WorldMapData_1.archive9.hash); // L: 2493 - var5.packetBuffer.method5684(Varcs.archive5.hash); // L: 2494 - var5.packetBuffer.xteaEncrypt(var25, var7, var5.packetBuffer.offset); // L: 2495 - var5.packetBuffer.writeLengthShort(var5.packetBuffer.offset - var14); // L: 2496 - packetWriter.addNode(var5); // L: 2497 - packetWriter.flush(); // L: 2498 - packetWriter.isaacCipher = new IsaacCipher(var25); // L: 2499 - int[] var15 = new int[4]; // L: 2500 + var5.packetBuffer.writeShort(0); + var14 = var5.packetBuffer.offset; + var5.packetBuffer.writeInt(193); + var5.packetBuffer.writeInt(1); + var5.packetBuffer.writeByte(clientType); + var5.packetBuffer.writeByte(field651); + var5.packetBuffer.writeBytes(var22.array, 0, var22.offset); + var7 = var5.packetBuffer.offset; + var5.packetBuffer.writeStringCp1252NullTerminated(Login.Login_username); + var5.packetBuffer.writeByte((isResizable ? 1 : 0) << 1 | (isLowDetail ? 1 : 0)); + var5.packetBuffer.writeShort(IgnoreList.canvasWidth); + var5.packetBuffer.writeShort(ModelData0.canvasHeight); + FileSystem.method3573(var5.packetBuffer); + var5.packetBuffer.writeStringCp1252NullTerminated(WorldMapSection1.field317); + var5.packetBuffer.writeInt(MidiPcmStream.field2455); + Buffer var29 = new Buffer(class58.platformInfo.size()); + class58.platformInfo.write(var29); + var5.packetBuffer.writeBytes(var29.array, 0, var29.array.length); + var5.packetBuffer.writeByte(clientType); + var5.packetBuffer.writeInt(0); + var5.packetBuffer.method5718(GameShell.archive5.hash); + var5.packetBuffer.method5718(GrandExchangeOfferUnitPriceComparator.archive13.hash); + var5.packetBuffer.method5718(PacketBufferNode.archive12.hash); + var5.packetBuffer.method5587(ItemContainer.archive11.hash); + var5.packetBuffer.writeInt(GrandExchangeOfferUnitPriceComparator.archive9.hash); + var5.packetBuffer.writeInt(NetFileRequest.archive20.hash); + var5.packetBuffer.method5718(class92.archive10.hash); + var5.packetBuffer.method5587(class41.archive18.hash); + var5.packetBuffer.method5588(class169.archive17.hash); + var5.packetBuffer.method5588(archive15.hash); + var5.packetBuffer.method5587(WorldMapSprite.archive1.hash); + var5.packetBuffer.method5718(FontName.archive14.hash); + var5.packetBuffer.method5587(class195.archive19.hash); + var5.packetBuffer.method5718(Messages.archive8.hash); + var5.packetBuffer.method5587(DynamicObject.archive2.hash); + var5.packetBuffer.method5718(class330.archive3.hash); + var5.packetBuffer.method5587(TilePaint.archive0.hash); + var5.packetBuffer.writeInt(class227.archive4.hash); + var5.packetBuffer.method5587(0); + var5.packetBuffer.method5588(BuddyRankComparator.archive7.hash); + var5.packetBuffer.method5718(class217.archive6.hash); + var5.packetBuffer.xteaEncrypt(var13, var7, var5.packetBuffer.offset); + var5.packetBuffer.writeLengthShort(var5.packetBuffer.offset - var14); + packetWriter.addNode(var5); + packetWriter.flush(); + packetWriter.isaacCipher = new IsaacCipher(var13); + int[] var15 = new int[4]; - for (var10 = 0; var10 < 4; ++var10) { // L: 2501 - var15[var10] = var25[var10] + 50; + for (var10 = 0; var10 < 4; ++var10) { + var15[var10] = var13[var10] + 50; } - var2.newIsaacCipher(var15); // L: 2502 - loginState = 6; // L: 2503 + var2.newIsaacCipher(var15); + loginState = 6; } - if (loginState == 6 && ((AbstractSocket)var1).available() > 0) { // L: 2505 2506 - var37 = ((AbstractSocket)var1).readUnsignedByte(); // L: 2507 - if (var37 == 21 && gameState == 20) { // L: 2508 - loginState = 12; // L: 2509 - } else if (var37 == 2) { // L: 2511 - loginState = 14; // L: 2512 - } else if (var37 == 15 && gameState == 40) { // L: 2514 - packetWriter.serverPacketLength = -1; // L: 2515 - loginState = 19; // L: 2516 - } else if (var37 == 64) { // L: 2518 - loginState = 10; // L: 2519 - } else if (var37 == 23 && field715 < 1) { // L: 2521 - ++field715; // L: 2522 - loginState = 0; // L: 2523 - } else if (var37 == 29) { // L: 2525 - loginState = 17; // L: 2526 + if (loginState == 6 && ((AbstractSocket)var1).available() > 0) { + var31 = ((AbstractSocket)var1).readUnsignedByte(); + if (var31 == 21 && gameState == 20) { + loginState = 12; + } else if (var31 == 2) { + loginState = 14; + } else if (var31 == 15 && gameState == 40) { + packetWriter.serverPacketLength = -1; + loginState = 19; + } else if (var31 == 64) { + loginState = 10; + } else if (var31 == 23 && field681 < 1) { + ++field681; + loginState = 0; + } else if (var31 == 29) { + loginState = 17; } else { - if (var37 != 69) { // L: 2528 - WorldMapData_0.getLoginError(var37); // L: 2532 - return; // L: 2533 + if (var31 != 69) { + UserComparator8.getLoginError(var31); + return; } - loginState = 7; // L: 2529 + loginState = 7; } } - if (loginState == 7 && ((AbstractSocket)var1).available() >= 2) { // L: 2537 2538 - ((AbstractSocket)var1).read(var2.array, 0, 2); // L: 2539 - var2.offset = 0; // L: 2540 - class58.field445 = var2.readUnsignedShort(); // L: 2541 - loginState = 8; // L: 2542 + if (loginState == 7 && ((AbstractSocket)var1).available() >= 2) { + ((AbstractSocket)var1).read(var2.array, 0, 2); + var2.offset = 0; + WorldMapLabel.field258 = var2.readUnsignedShort(); + loginState = 8; } - if (loginState == 8 && ((AbstractSocket)var1).available() >= class58.field445) { // L: 2545 2546 - var2.offset = 0; // L: 2547 - ((AbstractSocket)var1).read(var2.array, var2.offset, class58.field445); // L: 2548 - class7[] var24 = new class7[]{class7.field26}; // L: 2551 - class7 var26 = var24[var2.readUnsignedByte()]; // L: 2553 + if (loginState == 8 && ((AbstractSocket)var1).available() >= WorldMapLabel.field258) { + var2.offset = 0; + ((AbstractSocket)var1).read(var2.array, var2.offset, WorldMapLabel.field258); + class7 var23 = BufferedSink.method5889()[var2.readUnsignedByte()]; try { - class12 var29 = ServerPacket.method3742(var26); // L: 2555 - this.field721 = new class9(var2, var29); // L: 2556 - loginState = 9; // L: 2557 - } catch (Exception var20) { // L: 2559 - WorldMapData_0.getLoginError(22); // L: 2560 - return; // L: 2561 + class12 var32 = ItemContainer.method1250(var23); + this.field687 = new class9(var2, var32); + loginState = 9; + } catch (Exception var20) { + UserComparator8.getLoginError(22); + return; } } - if (loginState == 9 && this.field721.method120()) { // L: 2565 2566 - this.field720 = this.field721.method122(); // L: 2567 - this.field721.method121(); // L: 2568 - this.field721 = null; // L: 2569 - if (this.field720 == null) { // L: 2570 - WorldMapData_0.getLoginError(22); // L: 2571 - return; // L: 2572 + if (loginState == 9 && this.field687.method112()) { + this.field686 = this.field687.method98(); + this.field687.method97(); + this.field687 = null; + if (this.field686 == null) { + UserComparator8.getLoginError(22); + return; } - packetWriter.clearBuffer(); // L: 2574 - var22 = class206.method3853(); // L: 2575 - var22.packetBuffer.writeByte(LoginPacket.field2342.id); // L: 2576 - var22.packetBuffer.writeShort(this.field720.offset); // L: 2577 - var22.packetBuffer.method5713(this.field720); // L: 2578 - packetWriter.addNode(var22); // L: 2579 - packetWriter.flush(); // L: 2580 - this.field720 = null; // L: 2581 - loginState = 6; // L: 2582 + packetWriter.clearBuffer(); + var3 = class236.method4163(); + var3.packetBuffer.writeByte(LoginPacket.field2336.id); + var3.packetBuffer.writeShort(this.field686.offset); + var3.packetBuffer.method5536(this.field686); + packetWriter.addNode(var3); + packetWriter.flush(); + this.field686 = null; + loginState = 6; } - if (loginState == 10 && ((AbstractSocket)var1).available() > 0) { // L: 2585 2586 - ScriptFrame.field552 = ((AbstractSocket)var1).readUnsignedByte(); // L: 2587 - loginState = 11; // L: 2588 + if (loginState == 10 && ((AbstractSocket)var1).available() > 0) { + class58.field433 = ((AbstractSocket)var1).readUnsignedByte(); + loginState = 11; } - if (loginState == 11 && ((AbstractSocket)var1).available() >= ScriptFrame.field552) { // L: 2591 2592 - ((AbstractSocket)var1).read(var2.array, 0, ScriptFrame.field552); // L: 2593 - var2.offset = 0; // L: 2594 - loginState = 6; // L: 2595 + if (loginState == 11 && ((AbstractSocket)var1).available() >= class58.field433) { + ((AbstractSocket)var1).read(var2.array, 0, class58.field433); + var2.offset = 0; + loginState = 6; } - if (loginState == 12 && ((AbstractSocket)var1).available() > 0) { // L: 2598 2599 - field716 = (((AbstractSocket)var1).readUnsignedByte() + 3) * 60; // L: 2600 - loginState = 13; // L: 2601 + if (loginState == 12 && ((AbstractSocket)var1).available() > 0) { + field682 = (((AbstractSocket)var1).readUnsignedByte() + 3) * 60; + loginState = 13; } - if (loginState == 13) { // L: 2604 - field947 = 0; // L: 2605 - GrandExchangeOfferNameComparator.setLoginResponseString("You have only just left another world.", "Your profile will be transferred in:", field716 / 60 + " seconds."); // L: 2606 - if (--field716 <= 0) { // L: 2607 + if (loginState == 13) { + field892 = 0; + GameShell.setLoginResponseString("You have only just left another world.", "Your profile will be transferred in:", field682 / 60 + " seconds."); + if (--field682 <= 0) { loginState = 0; } } else { - if (loginState == 14 && ((AbstractSocket)var1).available() >= 1) { // L: 2610 2611 - SpotAnimationDefinition.field3282 = ((AbstractSocket)var1).readUnsignedByte(); // L: 2612 - loginState = 15; // L: 2613 + if (loginState == 14 && ((AbstractSocket)var1).available() >= 1) { + UrlRequester.field1963 = ((AbstractSocket)var1).readUnsignedByte(); + loginState = 15; } - if (loginState == 15 && ((AbstractSocket)var1).available() >= SpotAnimationDefinition.field3282) { // L: 2616 2617 - var12 = ((AbstractSocket)var1).readUnsignedByte() == 1; // L: 2618 - ((AbstractSocket)var1).read(var2.array, 0, 4); // L: 2619 - var2.offset = 0; // L: 2620 - boolean var38 = false; // L: 2621 - if (var12) { // L: 2622 - var13 = var2.readByteIsaac() << 24; // L: 2623 - var13 |= var2.readByteIsaac() << 16; // L: 2624 - var13 |= var2.readByteIsaac() << 8; // L: 2625 - var13 |= var2.readByteIsaac(); // L: 2626 - String var34 = Login.Login_username; // L: 2628 - var7 = var34.length(); // L: 2630 - int var16 = 0; // L: 2631 - var9 = 0; // L: 2632 + if (loginState == 15 && ((AbstractSocket)var1).available() >= UrlRequester.field1963) { + var12 = ((AbstractSocket)var1).readUnsignedByte() == 1; + ((AbstractSocket)var1).read(var2.array, 0, 4); + var2.offset = 0; + boolean var24 = false; + if (var12) { + var4 = var2.readByteIsaac() << 24; + var4 |= var2.readByteIsaac() << 16; + var4 |= var2.readByteIsaac() << 8; + var4 |= var2.readByteIsaac(); + String var28 = Login.Login_username; + var7 = var28.length(); + int var16 = 0; + var9 = 0; while (true) { if (var9 >= var7) { - if (GrandExchangeOfferAgeComparator.clientPreferences.parameters.size() >= 10 && !GrandExchangeOfferAgeComparator.clientPreferences.parameters.containsKey(var16)) { // L: 2636 2637 - Iterator var36 = GrandExchangeOfferAgeComparator.clientPreferences.parameters.entrySet().iterator(); // L: 2638 - var36.next(); // L: 2639 - var36.remove(); // L: 2640 + if (Timer.clientPreferences.parameters.size() >= 10 && !Timer.clientPreferences.parameters.containsKey(var16)) { + Iterator var30 = Timer.clientPreferences.parameters.entrySet().iterator(); + var30.next(); + var30.remove(); } - GrandExchangeOfferAgeComparator.clientPreferences.parameters.put(var16, var13); // L: 2643 + Timer.clientPreferences.parameters.put(var16, var4); break; } - var16 = (var16 << 5) - var16 + var34.charAt(var9); + var16 = (var16 << 5) - var16 + var28.charAt(var9); ++var9; } } - if (Login_isUsernameRemembered) { // L: 2645 - GrandExchangeOfferAgeComparator.clientPreferences.rememberedUsername = Login.Login_username; // L: 2646 + if (Login_isUsernameRemembered) { + Timer.clientPreferences.rememberedUsername = Login.Login_username; } else { - GrandExchangeOfferAgeComparator.clientPreferences.rememberedUsername = null; // L: 2649 + Timer.clientPreferences.rememberedUsername = null; } - Tile.savePreferences(); // L: 2651 - staffModLevel = ((AbstractSocket)var1).readUnsignedByte(); // L: 2652 - playerMod = ((AbstractSocket)var1).readUnsignedByte() == 1; // L: 2653 - localPlayerIndex = ((AbstractSocket)var1).readUnsignedByte(); // L: 2654 - localPlayerIndex <<= 8; // L: 2655 - localPlayerIndex += ((AbstractSocket)var1).readUnsignedByte(); // L: 2656 - field799 = ((AbstractSocket)var1).readUnsignedByte(); // L: 2657 - ((AbstractSocket)var1).read(var2.array, 0, 1); // L: 2658 - var2.offset = 0; // L: 2659 - ServerPacket[] var32 = ArchiveDiskActionHandler.ServerPacket_values(); // L: 2660 - var14 = var2.readSmartByteShortIsaac(); // L: 2661 - if (var14 < 0 || var14 >= var32.length) { // L: 2662 + GrandExchangeOffer.savePreferences(); + staffModLevel = ((AbstractSocket)var1).readUnsignedByte(); + playerMod = ((AbstractSocket)var1).readUnsignedByte() == 1; + localPlayerIndex = ((AbstractSocket)var1).readUnsignedByte(); + localPlayerIndex <<= 8; + localPlayerIndex += ((AbstractSocket)var1).readUnsignedByte(); + field766 = ((AbstractSocket)var1).readUnsignedByte(); + ((AbstractSocket)var1).read(var2.array, 0, 1); + var2.offset = 0; + ServerPacket[] var26 = Tiles.ServerPacket_values(); + var14 = var2.readSmartByteShortIsaac(); + if (var14 < 0 || var14 >= var26.length) { throw new IOException(var14 + " " + var2.offset); } - packetWriter.serverPacket = var32[var14]; // L: 2663 - packetWriter.serverPacketLength = packetWriter.serverPacket.length; // L: 2664 - ((AbstractSocket)var1).read(var2.array, 0, 2); // L: 2665 - var2.offset = 0; // L: 2666 - packetWriter.serverPacketLength = var2.readUnsignedShort(); // L: 2667 + packetWriter.serverPacket = var26[var14]; + packetWriter.serverPacketLength = packetWriter.serverPacket.length; + ((AbstractSocket)var1).read(var2.array, 0, 2); + var2.offset = 0; + packetWriter.serverPacketLength = var2.readUnsignedShort(); try { - Client var18 = ByteArrayPool.client; // L: 2669 - JSObject.getWindow(var18).call("zap", (Object[])null); // L: 2672 - } catch (Throwable var19) { // L: 2675 + class56.method901(WorldMapIcon_0.client, "zap"); + } catch (Throwable var19) { } - loginState = 16; // L: 2676 + loginState = 16; } - if (loginState != 16) { // L: 2679 - if (loginState == 17 && ((AbstractSocket)var1).available() >= 2) { // L: 2773 2774 - var2.offset = 0; // L: 2775 - ((AbstractSocket)var1).read(var2.array, 0, 2); // L: 2776 - var2.offset = 0; // L: 2777 - KitDefinition.field3297 = var2.readUnsignedShort(); // L: 2778 - loginState = 18; // L: 2779 + if (loginState == 16) { + if (((AbstractSocket)var1).available() >= packetWriter.serverPacketLength) { + var2.offset = 0; + ((AbstractSocket)var1).read(var2.array, 0, packetWriter.serverPacketLength); + timer.method5013(); + Players.method2208(); + class307.updatePlayer(var2); + class182.field2112 = -1; + ItemContainer.loadRegions(false, var2); + packetWriter.serverPacket = null; } - if (loginState == 18 && ((AbstractSocket)var1).available() >= KitDefinition.field3297) { // L: 2782 2783 - var2.offset = 0; // L: 2784 - ((AbstractSocket)var1).read(var2.array, 0, KitDefinition.field3297); // L: 2785 - var2.offset = 0; // L: 2786 - String var30 = var2.readStringCp1252NullTerminated(); // L: 2787 - String var31 = var2.readStringCp1252NullTerminated(); // L: 2788 - String var33 = var2.readStringCp1252NullTerminated(); // L: 2789 - GrandExchangeOfferNameComparator.setLoginResponseString(var30, var31, var33); // L: 2790 - BuddyRankComparator.updateGameState(10); // L: 2791 + } else { + if (loginState == 17 && ((AbstractSocket)var1).available() >= 2) { + var2.offset = 0; + ((AbstractSocket)var1).read(var2.array, 0, 2); + var2.offset = 0; + MusicPatch.field2497 = var2.readUnsignedShort(); + loginState = 18; } - if (loginState == 19) { // L: 2794 - if (packetWriter.serverPacketLength == -1) { // L: 2795 - if (((AbstractSocket)var1).available() < 2) { // L: 2796 + if (loginState == 18 && ((AbstractSocket)var1).available() >= MusicPatch.field2497) { + var2.offset = 0; + ((AbstractSocket)var1).read(var2.array, 0, MusicPatch.field2497); + var2.offset = 0; + String var25 = var2.readStringCp1252NullTerminated(); + String var33 = var2.readStringCp1252NullTerminated(); + String var27 = var2.readStringCp1252NullTerminated(); + GameShell.setLoginResponseString(var25, var33, var27); + WorldMapCacheName.updateGameState(10); + } + + if (loginState == 19) { + if (packetWriter.serverPacketLength == -1) { + if (((AbstractSocket)var1).available() < 2) { return; } - ((AbstractSocket)var1).read(var2.array, 0, 2); // L: 2797 - var2.offset = 0; // L: 2798 - packetWriter.serverPacketLength = var2.readUnsignedShort(); // L: 2799 + ((AbstractSocket)var1).read(var2.array, 0, 2); + var2.offset = 0; + packetWriter.serverPacketLength = var2.readUnsignedShort(); } - if (((AbstractSocket)var1).available() >= packetWriter.serverPacketLength) { // L: 2801 - ((AbstractSocket)var1).read(var2.array, 0, packetWriter.serverPacketLength); // L: 2802 - var2.offset = 0; // L: 2803 - var37 = packetWriter.serverPacketLength; // L: 2804 - timer.method5139(); // L: 2805 - Language.method3791(); // L: 2806 - TileItem.updatePlayer(var2); // L: 2807 - if (var37 != var2.offset) { // L: 2808 - throw new RuntimeException(); // L: 2809 + if (((AbstractSocket)var1).available() >= packetWriter.serverPacketLength) { + ((AbstractSocket)var1).read(var2.array, 0, packetWriter.serverPacketLength); + var2.offset = 0; + var31 = packetWriter.serverPacketLength; + timer.method5015(); + DefaultsGroup.method5939(); + class307.updatePlayer(var2); + if (var31 != var2.offset) { + throw new RuntimeException(); } } } else { - ++field947; // L: 2813 - if (field947 > 2000) { // L: 2814 - if (field715 < 1) { // L: 2815 - if (Coord.port1 == class41.port3) { // L: 2816 - class41.port3 = Coord.port2; + ++field892; + if (field892 > 2000) { + if (field681 < 1) { + if (class278.port1 == ArchiveDiskAction.port3) { + ArchiveDiskAction.port3 = Players.port2; } else { - class41.port3 = Coord.port1; // L: 2817 + ArchiveDiskAction.port3 = class278.port1; } - ++field715; // L: 2818 - loginState = 0; // L: 2819 + ++field681; + loginState = 0; } else { - WorldMapData_0.getLoginError(-3); // L: 2822 + UserComparator8.getLoginError(-3); } } } - } else { - if (((AbstractSocket)var1).available() >= packetWriter.serverPacketLength) { // L: 2680 - var2.offset = 0; // L: 2681 - ((AbstractSocket)var1).read(var2.array, 0, packetWriter.serverPacketLength); // L: 2682 - timer.method5137(); // L: 2683 - mouseLastLastPressedTimeMillis = -1L; // L: 2686 - class204.mouseRecorder.index = 0; // L: 2687 - class8.hasFocus = true; // L: 2688 - hadFocus = true; // L: 2689 - field905 = -1L; // L: 2690 - class105.reflectionChecks = new IterableNodeDeque(); // L: 2692 - packetWriter.clearBuffer(); // L: 2694 - packetWriter.packetBuffer.offset = 0; // L: 2695 - packetWriter.serverPacket = null; // L: 2696 - packetWriter.field1348 = null; // L: 2697 - packetWriter.field1339 = null; // L: 2698 - packetWriter.field1350 = null; // L: 2699 - packetWriter.serverPacketLength = 0; // L: 2700 - packetWriter.field1337 = 0; // L: 2701 - rebootTimer = 0; // L: 2702 - logoutTimer = 0; // L: 2703 - hintArrowType = 0; // L: 2704 - AbstractWorldMapData.method375(); // L: 2705 - class228.method4246(0); // L: 2706 - UrlRequest.method3436(); // L: 2707 - isItemSelected = 0; // L: 2708 - isSpellSelected = false; // L: 2709 - soundEffectCount = 0; // L: 2710 - camAngleY = 0; // L: 2711 - oculusOrbState = 0; // L: 2712 - ModelData0.field1895 = null; // L: 2713 - minimapState = 0; // L: 2714 - field906 = -1; // L: 2715 - destinationX = 0; // L: 2716 - destinationY = 0; // L: 2717 - playerAttackOption = AttackOption.AttackOption_hidden; // L: 2718 - npcAttackOption = AttackOption.AttackOption_hidden; // L: 2719 - npcCount = 0; // L: 2720 - class89.method2163(); // L: 2721 - - for (var37 = 0; var37 < 2048; ++var37) { // L: 2722 - players[var37] = null; - } - - for (var37 = 0; var37 < 32768; ++var37) { // L: 2723 - npcs[var37] = null; - } - - combatTargetPlayerIndex = -1; // L: 2724 - projectiles.clear(); // L: 2725 - graphicsObjects.clear(); // L: 2726 - - for (var37 = 0; var37 < 4; ++var37) { // L: 2727 - for (var13 = 0; var13 < 104; ++var13) { // L: 2728 - for (int var17 = 0; var17 < 104; ++var17) { // L: 2729 - groundItems[var37][var13][var17] = null; // L: 2730 - } - } - } - - pendingSpawns = new NodeDeque(); // L: 2734 - WorldMapLabelSize.friendSystem.clear(); // L: 2735 - - for (var37 = 0; var37 < VarpDefinition.VarpDefinition_fileCount; ++var37) { // L: 2736 - VarpDefinition var28 = PendingSpawn.VarpDefinition_get(var37); // L: 2737 - if (var28 != null) { // L: 2738 - Varps.Varps_temp[var37] = 0; // L: 2739 - Varps.Varps_main[var37] = 0; // L: 2740 - } - } - - FriendSystem.varcs.clearTransient(); // L: 2743 - followerIndex = -1; // L: 2744 - if (rootInterface != -1) { // L: 2745 - class206.method3852(rootInterface); - } - - for (InterfaceParent var27 = (InterfaceParent)interfaceParents.first(); var27 != null; var27 = (InterfaceParent)interfaceParents.next()) { // L: 2746 - Player.closeInterface(var27, true); // L: 2747 - } - - rootInterface = -1; // L: 2749 - interfaceParents = new NodeHashTable(8); // L: 2750 - meslayerContinueWidget = null; // L: 2751 - AbstractWorldMapData.method375(); // L: 2752 - playerAppearance.update((int[])null, new int[]{0, 0, 0, 0, 0}, false, -1); // L: 2753 - - for (var37 = 0; var37 < 8; ++var37) { // L: 2754 - playerMenuActions[var37] = null; // L: 2755 - playerOptionsPriorities[var37] = false; // L: 2756 - } - - class4.method78(); // L: 2758 - isLoading = true; // L: 2759 - - for (var37 = 0; var37 < 100; ++var37) { // L: 2760 - field834[var37] = true; - } - - Actor.method1855(); // L: 2761 - DevicePcmPlayerProvider.clanChat = null; // L: 2762 - - for (var37 = 0; var37 < 8; ++var37) { // L: 2763 - grandExchangeOffers[var37] = new GrandExchangeOffer(); - } - - WorldMapDecoration.grandExchangeEvents = null; // L: 2764 - TileItem.updatePlayer(var2); // L: 2766 - GrandExchangeEvent.field78 = -1; // L: 2767 - PacketWriter.loadRegions(false, var2); // L: 2768 - packetWriter.serverPacket = null; // L: 2769 - } - } } - } catch (IOException var21) { // L: 2826 - if (field715 < 1) { // L: 2827 - if (class41.port3 == Coord.port1) { // L: 2828 - class41.port3 = Coord.port2; + } catch (IOException var21) { + if (field681 < 1) { + if (class278.port1 == ArchiveDiskAction.port3) { + ArchiveDiskAction.port3 = Players.port2; } else { - class41.port3 = Coord.port1; // L: 2829 + ArchiveDiskAction.port3 = class278.port1; } - ++field715; // L: 2830 - loginState = 0; // L: 2831 + ++field681; + loginState = 0; } else { - WorldMapData_0.getLoginError(-2); // L: 2834 + UserComparator8.getLoginError(-2); } } - } // L: 2608 2771 2811 2820 2823 2832 2835 2837 + } @ObfuscatedName("fw") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-769999345" + descriptor = "(B)V", + garbageValue = "-105" ) @Export("doCycleLoggedIn") final void doCycleLoggedIn() { - if (rebootTimer > 1) { // L: 3055 + if (rebootTimer > 1) { --rebootTimer; } - if (logoutTimer > 0) { // L: 3056 + if (logoutTimer > 0) { --logoutTimer; } - if (field730) { // L: 3057 - field730 = false; // L: 3058 - FloorDecoration.method2986(); // L: 3059 + if (field696) { + field696 = false; + LoginScreenAnimation.method1903(); } else { - if (!isMenuOpen) { // L: 3062 - WorldMapSection2.addCancelMenuEntry(); + if (!isMenuOpen) { + ApproximateRouteStrategy.addCancelMenuEntry(); } int var1; - for (var1 = 0; var1 < 100 && this.method1616(packetWriter); ++var1) { // L: 3063 3064 + for (var1 = 0; var1 < 100 && this.method1687(packetWriter); ++var1) { } - if (gameState == 30) { // L: 3066 + if (gameState == 30) { int var2; - PacketBufferNode var14; - while (class206.method3851()) { // L: 3067 - var14 = class4.getPacketBufferNode(ClientPacket.field2303, packetWriter.isaacCipher); // L: 3068 - var14.packetBuffer.writeByte(0); // L: 3069 - var2 = var14.packetBuffer.offset; // L: 3070 - TileItemPile.performReflectionCheck(var14.packetBuffer); // L: 3071 - var14.packetBuffer.writeLengthByte(var14.packetBuffer.offset - var2); // L: 3072 - packetWriter.addNode(var14); // L: 3073 + PacketBufferNode var15; + while (class23.method225()) { + var15 = ItemContainer.getPacketBufferNode(ClientPacket.field2280, packetWriter.isaacCipher); + var15.packetBuffer.writeByte(0); + var2 = var15.packetBuffer.offset; + WorldMapData_0.performReflectionCheck(var15.packetBuffer); + var15.packetBuffer.writeLengthByte(var15.packetBuffer.offset - var2); + packetWriter.addNode(var15); } - if (timer.field3606) { // L: 3075 - var14 = class4.getPacketBufferNode(ClientPacket.field2287, packetWriter.isaacCipher); // L: 3077 - var14.packetBuffer.writeByte(0); // L: 3078 - var2 = var14.packetBuffer.offset; // L: 3079 - timer.write(var14.packetBuffer); // L: 3080 - var14.packetBuffer.writeLengthByte(var14.packetBuffer.offset - var2); // L: 3081 - packetWriter.addNode(var14); // L: 3082 - timer.method5142(); // L: 3083 + if (timer.field3614) { + var15 = ItemContainer.getPacketBufferNode(ClientPacket.field2251, packetWriter.isaacCipher); + var15.packetBuffer.writeByte(0); + var2 = var15.packetBuffer.offset; + timer.write(var15.packetBuffer); + var15.packetBuffer.writeLengthByte(var15.packetBuffer.offset - var2); + packetWriter.addNode(var15); + timer.method5014(); } int var3; @@ -3780,2521 +3383,2591 @@ public final class Client extends GameShell implements Usernamed { int var6; int var7; int var8; - synchronized(class204.mouseRecorder.lock) { // L: 3086 - if (!field772) { // L: 3087 - class204.mouseRecorder.index = 0; // L: 3173 - } else if (MouseHandler.MouseHandler_lastButton != 0 || class204.mouseRecorder.index >= 40) { // L: 3088 - PacketBufferNode var15 = null; // L: 3090 - var3 = 0; // L: 3091 - var4 = 0; // L: 3092 - var5 = 0; // L: 3093 - var6 = 0; // L: 3094 + int var9; + int var10; + int var11; + int var12; + synchronized(SoundCache.mouseRecorder.lock) { + if (!field907) { + SoundCache.mouseRecorder.index = 0; + } else if (MouseHandler.MouseHandler_lastButton != 0 || SoundCache.mouseRecorder.index >= 40) { + PacketBufferNode var16 = null; + var3 = 0; + var4 = 0; + var5 = 0; + var6 = 0; - for (var7 = 0; var7 < class204.mouseRecorder.index && (var15 == null || var15.packetBuffer.offset - var3 < 246); ++var7) { // L: 3095 3096 - var4 = var7; // L: 3097 - var8 = class204.mouseRecorder.ys[var7]; // L: 3098 - if (var8 < -1) { // L: 3099 + for (var7 = 0; var7 < SoundCache.mouseRecorder.index && (var16 == null || var16.packetBuffer.offset - var3 < 246); ++var7) { + var4 = var7; + var8 = SoundCache.mouseRecorder.ys[var7]; + if (var8 < -1) { var8 = -1; - } else if (var8 > 65534) { // L: 3100 + } else if (var8 > 65534) { var8 = 65534; } - int var9 = class204.mouseRecorder.xs[var7]; // L: 3101 - if (var9 < -1) { // L: 3102 + var9 = SoundCache.mouseRecorder.xs[var7]; + if (var9 < -1) { var9 = -1; - } else if (var9 > 65534) { // L: 3103 + } else if (var9 > 65534) { var9 = 65534; } - if (var9 != field719 || var8 != field693) { // L: 3104 - if (var15 == null) { // L: 3107 - var15 = class4.getPacketBufferNode(ClientPacket.field2314, packetWriter.isaacCipher); // L: 3108 - var15.packetBuffer.writeByte(0); // L: 3109 - var3 = var15.packetBuffer.offset; // L: 3110 - PacketBuffer var10000 = var15.packetBuffer; // L: 3111 + if (var9 != field657 || var8 != field658) { + if (var16 == null) { + var16 = ItemContainer.getPacketBufferNode(ClientPacket.field2326, packetWriter.isaacCipher); + var16.packetBuffer.writeByte(0); + var3 = var16.packetBuffer.offset; + PacketBuffer var10000 = var16.packetBuffer; var10000.offset += 2; - var5 = 0; // L: 3112 - var6 = 0; // L: 3113 + var5 = 0; + var6 = 0; } - int var10; - int var11; - int var12; - if (-1L != field694) { // L: 3118 - var10 = var9 - field719; // L: 3119 - var11 = var8 - field693; // L: 3120 - var12 = (int)((class204.mouseRecorder.millis[var7] - field694) / 20L); // L: 3121 - var5 = (int)((long)var5 + (class204.mouseRecorder.millis[var7] - field694) % 20L); // L: 3122 + if (-1L != field794) { + var10 = var9 - field657; + var11 = var8 - field658; + var12 = (int)((SoundCache.mouseRecorder.millis[var7] - field794) / 20L); + var5 = (int)((long)var5 + (SoundCache.mouseRecorder.millis[var7] - field794) % 20L); } else { - var10 = var9; // L: 3125 - var11 = var8; // L: 3126 - var12 = Integer.MAX_VALUE; // L: 3127 + var10 = var9; + var11 = var8; + var12 = Integer.MAX_VALUE; } - field719 = var9; // L: 3129 - field693 = var8; // L: 3130 - if (var12 < 8 && var10 >= -32 && var10 <= 31 && var11 >= -32 && var11 <= 31) { // L: 3131 - var10 += 32; // L: 3132 - var11 += 32; // L: 3133 - var15.packetBuffer.writeShort((var12 << 12) + var11 + (var10 << 6)); // L: 3134 - } else if (var12 < 32 && var10 >= -128 && var10 <= 127 && var11 >= -128 && var11 <= 127) { // L: 3136 - var10 += 128; // L: 3137 - var11 += 128; // L: 3138 - var15.packetBuffer.writeByte(var12 + 128); // L: 3139 - var15.packetBuffer.writeShort(var11 + (var10 << 8)); // L: 3140 - } else if (var12 < 32) { // L: 3142 - var15.packetBuffer.writeByte(var12 + 192); // L: 3143 - if (var9 != -1 && var8 != -1) { // L: 3144 - var15.packetBuffer.writeInt(var9 | var8 << 16); // L: 3145 + field657 = var9; + field658 = var8; + if (var12 < 8 && var10 >= -32 && var10 <= 31 && var11 >= -32 && var11 <= 31) { + var10 += 32; + var11 += 32; + var16.packetBuffer.writeShort((var12 << 12) + var11 + (var10 << 6)); + } else if (var12 < 32 && var10 >= -128 && var10 <= 127 && var11 >= -128 && var11 <= 127) { + var10 += 128; + var11 += 128; + var16.packetBuffer.writeByte(var12 + 128); + var16.packetBuffer.writeShort(var11 + (var10 << 8)); + } else if (var12 < 32) { + var16.packetBuffer.writeByte(var12 + 192); + if (var9 != -1 && var8 != -1) { + var16.packetBuffer.writeInt(var9 | var8 << 16); } else { - var15.packetBuffer.writeInt(Integer.MIN_VALUE); + var16.packetBuffer.writeInt(Integer.MIN_VALUE); } } else { - var15.packetBuffer.writeShort((var12 & 8191) + 57344); // L: 3148 - if (var9 != -1 && var8 != -1) { // L: 3149 - var15.packetBuffer.writeInt(var9 | var8 << 16); // L: 3150 + var16.packetBuffer.writeShort((var12 & 8191) + 57344); + if (var9 != -1 && var8 != -1) { + var16.packetBuffer.writeInt(var9 | var8 << 16); } else { - var15.packetBuffer.writeInt(Integer.MIN_VALUE); + var16.packetBuffer.writeInt(Integer.MIN_VALUE); } } - ++var6; // L: 3152 - field694 = class204.mouseRecorder.millis[var7]; // L: 3153 + ++var6; + field794 = SoundCache.mouseRecorder.millis[var7]; } } - if (var15 != null) { // L: 3155 - var15.packetBuffer.writeLengthByte(var15.packetBuffer.offset - var3); // L: 3156 - var7 = var15.packetBuffer.offset; // L: 3157 - var15.packetBuffer.offset = var3; // L: 3158 - var15.packetBuffer.writeByte(var5 / var6); // L: 3159 - var15.packetBuffer.writeByte(var5 % var6); // L: 3160 - var15.packetBuffer.offset = var7; // L: 3161 - packetWriter.addNode(var15); // L: 3162 + if (var16 != null) { + var16.packetBuffer.writeLengthByte(var16.packetBuffer.offset - var3); + var7 = var16.packetBuffer.offset; + var16.packetBuffer.offset = var3; + var16.packetBuffer.writeByte(var5 / var6); + var16.packetBuffer.writeByte(var5 % var6); + var16.packetBuffer.offset = var7; + packetWriter.addNode(var16); } - if (var4 >= class204.mouseRecorder.index) { // L: 3164 - class204.mouseRecorder.index = 0; + if (var4 >= SoundCache.mouseRecorder.index) { + SoundCache.mouseRecorder.index = 0; } else { - MouseRecorder var38 = class204.mouseRecorder; // L: 3166 - var38.index -= var4; - System.arraycopy(class204.mouseRecorder.xs, var4, class204.mouseRecorder.xs, 0, class204.mouseRecorder.index); // L: 3167 - System.arraycopy(class204.mouseRecorder.ys, var4, class204.mouseRecorder.ys, 0, class204.mouseRecorder.index); // L: 3168 - System.arraycopy(class204.mouseRecorder.millis, var4, class204.mouseRecorder.millis, 0, class204.mouseRecorder.index); // L: 3169 + MouseRecorder var44 = SoundCache.mouseRecorder; + var44.index -= var4; + System.arraycopy(SoundCache.mouseRecorder.xs, var4, SoundCache.mouseRecorder.xs, 0, SoundCache.mouseRecorder.index); + System.arraycopy(SoundCache.mouseRecorder.ys, var4, SoundCache.mouseRecorder.ys, 0, SoundCache.mouseRecorder.index); + System.arraycopy(SoundCache.mouseRecorder.millis, var4, SoundCache.mouseRecorder.millis, 0, SoundCache.mouseRecorder.index); } } } - PacketBufferNode var18; - if (MouseHandler.MouseHandler_lastButton == 1 || !MusicPatchNode.mouseCam && MouseHandler.MouseHandler_lastButton == 4 || MouseHandler.MouseHandler_lastButton == 2) { // L: 3175 - long var16 = MouseHandler.MouseHandler_lastPressedTimeMillis - mouseLastLastPressedTimeMillis; // L: 3176 - if (var16 > 32767L) { // L: 3177 - var16 = 32767L; + PacketBufferNode var19; + if (MouseHandler.MouseHandler_lastButton == 1 || !UserComparator9.mouseCam && MouseHandler.MouseHandler_lastButton == 4 || MouseHandler.MouseHandler_lastButton == 2) { + long var17 = MouseHandler.MouseHandler_lastPressedTimeMillis - mouseLastLastPressedTimeMillis * -1L; + if (var17 > 32767L) { + var17 = 32767L; } - mouseLastLastPressedTimeMillis = MouseHandler.MouseHandler_lastPressedTimeMillis; // L: 3178 - var3 = MouseHandler.MouseHandler_lastPressedY; // L: 3179 - if (var3 < 0) { // L: 3180 + mouseLastLastPressedTimeMillis = MouseHandler.MouseHandler_lastPressedTimeMillis * -1L; + var3 = MouseHandler.MouseHandler_lastPressedY; + if (var3 < 0) { var3 = 0; - } else if (var3 > HealthBar.canvasHeight) { // L: 3181 - var3 = HealthBar.canvasHeight; + } else if (var3 > ModelData0.canvasHeight) { + var3 = ModelData0.canvasHeight; } - var4 = MouseHandler.MouseHandler_lastPressedX; // L: 3182 - if (var4 < 0) { // L: 3183 + var4 = MouseHandler.MouseHandler_lastPressedX; + if (var4 < 0) { var4 = 0; - } else if (var4 > ItemContainer.canvasWidth) { // L: 3184 - var4 = ItemContainer.canvasWidth; + } else if (var4 > IgnoreList.canvasWidth) { + var4 = IgnoreList.canvasWidth; } - var5 = (int)var16; // L: 3185 - var18 = class4.getPacketBufferNode(ClientPacket.field2322, packetWriter.isaacCipher); // L: 3186 - var18.packetBuffer.writeShort((MouseHandler.MouseHandler_lastButton == 2 ? 1 : 0) + (var5 << 1)); // L: 3187 - var18.packetBuffer.writeShort(var4); // L: 3188 - var18.packetBuffer.writeShort(var3); // L: 3189 - packetWriter.addNode(var18); // L: 3190 + var5 = (int)var17; + var19 = ItemContainer.getPacketBufferNode(ClientPacket.field2329, packetWriter.isaacCipher); + var19.packetBuffer.writeShort((MouseHandler.MouseHandler_lastButton == 2 ? 1 : 0) + (var5 << 1)); + var19.packetBuffer.writeShort(var4); + var19.packetBuffer.writeShort(var3); + packetWriter.addNode(var19); } - if (KeyHandler.field427 > 0) { // L: 3192 - var14 = class4.getPacketBufferNode(ClientPacket.field2255, packetWriter.isaacCipher); // L: 3193 - var14.packetBuffer.writeShort(0); // L: 3194 - var2 = var14.packetBuffer.offset; // L: 3195 - long var19 = User.currentTimeMillis(); // L: 3196 + if (KeyHandler.field414 > 0) { + var15 = ItemContainer.getPacketBufferNode(ClientPacket.field2234, packetWriter.isaacCipher); + var15.packetBuffer.writeShort(0); + var2 = var15.packetBuffer.offset; + long var20 = class298.currentTimeMillis(); - for (var5 = 0; var5 < KeyHandler.field427; ++var5) { // L: 3197 - long var21 = var19 - field905; // L: 3198 - if (var21 > 16777215L) { // L: 3199 - var21 = 16777215L; + for (var5 = 0; var5 < KeyHandler.field414; ++var5) { + long var22 = var20 - field817; + if (var22 > 16777215L) { + var22 = 16777215L; } - field905 = var19; // L: 3200 - var14.packetBuffer.method5680((int)var21); // L: 3201 - var14.packetBuffer.method5664(KeyHandler.field430[var5]); // L: 3202 + field817 = var20; + var15.packetBuffer.method5585((int)var22); + var15.packetBuffer.writeIntME(KeyHandler.field413[var5]); } - var14.packetBuffer.writeLengthShort(var14.packetBuffer.offset - var2); // L: 3204 - packetWriter.addNode(var14); // L: 3205 + var15.packetBuffer.writeLengthShort(var15.packetBuffer.offset - var2); + packetWriter.addNode(var15); } - if (field882 > 0) { // L: 3207 - --field882; + if (field732 > 0) { + --field732; } - if (KeyHandler.KeyHandler_pressedKeys[96] || KeyHandler.KeyHandler_pressedKeys[97] || KeyHandler.KeyHandler_pressedKeys[98] || KeyHandler.KeyHandler_pressedKeys[99]) { // L: 3208 - field750 = true; + if (KeyHandler.KeyHandler_pressedKeys[96] || KeyHandler.KeyHandler_pressedKeys[97] || KeyHandler.KeyHandler_pressedKeys[98] || KeyHandler.KeyHandler_pressedKeys[99]) { + field843 = true; } - if (field750 && field882 <= 0) { // L: 3209 - field882 = 20; // L: 3210 - field750 = false; // L: 3211 - var14 = class4.getPacketBufferNode(ClientPacket.field2321, packetWriter.isaacCipher); // L: 3213 - var14.packetBuffer.method5674(camAngleX); // L: 3214 - var14.packetBuffer.method5673(camAngleY); // L: 3215 - packetWriter.addNode(var14); // L: 3216 + if (field843 && field732 <= 0) { + field732 = 20; + field843 = false; + var15 = ItemContainer.getPacketBufferNode(ClientPacket.field2275, packetWriter.isaacCipher); + var15.packetBuffer.method5739(camAngleX); + var15.packetBuffer.method5739(camAngleY); + packetWriter.addNode(var15); } - if (class8.hasFocus && !hadFocus) { // L: 3218 - hadFocus = true; // L: 3219 - var14 = class4.getPacketBufferNode(ClientPacket.field2312, packetWriter.isaacCipher); // L: 3221 - var14.packetBuffer.writeByte(1); // L: 3222 - packetWriter.addNode(var14); // L: 3223 + if (ScriptEvent.hasFocus && !hadFocus) { + hadFocus = true; + var15 = ItemContainer.getPacketBufferNode(ClientPacket.field2277, packetWriter.isaacCipher); + var15.packetBuffer.writeByte(1); + packetWriter.addNode(var15); } - if (!class8.hasFocus && hadFocus) { // L: 3225 - hadFocus = false; // L: 3226 - var14 = class4.getPacketBufferNode(ClientPacket.field2312, packetWriter.isaacCipher); // L: 3228 - var14.packetBuffer.writeByte(0); // L: 3229 - packetWriter.addNode(var14); // L: 3230 + if (!ScriptEvent.hasFocus && hadFocus) { + hadFocus = false; + var15 = ItemContainer.getPacketBufferNode(ClientPacket.field2277, packetWriter.isaacCipher); + var15.packetBuffer.writeByte(0); + packetWriter.addNode(var15); } - if (KeyHandler.worldMap != null) { // L: 3233 - KeyHandler.worldMap.method6454(); + if (WorldMapRectangle.worldMap != null) { + WorldMapRectangle.worldMap.method6363(); } - class2.method30(); // L: 3234 - if (field906 != GrandExchangeOfferUnitPriceComparator.Client_plane) { // L: 3236 - field906 = GrandExchangeOfferUnitPriceComparator.Client_plane; // L: 3237 - SoundCache.method2646(GrandExchangeOfferUnitPriceComparator.Client_plane); // L: 3238 - } - - if (gameState == 30) { // L: 3241 - FloorDecoration.method2988(); // L: 3242 - ChatChannel.method2381(); // L: 3243 - ++packetWriter.field1337; // L: 3244 - if (packetWriter.field1337 > 750) { // L: 3245 - FloorDecoration.method2986(); // L: 3246 + GrandExchangeOfferNameComparator.method209(); + NetSocket.method3608(); + if (gameState == 30) { + WorldMapDecoration.method382(); + WorldMapManager.method679(); + ++packetWriter.field1333; + if (packetWriter.field1333 > 750) { + LoginScreenAnimation.method1903(); } else { - class2.method41(); // L: 3249 + var1 = Players.Players_count; + int[] var36 = Players.Players_indices; - for (var1 = 0; var1 < npcCount; ++var1) { // L: 3251 - var2 = npcIndices[var1]; // L: 3252 - NPC var23 = npcs[var2]; // L: 3253 - if (var23 != null) { // L: 3254 - class13.updateActorSequence(var23, var23.definition.size); // L: 3255 + for (var3 = 0; var3 < var1; ++var3) { + Player var24 = players[var36[var3]]; + if (var24 != null) { + WorldMapID.updateActorSequence(var24, 1); } } - ApproximateRouteStrategy.method1317(); // L: 3259 - ++field743; // L: 3260 - if (mouseCrossColor != 0) { // L: 3261 - mouseCrossState += 20; // L: 3262 - if (mouseCrossState >= 400) { // L: 3263 + UserComparator9.method3477(); + WorldMapManager.method703(); + ++field850; + if (mouseCrossColor != 0) { + mouseCrossState = mouseCrossState * 400 + 400; + if (mouseCrossState * 20 >= 400) { mouseCrossColor = 0; } } - if (MouseHandler.field525 != null) { // L: 3265 - ++field828; // L: 3266 - if (field828 >= 15) { // L: 3267 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(MouseHandler.field525); // L: 3268 - MouseHandler.field525 = null; // L: 3269 + if (NPC.field1131 != null) { + ++field754; + if (field754 >= 15) { + CollisionMap.invalidateWidget(NPC.field1131); + NPC.field1131 = null; } } - Widget var31 = GrandExchangeEvent.mousedOverWidgetIf1; // L: 3272 - Widget var32 = GrandExchangeOfferOwnWorldComparator.field677; // L: 3273 - GrandExchangeEvent.mousedOverWidgetIf1 = null; // L: 3274 - GrandExchangeOfferOwnWorldComparator.field677 = null; // L: 3275 - draggedOnWidget = null; // L: 3276 - field705 = false; // L: 3277 - field859 = false; // L: 3278 - field902 = 0; // L: 3279 + Widget var35 = EnumDefinition.mousedOverWidgetIf1; + Widget var37 = CollisionMap.field2092; + EnumDefinition.mousedOverWidgetIf1 = null; + CollisionMap.field2092 = null; + draggedOnWidget = null; + field829 = false; + field859 = false; + field870 = 0; - while (Clock.isKeyDown() && field902 < 128) { // L: 3280 - if (staffModLevel >= 2 && KeyHandler.KeyHandler_pressedKeys[82] && SecureRandomCallable.field555 == 66) { // L: 3281 - String var33 = class234.method4262(); // L: 3282 - ByteArrayPool.client.clipboardSetString(var33); // L: 3283 - } else if (oculusOrbState != 1 || WorldMapManager.field335 <= 0) { // L: 3286 - field904[field902] = SecureRandomCallable.field555; // L: 3289 - field903[field902] = WorldMapManager.field335; // L: 3290 - ++field902; // L: 3291 + while (GrandExchangeOfferNameComparator.isKeyDown() && field870 < 128) { + if (staffModLevel >= 2 && KeyHandler.KeyHandler_pressedKeys[82] && StudioGame.field3135 == 66) { + String var40 = ""; + + Message var38; + for (Iterator var25 = Messages.Messages_hashTable.iterator(); var25.hasNext(); var40 = var40 + var38.sender + ':' + var38.text + '\n') { + var38 = (Message)var25.next(); + } + + WorldMapIcon_0.client.clipboardSetString(var40); + } else if (oculusOrbState != 1 || WorldMapIcon_1.field200 <= 0) { + field693[field870] = StudioGame.field3135; + field661[field870] = WorldMapIcon_1.field200; + ++field870; } } - if (MilliClock.method3590() && KeyHandler.KeyHandler_pressedKeys[82] && KeyHandler.KeyHandler_pressedKeys[81] && mouseWheelRotation != 0) { // L: 3293 - var3 = PlayerType.localPlayer.plane - mouseWheelRotation; // L: 3294 - if (var3 < 0) { // L: 3295 - var3 = 0; - } else if (var3 > 3) { // L: 3296 - var3 = 3; + boolean var31 = staffModLevel >= 2; + if (var31 && KeyHandler.KeyHandler_pressedKeys[82] && KeyHandler.KeyHandler_pressedKeys[81] && mouseWheelRotation != 0) { + var4 = PlayerAppearance.localPlayer.plane - mouseWheelRotation; + if (var4 < 0) { + var4 = 0; + } else if (var4 > 3) { + var4 = 3; } - if (var3 != PlayerType.localPlayer.plane) { // L: 3297 - class2.method42(PlayerType.localPlayer.pathX[0] + FloorDecoration.baseX, PlayerType.localPlayer.pathY[0] + WorldMapData_0.baseY, var3, false); // L: 3298 + if (var4 != PlayerAppearance.localPlayer.plane) { + var5 = PlayerAppearance.localPlayer.pathX[0] + NetFileRequest.baseX * 64; + var6 = PlayerAppearance.localPlayer.pathY[0] + class41.baseY * 64; + PacketBufferNode var27 = ItemContainer.getPacketBufferNode(ClientPacket.field2269, packetWriter.isaacCipher); + var27.packetBuffer.method5578(var5); + var27.packetBuffer.method5587(0); + var27.packetBuffer.method5739(var6); + var27.packetBuffer.writeByte(var4); + packetWriter.addNode(var27); } - mouseWheelRotation = 0; // L: 3300 + mouseWheelRotation = 0; } - if (rootInterface != -1) { // L: 3302 - DynamicObject.updateRootInterface(rootInterface, 0, 0, ItemContainer.canvasWidth, HealthBar.canvasHeight, 0, 0); + if (rootInterface != -1) { + class51.updateRootInterface(rootInterface, 0, 0, IgnoreList.canvasWidth, ModelData0.canvasHeight, 0, 0); } - ++cycleCntr; // L: 3303 + ++cycleCntr; while (true) { - Widget var24; - Widget var25; - ScriptEvent var34; + Widget var39; + ScriptEvent var41; + Widget var42; do { - var34 = (ScriptEvent)field881.removeLast(); // L: 3305 - if (var34 == null) { // L: 3306 + var41 = (ScriptEvent)field715.removeLast(); + if (var41 == null) { while (true) { do { - var34 = (ScriptEvent)field939.removeLast(); // L: 3317 - if (var34 == null) { // L: 3318 + var41 = (ScriptEvent)field849.removeLast(); + if (var41 == null) { while (true) { do { - var34 = (ScriptEvent)scriptEvents.removeLast(); // L: 3329 - if (var34 == null) { // L: 3330 - this.menu(); // L: 3340 - if (KeyHandler.worldMap != null) { // L: 3342 - KeyHandler.worldMap.method6464(GrandExchangeOfferUnitPriceComparator.Client_plane, (PlayerType.localPlayer.x >> 7) + FloorDecoration.baseX, (PlayerType.localPlayer.y >> 7) + WorldMapData_0.baseY, false); // L: 3343 - KeyHandler.worldMap.loadCache(); // L: 3344 + var41 = (ScriptEvent)scriptEvents.removeLast(); + if (var41 == null) { + this.menu(); + if (WorldMapRectangle.worldMap != null) { + WorldMapRectangle.worldMap.method6370(GameObject.Client_plane, NetFileRequest.baseX * 64 + (PlayerAppearance.localPlayer.x >> 7), class41.baseY * 64 + (PlayerAppearance.localPlayer.y >> 7), false); + WorldMapRectangle.worldMap.loadCache(); } - if (clickedWidget != null) { // L: 3347 - this.method1405(); + if (clickedWidget != null) { + this.method1381(); } - if (GameBuild.dragInventoryWidget != null) { // L: 3348 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(GameBuild.dragInventoryWidget); // L: 3349 - ++itemDragDuration; // L: 3350 - if (MouseHandler.MouseHandler_currentButton == 0) { // L: 3351 - if (field830) { // L: 3352 - if (GameBuild.dragInventoryWidget == class217.hoveredItemContainer && dragItemSlotSource != dragItemSlotDestination) { // L: 3353 - Widget var35 = GameBuild.dragInventoryWidget; // L: 3354 - byte var29 = 0; // L: 3355 - if (field846 == 1 && var35.contentType == 206) { // L: 3356 - var29 = 1; + if (class171.dragInventoryWidget != null) { + CollisionMap.invalidateWidget(class171.dragInventoryWidget); + ++itemDragDuration; + if (MouseHandler.MouseHandler_currentButton == 0) { + if (field848) { + if (Occluder.hoveredItemContainer == class171.dragInventoryWidget && dragItemSlotSource != dragItemSlotDestination) { + Widget var43 = class171.dragInventoryWidget; + byte var32 = 0; + if (field865 == 1 && var43.contentType == 206) { + var32 = 1; } - if (var35.itemIds[dragItemSlotDestination] <= 0) { // L: 3357 - var29 = 0; + if (var43.itemIds[dragItemSlotDestination] <= 0) { + var32 = 0; } - var6 = WorldMapData_0.getWidgetFlags(var35); // L: 3359 - boolean var30 = (var6 >> 29 & 1) != 0; // L: 3361 - if (var30) { // L: 3363 - var7 = dragItemSlotSource; // L: 3364 - var8 = dragItemSlotDestination; // L: 3365 - var35.itemIds[var8] = var35.itemIds[var7]; // L: 3366 - var35.itemQuantities[var8] = var35.itemQuantities[var7]; // L: 3367 - var35.itemIds[var7] = -1; // L: 3368 - var35.itemQuantities[var7] = 0; // L: 3369 - } else if (var29 == 1) { // L: 3371 - var7 = dragItemSlotSource; // L: 3372 - var8 = dragItemSlotDestination; // L: 3373 + if (BoundaryObject.method3341(FaceNormal.getWidgetFlags(var43))) { + var6 = dragItemSlotSource; + var7 = dragItemSlotDestination; + var43.itemIds[var7] = var43.itemIds[var6]; + var43.itemQuantities[var7] = var43.itemQuantities[var6]; + var43.itemIds[var6] = -1; + var43.itemQuantities[var6] = 0; + } else if (var32 == 1) { + var6 = dragItemSlotSource; + var7 = dragItemSlotDestination; - while (var8 != var7) { // L: 3374 - if (var7 > var8) { // L: 3375 - var35.swapItems(var7 - 1, var7); // L: 3376 - --var7; // L: 3377 - } else if (var7 < var8) { // L: 3379 - var35.swapItems(var7 + 1, var7); // L: 3380 - ++var7; // L: 3381 + while (var6 != var7) { + if (var6 > var7) { + var43.swapItems(var6 - 1, var6); + --var6; + } else if (var6 < var7) { + var43.swapItems(var6 + 1, var6); + ++var6; } } } else { - var35.swapItems(dragItemSlotDestination, dragItemSlotSource); // L: 3386 + var43.swapItems(dragItemSlotDestination, dragItemSlotSource); } - PacketBufferNode var26 = class4.getPacketBufferNode(ClientPacket.field2267, packetWriter.isaacCipher); // L: 3389 - var26.packetBuffer.writeShort(dragItemSlotDestination); // L: 3390 - var26.packetBuffer.method5674(dragItemSlotSource); // L: 3391 - var26.packetBuffer.writeByte(var29); // L: 3392 - var26.packetBuffer.method5683(GameBuild.dragInventoryWidget.id); // L: 3393 - packetWriter.addNode(var26); // L: 3394 + var19 = ItemContainer.getPacketBufferNode(ClientPacket.field2302, packetWriter.isaacCipher); + var19.packetBuffer.writeInt(class171.dragInventoryWidget.id); + var19.packetBuffer.method5739(dragItemSlotSource); + var19.packetBuffer.writeShort(dragItemSlotDestination); + var19.packetBuffer.writeByte(var32); + packetWriter.addNode(var19); } - } else if (this.shouldLeftClickOpenMenu()) { // L: 3398 - this.openMenu(draggedWidgetX, draggedWidgetY); // L: 3399 - } else if (menuOptionsCount > 0) { // L: 3401 - var3 = draggedWidgetX; // L: 3402 - var4 = draggedWidgetY; // L: 3403 - MenuAction var36 = GrandExchangeOffer.tempMenuAction; // L: 3405 - Calendar.menuAction(var36.param0, var36.param1, var36.opcode, var36.identifier, var36.action, var36.action, var3, var4); // L: 3407 - GrandExchangeOffer.tempMenuAction = null; // L: 3409 + } else if (this.shouldLeftClickOpenMenu()) { + this.openMenu(draggedWidgetX, draggedWidgetY); + } else if (menuOptionsCount > 0) { + var4 = draggedWidgetX; + var5 = draggedWidgetY; + WorldMapDecoration.method379(WorldMapSection1.tempMenuAction, var4, var5); + WorldMapSection1.tempMenuAction = null; } - field828 = 10; // L: 3413 - MouseHandler.MouseHandler_lastButton = 0; // L: 3414 - GameBuild.dragInventoryWidget = null; // L: 3415 - } else if (itemDragDuration >= 5 && (MouseHandler.MouseHandler_x > draggedWidgetX + 5 || MouseHandler.MouseHandler_x < draggedWidgetX - 5 || MouseHandler.MouseHandler_y > draggedWidgetY + 5 || MouseHandler.MouseHandler_y < draggedWidgetY - 5)) { // L: 3418 3419 - field830 = true; // L: 3420 + field754 = 10; + MouseHandler.MouseHandler_lastButton = 0; + class171.dragInventoryWidget = null; + } else if (itemDragDuration >= 5 && (MouseHandler.MouseHandler_x > draggedWidgetX + 5 || MouseHandler.MouseHandler_x < draggedWidgetX - 5 || MouseHandler.MouseHandler_y > draggedWidgetY + 5 || MouseHandler.MouseHandler_y < draggedWidgetY - 5)) { + field848 = true; } } - if (Scene.shouldSendWalk()) { // L: 3425 - var3 = Scene.Scene_selectedX; // L: 3426 - var4 = Scene.Scene_selectedY; // L: 3427 - PacketBufferNode var37 = class4.getPacketBufferNode(ClientPacket.field2260, packetWriter.isaacCipher); // L: 3429 - var37.packetBuffer.writeByte(5); // L: 3430 - var37.packetBuffer.method5674(var3 + FloorDecoration.baseX); // L: 3431 - var37.packetBuffer.writeByte(KeyHandler.KeyHandler_pressedKeys[82] ? (KeyHandler.KeyHandler_pressedKeys[81] ? 2 : 1) : 0); // L: 3432 - var37.packetBuffer.writeShortLE(var4 + WorldMapData_0.baseY); // L: 3433 - packetWriter.addNode(var37); // L: 3434 - Scene.method3253(); // L: 3435 - mouseCrossX = MouseHandler.MouseHandler_lastPressedX; // L: 3436 - mouseCrossY = MouseHandler.MouseHandler_lastPressedY; // L: 3437 - mouseCrossColor = 1; // L: 3438 - mouseCrossState = 0; // L: 3439 - destinationX = var3; // L: 3440 - destinationY = var4; // L: 3441 + if (Scene.shouldSendWalk()) { + var4 = Scene.Scene_selectedX; + var5 = Scene.Scene_selectedY; + var19 = ItemContainer.getPacketBufferNode(ClientPacket.field2232, packetWriter.isaacCipher); + var19.packetBuffer.writeByte(5); + var19.packetBuffer.method5739(NetFileRequest.baseX * 64 + var4); + var19.packetBuffer.writeIntME(KeyHandler.KeyHandler_pressedKeys[82] ? (KeyHandler.KeyHandler_pressedKeys[81] ? 2 : 1) : 0); + var19.packetBuffer.writeShortLE(class41.baseY * 64 + var5); + packetWriter.addNode(var19); + Scene.method3199(); + mouseCrossX = MouseHandler.MouseHandler_lastPressedX; + mouseCrossY = MouseHandler.MouseHandler_lastPressedY; + mouseCrossColor = 1; + mouseCrossState = 0; + destinationX = var4; + destinationY = var5; } - if (var31 != GrandExchangeEvent.mousedOverWidgetIf1) { // L: 3443 - if (var31 != null) { // L: 3444 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var31); + if (var35 != EnumDefinition.mousedOverWidgetIf1) { + if (var35 != null) { + CollisionMap.invalidateWidget(var35); } - if (GrandExchangeEvent.mousedOverWidgetIf1 != null) { // L: 3445 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(GrandExchangeEvent.mousedOverWidgetIf1); + if (EnumDefinition.mousedOverWidgetIf1 != null) { + CollisionMap.invalidateWidget(EnumDefinition.mousedOverWidgetIf1); } } - if (var32 != GrandExchangeOfferOwnWorldComparator.field677 && field833 == field832) { // L: 3447 - if (var32 != null) { // L: 3448 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var32); + if (var37 != CollisionMap.field2092 && field751 == field799) { + if (var37 != null) { + CollisionMap.invalidateWidget(var37); } - if (GrandExchangeOfferOwnWorldComparator.field677 != null) { // L: 3449 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(GrandExchangeOfferOwnWorldComparator.field677); + if (CollisionMap.field2092 != null) { + CollisionMap.invalidateWidget(CollisionMap.field2092); } } - if (GrandExchangeOfferOwnWorldComparator.field677 != null) { // L: 3451 - if (field832 < field833) { // L: 3452 - ++field832; // L: 3453 - if (field833 == field832) { // L: 3454 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(GrandExchangeOfferOwnWorldComparator.field677); + if (CollisionMap.field2092 != null) { + if (field799 < field751) { + ++field799; + if (field751 == field799) { + CollisionMap.invalidateWidget(CollisionMap.field2092); } } - } else if (field832 > 0) { // L: 3457 - --field832; + } else if (field799 > 0) { + --field799; } - InterfaceParent.method1269(); // L: 3458 - if (isCameraLocked) { // L: 3459 - WorldMapIcon_1.method392(); + int var28; + if (oculusOrbState == 0) { + var4 = PlayerAppearance.localPlayer.x; + var5 = PlayerAppearance.localPlayer.y; + if (SecureRandomFuture.oculusOrbFocalPointX - var4 < -500 || SecureRandomFuture.oculusOrbFocalPointX - var4 > 500 || Decimator.oculusOrbFocalPointY - var5 < -500 || Decimator.oculusOrbFocalPointY - var5 > 500) { + SecureRandomFuture.oculusOrbFocalPointX = var4; + Decimator.oculusOrbFocalPointY = var5; + } + + if (var4 != SecureRandomFuture.oculusOrbFocalPointX) { + SecureRandomFuture.oculusOrbFocalPointX += (var4 - SecureRandomFuture.oculusOrbFocalPointX) / 16; + } + + if (var5 != Decimator.oculusOrbFocalPointY) { + Decimator.oculusOrbFocalPointY += (var5 - Decimator.oculusOrbFocalPointY) / 16; + } + + var6 = SecureRandomFuture.oculusOrbFocalPointX >> 7; + var7 = Decimator.oculusOrbFocalPointY >> 7; + var8 = SecureRandomFuture.getTileHeight(SecureRandomFuture.oculusOrbFocalPointX, Decimator.oculusOrbFocalPointY, GameObject.Client_plane); + var9 = 0; + if (var6 > 3 && var7 > 3 && var6 < 100 && var7 < 100) { + for (var10 = var6 - 4; var10 <= var6 + 4; ++var10) { + for (var11 = var7 - 4; var11 <= var7 + 4; ++var11) { + var12 = GameObject.Client_plane; + if (var12 < 3 && (Tiles.Tiles_renderFlags[1][var10][var11] & 2) == 2) { + ++var12; + } + + var28 = var8 - Tiles.Tiles_heights[var12][var10][var11]; + if (var28 > var9) { + var9 = var28; + } + } + } + } + + var10 = var9 * 192; + if (var10 > 98048) { + var10 = 98048; + } + + if (var10 < 32768) { + var10 = 32768; + } + + if (var10 > field918) { + field918 += (var10 - field918) / 24; + } else if (var10 < field918) { + field918 += (var10 - field918) / 80; + } + + PacketWriter.field1341 = SecureRandomFuture.getTileHeight(PlayerAppearance.localPlayer.x, PlayerAppearance.localPlayer.y, GameObject.Client_plane) - camFollowHeight; + } else if (oculusOrbState == 1) { + if (field649 && PlayerAppearance.localPlayer != null) { + var4 = PlayerAppearance.localPlayer.pathX[0]; + var5 = PlayerAppearance.localPlayer.pathY[0]; + if (var4 >= 0 && var5 >= 0 && var4 < 104 && var5 < 104) { + SecureRandomFuture.oculusOrbFocalPointX = PlayerAppearance.localPlayer.x; + var6 = SecureRandomFuture.getTileHeight(PlayerAppearance.localPlayer.x, PlayerAppearance.localPlayer.y, GameObject.Client_plane) - camFollowHeight; + if (var6 < PacketWriter.field1341) { + PacketWriter.field1341 = var6; + } + + Decimator.oculusOrbFocalPointY = PlayerAppearance.localPlayer.y; + field649 = false; + } + } + + short var33 = -1; + if (KeyHandler.KeyHandler_pressedKeys[33]) { + var33 = 0; + } else if (KeyHandler.KeyHandler_pressedKeys[49]) { + var33 = 1024; + } + + if (KeyHandler.KeyHandler_pressedKeys[48]) { + if (var33 == 0) { + var33 = 1792; + } else if (var33 == 1024) { + var33 = 1280; + } else { + var33 = 1536; + } + } else if (KeyHandler.KeyHandler_pressedKeys[50]) { + if (var33 == 0) { + var33 = 256; + } else if (var33 == 1024) { + var33 = 768; + } else { + var33 = 512; + } + } + + byte var34 = 0; + if (KeyHandler.KeyHandler_pressedKeys[35]) { + var34 = -1; + } else if (KeyHandler.KeyHandler_pressedKeys[51]) { + var34 = 1; + } + + var6 = 0; + if (var33 >= 0 || var34 != 0) { + var6 = KeyHandler.KeyHandler_pressedKeys[81] ? oculusOrbSlowedSpeed : oculusOrbNormalSpeed; + var6 *= 16; + field761 = var33; + field788 = var34; + } + + if (field755 < var6) { + field755 += var6 / 8; + if (field755 > var6) { + field755 = var6; + } + } else if (field755 > var6) { + field755 = field755 * 9 / 10; + } + + if (field755 > 0) { + var7 = field755 / 16; + if (field761 >= 0) { + var4 = field761 - AbstractArchive.cameraYaw & 2047; + var8 = Rasterizer3D.Rasterizer3D_sine[var4]; + var9 = Rasterizer3D.Rasterizer3D_cosine[var4]; + SecureRandomFuture.oculusOrbFocalPointX += var7 * var8 / 65536; + Decimator.oculusOrbFocalPointY += var9 * var7 / 65536; + } + + if (field788 != 0) { + PacketWriter.field1341 += var7 * field788; + if (PacketWriter.field1341 > 0) { + PacketWriter.field1341 = 0; + } + } + } else { + field761 = -1; + field788 = -1; + } + + if (KeyHandler.KeyHandler_pressedKeys[13]) { + packetWriter.addNode(ItemContainer.getPacketBufferNode(ClientPacket.field2244, packetWriter.isaacCipher)); + oculusOrbState = 0; + } } - for (var3 = 0; var3 < 5; ++var3) { // L: 3460 - int var10002 = field918[var3]++; + if (MouseHandler.MouseHandler_currentButton == 4 && UserComparator9.mouseCam) { + var4 = MouseHandler.MouseHandler_y - mouseCamClickedY; + camAngleDX = var4 * 2; + mouseCamClickedY = var4 != -1 && var4 != 1 ? (MouseHandler.MouseHandler_y + mouseCamClickedY) / 2 : MouseHandler.MouseHandler_y; + var5 = mouseCamClickedX - MouseHandler.MouseHandler_x; + camAngleDY = var5 * 2; + mouseCamClickedX = var5 != -1 && var5 != 1 ? (mouseCamClickedX + MouseHandler.MouseHandler_x) / 2 : MouseHandler.MouseHandler_x; + } else { + if (KeyHandler.KeyHandler_pressedKeys[96]) { + camAngleDY += (-24 - camAngleDY) / 2; + } else if (KeyHandler.KeyHandler_pressedKeys[97]) { + camAngleDY += (24 - camAngleDY) / 2; + } else { + camAngleDY /= 2; + } + + if (KeyHandler.KeyHandler_pressedKeys[98]) { + camAngleDX += (12 - camAngleDX) / 2; + } else if (KeyHandler.KeyHandler_pressedKeys[99]) { + camAngleDX += (-12 - camAngleDX) / 2; + } else { + camAngleDX /= 2; + } + + mouseCamClickedY = MouseHandler.MouseHandler_y; + mouseCamClickedX = MouseHandler.MouseHandler_x; } - FriendSystem.varcs.tryWrite(); // L: 3461 - var3 = ++MouseHandler.MouseHandler_idleCycles - 1; // L: 3464 - var5 = class236.method4264(); // L: 3467 - if (var3 > 15000 && var5 > 15000) { // L: 3468 - logoutTimer = 250; // L: 3469 - class228.method4246(14500); // L: 3470 - var18 = class4.getPacketBufferNode(ClientPacket.field2271, packetWriter.isaacCipher); // L: 3472 - packetWriter.addNode(var18); // L: 3473 + camAngleY = camAngleDY / 2 + camAngleY & 2047; + camAngleX += camAngleDX / 2; + if (camAngleX < 128) { + camAngleX = 128; } - WorldMapLabelSize.friendSystem.processFriendUpdates(); // L: 3475 - ++packetWriter.pendingWrites; // L: 3476 - if (packetWriter.pendingWrites > 50) { // L: 3477 - var18 = class4.getPacketBufferNode(ClientPacket.field2247, packetWriter.isaacCipher); // L: 3479 - packetWriter.addNode(var18); // L: 3480 + if (camAngleX > 383) { + camAngleX = 383; + } + + if (isCameraLocked) { + var4 = RouteStrategy.field2124 * 16384 + 64; + var5 = class89.field1140 * 16384 + 64; + var6 = SecureRandomFuture.getTileHeight(var4, var5, GameObject.Client_plane) - class41.field302; + if (Player.cameraX < var4) { + Player.cameraX = (var4 - Player.cameraX) * WorldMapRegion.field271 / 1000 + Player.cameraX + DynamicObject.field1316; + if (Player.cameraX > var4) { + Player.cameraX = var4; + } + } + + if (Player.cameraX > var4) { + Player.cameraX -= WorldMapRegion.field271 * (Player.cameraX - var4) / 1000 + DynamicObject.field1316; + if (Player.cameraX < var4) { + Player.cameraX = var4; + } + } + + if (KeyHandler.cameraY < var6) { + KeyHandler.cameraY = (var6 - KeyHandler.cameraY) * WorldMapRegion.field271 / 1000 + KeyHandler.cameraY + DynamicObject.field1316; + if (KeyHandler.cameraY > var6) { + KeyHandler.cameraY = var6; + } + } + + if (KeyHandler.cameraY > var6) { + KeyHandler.cameraY -= WorldMapRegion.field271 * (KeyHandler.cameraY - var6) / 1000 + DynamicObject.field1316; + if (KeyHandler.cameraY < var6) { + KeyHandler.cameraY = var6; + } + } + + if (class69.cameraZ < var5) { + class69.cameraZ = (var5 - class69.cameraZ) * WorldMapRegion.field271 / 1000 + class69.cameraZ + DynamicObject.field1316; + if (class69.cameraZ > var5) { + class69.cameraZ = var5; + } + } + + if (class69.cameraZ > var5) { + class69.cameraZ -= WorldMapRegion.field271 * (class69.cameraZ - var5) / 1000 + DynamicObject.field1316; + if (class69.cameraZ < var5) { + class69.cameraZ = var5; + } + } + + var4 = WorldMapData_0.field112 * 16384 + 64; + var5 = EnumDefinition.field3340 * 16384 + 64; + var6 = SecureRandomFuture.getTileHeight(var4, var5, GameObject.Client_plane) - class25.field128; + var7 = var4 - Player.cameraX; + var8 = var6 - KeyHandler.cameraY; + var9 = var5 - class69.cameraZ; + var10 = (int)Math.sqrt((double)(var7 * var7 + var9 * var9)); + var11 = (int)(Math.atan2((double)var8, (double)var10) * 325.949D) & 2047; + var12 = (int)(Math.atan2((double)var7, (double)var9) * -325.949D) & 2047; + if (var11 < 128) { + var11 = 128; + } + + if (var11 > 383) { + var11 = 383; + } + + if (Skeleton.cameraPitch < var11) { + Skeleton.cameraPitch = (var11 - Skeleton.cameraPitch) * ModeWhere.field2405 / 1000 + Skeleton.cameraPitch + Players.field1267; + if (Skeleton.cameraPitch > var11) { + Skeleton.cameraPitch = var11; + } + } + + if (Skeleton.cameraPitch > var11) { + Skeleton.cameraPitch -= ModeWhere.field2405 * (Skeleton.cameraPitch - var11) / 1000 + Players.field1267; + if (Skeleton.cameraPitch < var11) { + Skeleton.cameraPitch = var11; + } + } + + var28 = var12 - AbstractArchive.cameraYaw; + if (var28 > 1024) { + var28 -= 2048; + } + + if (var28 < -1024) { + var28 += 2048; + } + + if (var28 > 0) { + AbstractArchive.cameraYaw = var28 * ModeWhere.field2405 / 1000 + AbstractArchive.cameraYaw + Players.field1267; + AbstractArchive.cameraYaw &= 2047; + } + + if (var28 < 0) { + AbstractArchive.cameraYaw -= Players.field1267 + -var28 * ModeWhere.field2405 / 1000; + AbstractArchive.cameraYaw &= 2047; + } + + int var14 = var12 - AbstractArchive.cameraYaw; + if (var14 > 1024) { + var14 -= 2048; + } + + if (var14 < -1024) { + var14 += 2048; + } + + if (var14 < 0 && var28 > 0 || var14 > 0 && var28 < 0) { + AbstractArchive.cameraYaw = var12; + } + } + + for (var4 = 0; var4 < 5; ++var4) { + int var10002 = field644[var4]++; + } + + Varcs.varcs.tryWrite(); + var4 = Occluder.method3378(); + var5 = VarcInt.method4427(); + if (var4 > 15000 && var5 > 15000) { + logoutTimer = 250; + ChatChannel.method2317(14500); + var19 = ItemContainer.getPacketBufferNode(ClientPacket.field2303, packetWriter.isaacCipher); + packetWriter.addNode(var19); + } + + MilliClock.friendSystem.processFriendUpdates(); + ++packetWriter.pendingWrites; + if (packetWriter.pendingWrites > 50) { + var19 = ItemContainer.getPacketBufferNode(ClientPacket.field2322, packetWriter.isaacCipher); + packetWriter.addNode(var19); } try { - packetWriter.flush(); // L: 3483 - } catch (IOException var27) { // L: 3485 - FloorDecoration.method2986(); // L: 3486 + packetWriter.flush(); + } catch (IOException var29) { + LoginScreenAnimation.method1903(); } - return; // L: 3488 + return; } - var24 = var34.widget; // L: 3331 - if (var24.childIndex < 0) { // L: 3332 + var42 = var41.widget; + if (var42.childIndex < 0) { break; } - var25 = UserComparator4.getWidget(var24.parentId); // L: 3333 - } while(var25 == null || var25.children == null || var24.childIndex >= var25.children.length || var24 != var25.children[var24.childIndex]); // L: 3334 + var39 = CollisionMap.getWidget(var42.parentId); + } while(var39 == null || var39.children == null || var42.childIndex >= var39.children.length || var42 != var39.children[var42.childIndex]); - Entity.runScriptEvent(var34); // L: 3338 + class22.runScriptEvent(var41); } } - var24 = var34.widget; // L: 3319 - if (var24.childIndex < 0) { // L: 3320 + var42 = var41.widget; + if (var42.childIndex < 0) { break; } - var25 = UserComparator4.getWidget(var24.parentId); // L: 3321 - } while(var25 == null || var25.children == null || var24.childIndex >= var25.children.length || var24 != var25.children[var24.childIndex]); // L: 3322 + var39 = CollisionMap.getWidget(var42.parentId); + } while(var39 == null || var39.children == null || var42.childIndex >= var39.children.length || var42 != var39.children[var42.childIndex]); - Entity.runScriptEvent(var34); // L: 3326 + class22.runScriptEvent(var41); } } - var24 = var34.widget; // L: 3307 - if (var24.childIndex < 0) { // L: 3308 + var42 = var41.widget; + if (var42.childIndex < 0) { break; } - var25 = UserComparator4.getWidget(var24.parentId); // L: 3309 - } while(var25 == null || var25.children == null || var24.childIndex >= var25.children.length || var24 != var25.children[var24.childIndex]); // L: 3310 + var39 = CollisionMap.getWidget(var42.parentId); + } while(var39 == null || var39.children == null || var42.childIndex >= var39.children.length || var42 != var39.children[var42.childIndex]); - Entity.runScriptEvent(var34); // L: 3314 + class22.runScriptEvent(var41); } } } } } - } // L: 3060 3247 + } - @ObfuscatedName("ft") + @ObfuscatedName("ge") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-68" + descriptor = "(I)V", + garbageValue = "890034121" ) @Export("resizeJS") void resizeJS() { - int var1 = ItemContainer.canvasWidth; // L: 4232 - int var2 = HealthBar.canvasHeight; // L: 4233 - if (super.contentWidth < var1) { // L: 4234 + int var1 = IgnoreList.canvasWidth; + int var2 = ModelData0.canvasHeight; + if (super.contentWidth < var1) { var1 = super.contentWidth; } if (super.contentHeight < var2) { - var2 = super.contentHeight; // L: 4235 + var2 = super.contentHeight; } - if (GrandExchangeOfferAgeComparator.clientPreferences != null) { // L: 4236 + if (Timer.clientPreferences != null) { try { - class56.method944(ByteArrayPool.client, "resize", new Object[]{UrlRequester.getWindowedMode()}); // L: 4238 - } catch (Throwable var4) { // L: 4240 + Client var3 = WorldMapIcon_0.client; + Object[] var4 = new Object[]{SoundSystem.getWindowedMode()}; + //JSObject.getWindow(var3).call("resize", var4); + } catch (Throwable var5) { } } - } // L: 4242 + } - @ObfuscatedName("fa") + @ObfuscatedName("gn") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1208840742" + garbageValue = "-527814205" ) @Export("drawLoggedIn") final void drawLoggedIn() { + if (rootInterface != -1) { + NPCDefinition.method4759(rootInterface); + } + int var1; - if (rootInterface != -1) { // L: 4245 - var1 = rootInterface; // L: 4246 - if (ScriptFrame.loadInterface(var1)) { // L: 4248 - Frames.drawModelComponents(Widget.Widget_interfaceComponents[var1], -1); // L: 4249 + for (var1 = 0; var1 < rootWidgetCount; ++var1) { + if (field901[var1]) { + field854[var1] = true; + } + + field855[var1] = field901[var1]; + field901[var1] = false; + } + + field852 = cycle; + viewportX = -1; + viewportY = -1; + Occluder.hoveredItemContainer = null; + if (rootInterface != -1) { + rootWidgetCount = 0; + KeyHandler.drawWidgets(rootInterface, 0, 0, IgnoreList.canvasWidth, ModelData0.canvasHeight, 0, 0, -1); + } + + Rasterizer2D.Rasterizer2D_resetClip(); + if (showMouseCross) { + if (mouseCrossColor == 1) { + GrandExchangeOfferAgeComparator.crossSprites[mouseCrossState * 20 / 100].drawTransBgAt(mouseCrossX - 8, mouseCrossY - 8); + } + + if (mouseCrossColor == 2) { + GrandExchangeOfferAgeComparator.crossSprites[mouseCrossState * 20 / 100 + 4].drawTransBgAt(mouseCrossX - 8, mouseCrossY - 8); } } - for (var1 = 0; var1 < rootWidgetCount; ++var1) { // L: 4252 - if (field834[var1]) { // L: 4253 - field758[var1] = true; - } - - field745[var1] = field834[var1]; // L: 4254 - field834[var1] = false; // L: 4255 - } - - field748 = cycle; // L: 4257 - viewportX = -1; // L: 4258 - viewportY = -1; // L: 4259 - class217.hoveredItemContainer = null; // L: 4260 - if (rootInterface != -1) { // L: 4261 - rootWidgetCount = 0; // L: 4262 - ClanChat.drawWidgets(rootInterface, 0, 0, ItemContainer.canvasWidth, HealthBar.canvasHeight, 0, 0, -1); // L: 4263 - } - - Rasterizer2D.Rasterizer2D_resetClip(); // L: 4265 - if (showMouseCross) { // L: 4266 - if (mouseCrossColor == 1) { // L: 4267 - class60.crossSprites[mouseCrossState / 100].drawTransBgAt(mouseCrossX - 8, mouseCrossY - 8); // L: 4268 - } - - if (mouseCrossColor == 2) { // L: 4270 - class60.crossSprites[mouseCrossState / 100 + 4].drawTransBgAt(mouseCrossX - 8, mouseCrossY - 8); // L: 4271 - } - } - - int var2; - int var3; - int var4; - int var6; - int var7; - int var8; - if (!isMenuOpen) { // L: 4274 - if (viewportX != -1) { // L: 4275 - var1 = viewportX; // L: 4276 - var2 = viewportY; // L: 4277 - if ((menuOptionsCount >= 2 || isItemSelected != 0 || isSpellSelected) && showMouseOverText) { // L: 4279 4280 - var3 = FileSystem.method3638(); // L: 4281 - String var15; - if (isItemSelected == 1 && menuOptionsCount < 2) { // L: 4283 - var15 = "Use" + " " + selectedItemName + " " + "->"; - } else if (isSpellSelected && menuOptionsCount < 2) { // L: 4284 - var15 = selectedSpellActionName + " " + selectedSpellName + " " + "->"; - } else { - String var16; - if (var3 < 0) { // L: 4288 - var16 = ""; // L: 4289 - } else if (menuTargets[var3].length() > 0) { // L: 4292 - var16 = menuActions[var3] + " " + menuTargets[var3]; - } else { - var16 = menuActions[var3]; // L: 4293 - } - - var15 = var16; // L: 4295 - } - - if (menuOptionsCount > 2) { // L: 4297 - var15 = var15 + colorStartTag(16777215) + " " + '/' + " " + (menuOptionsCount - 2) + " more options"; - } - - ReflectionCheck.fontBold12.drawRandomAlphaAndSpacing(var15, var1 + 4, var2 + 15, 16777215, 0, cycle / 1000); // L: 4298 - } + if (!isMenuOpen) { + if (viewportX != -1) { + WorldMapData_0.method243(viewportX, viewportY); } } else { - var1 = Coord.menuX; // L: 4303 - var2 = WorldMapArea.menuY; // L: 4304 - var3 = KeyHandler.menuWidth; // L: 4305 - var4 = ServerPacket.menuHeight; // L: 4306 - int var5 = 6116423; // L: 4307 - Rasterizer2D.Rasterizer2D_fillRectangle(var1, var2, var3, var4, var5); // L: 4308 - Rasterizer2D.Rasterizer2D_fillRectangle(var1 + 1, var2 + 1, var3 - 2, 16, 0); // L: 4309 - Rasterizer2D.Rasterizer2D_drawRectangle(var1 + 1, var2 + 18, var3 - 2, var4 - 19, 0); // L: 4310 - ReflectionCheck.fontBold12.draw("Choose Option", var1 + 3, var2 + 14, var5, -1); // L: 4311 - var6 = MouseHandler.MouseHandler_x; // L: 4312 - var7 = MouseHandler.MouseHandler_y; // L: 4313 + var1 = AbstractUserComparator.menuX; + int var2 = DynamicObject.menuY; + int var3 = Occluder.menuWidth; + int var4 = class182.menuHeight; + int var5 = 6116423; + Rasterizer2D.Rasterizer2D_fillRectangle(var1, var2, var3, var4, var5); + Rasterizer2D.Rasterizer2D_fillRectangle(var1 + 1, var2 + 1, var3 - 2, 16, 0); + Rasterizer2D.Rasterizer2D_drawRectangle(var1 + 1, var2 + 18, var3 - 2, var4 - 19, 0); + GrandExchangeOfferTotalQuantityComparator.fontBold12.draw("Choose Option", var1 + 3, var2 + 14, var5, -1); + int var6 = MouseHandler.MouseHandler_x; + int var7 = MouseHandler.MouseHandler_y; - int var9; - int var10; - for (var8 = 0; var8 < menuOptionsCount; ++var8) { // L: 4314 - var9 = (menuOptionsCount - 1 - var8) * 15 + var2 + 31; // L: 4315 - var10 = 16777215; // L: 4316 - if (var6 > var1 && var6 < var3 + var1 && var7 > var9 - 13 && var7 < var9 + 3) { // L: 4317 + for (int var8 = 0; var8 < menuOptionsCount; ++var8) { + int var9 = (menuOptionsCount - 1 - var8) * 15 + var2 + 31; + int var10 = 16777215; + if (var6 > var1 && var6 < var3 + var1 && var7 > var9 - 13 && var7 < var9 + 3) { var10 = 16776960; } - Font var13 = ReflectionCheck.fontBold12; // L: 4318 - String var14; - if (var8 < 0) { // L: 4321 - var14 = ""; // L: 4322 - } else if (menuTargets[var8].length() > 0) { // L: 4325 - var14 = menuActions[var8] + " " + menuTargets[var8]; - } else { - var14 = menuActions[var8]; // L: 4326 - } - - var13.draw(var14, var1 + 3, var9, var10, 0); // L: 4328 + GrandExchangeOfferTotalQuantityComparator.fontBold12.draw(ArchiveLoader.method1230(var8), var1 + 3, var9, var10, 0); } - var8 = Coord.menuX; // L: 4330 - var9 = WorldMapArea.menuY; // L: 4331 - var10 = KeyHandler.menuWidth; // L: 4332 - int var11 = ServerPacket.menuHeight; // L: 4333 + Strings.method4157(AbstractUserComparator.menuX, DynamicObject.menuY, Occluder.menuWidth, class182.menuHeight); + } - for (int var12 = 0; var12 < rootWidgetCount; ++var12) { // L: 4335 - if (rootWidgetWidths[var12] + rootWidgetXs[var12] > var8 && rootWidgetXs[var12] < var10 + var8 && rootWidgetHeights[var12] + rootWidgetYs[var12] > var9 && rootWidgetYs[var12] < var9 + var11) { // L: 4336 - field758[var12] = true; + if (gameDrawingMode == 3) { + for (var1 = 0; var1 < rootWidgetCount; ++var1) { + if (field855[var1]) { + Rasterizer2D.Rasterizer2D_fillRectangleAlpha(rootWidgetXs[var1], rootWidgetYs[var1], rootWidgetWidths[var1], rootWidgetHeights[var1], 16711935, 128); + } else if (field854[var1]) { + Rasterizer2D.Rasterizer2D_fillRectangleAlpha(rootWidgetXs[var1], rootWidgetYs[var1], rootWidgetWidths[var1], rootWidgetHeights[var1], 16711680, 128); } } } - if (gameDrawingMode == 3) { // L: 4340 - for (var1 = 0; var1 < rootWidgetCount; ++var1) { // L: 4341 - if (field745[var1]) { // L: 4342 - Rasterizer2D.Rasterizer2D_fillRectangleAlpha(rootWidgetXs[var1], rootWidgetYs[var1], rootWidgetWidths[var1], rootWidgetHeights[var1], 16711935, 128); // L: 4343 - } else if (field758[var1]) { // L: 4345 - Rasterizer2D.Rasterizer2D_fillRectangleAlpha(rootWidgetXs[var1], rootWidgetYs[var1], rootWidgetWidths[var1], rootWidgetHeights[var1], 16711680, 128); // L: 4346 - } - } - } + FriendsList.method5222(GameObject.Client_plane, PlayerAppearance.localPlayer.x, PlayerAppearance.localPlayer.y, field850); + field850 = 0; + } - var1 = GrandExchangeOfferUnitPriceComparator.Client_plane; // L: 4350 - var2 = PlayerType.localPlayer.x; // L: 4351 - var3 = PlayerType.localPlayer.y; // L: 4352 - var4 = field743; // L: 4353 - - for (ObjectSound var21 = (ObjectSound)ObjectSound.objectSounds.last(); var21 != null; var21 = (ObjectSound)ObjectSound.objectSounds.previous()) { // L: 4355 - if (var21.soundEffectId != -1 || var21.soundEffectIds != null) { // L: 4356 - var6 = 0; // L: 4357 - if (var2 > var21.field1103) { // L: 4358 - var6 += var2 - var21.field1103; - } else if (var2 < var21.x) { // L: 4359 - var6 += var21.x - var2; - } - - if (var3 > var21.field1112) { // L: 4360 - var6 += var3 - var21.field1112; - } else if (var3 < var21.y) { // L: 4361 - var6 += var21.y - var3; - } - - if (var6 - 64 <= var21.field1104 && areaSoundEffectVolume != 0 && var1 == var21.plane) { // L: 4362 - var6 -= 64; // L: 4373 - if (var6 < 0) { // L: 4374 - var6 = 0; - } - - var7 = (var21.field1104 - var6) * areaSoundEffectVolume / var21.field1104; // L: 4375 - Object var10000; - if (var21.stream1 == null) { // L: 4376 - if (var21.soundEffectId >= 0) { // L: 4377 - var10000 = null; // L: 4378 - SoundEffect var17 = SoundEffect.readSoundEffect(Username.archive4, var21.soundEffectId, 0); - if (var17 != null) { // L: 4379 - RawSound var18 = var17.toRawSound().resample(NetSocket.decimator); // L: 4380 - RawPcmStream var19 = RawPcmStream.createRawPcmStream(var18, 100, var7); // L: 4381 - var19.setNumLoops(-1); // L: 4382 - GrandExchangeEvents.pcmStreamMixer.addSubStream(var19); // L: 4383 - var21.stream1 = var19; // L: 4384 - } - } - } else { - var21.stream1.method2677(var7); // L: 4388 - } - - if (var21.stream2 == null) { // L: 4389 - if (var21.soundEffectIds != null && (var21.field1108 -= var4) <= 0) { // L: 4390 - var8 = (int)(Math.random() * (double)var21.soundEffectIds.length); // L: 4391 - var10000 = null; // L: 4392 - SoundEffect var22 = SoundEffect.readSoundEffect(Username.archive4, var21.soundEffectIds[var8], 0); - if (var22 != null) { // L: 4393 - RawSound var23 = var22.toRawSound().resample(NetSocket.decimator); // L: 4394 - RawPcmStream var20 = RawPcmStream.createRawPcmStream(var23, 100, var7); // L: 4395 - var20.setNumLoops(0); // L: 4396 - GrandExchangeEvents.pcmStreamMixer.addSubStream(var20); // L: 4397 - var21.stream2 = var20; // L: 4398 - var21.field1108 = var21.field1107 + (int)(Math.random() * (double)(var21.field1109 - var21.field1107)); // L: 4399 - } - } - } else { - var21.stream2.method2677(var7); // L: 4404 - if (!var21.stream2.hasNext()) { // L: 4405 - var21.stream2 = null; // L: 4406 - } - } - } else { - if (var21.stream1 != null) { // L: 4363 - GrandExchangeEvents.pcmStreamMixer.removeSubStream(var21.stream1); // L: 4364 - var21.stream1 = null; // L: 4365 - } - - if (var21.stream2 != null) { // L: 4367 - GrandExchangeEvents.pcmStreamMixer.removeSubStream(var21.stream2); // L: 4368 - var21.stream2 = null; // L: 4369 - } - } - } - } - - field743 = 0; // L: 4411 - } // L: 4412 - - @ObfuscatedName("gv") + @ObfuscatedName("he") @ObfuscatedSignature( - descriptor = "(Ldg;I)Z", - garbageValue = "-1472094898" + descriptor = "(Ldh;B)Z", + garbageValue = "126" ) - final boolean method1616(PacketWriter var1) { - AbstractSocket var2 = var1.getSocket(); // L: 5848 - PacketBuffer var3 = var1.packetBuffer; // L: 5849 - if (var2 == null) { // L: 5850 + final boolean method1687(PacketWriter var1) { + AbstractSocket var2 = var1.getSocket(); + PacketBuffer var3 = var1.packetBuffer; + if (var2 == null) { return false; } else { - int var6; String var17; + int var18; try { int var5; - if (var1.serverPacket == null) { // L: 5852 - if (var1.field1340) { // L: 5853 - if (!var2.isAvailable(1)) { // L: 5854 + if (var1.serverPacket == null) { + if (var1.field1332) { + if (!var2.isAvailable(1)) { return false; } - var2.read(var1.packetBuffer.array, 0, 1); // L: 5855 - var1.field1337 = 0; // L: 5856 - var1.field1340 = false; // L: 5857 + var2.read(var1.packetBuffer.array, 0, 1); + var1.field1333 = 0; + var1.field1332 = false; } - var3.offset = 0; // L: 5859 - if (var3.method5582()) { // L: 5860 - if (!var2.isAvailable(1)) { // L: 5861 + var3.offset = 0; + if (var3.method5491()) { + if (!var2.isAvailable(1)) { return false; } - var2.read(var1.packetBuffer.array, 1, 1); // L: 5862 - var1.field1337 = 0; // L: 5863 + var2.read(var1.packetBuffer.array, 1, 1); + var1.field1333 = 0; } - var1.field1340 = true; // L: 5865 - ServerPacket[] var4 = ArchiveDiskActionHandler.ServerPacket_values(); // L: 5866 - var5 = var3.readSmartByteShortIsaac(); // L: 5867 - if (var5 < 0 || var5 >= var4.length) { // L: 5868 + var1.field1332 = true; + ServerPacket[] var4 = Tiles.ServerPacket_values(); + var5 = var3.readSmartByteShortIsaac(); + if (var5 < 0 || var5 >= var4.length) { throw new IOException(var5 + " " + var3.offset); } - var1.serverPacket = var4[var5]; // L: 5869 - var1.serverPacketLength = var1.serverPacket.length; // L: 5870 + var1.serverPacket = var4[var5]; + var1.serverPacketLength = var1.serverPacket.length; } - if (var1.serverPacketLength == -1) { // L: 5872 - if (!var2.isAvailable(1)) { // L: 5873 + if (var1.serverPacketLength == -1) { + if (!var2.isAvailable(1)) { return false; } - var1.getSocket().read(var3.array, 0, 1); // L: 5874 - var1.serverPacketLength = var3.array[0] & 255; // L: 5875 + var1.getSocket().read(var3.array, 0, 1); + var1.serverPacketLength = var3.array[0] & 255; } - if (var1.serverPacketLength == -2) { // L: 5877 - if (!var2.isAvailable(2)) { // L: 5878 + if (var1.serverPacketLength == -2) { + if (!var2.isAvailable(2)) { return false; } - var1.getSocket().read(var3.array, 0, 2); // L: 5879 - var3.offset = 0; // L: 5880 - var1.serverPacketLength = var3.readUnsignedShort(); // L: 5881 + var1.getSocket().read(var3.array, 0, 2); + var3.offset = 0; + var1.serverPacketLength = var3.readUnsignedShort(); } - if (!var2.isAvailable(var1.serverPacketLength)) { // L: 5883 + if (!var2.isAvailable(var1.serverPacketLength)) { return false; } - var3.offset = 0; // L: 5884 - var2.read(var3.array, 0, var1.serverPacketLength); // L: 5885 - var1.field1337 = 0; // L: 5886 - timer.method5135(); // L: 5887 - var1.field1350 = var1.field1339; // L: 5888 - var1.field1339 = var1.field1348; // L: 5889 - var1.field1348 = var1.serverPacket; // L: 5890 + var3.offset = 0; + var2.read(var3.array, 0, var1.serverPacketLength); + var1.field1333 = 0; + timer.method5010(); + var1.field1337 = var1.field1336; + var1.field1336 = var1.field1335; + var1.field1335 = var1.serverPacket; int var16; - InterfaceParent var41; - if (ServerPacket.field2207 == var1.serverPacket) { // L: 5891 - var16 = var3.method5687(); // L: 5892 - var5 = var3.readUnsignedShort(); // L: 5893 - var6 = var3.method5650(); // L: 5894 - var41 = (InterfaceParent)interfaceParents.get((long)var16); // L: 5895 - if (var41 != null) { // L: 5896 - Player.closeInterface(var41, var5 != var41.group); - } - - ModelData0.method3381(var16, var5, var6); // L: 5897 - var1.serverPacket = null; // L: 5898 - return true; // L: 5899 - } - - if (ServerPacket.field2202 == var1.serverPacket) { // L: 5901 - for (var16 = 0; var16 < VarpDefinition.VarpDefinition_fileCount; ++var16) { // L: 5902 - VarpDefinition var51 = PendingSpawn.VarpDefinition_get(var16); // L: 5903 - if (var51 != null) { // L: 5904 - Varps.Varps_temp[var16] = 0; // L: 5905 - Varps.Varps_main[var16] = 0; // L: 5906 + String var44; + boolean var46; + if (ServerPacket.field2139 == var1.serverPacket) { + var16 = var3.readUShortSmart(); + var46 = var3.readUnsignedByte() == 1; + var44 = ""; + boolean var48 = false; + if (var46) { + var44 = var3.readStringCp1252NullTerminated(); + if (MilliClock.friendSystem.isIgnored(new Username(var44, GrandExchangeOfferUnitPriceComparator.loginType))) { + var48 = true; } } - ItemDefinition.method4874(); // L: 5909 - field868 += 32; // L: 5910 - var1.serverPacket = null; // L: 5911 - return true; // L: 5912 + String var43 = var3.readStringCp1252NullTerminated(); + if (!var48) { + class234.addGameMessage(var16, var44, var43); + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2172 == var1.serverPacket) { + var16 = var3.method5539(); + if (var16 == 65535) { + var16 = -1; + } + + WorldMapData_0.playSong(var16); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2188 == var1.serverPacket) { + var16 = var3.readUnsignedShort(); + if (var16 == 65535) { + var16 = -1; + } + + var5 = var3.method5586(); + LoginPacket.method3672(var16, var5); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2187 == var1.serverPacket) { + for (var16 = 0; var16 < VarpDefinition.VarpDefinition_fileCount; ++var16) { + VarpDefinition var56 = class219.VarpDefinition_get(var16); + if (var56 != null) { + Varps.Varps_temp[var16] = 0; + Varps.Varps_main[var16] = 0; + } + } + + class195.method3681(); + field835 += 32; + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2157 == var1.serverPacket) { + WorldMapData_0.updateNpcs(false, var3); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2145 == var1.serverPacket) { + var16 = var3.readUnsignedByte(); + FontName.method5354(var16); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2152 == var1.serverPacket) { + UserComparator4.method3465(class194.field2345); + var1.serverPacket = null; + return true; } String var38; - if (ServerPacket.field2157 == var1.serverPacket) { // L: 5914 - var38 = var3.readStringCp1252NullTerminated(); // L: 5915 - var5 = var3.method5650(); // L: 5916 - var6 = var3.method5650(); // L: 5917 - if (var5 >= 1 && var5 <= 8) { // L: 5918 - if (var38.equalsIgnoreCase("null")) { // L: 5919 - var38 = null; - } + if (ServerPacket.field2189 == var1.serverPacket) { + var38 = var3.readStringCp1252NullTerminated(); + Object[] var55 = new Object[var38.length() + 1]; - playerMenuActions[var5 - 1] = var38; // L: 5920 - playerOptionsPriorities[var5 - 1] = var6 == 0; // L: 5921 - } - - var1.serverPacket = null; // L: 5923 - return true; // L: 5924 - } - - long var18; - long var20; - if (ServerPacket.field2224 == var1.serverPacket) { // L: 5926 - var38 = var3.readStringCp1252NullTerminated(); // L: 5927 - var18 = (long)var3.readUnsignedShort(); // L: 5928 - var20 = (long)var3.readMedium(); // L: 5929 - PlayerType var9 = (PlayerType)class195.findEnumerated(WorldMapLabelSize.PlayerType_values(), var3.readUnsignedByte()); // L: 5930 - long var10 = var20 + (var18 << 32); // L: 5931 - boolean var12 = false; // L: 5932 - - for (int var13 = 0; var13 < 100; ++var13) { // L: 5933 - if (var10 == field900[var13]) { // L: 5934 - var12 = true; // L: 5935 - break; // L: 5936 - } - } - - if (WorldMapLabelSize.friendSystem.isIgnored(new Username(var38, UserComparator4.loginType))) { // L: 5939 - var12 = true; - } - - if (!var12 && field795 == 0) { // L: 5940 - field900[field901] = var10; // L: 5941 - field901 = (field901 + 1) % 100; // L: 5942 - String var22 = AbstractFont.escapeBrackets(WorldMapSection0.method328(Tile.method3004(var3))); // L: 5943 - byte var44; - if (var9.isPrivileged) { // L: 5945 - var44 = 7; + for (var18 = var38.length() - 1; var18 >= 0; --var18) { + if (var38.charAt(var18) == 's') { + var55[var18 + 1] = var3.readStringCp1252NullTerminated(); } else { - var44 = 3; // L: 5946 + var55[var18 + 1] = new Integer(var3.readInt()); + } + } + + var55[0] = new Integer(var3.readInt()); + ScriptEvent var47 = new ScriptEvent(); + var47.args = var55; + class22.runScriptEvent(var47); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2217 == var1.serverPacket) { + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.method5251(var3); + } + + WorldMapLabel.method469(); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2175 == var1.serverPacket) { + WorldMapData_0.updateNpcs(true, var3); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2176 == var1.serverPacket) { + SoundSystem.readReflectionCheck(var3, var1.serverPacketLength); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2174 == var1.serverPacket) { + var16 = var3.readUnsignedByte(); + if (var3.readUnsignedByte() == 0) { + grandExchangeOffers[var16] = new GrandExchangeOffer(); + var3.offset += 18; + } else { + --var3.offset; + grandExchangeOffers[var16] = new GrandExchangeOffer(var3, false); + } + + field685 = cycleCntr; + var1.serverPacket = null; + return true; + } + + Widget var51; + if (ServerPacket.field2150 == var1.serverPacket) { + var16 = var3.readInt(); + var51 = CollisionMap.getWidget(var16); + var51.modelType = 3; + var51.modelId = PlayerAppearance.localPlayer.appearance.getChatHeadId(); + CollisionMap.invalidateWidget(var51); + var1.serverPacket = null; + return true; + } + + int var7; + int var9; + long var12; + int var19; + InterfaceParent var20; + int var21; + if (ServerPacket.field2184 == var1.serverPacket) { + var16 = var3.offset + var1.serverPacketLength; + var5 = var3.readUnsignedShort(); + var18 = var3.readUnsignedShort(); + if (var5 != rootInterface) { + rootInterface = var5; + this.resizeRoot(false); + class304.Widget_resetModelFrames(rootInterface); + VarpDefinition.runWidgetOnLoadListener(rootInterface); + + for (var7 = 0; var7 < 100; ++var7) { + field901[var7] = true; + } + } + + InterfaceParent var45; + for (; var18-- > 0; var45.field559 = true) { + var7 = var3.readInt(); + var19 = var3.readUnsignedShort(); + var9 = var3.readUnsignedByte(); + var45 = (InterfaceParent)interfaceParents.get((long)var7); + if (var45 != null && var19 != var45.group) { + MouseRecorder.closeInterface(var45, true); + var45 = null; } - if (var9.modIcon != -1) { // L: 5947 - DevicePcmPlayerProvider.addGameMessage(var44, PrivateChatMode.method6034(var9.modIcon) + var38, var22); + if (var45 == null) { + var45 = NetFileRequest.method4189(var7, var19, var9); + } + } + + for (var20 = (InterfaceParent)interfaceParents.first(); var20 != null; var20 = (InterfaceParent)interfaceParents.next()) { + if (var20.field559) { + var20.field559 = false; } else { - DevicePcmPlayerProvider.addGameMessage(var44, var38, var22); // L: 5948 + MouseRecorder.closeInterface(var20, true); } } - var1.serverPacket = null; // L: 5950 - return true; // L: 5951 - } + widgetFlags = new NodeHashTable(512); - int var8; - int var24; - int var25; - int var52; - if (ServerPacket.field2165 == var1.serverPacket) { // L: 5953 - isCameraLocked = true; // L: 5954 - MilliClock.field2048 = var3.readUnsignedByte(); // L: 5955 - PcmPlayer.field1449 = var3.readUnsignedByte(); // L: 5956 - AbstractRasterProvider.field3890 = var3.readUnsignedShort(); // L: 5957 - WorldMapCacheName.field326 = var3.readUnsignedByte(); // L: 5958 - class60.field452 = var3.readUnsignedByte(); // L: 5959 - if (class60.field452 >= 100) { // L: 5960 - var16 = MilliClock.field2048 * 128 + 64; // L: 5961 - var5 = PcmPlayer.field1449 * 128 + 64; // L: 5962 - var6 = GrandExchangeOfferWorldComparator.getTileHeight(var16, var5, GrandExchangeOfferUnitPriceComparator.Client_plane) - AbstractRasterProvider.field3890; // L: 5963 - var52 = var16 - ItemContainer.cameraX; // L: 5964 - var8 = var6 - ChatChannel.cameraY; // L: 5965 - var24 = var5 - WorldMapManager.cameraZ; // L: 5966 - var25 = (int)Math.sqrt((double)(var52 * var52 + var24 * var24)); // L: 5967 - World.cameraPitch = (int)(Math.atan2((double)var8, (double)var25) * 325.949D) & 2047; // L: 5968 - ViewportMouse.cameraYaw = (int)(Math.atan2((double)var52, (double)var24) * -325.949D) & 2047; // L: 5969 - if (World.cameraPitch < 128) { // L: 5970 - World.cameraPitch = 128; - } + while (var3.offset < var16) { + var7 = var3.readInt(); + var19 = var3.readUnsignedShort(); + var9 = var3.readUnsignedShort(); + var21 = var3.readInt(); - if (World.cameraPitch > 383) { // L: 5971 - World.cameraPitch = 383; + for (int var11 = var19; var11 <= var9; ++var11) { + var12 = (long)var11 + ((long)var7 << 32); + widgetFlags.put(new IntegerNode(var21), var12); } } - var1.serverPacket = null; // L: 5973 - return true; // L: 5974 + var1.serverPacket = null; + return true; } - if (ServerPacket.field2194 == var1.serverPacket) { // L: 5976 - publicChatMode = var3.method5619(); // L: 5977 - tradeChatMode = var3.readUnsignedByte(); // L: 5978 - var1.serverPacket = null; // L: 5979 - return true; // L: 5980 - } + if (ServerPacket.field2143 == var1.serverPacket) { + class248.field3222 = var3.method5573(); + PacketWriter.field1331 = var3.method5573(); - if (ServerPacket.field2153 == var1.serverPacket) { // L: 5982 - WorldMapAreaData.method790(var3.readStringCp1252NullTerminated()); // L: 5983 - var1.serverPacket = null; // L: 5984 - return true; // L: 5985 - } - - if (ServerPacket.field2145 == var1.serverPacket) { // L: 5987 - class39.privateChatMode = MouseRecorder.method1287(var3.readUnsignedByte()); // L: 5988 - var1.serverPacket = null; // L: 5989 - return true; // L: 5990 - } - - if (ServerPacket.field2220 == var1.serverPacket) { // L: 5992 - var16 = var3.readInt(); // L: 5993 - InterfaceParent var50 = (InterfaceParent)interfaceParents.get((long)var16); // L: 5994 - if (var50 != null) { // L: 5995 - Player.closeInterface(var50, true); + while (var3.offset < var1.serverPacketLength) { + var16 = var3.readUnsignedByte(); + class194 var54 = InvDefinition.method4371()[var16]; + UserComparator4.method3465(var54); } - if (meslayerContinueWidget != null) { // L: 5996 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(meslayerContinueWidget); // L: 5997 - meslayerContinueWidget = null; // L: 5998 - } - - var1.serverPacket = null; // L: 6000 - return true; // L: 6001 + var1.serverPacket = null; + return true; } - Widget var47; - if (ServerPacket.field2172 == var1.serverPacket) { // L: 6003 - var16 = var3.method5686(); // L: 6004 - var47 = UserComparator4.getWidget(var16); // L: 6005 - - for (var6 = 0; var6 < var47.itemIds.length; ++var6) { // L: 6006 - var47.itemIds[var6] = -1; // L: 6007 - var47.itemIds[var6] = 0; // L: 6008 - } - - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var47); // L: 6010 - var1.serverPacket = null; // L: 6011 - return true; // L: 6012 - } - - Widget var7; - if (ServerPacket.field2188 == var1.serverPacket) { // L: 6014 - var16 = var3.method5797(); // L: 6015 - if (var16 == 65535) { // L: 6016 - var16 = -1; - } - - var5 = var3.method5685(); // L: 6017 - var6 = var3.readInt(); // L: 6018 - var7 = UserComparator4.getWidget(var6); // L: 6019 - ItemDefinition var54; - if (!var7.isIf3) { // L: 6020 - if (var16 == -1) { // L: 6021 - var7.modelType = 0; // L: 6022 - var1.serverPacket = null; // L: 6023 - return true; // L: 6024 - } - - var54 = AbstractWorldMapData.ItemDefinition_get(var16); // L: 6026 - var7.modelType = 4; // L: 6027 - var7.modelId = var16; // L: 6028 - var7.modelAngleX = var54.xan2d; // L: 6029 - var7.modelAngleY = var54.yan2d; // L: 6030 - var7.modelZoom = var54.zoom2d * 100 / var5; // L: 6031 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var7); // L: 6032 - } else { - var7.itemId = var16; // L: 6035 - var7.itemQuantity = var5; // L: 6036 - var54 = AbstractWorldMapData.ItemDefinition_get(var16); // L: 6037 - var7.modelAngleX = var54.xan2d; // L: 6038 - var7.modelAngleY = var54.yan2d; // L: 6039 - var7.modelAngleZ = var54.zan2d; // L: 6040 - var7.modelOffsetX = var54.offsetX2d; // L: 6041 - var7.modelOffsetY = var54.offsetY2d; // L: 6042 - var7.modelZoom = var54.zoom2d; // L: 6043 - if (var54.isStackable == 1) { // L: 6044 - var7.itemQuantityMode = 1; - } else { - var7.itemQuantityMode = 2; // L: 6045 - } - - if (var7.field2678 > 0) { // L: 6046 - var7.modelZoom = var7.modelZoom * 32 / var7.field2678; - } else if (var7.rawWidth > 0) { // L: 6047 - var7.modelZoom = var7.modelZoom * 32 / var7.rawWidth; - } - - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var7); // L: 6048 - } - - var1.serverPacket = null; // L: 6050 - return true; // L: 6051 - } - - if (ServerPacket.field2166 == var1.serverPacket) { // L: 6053 - if (rootInterface != -1) { // L: 6054 - WorldMapAreaData.runIntfCloseListeners(rootInterface, 0); - } - - var1.serverPacket = null; // L: 6055 - return true; // L: 6056 - } - - if (ServerPacket.field2218 == var1.serverPacket) { // L: 6058 - var16 = var3.readUnsignedByte(); // L: 6059 - var5 = var3.readUnsignedByte(); // L: 6060 - var6 = var3.readUnsignedByte(); // L: 6061 - var52 = var3.readUnsignedByte(); // L: 6062 - field926[var16] = true; // L: 6063 - field927[var16] = var5; // L: 6064 - field928[var16] = var6; // L: 6065 - field898[var16] = var52; // L: 6066 - field918[var16] = 0; // L: 6067 - var1.serverPacket = null; // L: 6068 - return true; // L: 6069 - } - - if (ServerPacket.field2162 == var1.serverPacket) { // L: 6071 - var16 = var3.readInt(); // L: 6072 - var5 = var3.readInt(); // L: 6073 - var6 = class238.getGcDuration(); // L: 6074 - PacketBufferNode var43 = class4.getPacketBufferNode(ClientPacket.field2296, packetWriter.isaacCipher); // L: 6076 - var43.packetBuffer.writeByte(var6); // L: 6077 - var43.packetBuffer.method5665(GameShell.fps); // L: 6078 - var43.packetBuffer.method5684(var16); // L: 6079 - var43.packetBuffer.writeInt(var5); // L: 6080 - packetWriter.addNode(var43); // L: 6081 - var1.serverPacket = null; // L: 6082 - return true; // L: 6083 - } - - Widget var27; - if (ServerPacket.field2185 == var1.serverPacket) { // L: 6085 - var16 = var3.method5685(); // L: 6086 - var17 = var3.readStringCp1252NullTerminated(); // L: 6087 - var27 = UserComparator4.getWidget(var16); // L: 6088 - if (!var17.equals(var27.text)) { // L: 6089 - var27.text = var17; // L: 6090 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var27); // L: 6091 - } - - var1.serverPacket = null; // L: 6093 - return true; // L: 6094 - } - - if (ServerPacket.field2204 == var1.serverPacket) { // L: 6096 - WorldMapLabelSize.friendSystem.ignoreList.read(var3, var1.serverPacketLength); // L: 6097 - class52.FriendSystem_invalidateIgnoreds(); // L: 6098 - field874 = cycleCntr; // L: 6099 - var1.serverPacket = null; // L: 6100 - return true; // L: 6101 - } - - if (ServerPacket.field2184 == var1.serverPacket) { // L: 6103 - WorldMapEvent.method865(class194.field2351); // L: 6104 - var1.serverPacket = null; // L: 6105 - return true; // L: 6106 - } - - if (ServerPacket.field2216 == var1.serverPacket) { // L: 6108 - minimapState = var3.readUnsignedByte(); // L: 6109 - var1.serverPacket = null; // L: 6110 - return true; // L: 6111 - } - - long var29; - if (ServerPacket.field2195 == var1.serverPacket) { // L: 6113 - var16 = var3.offset + var1.serverPacketLength; // L: 6114 - var5 = var3.readUnsignedShort(); // L: 6115 - var6 = var3.readUnsignedShort(); // L: 6116 - if (var5 != rootInterface) { // L: 6117 - rootInterface = var5; // L: 6118 - this.resizeRoot(false); // L: 6119 - FontName.Widget_resetModelFrames(rootInterface); // L: 6120 - ScriptFrame.runWidgetOnLoadListener(rootInterface); // L: 6121 - - for (var52 = 0; var52 < 100; ++var52) { // L: 6122 - field834[var52] = true; - } - } - - InterfaceParent var57; - for (; var6-- > 0; var57.field596 = true) { // L: 6124 6134 - var52 = var3.readInt(); // L: 6125 - var8 = var3.readUnsignedShort(); // L: 6126 - var24 = var3.readUnsignedByte(); // L: 6127 - var57 = (InterfaceParent)interfaceParents.get((long)var52); // L: 6128 - if (var57 != null && var8 != var57.group) { // L: 6129 - Player.closeInterface(var57, true); // L: 6130 - var57 = null; // L: 6131 - } - - if (var57 == null) { // L: 6133 - var57 = ModelData0.method3381(var52, var8, var24); - } - } - - for (var41 = (InterfaceParent)interfaceParents.first(); var41 != null; var41 = (InterfaceParent)interfaceParents.next()) { // L: 6136 - if (var41.field596) { // L: 6137 - var41.field596 = false; - } else { - Player.closeInterface(var41, true); // L: 6139 - } - } - - widgetFlags = new NodeHashTable(512); // L: 6142 - - while (var3.offset < var16) { // L: 6143 - var52 = var3.readInt(); // L: 6144 - var8 = var3.readUnsignedShort(); // L: 6145 - var24 = var3.readUnsignedShort(); // L: 6146 - var25 = var3.readInt(); // L: 6147 - - for (int var11 = var8; var11 <= var24; ++var11) { // L: 6148 - var29 = (long)var11 + ((long)var52 << 32); // L: 6149 - widgetFlags.put(new IntegerNode(var25), var29); // L: 6150 - } - } - - var1.serverPacket = null; // L: 6153 - return true; // L: 6154 - } - - if (ServerPacket.field2144 == var1.serverPacket) { // L: 6156 - var16 = var3.readUnsignedByte(); // L: 6157 - if (var3.readUnsignedByte() == 0) { // L: 6158 - grandExchangeOffers[var16] = new GrandExchangeOffer(); // L: 6159 - var3.offset += 18; // L: 6160 - } else { - --var3.offset; // L: 6163 - grandExchangeOffers[var16] = new GrandExchangeOffer(var3, false); // L: 6164 - } - - field885 = cycleCntr; // L: 6166 - var1.serverPacket = null; // L: 6167 - return true; // L: 6168 - } - - if (ServerPacket.field2221 == var1.serverPacket) { // L: 6170 - var16 = var3.readUnsignedShort(); // L: 6171 - byte var45 = var3.method5669(); // L: 6172 - Varps.Varps_temp[var16] = var45; // L: 6173 - if (Varps.Varps_main[var16] != var45) { // L: 6174 - Varps.Varps_main[var16] = var45; // L: 6175 - } - - class23.changeGameOptions(var16); // L: 6177 - field867[++field868 - 1 & 31] = var16; // L: 6178 - var1.serverPacket = null; // L: 6179 - return true; // L: 6180 - } - - if (ServerPacket.field2182 == var1.serverPacket) { // L: 6182 - class39.updatePlayers(var3, var1.serverPacketLength); // L: 6183 - class197.method3783(); // L: 6184 - var1.serverPacket = null; // L: 6185 - return true; // L: 6186 - } - - if (ServerPacket.field2179 == var1.serverPacket) { // L: 6188 - ItemDefinition.method4874(); // L: 6189 - var16 = var3.readUnsignedByte(); // L: 6190 - var5 = var3.method5650(); // L: 6191 - var6 = var3.readInt(); // L: 6192 - experience[var5] = var6; // L: 6193 - currentLevels[var5] = var16; // L: 6194 - levels[var5] = 1; // L: 6195 - - for (var52 = 0; var52 < 98; ++var52) { // L: 6196 - if (var6 >= Skills.Skills_experienceTable[var52]) { - levels[var5] = var52 + 2; - } - } - - changedSkills[++changedSkillsCount - 1 & 31] = var5; // L: 6197 - var1.serverPacket = null; // L: 6198 - return true; // L: 6199 - } - - long var31; - if (ServerPacket.field2196 == var1.serverPacket) { // L: 6201 - var16 = var3.readInt(); // L: 6202 - var5 = var3.readUnsignedShort(); // L: 6203 - if (var5 == 65535) { // L: 6204 - var5 = -1; - } - - var6 = var3.method5675(); // L: 6205 - if (var6 == 65535) { // L: 6206 - var6 = -1; - } - - var52 = var3.readInt(); // L: 6207 - - for (var8 = var6; var8 <= var5; ++var8) { // L: 6208 - var31 = ((long)var52 << 32) + (long)var8; // L: 6209 - Node var60 = widgetFlags.get(var31); // L: 6210 - if (var60 != null) { // L: 6211 - var60.remove(); - } - - widgetFlags.put(new IntegerNode(var16), var31); // L: 6212 - } - - var1.serverPacket = null; // L: 6214 - return true; // L: 6215 - } - - if (ServerPacket.field2167 == var1.serverPacket) { // L: 6217 - ItemDefinition.method4874(); // L: 6218 - runEnergy = var3.readUnsignedByte(); // L: 6219 - field878 = cycleCntr; // L: 6220 - var1.serverPacket = null; // L: 6221 - return true; // L: 6222 - } - - if (ServerPacket.field2150 == var1.serverPacket) { // L: 6224 - isCameraLocked = true; // L: 6225 - WorldMapSection2.field225 = var3.readUnsignedByte(); // L: 6226 - WorldMapLabelSize.field152 = var3.readUnsignedByte(); // L: 6227 - SpriteMask.field2542 = var3.readUnsignedShort(); // L: 6228 - Player.field674 = var3.readUnsignedByte(); // L: 6229 - ReflectionCheck.field1364 = var3.readUnsignedByte(); // L: 6230 - if (ReflectionCheck.field1364 >= 100) { // L: 6231 - ItemContainer.cameraX = WorldMapSection2.field225 * 128 + 64; // L: 6232 - WorldMapManager.cameraZ = WorldMapLabelSize.field152 * 128 + 64; // L: 6233 - ChatChannel.cameraY = GrandExchangeOfferWorldComparator.getTileHeight(ItemContainer.cameraX, WorldMapManager.cameraZ, GrandExchangeOfferUnitPriceComparator.Client_plane) - SpriteMask.field2542; // L: 6234 - } - - var1.serverPacket = null; // L: 6236 - return true; // L: 6237 - } - - if (ServerPacket.field2189 == var1.serverPacket) { // L: 6239 - if (DevicePcmPlayerProvider.clanChat != null) { // L: 6240 - DevicePcmPlayerProvider.clanChat.method5371(var3); // L: 6241 - } - - ClientPacket.method3744(); // L: 6243 - var1.serverPacket = null; // L: 6244 - return true; // L: 6245 - } - - if (ServerPacket.field2168 == var1.serverPacket) { // L: 6247 - GrandExchangeEvents.field64 = var3.readUnsignedByte(); // L: 6248 - GameShell.field466 = var3.method5650(); // L: 6249 - - while (var3.offset < var1.serverPacketLength) { // L: 6250 - var16 = var3.readUnsignedByte(); // L: 6251 - class194 var49 = GrandExchangeOffer.method208()[var16]; // L: 6252 - WorldMapEvent.method865(var49); // L: 6253 - } - - var1.serverPacket = null; // L: 6255 - return true; // L: 6256 - } - - if (ServerPacket.field2177 == var1.serverPacket) { // L: 6258 - var16 = var3.readInt(); // L: 6259 - var5 = var3.readUnsignedShort(); // L: 6260 - if (var16 < -70000) { // L: 6261 - var5 += 32768; - } - - if (var16 >= 0) { // L: 6263 - var27 = UserComparator4.getWidget(var16); - } else { - var27 = null; // L: 6264 - } - - for (; var3.offset < var1.serverPacketLength; GrandExchangeEvents.itemContainerSetItem(var5, var52, var8 - 1, var24)) { // L: 6265 6279 - var52 = var3.readUShortSmart(); // L: 6266 - var8 = var3.readUnsignedShort(); // L: 6267 - var24 = 0; // L: 6268 - if (var8 != 0) { // L: 6269 - var24 = var3.readUnsignedByte(); // L: 6270 - if (var24 == 255) { // L: 6271 - var24 = var3.readInt(); - } - } - - if (var27 != null && var52 >= 0 && var52 < var27.itemIds.length) { // L: 6273 6274 - var27.itemIds[var52] = var8; // L: 6275 - var27.itemQuantities[var52] = var24; // L: 6276 - } - } - - if (var27 != null) { // L: 6281 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var27); - } - - ItemDefinition.method4874(); // L: 6282 - changedItemContainers[++field941 - 1 & 31] = var5 & 32767; // L: 6283 - var1.serverPacket = null; // L: 6284 - return true; // L: 6285 - } - - Widget var53; - if (ServerPacket.field2219 == var1.serverPacket) { // L: 6287 - var16 = var3.method5797(); // L: 6288 - var5 = var3.method5686(); // L: 6289 - var6 = var3.method5659(); // L: 6290 - var52 = var3.method5797(); // L: 6291 - var53 = UserComparator4.getWidget(var5); // L: 6292 - if (var6 != var53.modelAngleX || var16 != var53.modelAngleY || var52 != var53.modelZoom) { // L: 6293 - var53.modelAngleX = var6; // L: 6294 - var53.modelAngleY = var16; // L: 6295 - var53.modelZoom = var52; // L: 6296 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var53); // L: 6297 - } - - var1.serverPacket = null; // L: 6299 - return true; // L: 6300 - } - - if (ServerPacket.field2227 == var1.serverPacket) { // L: 6302 - WorldMapEvent.method865(class194.field2348); // L: 6303 - var1.serverPacket = null; // L: 6304 - return true; // L: 6305 - } - - if (ServerPacket.field2193 == var1.serverPacket) { // L: 6307 - ItemDefinition.method4874(); // L: 6308 - weight = var3.readShort(); // L: 6309 - field878 = cycleCntr; // L: 6310 - var1.serverPacket = null; // L: 6311 - return true; // L: 6312 - } - - if (ServerPacket.field2143 == var1.serverPacket) { // L: 6314 - var16 = var3.method5797(); // L: 6315 - var5 = var3.readInt(); // L: 6316 - var6 = var16 >> 10 & 31; // L: 6317 - var52 = var16 >> 5 & 31; // L: 6318 - var8 = var16 & 31; // L: 6319 - var24 = (var52 << 11) + (var6 << 19) + (var8 << 3); // L: 6320 - Widget var28 = UserComparator4.getWidget(var5); // L: 6321 - if (var24 != var28.color) { // L: 6322 - var28.color = var24; // L: 6323 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var28); // L: 6324 - } - - var1.serverPacket = null; // L: 6326 - return true; // L: 6327 - } - - if (ServerPacket.field2158 == var1.serverPacket) { // L: 6329 - PacketWriter.loadRegions(false, var1.packetBuffer); // L: 6330 - var1.serverPacket = null; // L: 6331 - return true; // L: 6332 - } - - if (ServerPacket.field2159 == var1.serverPacket) { // L: 6334 - GrandExchangeEvents.field64 = var3.method5668(); // L: 6335 - GameShell.field466 = var3.method5650(); // L: 6336 - var1.serverPacket = null; // L: 6337 - return true; // L: 6338 - } - - boolean var55; - if (ServerPacket.field2170 == var1.serverPacket) { // L: 6340 - var55 = var3.readUnsignedByte() == 1; // L: 6341 - var5 = var3.method5685(); // L: 6342 - var27 = UserComparator4.getWidget(var5); // L: 6343 - if (var55 != var27.isHidden) { // L: 6344 - var27.isHidden = var55; // L: 6345 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var27); // L: 6346 - } - - var1.serverPacket = null; // L: 6348 - return true; // L: 6349 - } - - if (ServerPacket.field2214 == var1.serverPacket) { // L: 6351 - var38 = var3.readStringCp1252NullTerminated(); // L: 6352 - var18 = var3.readLong(); // L: 6353 - var20 = (long)var3.readUnsignedShort(); // L: 6354 - var31 = (long)var3.readMedium(); // L: 6355 - PlayerType var33 = (PlayerType)class195.findEnumerated(WorldMapLabelSize.PlayerType_values(), var3.readUnsignedByte()); // L: 6356 - var29 = (var20 << 32) + var31; // L: 6357 - boolean var14 = false; // L: 6358 - - for (int var15 = 0; var15 < 100; ++var15) { // L: 6359 - if (field900[var15] == var29) { // L: 6360 - var14 = true; // L: 6361 - break; // L: 6362 - } - } - - if (var33.isUser && WorldMapLabelSize.friendSystem.isIgnored(new Username(var38, UserComparator4.loginType))) { // L: 6365 6366 - var14 = true; - } - - if (!var14 && field795 == 0) { // L: 6368 - field900[field901] = var29; // L: 6369 - field901 = (field901 + 1) % 100; // L: 6370 - String var34 = AbstractFont.escapeBrackets(WorldMapSection0.method328(Tile.method3004(var3))); // L: 6371 - if (var33.modIcon != -1) { // L: 6372 - class3.addChatMessage(9, PrivateChatMode.method6034(var33.modIcon) + var38, var34, class69.base37DecodeLong(var18)); - } else { - class3.addChatMessage(9, var38, var34, class69.base37DecodeLong(var18)); // L: 6373 - } - } - - var1.serverPacket = null; // L: 6375 - return true; // L: 6376 - } - - if (ServerPacket.field2210 == var1.serverPacket) { // L: 6378 - class89.logOut(); // L: 6379 - var1.serverPacket = null; // L: 6380 - return false; // L: 6381 - } - - if (ServerPacket.field2156 == var1.serverPacket) { // L: 6383 - var55 = var3.readBoolean(); // L: 6384 - if (var55) { // L: 6385 - if (ModelData0.field1895 == null) { // L: 6386 - ModelData0.field1895 = new class248(); - } - } else { - ModelData0.field1895 = null; // L: 6388 - } - - var1.serverPacket = null; // L: 6389 - return true; // L: 6390 - } - - if (ServerPacket.field2171 == var1.serverPacket) { // L: 6392 - var16 = var3.method5659(); // L: 6393 - var5 = var3.method5685(); // L: 6394 - Varps.Varps_temp[var16] = var5; // L: 6395 - if (Varps.Varps_main[var16] != var5) { // L: 6396 - Varps.Varps_main[var16] = var5; // L: 6397 - } - - class23.changeGameOptions(var16); // L: 6399 - field867[++field868 - 1 & 31] = var16; // L: 6400 - var1.serverPacket = null; // L: 6401 - return true; // L: 6402 - } - - if (ServerPacket.field2190 == var1.serverPacket) { // L: 6404 - var16 = var3.method5686(); // L: 6405 - var5 = var3.method5679(); // L: 6406 - var27 = UserComparator4.getWidget(var16); // L: 6407 - if (var5 != var27.sequenceId || var5 == -1) { // L: 6408 - var27.sequenceId = var5; // L: 6409 - var27.modelFrame = 0; // L: 6410 - var27.modelFrameCycle = 0; // L: 6411 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var27); // L: 6412 - } - - var1.serverPacket = null; // L: 6414 - return true; // L: 6415 - } - - if (ServerPacket.field2180 == var1.serverPacket) { // L: 6417 - MusicPatch.updateNpcs(true, var3); // L: 6418 - var1.serverPacket = null; // L: 6419 - return true; // L: 6420 - } - - if (ServerPacket.field2183 == var1.serverPacket) { // L: 6422 - var55 = var3.readUnsignedByte() == 1; // L: 6423 - if (var55) { // L: 6424 - class58.field444 = User.currentTimeMillis() - var3.readLong(); // L: 6425 - WorldMapDecoration.grandExchangeEvents = new GrandExchangeEvents(var3, true); // L: 6426 - } else { - WorldMapDecoration.grandExchangeEvents = null; // L: 6428 - } - - field852 = cycleCntr; // L: 6429 - var1.serverPacket = null; // L: 6430 - return true; // L: 6431 - } - - if (ServerPacket.field2222 == var1.serverPacket) { // L: 6433 - var38 = var3.readStringCp1252NullTerminated(); // L: 6434 - Object[] var48 = new Object[var38.length() + 1]; // L: 6435 - - for (var6 = var38.length() - 1; var6 >= 0; --var6) { // L: 6436 - if (var38.charAt(var6) == 's') { // L: 6437 - var48[var6 + 1] = var3.readStringCp1252NullTerminated(); - } else { - var48[var6 + 1] = new Integer(var3.readInt()); // L: 6438 - } - } - - var48[0] = new Integer(var3.readInt()); // L: 6440 - ScriptEvent var59 = new ScriptEvent(); // L: 6441 - var59.args = var48; // L: 6442 - Entity.runScriptEvent(var59); // L: 6443 - var1.serverPacket = null; // L: 6444 - return true; // L: 6445 - } - - if (ServerPacket.field2142 == var1.serverPacket) { // L: 6447 - var16 = var3.method5685(); // L: 6448 - var47 = UserComparator4.getWidget(var16); // L: 6449 - var47.modelType = 3; // L: 6450 - var47.modelId = PlayerType.localPlayer.appearance.getChatHeadId(); // L: 6451 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var47); // L: 6452 - var1.serverPacket = null; // L: 6453 - return true; // L: 6454 - } - - if (ServerPacket.field2175 == var1.serverPacket) { // L: 6456 - WorldMapEvent.method865(class194.field2355); // L: 6457 - var1.serverPacket = null; // L: 6458 - return true; // L: 6459 - } - - String var56; - if (ServerPacket.field2164 == var1.serverPacket) { // L: 6461 - byte[] var40 = new byte[var1.serverPacketLength]; // L: 6462 - var3.method5584(var40, 0, var40.length); // L: 6463 - Buffer var46 = new Buffer(var40); // L: 6464 - var56 = var46.readStringCp1252NullTerminated(); // L: 6465 - Skeleton.openURL(var56, true, false); // L: 6466 - var1.serverPacket = null; // L: 6467 - return true; // L: 6468 - } - - if (ServerPacket.field2176 == var1.serverPacket) { // L: 6470 - var16 = var3.readInt(); // L: 6471 - var5 = var3.readUnsignedShort(); // L: 6472 - if (var16 < -70000) { // L: 6473 - var5 += 32768; - } - - if (var16 >= 0) { // L: 6475 - var27 = UserComparator4.getWidget(var16); - } else { - var27 = null; // L: 6476 - } - - if (var27 != null) { // L: 6477 - for (var52 = 0; var52 < var27.itemIds.length; ++var52) { // L: 6478 - var27.itemIds[var52] = 0; // L: 6479 - var27.itemQuantities[var52] = 0; // L: 6480 - } - } - - class3.clearItemContainer(var5); // L: 6483 - var52 = var3.readUnsignedShort(); // L: 6484 - - for (var8 = 0; var8 < var52; ++var8) { // L: 6485 - var24 = var3.method5650(); // L: 6486 - if (var24 == 255) { // L: 6487 - var24 = var3.readInt(); - } - - var25 = var3.readUnsignedShort(); // L: 6488 - if (var27 != null && var8 < var27.itemIds.length) { // L: 6489 6490 - var27.itemIds[var8] = var25; // L: 6491 - var27.itemQuantities[var8] = var24; // L: 6492 - } - - GrandExchangeEvents.itemContainerSetItem(var5, var8, var25 - 1, var24); // L: 6495 - } - - if (var27 != null) { // L: 6497 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var27); - } - - ItemDefinition.method4874(); // L: 6498 - changedItemContainers[++field941 - 1 & 31] = var5 & 32767; // L: 6499 - var1.serverPacket = null; // L: 6500 - return true; // L: 6501 - } - - if (ServerPacket.field2223 == var1.serverPacket) { // L: 6503 - hintArrowType = var3.readUnsignedByte(); // L: 6504 - if (hintArrowType == 1) { // L: 6505 + if (ServerPacket.field2199 == var1.serverPacket) { + hintArrowType = var3.readUnsignedByte(); + if (hintArrowType == 1) { hintArrowNpcIndex = var3.readUnsignedShort(); } - if (hintArrowType >= 2 && hintArrowType <= 6) { // L: 6506 - if (hintArrowType == 2) { // L: 6507 - hintArrowSubX = 64; // L: 6508 - hintArrowSubY = 64; // L: 6509 + if (hintArrowType >= 2 && hintArrowType <= 6) { + if (hintArrowType == 2) { + hintArrowSubX = 4096; + hintArrowSubY = 4096; } - if (hintArrowType == 3) { // L: 6511 - hintArrowSubX = 0; // L: 6512 - hintArrowSubY = 64; // L: 6513 + if (hintArrowType == 3) { + hintArrowSubX = 0; + hintArrowSubY = 4096; } - if (hintArrowType == 4) { // L: 6515 - hintArrowSubX = 128; // L: 6516 - hintArrowSubY = 64; // L: 6517 + if (hintArrowType == 4) { + hintArrowSubX = 8192; + hintArrowSubY = 4096; } - if (hintArrowType == 5) { // L: 6519 - hintArrowSubX = 64; // L: 6520 - hintArrowSubY = 0; // L: 6521 + if (hintArrowType == 5) { + hintArrowSubX = 4096; + hintArrowSubY = 0; } - if (hintArrowType == 6) { // L: 6523 - hintArrowSubX = 64; // L: 6524 - hintArrowSubY = 128; // L: 6525 + if (hintArrowType == 6) { + hintArrowSubX = 4096; + hintArrowSubY = 8192; } - hintArrowType = 2; // L: 6527 - hintArrowX = var3.readUnsignedShort(); // L: 6528 - hintArrowY = var3.readUnsignedShort(); // L: 6529 - hintArrowHeight = var3.readUnsignedByte(); // L: 6530 + hintArrowType = 2; + hintArrowX = var3.readUnsignedShort(); + hintArrowY = var3.readUnsignedShort(); + hintArrowHeight = var3.readUnsignedByte() * 4; } - if (hintArrowType == 10) { // L: 6532 + if (hintArrowType == 10) { hintArrowPlayerIndex = var3.readUnsignedShort(); } - var1.serverPacket = null; // L: 6533 - return true; // L: 6534 + var1.serverPacket = null; + return true; } - if (ServerPacket.field2230 == var1.serverPacket) { // L: 6536 - WorldMapEvent.method865(class194.field2349); // L: 6537 - var1.serverPacket = null; // L: 6538 - return true; // L: 6539 + if (ServerPacket.field2154 == var1.serverPacket) { + UserComparator4.method3465(class194.field2348); + var1.serverPacket = null; + return true; } - if (ServerPacket.field2152 == var1.serverPacket) { // L: 6541 - var16 = var3.method5675(); // L: 6542 - if (var16 == 65535) { // L: 6543 - var16 = -1; - } - - Messages.playSong(var16); // L: 6544 - var1.serverPacket = null; // L: 6545 - return true; // L: 6546 + if (ServerPacket.field2149 == var1.serverPacket) { + var16 = var3.readUnsignedShort(); + var5 = var3.readUnsignedByte(); + var18 = var3.readUnsignedShort(); + class232.queueSoundEffect(var16, var5, var18); + var1.serverPacket = null; + return true; } - if (ServerPacket.field2178 == var1.serverPacket) { // L: 6548 - var16 = var3.method5675(); // L: 6549 - if (var16 == 65535) { // L: 6550 - var16 = -1; - } + Widget var40; + if (ServerPacket.field2191 == var1.serverPacket) { + var16 = var3.method5582(); + var5 = var3.readInt(); + var40 = CollisionMap.getWidget(var5); + if (var40 != null && var40.type == 0) { + if (var16 > var40.scrollHeight - var40.height) { + var16 = var40.scrollHeight - var40.height; + } - var5 = var3.method5852(); // L: 6551 - Projectile.playSoundJingle(var16, var5); // L: 6552 - var1.serverPacket = null; // L: 6553 - return true; // L: 6554 - } + if (var16 < 0) { + var16 = 0; + } - if (ServerPacket.field2206 == var1.serverPacket) { // L: 6556 - var16 = var3.method5686(); // L: 6557 - var5 = var3.method5685(); // L: 6558 - InterfaceParent var58 = (InterfaceParent)interfaceParents.get((long)var5); // L: 6559 - var41 = (InterfaceParent)interfaceParents.get((long)var16); // L: 6560 - if (var41 != null) { // L: 6561 - Player.closeInterface(var41, var58 == null || var41.group != var58.group); - } - - if (var58 != null) { // L: 6562 - var58.remove(); // L: 6563 - interfaceParents.put(var58, (long)var16); // L: 6564 - } - - var53 = UserComparator4.getWidget(var5); // L: 6566 - if (var53 != null) { // L: 6567 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var53); - } - - var53 = UserComparator4.getWidget(var16); // L: 6568 - if (var53 != null) { // L: 6569 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var53); // L: 6570 - UserComparator9.revalidateWidgetScroll(Widget.Widget_interfaceComponents[var53.id >>> 16], var53, true); // L: 6571 - } - - if (rootInterface != -1) { // L: 6573 - WorldMapAreaData.runIntfCloseListeners(rootInterface, 1); - } - - var1.serverPacket = null; // L: 6574 - return true; // L: 6575 - } - - if (ServerPacket.field2211 == var1.serverPacket) { // L: 6577 - var16 = var3.readUnsignedShort(); // L: 6578 - rootInterface = var16; // L: 6579 - this.resizeRoot(false); // L: 6580 - FontName.Widget_resetModelFrames(var16); // L: 6581 - ScriptFrame.runWidgetOnLoadListener(rootInterface); // L: 6582 - - for (var5 = 0; var5 < 100; ++var5) { // L: 6583 - field834[var5] = true; - } - - var1.serverPacket = null; // L: 6584 - return true; // L: 6585 - } - - if (ServerPacket.field2199 == var1.serverPacket) { // L: 6587 - var3.offset += 28; // L: 6588 - if (var3.checkCrc()) { // L: 6589 - UserComparator6.method3565(var3, var3.offset - 28); - } - - var1.serverPacket = null; // L: 6590 - return true; // L: 6591 - } - - if (ServerPacket.field2174 == var1.serverPacket) { // L: 6593 - WorldMapEvent.method865(class194.field2356); // L: 6594 - var1.serverPacket = null; // L: 6595 - return true; // L: 6596 - } - - if (ServerPacket.field2191 == var1.serverPacket) { // L: 6598 - WorldMapEvent.method865(class194.field2352); // L: 6599 - var1.serverPacket = null; // L: 6600 - return true; // L: 6601 - } - - if (ServerPacket.field2181 == var1.serverPacket) { // L: 6603 - var16 = var3.readUShortSmart(); // L: 6604 - boolean var42 = var3.readUnsignedByte() == 1; // L: 6605 - var56 = ""; // L: 6606 - boolean var23 = false; // L: 6607 - if (var42) { // L: 6608 - var56 = var3.readStringCp1252NullTerminated(); // L: 6609 - if (WorldMapLabelSize.friendSystem.isIgnored(new Username(var56, UserComparator4.loginType))) { // L: 6610 - var23 = true; + if (var16 != var40.scrollY) { + var40.scrollY = var16; + CollisionMap.invalidateWidget(var40); } } - String var26 = var3.readStringCp1252NullTerminated(); // L: 6612 - if (!var23) { // L: 6613 - DevicePcmPlayerProvider.addGameMessage(var16, var56, var26); - } - - var1.serverPacket = null; // L: 6614 - return true; // L: 6615 + var1.serverPacket = null; + return true; } - if (ServerPacket.field2217 == var1.serverPacket) { // L: 6617 - WorldMapEvent.method865(class194.field2357); // L: 6618 - var1.serverPacket = null; // L: 6619 - return true; // L: 6620 + if (ServerPacket.field2219 == var1.serverPacket) { + minimapState = var3.readUnsignedByte(); + var1.serverPacket = null; + return true; } - if (ServerPacket.field2225 == var1.serverPacket) { // L: 6622 - var16 = var3.readInt(); // L: 6623 - var5 = var3.method5797(); // L: 6624 - var27 = UserComparator4.getWidget(var16); // L: 6625 - if (var27.modelType != 1 || var5 != var27.modelId) { // L: 6626 - var27.modelType = 1; // L: 6627 - var27.modelId = var5; // L: 6628 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var27); // L: 6629 - } - - var1.serverPacket = null; // L: 6631 - return true; // L: 6632 + if (ServerPacket.field2169 == var1.serverPacket) { + var16 = var3.readUnsignedByte(); + var5 = var3.readUnsignedByte(); + var18 = var3.readUnsignedByte(); + var7 = var3.readUnsignedByte(); + field902[var16] = true; + field679[var16] = var5; + field893[var16] = var18; + field705[var16] = var7; + field644[var16] = 0; + var1.serverPacket = null; + return true; } - if (ServerPacket.field2154 == var1.serverPacket) { // L: 6634 - for (var16 = 0; var16 < Varps.Varps_main.length; ++var16) { // L: 6635 - if (Varps.Varps_main[var16] != Varps.Varps_temp[var16]) { // L: 6636 - Varps.Varps_main[var16] = Varps.Varps_temp[var16]; // L: 6637 - class23.changeGameOptions(var16); // L: 6638 - field867[++field868 - 1 & 31] = var16; // L: 6639 - } - } - - var1.serverPacket = null; // L: 6642 - return true; // L: 6643 - } - - if (ServerPacket.field2203 == var1.serverPacket) { // L: 6645 - WorldMapEvent.method865(class194.field2359); // L: 6646 - var1.serverPacket = null; // L: 6647 - return true; // L: 6648 - } - - if (ServerPacket.field2163 == var1.serverPacket) { // L: 6650 - if (var1.serverPacketLength == 0) { // L: 6651 - DevicePcmPlayerProvider.clanChat = null; // L: 6652 - } else { - if (DevicePcmPlayerProvider.clanChat == null) { // L: 6655 - DevicePcmPlayerProvider.clanChat = new ClanChat(UserComparator4.loginType, ByteArrayPool.client); // L: 6656 - } - - DevicePcmPlayerProvider.clanChat.readUpdate(var3); // L: 6658 - } - - ClientPacket.method3744(); // L: 6660 - var1.serverPacket = null; // L: 6661 - return true; // L: 6662 - } - - if (ServerPacket.field2160 == var1.serverPacket) { // L: 6664 - rebootTimer = var3.method5659() * 30; // L: 6665 - field878 = cycleCntr; // L: 6666 - var1.serverPacket = null; // L: 6667 - return true; // L: 6668 - } - - if (ServerPacket.field2205 == var1.serverPacket) { // L: 6670 - WorldMapEvent.method865(class194.field2353); // L: 6671 - var1.serverPacket = null; // L: 6672 - return true; // L: 6673 - } - - if (ServerPacket.field2213 == var1.serverPacket) { // L: 6675 - var16 = var3.readInt(); // L: 6676 - if (var16 != field763) { // L: 6677 - field763 = var16; // L: 6678 - ScriptEvent.method1282(); // L: 6679 - } - - var1.serverPacket = null; // L: 6681 - return true; // L: 6682 - } - - if (ServerPacket.field2197 == var1.serverPacket) { // L: 6684 - var16 = var3.method5659(); // L: 6685 - var5 = var3.readInt(); // L: 6686 - var6 = var3.method5659(); // L: 6687 - var7 = UserComparator4.getWidget(var5); // L: 6688 - var7.field2734 = var16 + (var6 << 16); // L: 6689 - var1.serverPacket = null; // L: 6690 - return true; // L: 6691 - } - - if (ServerPacket.field2200 == var1.serverPacket) { // L: 6693 - World var39 = new World(); // L: 6694 - var39.host = var3.readStringCp1252NullTerminated(); // L: 6695 - var39.id = var3.readUnsignedShort(); // L: 6696 - var5 = var3.readInt(); // L: 6697 - var39.properties = var5; // L: 6698 - BuddyRankComparator.updateGameState(45); // L: 6699 - var2.close(); // L: 6700 - var2 = null; // L: 6701 - AbstractByteArrayCopier.changeWorld(var39); // L: 6702 - var1.serverPacket = null; // L: 6703 - return false; // L: 6704 - } - - if (ServerPacket.field2212 == var1.serverPacket) { // L: 6706 - var38 = var3.readStringCp1252NullTerminated(); // L: 6707 - var17 = AbstractFont.escapeBrackets(WorldMapSection0.method328(Tile.method3004(var3))); // L: 6708 - DevicePcmPlayerProvider.addGameMessage(6, var38, var17); // L: 6709 - var1.serverPacket = null; // L: 6710 - return true; // L: 6711 - } - - if (ServerPacket.field2151 == var1.serverPacket) { // L: 6713 - WorldMapLabelSize.friendSystem.method1957(); // L: 6714 - field874 = cycleCntr; // L: 6715 - var1.serverPacket = null; // L: 6716 - return true; // L: 6717 - } - - if (ServerPacket.field2209 == var1.serverPacket) { // L: 6719 - PacketWriter.loadRegions(true, var1.packetBuffer); // L: 6720 - var1.serverPacket = null; // L: 6721 - return true; // L: 6722 - } - - if (ServerPacket.field2161 == var1.serverPacket) { // L: 6724 - isCameraLocked = false; // L: 6725 - - for (var16 = 0; var16 < 5; ++var16) { // L: 6726 - field926[var16] = false; - } - - var1.serverPacket = null; // L: 6727 - return true; // L: 6728 - } - - if (ServerPacket.field2201 == var1.serverPacket) { // L: 6730 - var16 = var3.method5678(); // L: 6731 - var5 = var3.readShort(); // L: 6732 - var6 = var3.method5685(); // L: 6733 - var7 = UserComparator4.getWidget(var6); // L: 6734 - if (var16 != var7.rawX || var5 != var7.rawY || var7.xAlignment != 0 || var7.yAlignment != 0) { // L: 6735 - var7.rawX = var16; // L: 6736 - var7.rawY = var5; // L: 6737 - var7.xAlignment = 0; // L: 6738 - var7.yAlignment = 0; // L: 6739 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var7); // L: 6740 - this.alignWidget(var7); // L: 6741 - if (var7.type == 0) { // L: 6742 - UserComparator9.revalidateWidgetScroll(Widget.Widget_interfaceComponents[var6 >> 16], var7, false); - } - } - - var1.serverPacket = null; // L: 6744 - return true; // L: 6745 - } - - if (ServerPacket.field2173 == var1.serverPacket) { // L: 6747 - WorldMapLabelSize.friendSystem.readUpdate(var3, var1.serverPacketLength); // L: 6748 - field874 = cycleCntr; // L: 6749 - var1.serverPacket = null; // L: 6750 - return true; // L: 6751 - } - - if (ServerPacket.field2198 == var1.serverPacket) { // L: 6753 - for (var16 = 0; var16 < players.length; ++var16) { // L: 6754 - if (players[var16] != null) { // L: 6755 + if (ServerPacket.field2214 == var1.serverPacket) { + for (var16 = 0; var16 < players.length; ++var16) { + if (players[var16] != null) { players[var16].sequence = -1; } } - for (var16 = 0; var16 < npcs.length; ++var16) { // L: 6757 - if (npcs[var16] != null) { // L: 6758 + for (var16 = 0; var16 < npcs.length; ++var16) { + if (npcs[var16] != null) { npcs[var16].sequence = -1; } } - var1.serverPacket = null; // L: 6760 - return true; // L: 6761 + var1.serverPacket = null; + return true; } - if (ServerPacket.field2187 == var1.serverPacket) { // L: 6763 - var16 = var3.readUnsignedByte(); // L: 6764 - WorldMapArea.forceDisconnect(var16); // L: 6765 - var1.serverPacket = null; // L: 6766 - return false; // L: 6767 + if (ServerPacket.field2165 == var1.serverPacket) { + UserComparator4.method3465(class194.field2351); + var1.serverPacket = null; + return true; } - if (ServerPacket.field2148 == var1.serverPacket) { // L: 6769 - WorldMapData_1.readReflectionCheck(var3, var1.serverPacketLength); // L: 6770 - var1.serverPacket = null; // L: 6771 - return true; // L: 6772 + if (ServerPacket.field2215 == var1.serverPacket) { + rebootTimer = var3.method5582() * 30; + field845 = cycleCntr; + var1.serverPacket = null; + return true; } - if (ServerPacket.field2149 == var1.serverPacket) { // L: 6774 - WorldMapEvent.method865(class194.field2354); // L: 6775 - var1.serverPacket = null; // L: 6776 - return true; // L: 6777 + if (ServerPacket.field2153 == var1.serverPacket) { + var16 = var3.method5643(); + var5 = var3.method5583(); + var40 = CollisionMap.getWidget(var16); + if (var5 != var40.sequenceId || var5 == -1) { + var40.sequenceId = var5; + var40.modelFrame = 0; + var40.modelFrameCycle = 0; + CollisionMap.invalidateWidget(var40); + } + + var1.serverPacket = null; + return true; } - if (ServerPacket.field2169 == var1.serverPacket) { // L: 6779 - MusicPatch.updateNpcs(false, var3); // L: 6780 - var1.serverPacket = null; // L: 6781 - return true; // L: 6782 + if (ServerPacket.field2207 == var1.serverPacket) { + class195.method3681(); + runEnergy = var3.readUnsignedByte(); + field845 = cycleCntr; + var1.serverPacket = null; + return true; } - if (ServerPacket.field2186 == var1.serverPacket) { // L: 6784 - destinationX = var3.readUnsignedByte(); // L: 6785 - if (destinationX == 255) { // L: 6786 + Widget var58; + if (ServerPacket.field2218 == var1.serverPacket) { + var16 = var3.method5580(); + var5 = var3.readUnsignedShort(); + var18 = var3.readInt(); + var58 = CollisionMap.getWidget(var18); + var58.field2642 = var16 + (var5 << 16); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2160 == var1.serverPacket) { + var16 = var3.readInt(); + InterfaceParent var53 = (InterfaceParent)interfaceParents.get((long)var16); + if (var53 != null) { + MouseRecorder.closeInterface(var53, true); + } + + if (meslayerContinueWidget != null) { + CollisionMap.invalidateWidget(meslayerContinueWidget); + meslayerContinueWidget = null; + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2185 == var1.serverPacket) { + var16 = var3.method5643(); + var5 = var3.method5571(); + var18 = var3.method5580(); + var20 = (InterfaceParent)interfaceParents.get((long)var16); + if (var20 != null) { + MouseRecorder.closeInterface(var20, var18 != var20.group); + } + + NetFileRequest.method4189(var16, var18, var5); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2162 == var1.serverPacket) { + MilliClock.friendSystem.ignoreList.read(var3, var1.serverPacketLength); + class9.FriendSystem_invalidateIgnoreds(); + field879 = cycleCntr; + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2216 == var1.serverPacket) { + var38 = var3.readStringCp1252NullTerminated(); + var17 = AbstractFont.escapeBrackets(ServerPacket.method3663(AttackOption.method2135(var3))); + class234.addGameMessage(6, var38, var17); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2148 == var1.serverPacket) { + isCameraLocked = false; + + for (var16 = 0; var16 < 5; ++var16) { + field902[var16] = false; + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2204 == var1.serverPacket) { + ItemContainer.loadRegions(false, var1.packetBuffer); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2193 == var1.serverPacket) { + isCameraLocked = true; + RouteStrategy.field2124 = var3.readUnsignedByte() * 128; + class89.field1140 = var3.readUnsignedByte() * 128; + class41.field302 = var3.readUnsignedShort(); + DynamicObject.field1316 = var3.readUnsignedByte(); + WorldMapRegion.field271 = var3.readUnsignedByte(); + if (WorldMapRegion.field271 >= 100) { + Player.cameraX = RouteStrategy.field2124 * 16384 + 64; + class69.cameraZ = class89.field1140 * 16384 + 64; + KeyHandler.cameraY = SecureRandomFuture.getTileHeight(Player.cameraX, class69.cameraZ, GameObject.Client_plane) - class41.field302; + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2224 == var1.serverPacket) { + if (rootInterface != -1) { + WorldMapRectangle.runIntfCloseListeners(rootInterface, 0); + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2178 == var1.serverPacket) { + var16 = var3.method5582(); + rootInterface = var16; + this.resizeRoot(false); + class304.Widget_resetModelFrames(var16); + VarpDefinition.runWidgetOnLoadListener(rootInterface); + + for (var5 = 0; var5 < 100; ++var5) { + field901[var5] = true; + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2221 == var1.serverPacket) { + class248.field3222 = var3.method5571(); + PacketWriter.field1331 = var3.method5571(); + + for (var16 = PacketWriter.field1331; var16 < PacketWriter.field1331 + 8; ++var16) { + for (var5 = class248.field3222; var5 < class248.field3222 + 8; ++var5) { + if (groundItems[GameObject.Client_plane][var16][var5] != null) { + groundItems[GameObject.Client_plane][var16][var5] = null; + MouseRecorder.updateItemPile(var16, var5); + } + } + } + + for (PendingSpawn var41 = (PendingSpawn)pendingSpawns.last(); var41 != null; var41 = (PendingSpawn)pendingSpawns.previous()) { + if (var41.x >= PacketWriter.field1331 && var41.x < PacketWriter.field1331 + 8 && var41.y >= class248.field3222 && var41.y < class248.field3222 + 8 && var41.plane == GameObject.Client_plane) { + var41.hitpoints = 0; + } + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2203 == var1.serverPacket) { + byte[] var39 = new byte[var1.serverPacketLength]; + var3.method5493(var39, 0, var39.length); + Buffer var52 = new Buffer(var39); + var44 = var52.readStringCp1252NullTerminated(); + AttackOption.openURL(var44, true, false); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2164 == var1.serverPacket) { + UserComparator4.method3465(class194.field2344); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2205 == var1.serverPacket) { + tradeChatMode = var3.method5573(); + publicChatMode = var3.method5572(); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2197 == var1.serverPacket) { + var16 = var3.method5591(); + var5 = var3.method5592(); + var18 = var3.method5539(); + if (var18 == 65535) { + var18 = -1; + } + + var58 = CollisionMap.getWidget(var16); + ItemDefinition var42; + if (!var58.isIf3) { + if (var18 == -1) { + var58.modelType = 0; + var1.serverPacket = null; + return true; + } + + var42 = SecureRandomCallable.ItemDefinition_get(var18); + var58.modelType = 4; + var58.modelId = var18; + var58.modelAngleX = var42.xan2d; + var58.modelAngleY = var42.yan2d; + var58.modelZoom = var42.zoom2d * 100 / var5; + CollisionMap.invalidateWidget(var58); + } else { + var58.itemId = var18; + var58.itemQuantity = var5; + var42 = SecureRandomCallable.ItemDefinition_get(var18); + var58.modelAngleX = var42.xan2d; + var58.modelAngleY = var42.yan2d; + var58.modelAngleZ = var42.zan2d; + var58.modelOffsetX = var42.offsetX2d; + var58.modelOffsetY = var42.offsetY2d; + var58.modelZoom = var42.zoom2d; + if (var42.isStackable == 1) { + var58.itemQuantityMode = 1; + } else { + var58.itemQuantityMode = 2; + } + + if (var58.field2641 > 0) { + var58.modelZoom = var58.modelZoom * 32 / var58.field2641; + } else if (var58.rawWidth > 0) { + var58.modelZoom = var58.modelZoom * 32 / var58.rawWidth; + } + + CollisionMap.invalidateWidget(var58); + } + + var1.serverPacket = null; + return true; + } + + boolean var50; + if (ServerPacket.field2180 == var1.serverPacket) { + var50 = var3.readBoolean(); + if (var50) { + if (WorldMapIcon_0.field148 == null) { + WorldMapIcon_0.field148 = new class248(); + } + } else { + WorldMapIcon_0.field148 = null; + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2170 == var1.serverPacket) { + var16 = var3.method5592(); + var5 = var3.readUnsignedShort(); + Varps.Varps_temp[var5] = var16; + if (Varps.Varps_main[var5] != var16) { + Varps.Varps_main[var5] = var16; + } + + Script.changeGameOptions(var5); + field834[++field835 - 1 & 31] = var5; + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2186 == var1.serverPacket) { + destinationX = var3.readUnsignedByte(); + if (destinationX == 255) { destinationX = 0; } - destinationY = var3.readUnsignedByte(); // L: 6787 - if (destinationY == 255) { // L: 6788 + destinationY = var3.readUnsignedByte(); + if (destinationY == 255) { destinationY = 0; } - var1.serverPacket = null; // L: 6789 - return true; // L: 6790 + var1.serverPacket = null; + return true; } - if (ServerPacket.field2215 == var1.serverPacket) { // L: 6792 - var16 = var3.readUnsignedShort(); // L: 6793 - var5 = var3.readUnsignedByte(); // L: 6794 - var6 = var3.readUnsignedShort(); // L: 6795 - KitDefinition.queueSoundEffect(var16, var5, var6); // L: 6796 - var1.serverPacket = null; // L: 6797 - return true; // L: 6798 + if (ServerPacket.field2167 == var1.serverPacket) { + for (var16 = 0; var16 < Varps.Varps_main.length; ++var16) { + if (Varps.Varps_main[var16] != Varps.Varps_temp[var16]) { + Varps.Varps_main[var16] = Varps.Varps_temp[var16]; + Script.changeGameOptions(var16); + field834[++field835 - 1 & 31] = var16; + } + } + + var1.serverPacket = null; + return true; } - if (ServerPacket.field2226 == var1.serverPacket) { // L: 6800 - var16 = var3.method5675(); // L: 6801 - WorldMapData_1.method817(var16); // L: 6802 - changedItemContainers[++field941 - 1 & 31] = var16 & 32767; // L: 6803 - var1.serverPacket = null; // L: 6804 - return true; // L: 6805 + if (ServerPacket.field2210 == var1.serverPacket) { + WorldMapData_0.method244(var3.readStringCp1252NullTerminated()); + var1.serverPacket = null; + return true; } - if (ServerPacket.field2192 == var1.serverPacket) { // L: 6807 - var16 = var3.readUnsignedByte(); // L: 6808 - Decimator.method2668(var16); // L: 6809 - var1.serverPacket = null; // L: 6810 - return true; // L: 6811 + if (ServerPacket.field2171 == var1.serverPacket) { + UserComparator4.method3465(class194.field2343); + var1.serverPacket = null; + return true; } - if (ServerPacket.field2155 == var1.serverPacket) { // L: 6813 - GameShell.field466 = var3.method5650(); // L: 6814 - GrandExchangeEvents.field64 = var3.readUnsignedByte(); // L: 6815 + long var22; + long var24; + if (ServerPacket.field2194 == var1.serverPacket) { + var38 = var3.readStringCp1252NullTerminated(); + var22 = (long)var3.readUnsignedShort(); + var24 = (long)var3.readMedium(); + PlayerType var26 = (PlayerType)UrlRequester.findEnumerated(class234.PlayerType_values(), var3.readUnsignedByte()); + long var27 = var24 + (var22 << 32); + boolean var29 = false; - for (var16 = GameShell.field466; var16 < GameShell.field466 + 8; ++var16) { // L: 6816 - for (var5 = GrandExchangeEvents.field64; var5 < GrandExchangeEvents.field64 + 8; ++var5) { // L: 6817 - if (groundItems[GrandExchangeOfferUnitPriceComparator.Client_plane][var16][var5] != null) { // L: 6818 - groundItems[GrandExchangeOfferUnitPriceComparator.Client_plane][var16][var5] = null; // L: 6819 - class41.updateItemPile(var16, var5); // L: 6820 + for (int var13 = 0; var13 < 100; ++var13) { + if (var27 == field868[var13]) { + var29 = true; + break; + } + } + + if (MilliClock.friendSystem.isIgnored(new Username(var38, GrandExchangeOfferUnitPriceComparator.loginType))) { + var29 = true; + } + + if (!var29 && field762 == 0) { + field868[field707] = var27; + field707 = (field707 + 1) % 100; + String var30 = AbstractFont.escapeBrackets(ServerPacket.method3663(AttackOption.method2135(var3))); + byte var49; + if (var26.isPrivileged) { + var49 = 7; + } else { + var49 = 3; + } + + if (var26.modIcon != -1) { + class234.addGameMessage(var49, class25.method248(var26.modIcon) + var38, var30); + } else { + class234.addGameMessage(var49, var38, var30); + } + } + + var1.serverPacket = null; + return true; + } + + long var31; + if (ServerPacket.field2192 == var1.serverPacket) { + var38 = var3.readStringCp1252NullTerminated(); + var22 = var3.readLong(); + var24 = (long)var3.readUnsignedShort(); + var31 = (long)var3.readMedium(); + PlayerType var60 = (PlayerType)UrlRequester.findEnumerated(class234.PlayerType_values(), var3.readUnsignedByte()); + var12 = (var24 << 32) + var31; + boolean var14 = false; + + for (int var15 = 0; var15 < 100; ++var15) { + if (field868[var15] == var12) { + var14 = true; + break; + } + } + + if (var60.isUser && MilliClock.friendSystem.isIgnored(new Username(var38, GrandExchangeOfferUnitPriceComparator.loginType))) { + var14 = true; + } + + if (!var14 && field762 == 0) { + field868[field707] = var12; + field707 = (field707 + 1) % 100; + String var34 = AbstractFont.escapeBrackets(ServerPacket.method3663(AttackOption.method2135(var3))); + if (var60.modIcon != -1) { + UserComparator10.addChatMessage(9, class25.method248(var60.modIcon) + var38, var34, ParamDefinition.base37DecodeLong(var22)); + } else { + UserComparator10.addChatMessage(9, var38, var34, ParamDefinition.base37DecodeLong(var22)); + } + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2173 == var1.serverPacket) { + WorldMapRectangle.logOut(); + var1.serverPacket = null; + return false; + } + + if (ServerPacket.field2168 == var1.serverPacket) { + UserComparator10.updatePlayers(var3, var1.serverPacketLength); + TextureProvider.method2848(); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2206 == var1.serverPacket) { + MilliClock.friendSystem.readUpdate(var3, var1.serverPacketLength); + field879 = cycleCntr; + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2151 == var1.serverPacket) { + var16 = var3.method5582(); + var5 = var3.method5591(); + var40 = CollisionMap.getWidget(var5); + if (var40.modelType != 2 || var16 != var40.modelId) { + var40.modelType = 2; + var40.modelId = var16; + CollisionMap.invalidateWidget(var40); + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2190 == var1.serverPacket) { + var16 = var3.method5643(); + var5 = var3.method5580(); + var18 = var5 >> 10 & 31; + var7 = var5 >> 5 & 31; + var19 = var5 & 31; + var9 = (var7 << 11) + (var18 << 19) + (var19 << 3); + Widget var10 = CollisionMap.getWidget(var16); + if (var9 != var10.color) { + var10.color = var9; + CollisionMap.invalidateWidget(var10); + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2140 == var1.serverPacket) { + var16 = var3.readInt(); + var5 = var3.readUnsignedShort(); + if (var16 < -70000) { + var5 += 32768; + } + + if (var16 >= 0) { + var40 = CollisionMap.getWidget(var16); + } else { + var40 = null; + } + + for (; var3.offset < var1.serverPacketLength; GrandExchangeOfferNameComparator.itemContainerSetItem(var5, var7, var19 - 1, var9)) { + var7 = var3.readUShortSmart(); + var19 = var3.readUnsignedShort(); + var9 = 0; + if (var19 != 0) { + var9 = var3.readUnsignedByte(); + if (var9 == 255) { + var9 = var3.readInt(); } } - } - for (PendingSpawn var37 = (PendingSpawn)pendingSpawns.last(); var37 != null; var37 = (PendingSpawn)pendingSpawns.previous()) { // L: 6824 6825 6827 - if (var37.x >= GameShell.field466 && var37.x < GameShell.field466 + 8 && var37.y >= GrandExchangeEvents.field64 && var37.y < GrandExchangeEvents.field64 + 8 && var37.plane == GrandExchangeOfferUnitPriceComparator.Client_plane) { // L: 6826 - var37.hitpoints = 0; + if (var40 != null && var7 >= 0 && var7 < var40.itemIds.length) { + var40.itemIds[var7] = var19; + var40.itemQuantities[var7] = var9; } } - var1.serverPacket = null; // L: 6829 - return true; // L: 6830 + if (var40 != null) { + CollisionMap.invalidateWidget(var40); + } + + class195.method3681(); + changedItemContainers[++field837 - 1 & 31] = var5 & 32767; + var1.serverPacket = null; + return true; } - if (ServerPacket.field2146 == var1.serverPacket) { // L: 6832 - var16 = var3.readUnsignedShort(); // L: 6833 - var5 = var3.method5686(); // L: 6834 - var27 = UserComparator4.getWidget(var5); // L: 6835 - if (var27 != null && var27.type == 0) { // L: 6836 - if (var16 > var27.scrollHeight - var27.height) { // L: 6837 - var16 = var27.scrollHeight - var27.height; - } + if (ServerPacket.field2198 == var1.serverPacket) { + byte var59 = var3.method5665(); + var5 = var3.method5580(); + Varps.Varps_temp[var5] = var59; + if (Varps.Varps_main[var5] != var59) { + Varps.Varps_main[var5] = var59; + } - if (var16 < 0) { // L: 6838 - var16 = 0; - } + Script.changeGameOptions(var5); + field834[++field835 - 1 & 31] = var5; + var1.serverPacket = null; + return true; + } - if (var16 != var27.scrollY) { // L: 6839 - var27.scrollY = var16; // L: 6840 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var27); // L: 6841 + if (ServerPacket.field2177 == var1.serverPacket) { + var16 = var3.readInt(); + var51 = CollisionMap.getWidget(var16); + + for (var18 = 0; var18 < var51.itemIds.length; ++var18) { + var51.itemIds[var18] = -1; + var51.itemIds[var18] = 0; + } + + CollisionMap.invalidateWidget(var51); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2196 == var1.serverPacket) { + var16 = var3.method5643(); + var46 = var3.method5571() == 1; + var40 = CollisionMap.getWidget(var16); + if (var46 != var40.isHidden) { + var40.isHidden = var46; + CollisionMap.invalidateWidget(var40); + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2212 == var1.serverPacket) { + UserComparator4.method3465(class194.field2350); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2159 == var1.serverPacket) { + var16 = var3.readInt(); + var17 = var3.readStringCp1252NullTerminated(); + var40 = CollisionMap.getWidget(var16); + if (!var17.equals(var40.text)) { + var40.text = var17; + CollisionMap.invalidateWidget(var40); + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2223 == var1.serverPacket) { + var16 = var3.readInt(); + var5 = var3.method5580(); + var40 = CollisionMap.getWidget(var16); + if (var40.modelType != 1 || var5 != var40.modelId) { + var40.modelType = 1; + var40.modelId = var5; + CollisionMap.invalidateWidget(var40); + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2201 == var1.serverPacket) { + MilliClock.friendSystem.method1919(); + field879 = cycleCntr; + var1.serverPacket = null; + return true; + } + + Widget var8; + if (ServerPacket.field2211 == var1.serverPacket) { + var16 = var3.method5582(); + var5 = var3.method5539(); + var18 = var3.method5539(); + var7 = var3.method5643(); + var8 = CollisionMap.getWidget(var7); + if (var5 != var8.modelAngleX || var16 != var8.modelAngleY || var18 != var8.modelZoom) { + var8.modelAngleX = var5; + var8.modelAngleY = var16; + var8.modelZoom = var18; + CollisionMap.invalidateWidget(var8); + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2181 == var1.serverPacket) { + UserComparator4.method3465(class194.field2342); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2222 == var1.serverPacket) { + var16 = var3.method5584(); + var5 = var3.readShort(); + var18 = var3.readInt(); + var58 = CollisionMap.getWidget(var18); + if (var16 != var58.rawX || var5 != var58.rawY || var58.xAlignment != 0 || var58.yAlignment != 0) { + var58.rawX = var16; + var58.rawY = var5; + var58.xAlignment = 0; + var58.yAlignment = 0; + CollisionMap.invalidateWidget(var58); + this.alignWidget(var58); + if (var58.type == 0) { + PendingSpawn.revalidateWidgetScroll(class9.Widget_interfaceComponents[var18 >> 16], var58, false); } } - var1.serverPacket = null; // L: 6844 - return true; // L: 6845 + var1.serverPacket = null; + return true; } - if (ServerPacket.field2147 == var1.serverPacket) { // L: 6847 - var16 = var3.readUnsignedShort(); // L: 6848 - var5 = var3.readInt(); // L: 6849 - var27 = UserComparator4.getWidget(var5); // L: 6850 - if (var27.modelType != 2 || var16 != var27.modelId) { // L: 6851 - var27.modelType = 2; // L: 6852 - var27.modelId = var16; // L: 6853 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var27); // L: 6854 + if (ServerPacket.field2161 == var1.serverPacket) { + var16 = var3.readInt(); + var5 = var3.readInt(); + var18 = GrandExchangeOfferNameComparator.getGcDuration(); + PacketBufferNode var57 = ItemContainer.getPacketBufferNode(ClientPacket.field2255, packetWriter.isaacCipher); + var57.packetBuffer.method5569(var18); + var57.packetBuffer.method5718(var16); + var57.packetBuffer.method5587(var5); + var57.packetBuffer.method5568(GameShell.fps); + packetWriter.addNode(var57); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2166 == var1.serverPacket) { + var16 = var3.readUnsignedByte(); + WorldMapSection1.forceDisconnect(var16); + var1.serverPacket = null; + return false; + } + + if (ServerPacket.field2163 == var1.serverPacket) { + isCameraLocked = true; + WorldMapData_0.field112 = var3.readUnsignedByte() * 128; + EnumDefinition.field3340 = var3.readUnsignedByte() * 128; + class25.field128 = var3.readUnsignedShort(); + Players.field1267 = var3.readUnsignedByte(); + ModeWhere.field2405 = var3.readUnsignedByte(); + if (ModeWhere.field2405 >= 100) { + var16 = WorldMapData_0.field112 * 16384 + 64; + var5 = EnumDefinition.field3340 * 16384 + 64; + var18 = SecureRandomFuture.getTileHeight(var16, var5, GameObject.Client_plane) - class25.field128; + var7 = var16 - Player.cameraX; + var19 = var18 - KeyHandler.cameraY; + var9 = var5 - class69.cameraZ; + var21 = (int)Math.sqrt((double)(var7 * var7 + var9 * var9)); + Skeleton.cameraPitch = (int)(Math.atan2((double)var19, (double)var21) * 325.949D) & 2047; + AbstractArchive.cameraYaw = (int)(Math.atan2((double)var7, (double)var9) * -325.949D) & 2047; + if (Skeleton.cameraPitch < 128) { + Skeleton.cameraPitch = 128; + } + + if (Skeleton.cameraPitch > 383) { + Skeleton.cameraPitch = 383; + } } - var1.serverPacket = null; // L: 6856 - return true; // L: 6857 + var1.serverPacket = null; + return true; } - PacketWriter.RunException_sendStackTrace("" + (var1.serverPacket != null ? var1.serverPacket.id * 1044340673 * 1695854657 : -1) + "," + (var1.field1339 != null ? var1.field1339.id * 1044340673 * 1695854657 : -1) + "," + (var1.field1350 != null ? var1.field1350.id * 1044340673 * 1695854657 : -1) + "," + var1.serverPacketLength, (Throwable)null); // L: 6859 - class89.logOut(); // L: 6860 - } catch (IOException var35) { // L: 6862 - FloorDecoration.method2986(); // L: 6863 + if (ServerPacket.field2147 == var1.serverPacket) { + var16 = var3.readInt(); + var5 = var3.method5580(); + if (var5 == 65535) { + var5 = -1; + } + + var18 = var3.readInt(); + var7 = var3.method5539(); + if (var7 == 65535) { + var7 = -1; + } + + for (var19 = var7; var19 <= var5; ++var19) { + var31 = (long)var19 + ((long)var16 << 32); + Node var33 = widgetFlags.get(var31); + if (var33 != null) { + var33.remove(); + } + + widgetFlags.put(new IntegerNode(var18), var31); + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2179 == var1.serverPacket) { + var3.offset += 28; + if (var3.checkCrc()) { + WorldMapEvent.method808(var3, var3.offset - 28); + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2144 == var1.serverPacket) { + class195.method3681(); + var16 = var3.method5592(); + var5 = var3.method5571(); + var18 = var3.method5571(); + experience[var18] = var16; + currentLevels[var18] = var5; + levels[var18] = 1; + + for (var7 = 0; var7 < 98; ++var7) { + if (var16 >= Skills.Skills_experienceTable[var7]) { + levels[var18] = var7 + 2; + } + } + + changedSkills[++changedSkillsCount - 1 & 31] = var18; + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2183 == var1.serverPacket) { + var38 = var3.readStringCp1252NullTerminated(); + var5 = var3.method5571(); + var18 = var3.method5572(); + if (var18 >= 1 && var18 <= 8) { + if (var38.equalsIgnoreCase("null")) { + var38 = null; + } + + playerMenuActions[var18 - 1] = var38; + playerOptionsPriorities[var18 - 1] = var5 == 0; + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2142 == var1.serverPacket) { + var16 = var3.readInt(); + var5 = var3.readUnsignedShort(); + if (var16 < -70000) { + var5 += 32768; + } + + if (var16 >= 0) { + var40 = CollisionMap.getWidget(var16); + } else { + var40 = null; + } + + if (var40 != null) { + for (var7 = 0; var7 < var40.itemIds.length; ++var7) { + var40.itemIds[var7] = 0; + var40.itemQuantities[var7] = 0; + } + } + + Language.clearItemContainer(var5); + var7 = var3.readUnsignedShort(); + + for (var19 = 0; var19 < var7; ++var19) { + var9 = var3.method5539(); + var21 = var3.method5572(); + if (var21 == 255) { + var21 = var3.method5591(); + } + + if (var40 != null && var19 < var40.itemIds.length) { + var40.itemIds[var19] = var9; + var40.itemQuantities[var19] = var21; + } + + GrandExchangeOfferNameComparator.itemContainerSetItem(var5, var19, var9 - 1, var21); + } + + if (var40 != null) { + CollisionMap.invalidateWidget(var40); + } + + class195.method3681(); + changedItemContainers[++field837 - 1 & 31] = var5 & 32767; + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2200 == var1.serverPacket) { + class195.method3681(); + weight = var3.readShort(); + field845 = cycleCntr; + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2209 == var1.serverPacket) { + if (var1.serverPacketLength == 0) { + WorldMapArea.clanChat = null; + } else { + if (WorldMapArea.clanChat == null) { + WorldMapArea.clanChat = new ClanChat(GrandExchangeOfferUnitPriceComparator.loginType, WorldMapIcon_0.client); + } + + WorldMapArea.clanChat.readUpdate(var3); + } + + WorldMapLabel.method469(); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2213 == var1.serverPacket) { + UserComparator4.method3465(class194.field2347); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2141 == var1.serverPacket) { + World var37 = new World(); + var37.host = var3.readStringCp1252NullTerminated(); + var37.id = var3.readUnsignedShort(); + var5 = var3.readInt(); + var37.properties = var5; + WorldMapCacheName.updateGameState(45); + var2.close(); + var2 = null; + SecureRandomCallable.changeWorld(var37); + var1.serverPacket = null; + return false; + } + + if (ServerPacket.field2182 == var1.serverPacket) { + UserComparator4.method3465(class194.field2349); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2202 == var1.serverPacket) { + ItemContainer.loadRegions(true, var1.packetBuffer); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2158 == var1.serverPacket) { + var16 = var3.method5582(); + Actor.method1819(var16); + changedItemContainers[++field837 - 1 & 31] = var16 & 32767; + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2220 == var1.serverPacket) { + privateChatMode = class52.method840(var3.readUnsignedByte()); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2208 == var1.serverPacket) { + PacketWriter.field1331 = var3.method5571(); + class248.field3222 = var3.method5573(); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2195 == var1.serverPacket) { + var50 = var3.readUnsignedByte() == 1; + if (var50) { + class4.field17 = class298.currentTimeMillis() - var3.readLong(); + AbstractUserComparator.grandExchangeEvents = new GrandExchangeEvents(var3, true); + } else { + AbstractUserComparator.grandExchangeEvents = null; + } + + field680 = cycleCntr; + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2155 == var1.serverPacket) { + var16 = var3.method5592(); + var5 = var3.method5643(); + InterfaceParent var6 = (InterfaceParent)interfaceParents.get((long)var16); + var20 = (InterfaceParent)interfaceParents.get((long)var5); + if (var20 != null) { + MouseRecorder.closeInterface(var20, var6 == null || var20.group != var6.group); + } + + if (var6 != null) { + var6.remove(); + interfaceParents.put(var6, (long)var5); + } + + var8 = CollisionMap.getWidget(var16); + if (var8 != null) { + CollisionMap.invalidateWidget(var8); + } + + var8 = CollisionMap.getWidget(var5); + if (var8 != null) { + CollisionMap.invalidateWidget(var8); + PendingSpawn.revalidateWidgetScroll(class9.Widget_interfaceComponents[var8.id >>> 16], var8, true); + } + + if (rootInterface != -1) { + WorldMapRectangle.runIntfCloseListeners(rootInterface, 1); + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2146 == var1.serverPacket) { + var16 = var3.readInt(); + if (var16 != field730) { + field730 = var16; + WorldMapCacheName.method664(); + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2156 == var1.serverPacket) { + UserComparator4.method3465(class194.field2346); + var1.serverPacket = null; + return true; + } + + PlayerAppearance.RunException_sendStackTrace("" + (var1.serverPacket != null ? var1.serverPacket.id : -1) + "," + (var1.field1336 != null ? var1.field1336.id : -1) + "," + (var1.field1337 != null ? var1.field1337.id : -1) + "," + var1.serverPacketLength, (Throwable)null); + WorldMapRectangle.logOut(); + } catch (IOException var35) { + LoginScreenAnimation.method1903(); } catch (Exception var36) { - var17 = "" + (var1.serverPacket != null ? var1.serverPacket.id * 1044340673 * 1695854657 : -1) + "," + (var1.field1339 != null ? var1.field1339.id * 1044340673 * 1695854657 : -1) + "," + (var1.field1350 != null ? var1.field1350.id * 1044340673 * 1695854657 : -1) + "," + var1.serverPacketLength + "," + (PlayerType.localPlayer.pathX[0] + FloorDecoration.baseX) + "," + (PlayerType.localPlayer.pathY[0] + WorldMapData_0.baseY) + ","; // L: 6866 + var17 = "" + (var1.serverPacket != null ? var1.serverPacket.id : -1) + "," + (var1.field1336 != null ? var1.field1336.id : -1) + "," + (var1.field1337 != null ? var1.field1337.id : -1) + "," + var1.serverPacketLength + "," + (PlayerAppearance.localPlayer.pathX[0] + NetFileRequest.baseX * 64) + "," + (PlayerAppearance.localPlayer.pathY[0] + class41.baseY * 64) + ","; - for (var6 = 0; var6 < var1.serverPacketLength && var6 < 50; ++var6) { // L: 6867 - var17 = var17 + var3.array[var6] + ","; + for (var18 = 0; var18 < var1.serverPacketLength && var18 < 50; ++var18) { + var17 = var17 + var3.array[var18] + ","; } - PacketWriter.RunException_sendStackTrace(var17, var36); // L: 6868 - class89.logOut(); // L: 6869 + PlayerAppearance.RunException_sendStackTrace(var17, var36); + WorldMapRectangle.logOut(); } - return true; // L: 6871 + return true; } } - @ObfuscatedName("ho") + @ObfuscatedName("in") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1619365796" + descriptor = "(B)V", + garbageValue = "33" ) @Export("menu") final void menu() { - boolean var1 = false; // L: 7744 - - int var2; - int var5; - while (!var1) { // L: 7745 - var1 = true; // L: 7746 - - for (var2 = 0; var2 < menuOptionsCount - 1; ++var2) { // L: 7747 - if (menuOpcodes[var2] < 1000 && menuOpcodes[var2 + 1] > 1000) { // L: 7748 - String var15 = menuTargets[var2]; // L: 7749 - menuTargets[var2] = menuTargets[var2 + 1]; // L: 7750 - menuTargets[var2 + 1] = var15; // L: 7751 - String var16 = menuActions[var2]; // L: 7752 - menuActions[var2] = menuActions[var2 + 1]; // L: 7753 - menuActions[var2 + 1] = var16; // L: 7754 - var5 = menuOpcodes[var2]; // L: 7755 - menuOpcodes[var2] = menuOpcodes[var2 + 1]; // L: 7756 - menuOpcodes[var2 + 1] = var5; // L: 7757 - var5 = menuArguments1[var2]; // L: 7758 - menuArguments1[var2] = menuArguments1[var2 + 1]; // L: 7759 - menuArguments1[var2 + 1] = var5; // L: 7760 - var5 = menuArguments2[var2]; // L: 7761 - menuArguments2[var2] = menuArguments2[var2 + 1]; // L: 7762 - menuArguments2[var2 + 1] = var5; // L: 7763 - var5 = menuIdentifiers[var2]; // L: 7764 - menuIdentifiers[var2] = menuIdentifiers[var2 + 1]; // L: 7765 - menuIdentifiers[var2 + 1] = var5; // L: 7766 - boolean var13 = menuShiftClick[var2]; // L: 7767 - menuShiftClick[var2] = menuShiftClick[var2 + 1]; // L: 7768 - menuShiftClick[var2 + 1] = var13; // L: 7769 - var1 = false; // L: 7770 - } - } - } - - if (GameBuild.dragInventoryWidget == null) { // L: 7775 - if (clickedWidget == null) { // L: 7776 + VertexNormal.method3068(); + if (class171.dragInventoryWidget == null) { + if (clickedWidget == null) { + int var1 = MouseHandler.MouseHandler_lastButton; + int var2; + int var3; int var4; - int var10; - int var19; - label296: { - int var17 = MouseHandler.MouseHandler_lastButton; // L: 7777 - int var3; - int var8; - if (isMenuOpen) { // L: 7778 - int var18; - int var20; - if (var17 != 1 && (MusicPatchNode.mouseCam || var17 != 4)) { // L: 7779 - var2 = MouseHandler.MouseHandler_x; // L: 7780 - var3 = MouseHandler.MouseHandler_y; // L: 7781 - if (var2 < Coord.menuX - 10 || var2 > KeyHandler.menuWidth + Coord.menuX + 10 || var3 < WorldMapArea.menuY - 10 || var3 > ServerPacket.menuHeight + WorldMapArea.menuY + 10) { // L: 7782 - isMenuOpen = false; // L: 7783 - var4 = Coord.menuX; // L: 7784 - var5 = WorldMapArea.menuY; // L: 7785 - var20 = KeyHandler.menuWidth; // L: 7786 - var18 = ServerPacket.menuHeight; // L: 7787 - - for (var8 = 0; var8 < rootWidgetCount; ++var8) { // L: 7789 - if (rootWidgetWidths[var8] + rootWidgetXs[var8] > var4 && rootWidgetXs[var8] < var20 + var4 && rootWidgetHeights[var8] + rootWidgetYs[var8] > var5 && rootWidgetYs[var8] < var5 + var18) { // L: 7790 - field834[var8] = true; - } - } - } - } - - if (var17 == 1 || !MusicPatchNode.mouseCam && var17 == 4) { // L: 7795 - var2 = Coord.menuX; // L: 7796 - var3 = WorldMapArea.menuY; // L: 7797 - var4 = KeyHandler.menuWidth; // L: 7798 - var5 = MouseHandler.MouseHandler_lastPressedX; // L: 7799 - var20 = MouseHandler.MouseHandler_lastPressedY; // L: 7800 - var18 = -1; // L: 7801 - - for (var8 = 0; var8 < menuOptionsCount; ++var8) { // L: 7802 - var19 = var3 + (menuOptionsCount - 1 - var8) * 15 + 31; // L: 7803 - if (var5 > var2 && var5 < var4 + var2 && var20 > var19 - 13 && var20 < var19 + 3) { // L: 7804 - var18 = var8; - } - } - - if (var18 != -1) { // L: 7806 - EnumDefinition.method4721(var18); - } - - isMenuOpen = false; // L: 7807 - var8 = Coord.menuX; // L: 7808 - var19 = WorldMapArea.menuY; // L: 7809 - var10 = KeyHandler.menuWidth; // L: 7810 - int var14 = ServerPacket.menuHeight; // L: 7811 - - for (int var12 = 0; var12 < rootWidgetCount; ++var12) { // L: 7813 - if (rootWidgetWidths[var12] + rootWidgetXs[var12] > var8 && rootWidgetXs[var12] < var10 + var8 && rootWidgetHeights[var12] + rootWidgetYs[var12] > var19 && rootWidgetYs[var12] < var14 + var19) { // L: 7814 - field834[var12] = true; - } - } - } - } else { - var2 = FileSystem.method3638(); // L: 7820 - if ((var17 == 1 || !MusicPatchNode.mouseCam && var17 == 4) && var2 >= 0) { // L: 7821 - var3 = menuOpcodes[var2]; // L: 7822 - if (var3 == 39 || var3 == 40 || var3 == 41 || var3 == 42 || var3 == 43 || var3 == 33 || var3 == 34 || var3 == 35 || var3 == 36 || var3 == 37 || var3 == 38 || var3 == 1005) { // L: 7823 - var4 = menuArguments1[var2]; // L: 7824 - var5 = menuArguments2[var2]; // L: 7825 - Widget var6 = UserComparator4.getWidget(var5); // L: 7826 - var8 = WorldMapData_0.getWidgetFlags(var6); // L: 7828 - boolean var7 = (var8 >> 28 & 1) != 0; // L: 7830 - if (var7) { // L: 7833 - break label296; - } - - var10 = WorldMapData_0.getWidgetFlags(var6); // L: 7835 - boolean var9 = (var10 >> 29 & 1) != 0; // L: 7837 - if (var9) { // L: 7839 - break label296; - } - } - } - - if ((var17 == 1 || !MusicPatchNode.mouseCam && var17 == 4) && this.shouldLeftClickOpenMenu()) { // L: 7867 7868 - var17 = 2; // L: 7869 - } - - if ((var17 == 1 || !MusicPatchNode.mouseCam && var17 == 4) && menuOptionsCount > 0) { // L: 7872 - EnumDefinition.method4721(var2); // L: 7873 - } - - if (var17 == 2 && menuOptionsCount > 0) { // L: 7875 - this.openMenu(MouseHandler.MouseHandler_lastPressedX, MouseHandler.MouseHandler_lastPressedY); + int var5; + int var7; + int var8; + if (isMenuOpen) { + if (var1 != 1 && (UserComparator9.mouseCam || var1 != 4)) { + var2 = MouseHandler.MouseHandler_x; + var3 = MouseHandler.MouseHandler_y; + if (var2 < AbstractUserComparator.menuX - 10 || var2 > AbstractUserComparator.menuX + Occluder.menuWidth + 10 || var3 < DynamicObject.menuY - 10 || var3 > class182.menuHeight + DynamicObject.menuY + 10) { + isMenuOpen = false; + Frames.method3352(AbstractUserComparator.menuX, DynamicObject.menuY, Occluder.menuWidth, class182.menuHeight); } } - return; // L: 7877 + if (var1 == 1 || !UserComparator9.mouseCam && var1 == 4) { + var2 = AbstractUserComparator.menuX; + var3 = DynamicObject.menuY; + var4 = Occluder.menuWidth; + var5 = MouseHandler.MouseHandler_lastPressedX; + int var10 = MouseHandler.MouseHandler_lastPressedY; + var7 = -1; + + for (var8 = 0; var8 < menuOptionsCount; ++var8) { + int var9 = (menuOptionsCount - 1 - var8) * 15 + var3 + 31; + if (var5 > var2 && var5 < var4 + var2 && var10 > var9 - 13 && var10 < var9 + 3) { + var7 = var8; + } + } + + if (var7 != -1) { + FontName.method5356(var7); + } + + isMenuOpen = false; + Frames.method3352(AbstractUserComparator.menuX, DynamicObject.menuY, Occluder.menuWidth, class182.menuHeight); + } + } else { + var2 = WorldMapSprite.method463(); + if ((var1 == 1 || !UserComparator9.mouseCam && var1 == 4) && var2 >= 0) { + var3 = menuOpcodes[var2]; + if (var3 == 39 || var3 == 40 || var3 == 41 || var3 == 42 || var3 == 43 || var3 == 33 || var3 == 34 || var3 == 35 || var3 == 36 || var3 == 37 || var3 == 38 || var3 == 1005) { + var4 = menuArguments1[var2]; + var5 = menuArguments2[var2]; + Widget var6 = CollisionMap.getWidget(var5); + if (WorldMapSection2.method378(FaceNormal.getWidgetFlags(var6)) || BoundaryObject.method3341(FaceNormal.getWidgetFlags(var6))) { + if (class171.dragInventoryWidget != null && !field848 && menuOptionsCount > 0 && !this.shouldLeftClickOpenMenu()) { + var7 = draggedWidgetX; + var8 = draggedWidgetY; + WorldMapDecoration.method379(WorldMapSection1.tempMenuAction, var7, var8); + WorldMapSection1.tempMenuAction = null; + } + + field848 = false; + itemDragDuration = 0; + if (class171.dragInventoryWidget != null) { + CollisionMap.invalidateWidget(class171.dragInventoryWidget); + } + + class171.dragInventoryWidget = CollisionMap.getWidget(var5); + dragItemSlotSource = var4; + draggedWidgetX = MouseHandler.MouseHandler_lastPressedX; + draggedWidgetY = MouseHandler.MouseHandler_lastPressedY; + if (var2 >= 0) { + WorldMapSection1.tempMenuAction = new MenuAction(); + WorldMapSection1.tempMenuAction.param0 = menuArguments1[var2]; + WorldMapSection1.tempMenuAction.param1 = menuArguments2[var2]; + WorldMapSection1.tempMenuAction.opcode = menuOpcodes[var2]; + WorldMapSection1.tempMenuAction.identifier = menuIdentifiers[var2]; + WorldMapSection1.tempMenuAction.action = menuActions[var2]; + } + + CollisionMap.invalidateWidget(class171.dragInventoryWidget); + return; + } + } + } + + if ((var1 == 1 || !UserComparator9.mouseCam && var1 == 4) && this.shouldLeftClickOpenMenu()) { + var1 = 2; + } + + if ((var1 == 1 || !UserComparator9.mouseCam && var1 == 4) && menuOptionsCount > 0) { + FontName.method5356(var2); + } + + if (var1 == 2 && menuOptionsCount > 0) { + this.openMenu(MouseHandler.MouseHandler_lastPressedX, MouseHandler.MouseHandler_lastPressedY); + } } - if (GameBuild.dragInventoryWidget != null && !field830 && menuOptionsCount > 0 && !this.shouldLeftClickOpenMenu()) { // L: 7841 7842 - var19 = draggedWidgetX; // L: 7843 - var10 = draggedWidgetY; // L: 7844 - MenuAction var11 = GrandExchangeOffer.tempMenuAction; // L: 7846 - Calendar.menuAction(var11.param0, var11.param1, var11.opcode, var11.identifier, var11.action, var11.action, var19, var10); // L: 7848 - GrandExchangeOffer.tempMenuAction = null; // L: 7850 - } - - field830 = false; // L: 7854 - itemDragDuration = 0; // L: 7855 - if (GameBuild.dragInventoryWidget != null) { // L: 7856 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(GameBuild.dragInventoryWidget); - } - - GameBuild.dragInventoryWidget = UserComparator4.getWidget(var5); // L: 7857 - dragItemSlotSource = var4; // L: 7858 - draggedWidgetX = MouseHandler.MouseHandler_lastPressedX; // L: 7859 - draggedWidgetY = MouseHandler.MouseHandler_lastPressedY; // L: 7860 - if (var2 >= 0) { // L: 7861 - AbstractByteArrayCopier.method4087(var2); - } - - GrandExchangeOfferOwnWorldComparator.invalidateWidget(GameBuild.dragInventoryWidget); // L: 7862 } } - } // L: 7863 + } - @ObfuscatedName("hs") + @ObfuscatedName("io") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "279427498" + garbageValue = "-745678378" ) @Export("shouldLeftClickOpenMenu") final boolean shouldLeftClickOpenMenu() { - int var1 = FileSystem.method3638(); // L: 7880 - return (leftClickOpensMenu == 1 && menuOptionsCount > 2 || WorldMapSectionType.method336(var1)) && !menuShiftClick[var1]; // L: 7881 + int var1 = WorldMapSprite.method463(); + return (leftClickOpensMenu == 1 && menuOptionsCount > 2 || Players.method2225(var1)) && !menuShiftClick[var1]; } - @ObfuscatedName("hw") + @ObfuscatedName("ic") @ObfuscatedSignature( - descriptor = "(IIB)V", - garbageValue = "-4" + descriptor = "(III)V", + garbageValue = "2086272336" ) @Export("openMenu") final void openMenu(int var1, int var2) { - KitDefinition.method4634(var1, var2); // L: 7885 - ModeWhere.scene.menuOpen(GrandExchangeOfferUnitPriceComparator.Client_plane, var1, var2, false); // L: 7886 - isMenuOpen = true; // L: 7887 - } // L: 7888 + BuddyRankComparator.method3522(var1, var2); + ArchiveLoader.scene.menuOpen(GameObject.Client_plane, var1, var2, false); + isMenuOpen = true; + } - @ObfuscatedName("il") + @ObfuscatedName("jd") @ObfuscatedSignature( descriptor = "(ZB)V", - garbageValue = "4" + garbageValue = "-6" ) @Export("resizeRoot") final void resizeRoot(boolean var1) { - Fonts.method5463(rootInterface, ItemContainer.canvasWidth, HealthBar.canvasHeight, var1); // L: 9855 - } // L: 9856 + WorldMapManager.method686(rootInterface, IgnoreList.canvasWidth, ModelData0.canvasHeight, var1); + } - @ObfuscatedName("id") + @ObfuscatedName("jv") @ObfuscatedSignature( - descriptor = "(Lht;B)V", - garbageValue = "121" + descriptor = "(Lhe;I)V", + garbageValue = "1858163346" ) @Export("alignWidget") void alignWidget(Widget var1) { - Widget var2 = var1.parentId == -1 ? null : UserComparator4.getWidget(var1.parentId); // L: 9859 + Widget var2 = var1.parentId == -1 ? null : CollisionMap.getWidget(var1.parentId); int var3; int var4; - if (var2 == null) { // L: 9862 - var3 = ItemContainer.canvasWidth; // L: 9863 - var4 = HealthBar.canvasHeight; // L: 9864 + if (var2 == null) { + var3 = IgnoreList.canvasWidth; + var4 = ModelData0.canvasHeight; } else { - var3 = var2.width; // L: 9867 - var4 = var2.height; // L: 9868 + var3 = var2.width; + var4 = var2.height; } - WorldMapIcon_0.alignWidgetSize(var1, var3, var4, false); // L: 9870 - FileSystem.alignWidgetPosition(var1, var3, var4); // L: 9871 - } // L: 9872 + TileItem.alignWidgetSize(var1, var3, var4, false); + class7.alignWidgetPosition(var1, var3, var4); + } - @ObfuscatedName("jn") + @ObfuscatedName("ka") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1835347071" + garbageValue = "829781970" ) - final void method1405() { - GrandExchangeOfferOwnWorldComparator.invalidateWidget(clickedWidget); // L: 10918 - ++GrandExchangeEvent.widgetDragDuration; // L: 10919 - if (field705 && field859) { // L: 10920 - int var1 = MouseHandler.MouseHandler_x; // L: 10926 - int var2 = MouseHandler.MouseHandler_y; // L: 10927 - var1 -= widgetClickX; // L: 10928 - var2 -= widgetClickY; // L: 10929 - if (var1 < field860) { // L: 10930 - var1 = field860; + final void method1381() { + CollisionMap.invalidateWidget(clickedWidget); + ++ScriptFrame.widgetDragDuration; + if (field829 && field859) { + int var1 = MouseHandler.MouseHandler_x; + int var2 = MouseHandler.MouseHandler_y; + var1 -= widgetClickX; + var2 -= widgetClickY; + if (var1 < field827) { + var1 = field827; } - if (var1 + clickedWidget.width > field860 + clickedWidgetParent.width) { // L: 10931 - var1 = field860 + clickedWidgetParent.width - clickedWidget.width; + if (var1 + clickedWidget.width > field827 + clickedWidgetParent.width) { + var1 = field827 + clickedWidgetParent.width - clickedWidget.width; } - if (var2 < field861) { // L: 10932 - var2 = field861; + if (var2 < field716) { + var2 = field716; } - if (var2 + clickedWidget.height > field861 + clickedWidgetParent.height) { // L: 10933 - var2 = field861 + clickedWidgetParent.height - clickedWidget.height; + if (var2 + clickedWidget.height > field716 + clickedWidgetParent.height) { + var2 = field716 + clickedWidgetParent.height - clickedWidget.height; } - int var3 = var1 - field931; // L: 10934 - int var4 = var2 - field701; // L: 10935 - int var5 = clickedWidget.dragZoneSize; // L: 10936 - if (GrandExchangeEvent.widgetDragDuration > clickedWidget.dragThreshold && (var3 > var5 || var3 < -var5 || var4 > var5 || var4 < -var5)) { // L: 10937 10938 - isDraggingWidget = true; // L: 10939 + int var3 = var1 - field853; + int var4 = var2 - field862; + int var5 = clickedWidget.dragZoneSize; + if (ScriptFrame.widgetDragDuration > clickedWidget.dragThreshold && (var3 > var5 || var3 < -var5 || var4 > var5 || var4 < -var5)) { + isDraggingWidget = true; } - int var6 = var1 - field860 + clickedWidgetParent.scrollX; // L: 10942 - int var7 = var2 - field861 + clickedWidgetParent.scrollY; // L: 10943 + int var6 = var1 - field827 + clickedWidgetParent.scrollX; + int var7 = var2 - field716 + clickedWidgetParent.scrollY; ScriptEvent var8; - if (clickedWidget.onDrag != null && isDraggingWidget) { // L: 10944 - var8 = new ScriptEvent(); // L: 10945 - var8.widget = clickedWidget; // L: 10946 - var8.mouseX = var6; // L: 10947 - var8.mouseY = var7; // L: 10948 - var8.args = clickedWidget.onDrag; // L: 10949 - Entity.runScriptEvent(var8); // L: 10950 + if (clickedWidget.onDrag != null && isDraggingWidget) { + var8 = new ScriptEvent(); + var8.widget = clickedWidget; + var8.mouseX = var6; + var8.mouseY = var7; + var8.args = clickedWidget.onDrag; + class22.runScriptEvent(var8); } - if (MouseHandler.MouseHandler_currentButton == 0) { // L: 10952 - if (isDraggingWidget) { // L: 10953 - if (clickedWidget.onDragComplete != null) { // L: 10954 - var8 = new ScriptEvent(); // L: 10955 - var8.widget = clickedWidget; // L: 10956 - var8.mouseX = var6; // L: 10957 - var8.mouseY = var7; // L: 10958 - var8.dragTarget = draggedOnWidget; // L: 10959 - var8.args = clickedWidget.onDragComplete; // L: 10960 - Entity.runScriptEvent(var8); // L: 10961 + if (MouseHandler.MouseHandler_currentButton == 0) { + if (isDraggingWidget) { + if (clickedWidget.onDragComplete != null) { + var8 = new ScriptEvent(); + var8.widget = clickedWidget; + var8.mouseX = var6; + var8.mouseY = var7; + var8.dragTarget = draggedOnWidget; + var8.args = clickedWidget.onDragComplete; + class22.runScriptEvent(var8); } - if (draggedOnWidget != null) { // L: 10963 - Widget var15 = clickedWidget; // L: 10965 - int var11 = WorldMapData_0.getWidgetFlags(var15); // L: 10968 - int var16 = var11 >> 17 & 7; // L: 10970 - int var12 = var16; // L: 10972 + if (draggedOnWidget != null) { + Widget var15 = clickedWidget; + int var11 = FaceNormal.getWidgetFlags(var15); + int var10 = var11 >> 17 & 7; + int var12 = var10; Widget var17; - if (var16 == 0) { // L: 10973 - var17 = null; // L: 10974 + if (var10 == 0) { + var17 = null; } else { int var13 = 0; while (true) { if (var13 >= var12) { - var17 = var15; // L: 10984 + var17 = var15; break; } - var15 = UserComparator4.getWidget(var15.parentId); // L: 10978 - if (var15 == null) { // L: 10979 - var17 = null; // L: 10980 - break; // L: 10981 + var15 = CollisionMap.getWidget(var15.parentId); + if (var15 == null) { + var17 = null; + break; } - ++var13; // L: 10977 + ++var13; } } - if (var17 != null) { // L: 10986 - PacketBufferNode var18 = class4.getPacketBufferNode(ClientPacket.field2315, packetWriter.isaacCipher); // L: 10988 - var18.packetBuffer.method5682(draggedOnWidget.id); // L: 10989 - var18.packetBuffer.writeShort(draggedOnWidget.itemId); // L: 10990 - var18.packetBuffer.method5673(clickedWidget.itemId); // L: 10991 - var18.packetBuffer.method5673(clickedWidget.childIndex); // L: 10992 - var18.packetBuffer.method5674(draggedOnWidget.childIndex); // L: 10993 - var18.packetBuffer.method5684(clickedWidget.id); // L: 10994 - packetWriter.addNode(var18); // L: 10995 + if (var17 != null) { + PacketBufferNode var16 = ItemContainer.getPacketBufferNode(ClientPacket.field2298, packetWriter.isaacCipher); + var16.packetBuffer.method5578(draggedOnWidget.itemId); + var16.packetBuffer.method5739(clickedWidget.itemId); + var16.packetBuffer.method5718(clickedWidget.id); + var16.packetBuffer.writeShort(clickedWidget.childIndex); + var16.packetBuffer.method5739(draggedOnWidget.childIndex); + var16.packetBuffer.method5588(draggedOnWidget.id); + packetWriter.addNode(var16); } } - } else if (this.shouldLeftClickOpenMenu()) { // L: 11000 - this.openMenu(widgetClickX + field931, field701 + widgetClickY); // L: 11001 - } else if (menuOptionsCount > 0) { // L: 11003 - int var14 = widgetClickX + field931; // L: 11004 - int var9 = widgetClickY + field701; // L: 11005 - MenuAction var10 = GrandExchangeOffer.tempMenuAction; // L: 11007 - Calendar.menuAction(var10.param0, var10.param1, var10.opcode, var10.identifier, var10.action, var10.action, var14, var9); // L: 11009 - GrandExchangeOffer.tempMenuAction = null; // L: 11011 + } else if (this.shouldLeftClickOpenMenu()) { + this.openMenu(widgetClickX + field853, widgetClickY + field862); + } else if (menuOptionsCount > 0) { + int var14 = field853 + widgetClickX; + int var9 = widgetClickY + field862; + WorldMapDecoration.method379(WorldMapSection1.tempMenuAction, var14, var9); + WorldMapSection1.tempMenuAction = null; } - clickedWidget = null; // L: 11015 + clickedWidget = null; } } else { - if (GrandExchangeEvent.widgetDragDuration > 1) { // L: 10921 - clickedWidget = null; // L: 10922 + if (ScriptFrame.widgetDragDuration > 1) { + clickedWidget = null; } } - } // L: 10924 11017 + } - @ObfuscatedName("kg") + @ObfuscatedName("lb") @ObfuscatedSignature( - descriptor = "(B)Lkm;", - garbageValue = "104" + descriptor = "(I)Lki;", + garbageValue = "82536799" ) @Export("username") public Username username() { - return PlayerType.localPlayer != null ? PlayerType.localPlayer.username : null; // L: 11642 + return PlayerAppearance.localPlayer != null ? PlayerAppearance.localPlayer.username : null; } - @ObfuscatedName("b") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(IB)Ljava/lang/String;", - garbageValue = "89" + descriptor = "(I)V", + garbageValue = "-1868992104" ) - @Export("colorStartTag") - static String colorStartTag(int var0) { - return ""; // L: 22 + public static void method1583() { + if (NetCache.NetCache_socket != null) { + NetCache.NetCache_socket.close(); + } + } - @ObfuscatedName("b") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(IIIIB)V", - garbageValue = "3" + descriptor = "(I)V", + garbageValue = "-256549050" ) - static final void method1838(int var0, int var1, int var2, int var3) { - for (int var4 = var1; var4 <= var3 + var1; ++var4) { // L: 64 - for (int var5 = var0; var5 <= var0 + var2; ++var5) { // L: 65 - if (var5 >= 0 && var5 < 104 && var4 >= 0 && var4 < 104) { // L: 66 - class299.field3679[0][var5][var4] = 127; // L: 67 - if (var0 == var5 && var5 > 0) { // L: 68 - Tiles.Tiles_heights[0][var5][var4] = Tiles.Tiles_heights[0][var5 - 1][var4]; - } - - if (var5 == var0 + var2 && var5 < 103) { // L: 69 - Tiles.Tiles_heights[0][var5][var4] = Tiles.Tiles_heights[0][var5 + 1][var4]; - } - - if (var4 == var1 && var4 > 0) { // L: 70 - Tiles.Tiles_heights[0][var5][var4] = Tiles.Tiles_heights[0][var5][var4 - 1]; - } - - if (var3 + var1 == var4 && var4 < 103) { // L: 71 - Tiles.Tiles_heights[0][var5][var4] = Tiles.Tiles_heights[0][var5][var4 + 1]; - } - } - } + static void method1799() { + if (Login_isUsernameRemembered && Login.Login_username != null && Login.Login_username.length() > 0) { + Login.currentLoginField = 1; + } else { + Login.currentLoginField = 0; } - } // L: 75 - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(Lde;I)V", - garbageValue = "964773449" - ) - @Export("PcmStream_disable") - static final void PcmStream_disable(PcmStream var0) { - var0.active = false; // L: 259 - if (var0.sound != null) { // L: 260 - var0.sound.position = 0; - } - - for (PcmStream var1 = var0.firstSubStream(); var1 != null; var1 = var0.nextSubStream()) { - PcmStream_disable(var1); // L: 261 - } - - } // L: 262 + } } diff --git a/runescape-client/src/main/java/ClientPacket.java b/runescape-client/src/main/java/ClientPacket.java index 03dd9bf170..a1fac9dff9 100644 --- a/runescape-client/src/main/java/ClientPacket.java +++ b/runescape-client/src/main/java/ClientPacket.java @@ -1,650 +1,644 @@ -import java.io.File; -import java.io.IOException; -import java.io.RandomAccessFile; 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("gz") +@ObfuscatedName("gb") @Implements("ClientPacket") public class ClientPacket implements class190 { - @ObfuscatedName("ph") - @Export("ClanChat_inClanChat") - static boolean ClanChat_inClanChat; - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) - public static final ClientPacket field2238; - @ObfuscatedName("b") + public static final ClientPacket field2230; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2237; - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2313; - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) public static final ClientPacket field2234; - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2329; - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2236; - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - static final ClientPacket field2307; - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2288; - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2239; - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2330; - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2324; - @ObfuscatedName("o") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2242; - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2243; @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) - public static final ClientPacket field2244; + public static final ClientPacket field2317; + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2329; + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2231; + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2232; + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + static final ClientPacket field2233; @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" + ) + public static final ClientPacket field2277; + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2235; + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2262; + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2237; + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2238; + @ObfuscatedName("m") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2291; + @ObfuscatedName("c") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2240; + @ObfuscatedName("i") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2241; + @ObfuscatedName("f") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2242; + @ObfuscatedName("a") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2316; + @ObfuscatedName("b") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2244; + @ObfuscatedName("y") + @ObfuscatedSignature( + descriptor = "Lgb;" ) public static final ClientPacket field2245; @ObfuscatedName("r") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) public static final ClientPacket field2246; - @ObfuscatedName("y") + @ObfuscatedName("q") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) - public static final ClientPacket field2247; - @ObfuscatedName("s") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2248; - @ObfuscatedName("j") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2249; - @ObfuscatedName("w") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2250; - @ObfuscatedName("v") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2251; - @ObfuscatedName("d") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2252; - @ObfuscatedName("a") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2284; + public static final ClientPacket field2290; @ObfuscatedName("g") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) - public static final ClientPacket field2254; - @ObfuscatedName("h") + public static final ClientPacket field2248; + @ObfuscatedName("s") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) - public static final ClientPacket field2274; - @ObfuscatedName("i") + public static final ClientPacket field2249; + @ObfuscatedName("o") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) - public static final ClientPacket field2256; - @ObfuscatedName("ab") + public static final ClientPacket field2250; + @ObfuscatedName("k") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) - public static final ClientPacket field2257; - @ObfuscatedName("ac") + public static final ClientPacket field2328; + @ObfuscatedName("d") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" + ) + public static final ClientPacket field2252; + @ObfuscatedName("an") + @ObfuscatedSignature( + descriptor = "Lgb;" ) public static final ClientPacket field2258; - @ObfuscatedName("ao") + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) - public static final ClientPacket field2335; - @ObfuscatedName("af") + public static final ClientPacket field2254; + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" + ) + public static final ClientPacket field2255; + @ObfuscatedName("ag") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2256; + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2257; + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + static final ClientPacket field2227; + @ObfuscatedName("ae") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2259; + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "Lgb;" ) public static final ClientPacket field2260; + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2296; @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) - public static final ClientPacket field2261; - @ObfuscatedName("ar") + public static final ClientPacket field2236; + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2262; - @ObfuscatedName("ay") - @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) public static final ClientPacket field2263; @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) - public static final ClientPacket field2264; - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2265; - @ObfuscatedName("ak") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2290; - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2267; - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2268; - @ObfuscatedName("ax") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2269; - @ObfuscatedName("ag") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2270; - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2271; - @ObfuscatedName("aw") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2272; - @ObfuscatedName("an") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2298; + public static final ClientPacket field2247; @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) - public static final ClientPacket field2282; + public static final ClientPacket field2265; @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2275; - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - static final ClientPacket field2295; - @ObfuscatedName("as") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2277; - @ObfuscatedName("aj") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2240; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2279; - @ObfuscatedName("al") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2280; - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2281; - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2315; - @ObfuscatedName("bb") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - static final ClientPacket field2283; - @ObfuscatedName("bf") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2255; - @ObfuscatedName("bp") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2285; - @ObfuscatedName("bg") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2286; - @ObfuscatedName("bc") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2325; - @ObfuscatedName("bj") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2331; - @ObfuscatedName("bl") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2289; - @ObfuscatedName("bn") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2334; - @ObfuscatedName("bo") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2291; - @ObfuscatedName("be") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2292; - @ObfuscatedName("ba") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2293; - @ObfuscatedName("bt") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2294; - @ObfuscatedName("bw") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2253; - @ObfuscatedName("bm") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2296; - @ObfuscatedName("by") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2297; - @ObfuscatedName("bq") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2276; - @ObfuscatedName("bv") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2312; - @ObfuscatedName("br") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2300; - @ObfuscatedName("bs") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2301; - @ObfuscatedName("bd") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - static final ClientPacket field2302; - @ObfuscatedName("bh") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2303; - @ObfuscatedName("bk") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2304; - @ObfuscatedName("bx") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2306; - @ObfuscatedName("bi") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2241; - @ObfuscatedName("bu") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2318; - @ObfuscatedName("bz") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2308; - @ObfuscatedName("cs") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2309; - @ObfuscatedName("ce") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2310; - @ObfuscatedName("cf") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2311; - @ObfuscatedName("cg") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2323; - @ObfuscatedName("cp") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2322; - @ObfuscatedName("cc") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2314; - @ObfuscatedName("cl") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2299; - @ObfuscatedName("ci") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2316; - @ObfuscatedName("cy") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2317; - @ObfuscatedName("cx") - @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) public static final ClientPacket field2266; + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2267; + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2280; + @ObfuscatedName("aw") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2269; + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2324; + @ObfuscatedName("ad") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2271; + @ObfuscatedName("ai") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2272; + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2279; + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2274; + @ObfuscatedName("af") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2275; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2276; + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2312; + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2253; + @ObfuscatedName("bh") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2278; + @ObfuscatedName("by") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2268; + @ObfuscatedName("bs") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2281; + @ObfuscatedName("br") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2282; + @ObfuscatedName("bl") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2283; + @ObfuscatedName("bx") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2284; + @ObfuscatedName("bf") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2285; + @ObfuscatedName("bz") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2286; + @ObfuscatedName("bm") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + static final ClientPacket field2323; + @ObfuscatedName("bn") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2288; + @ObfuscatedName("bd") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2289; + @ObfuscatedName("bc") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2326; + @ObfuscatedName("bi") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2304; + @ObfuscatedName("bk") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + static final ClientPacket field2297; + @ObfuscatedName("bw") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2293; + @ObfuscatedName("bo") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2270; + @ObfuscatedName("bj") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2295; + @ObfuscatedName("bu") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2287; + @ObfuscatedName("bt") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2294; + @ObfuscatedName("bb") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2292; + @ObfuscatedName("bv") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2299; + @ObfuscatedName("bg") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2306; + @ObfuscatedName("ba") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2301; + @ObfuscatedName("bq") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2302; + @ObfuscatedName("be") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2303; + @ObfuscatedName("bp") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2261; + @ObfuscatedName("cx") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2305; + @ObfuscatedName("ci") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2228; + @ObfuscatedName("cj") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2307; @ObfuscatedName("ca") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) - public static final ClientPacket field2319; - @ObfuscatedName("cn") + public static final ClientPacket field2308; + @ObfuscatedName("cd") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" + ) + public static final ClientPacket field2229; + @ObfuscatedName("cm") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2310; + @ObfuscatedName("cz") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2311; + @ObfuscatedName("cc") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + static final ClientPacket field2314; + @ObfuscatedName("ce") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2313; + @ObfuscatedName("cb") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2309; + @ObfuscatedName("cf") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2315; + @ObfuscatedName("cr") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2239; + @ObfuscatedName("ch") + @ObfuscatedSignature( + descriptor = "Lgb;" ) public static final ClientPacket field2320; + @ObfuscatedName("cq") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2318; + @ObfuscatedName("cl") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2319; @ObfuscatedName("cw") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" + ) + public static final ClientPacket field2327; + @ObfuscatedName("cp") + @ObfuscatedSignature( + descriptor = "Lgb;" ) public static final ClientPacket field2321; @ObfuscatedName("cu") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) - public static final ClientPacket field2233; - @ObfuscatedName("cq") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - static final ClientPacket field2231; - @ObfuscatedName("cd") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2305; - @ObfuscatedName("cj") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2287; - @ObfuscatedName("cm") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2326; - @ObfuscatedName("cb") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2327; + public static final ClientPacket field2322; @ObfuscatedName("ct") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) - public static final ClientPacket field2328; - @ObfuscatedName("cv") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2259; - @ObfuscatedName("cz") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2332; - @ObfuscatedName("ch") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2235; - @ObfuscatedName("co") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - public static final ClientPacket field2232; + public static final ClientPacket field2330; @ObfuscatedName("ck") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgb;" ) - public static final ClientPacket field2333; - @ObfuscatedName("cr") + public static final ClientPacket field2298; + @ObfuscatedName("cy") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2325; + @ObfuscatedName("cg") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2264; + @ObfuscatedName("cv") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2251; + @ObfuscatedName("cs") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2273; + @ObfuscatedName("cn") + @ObfuscatedSignature( + descriptor = "Lgb;" + ) + public static final ClientPacket field2243; + @ObfuscatedName("co") @ObfuscatedGetter( - intValue = -1312212621 + intValue = -1798949877 ) @Export("id") final int id; - @ObfuscatedName("dg") + @ObfuscatedName("dh") @ObfuscatedGetter( - intValue = 848809965 + intValue = -402834233 ) @Export("length") final int length; static { - field2238 = new ClientPacket(0, 16); // L: 5 - field2237 = new ClientPacket(1, -1); // L: 6 - field2313 = new ClientPacket(2, 8); // L: 7 - field2234 = new ClientPacket(3, -1); // L: 8 - field2329 = new ClientPacket(4, -1); // L: 9 - field2236 = new ClientPacket(5, 14); // L: 10 - field2307 = new ClientPacket(6, -1); // L: 11 - field2288 = new ClientPacket(7, 7); // L: 12 - field2239 = new ClientPacket(8, 3); // L: 13 - field2330 = new ClientPacket(9, 4); // L: 14 - field2324 = new ClientPacket(10, 3); // L: 15 - field2242 = new ClientPacket(11, 8); // L: 16 - field2243 = new ClientPacket(12, 8); // L: 17 - field2244 = new ClientPacket(13, 3); // L: 18 - field2245 = new ClientPacket(14, 3); // L: 19 - field2246 = new ClientPacket(15, 7); // L: 20 - field2247 = new ClientPacket(16, 0); // L: 21 - field2248 = new ClientPacket(17, 8); // L: 22 - field2249 = new ClientPacket(18, 7); - field2250 = new ClientPacket(19, 8); - field2251 = new ClientPacket(20, 8); - field2252 = new ClientPacket(21, 8); - field2284 = new ClientPacket(22, 2); - field2254 = new ClientPacket(23, 3); - field2274 = new ClientPacket(24, 8); - field2256 = new ClientPacket(25, 8); - field2257 = new ClientPacket(26, 7); // L: 31 - field2258 = new ClientPacket(27, 7); // L: 32 - field2335 = new ClientPacket(28, 13); // L: 33 - field2260 = new ClientPacket(29, -1); // L: 34 - field2261 = new ClientPacket(30, 13); // L: 35 - field2262 = new ClientPacket(31, 0); // L: 36 - field2263 = new ClientPacket(32, 8); // L: 37 - field2264 = new ClientPacket(33, 3); // L: 38 - field2265 = new ClientPacket(34, 7); // L: 39 - field2290 = new ClientPacket(35, 3); // L: 40 - field2267 = new ClientPacket(36, 9); // L: 41 - field2268 = new ClientPacket(37, 4); // L: 42 - field2269 = new ClientPacket(38, -1); // L: 43 - field2270 = new ClientPacket(39, -1); // L: 44 - field2271 = new ClientPacket(40, 0); // L: 45 - field2272 = new ClientPacket(41, 5); // L: 46 - field2298 = new ClientPacket(42, 8); // L: 47 - field2282 = new ClientPacket(43, 13); // L: 48 - field2275 = new ClientPacket(44, 9); // L: 49 - field2295 = new ClientPacket(45, 7); // L: 50 - field2277 = new ClientPacket(46, 8); // L: 51 - field2240 = new ClientPacket(47, -1); // L: 52 - field2279 = new ClientPacket(48, -1); // L: 53 - field2280 = new ClientPacket(49, 3); // L: 54 - field2281 = new ClientPacket(50, 3); // L: 55 - field2315 = new ClientPacket(51, 16); // L: 56 - field2283 = new ClientPacket(52, -1); // L: 57 - field2255 = new ClientPacket(53, -2); // L: 58 - field2285 = new ClientPacket(54, 8); // L: 59 - field2286 = new ClientPacket(55, 4); // L: 60 - field2325 = new ClientPacket(56, 3); // L: 61 - field2331 = new ClientPacket(57, -1); // L: 62 - field2289 = new ClientPacket(58, 8); // L: 63 - field2334 = new ClientPacket(59, -1); // L: 64 - field2291 = new ClientPacket(60, 8); // L: 65 - field2292 = new ClientPacket(61, 4); // L: 66 - field2293 = new ClientPacket(62, 15); // L: 67 - field2294 = new ClientPacket(63, 8); // L: 68 - field2253 = new ClientPacket(64, 6); // L: 69 - field2296 = new ClientPacket(65, 10); // L: 70 - field2297 = new ClientPacket(66, 8); // L: 71 - field2276 = new ClientPacket(67, 8); // L: 72 - field2312 = new ClientPacket(68, 1); // L: 73 - field2300 = new ClientPacket(69, 8); // L: 74 - field2301 = new ClientPacket(70, 7); // L: 75 - field2302 = new ClientPacket(71, -1); // L: 76 - field2303 = new ClientPacket(72, -1); // L: 77 - field2304 = new ClientPacket(73, 9); // L: 78 - field2306 = new ClientPacket(74, 7); // L: 79 - field2241 = new ClientPacket(75, -1); // L: 80 - field2318 = new ClientPacket(76, -1); // L: 81 - field2308 = new ClientPacket(77, 3); // L: 82 - field2309 = new ClientPacket(78, 9); - field2310 = new ClientPacket(79, -2); - field2311 = new ClientPacket(80, 3); - field2323 = new ClientPacket(81, 3); - field2322 = new ClientPacket(82, 6); - field2314 = new ClientPacket(83, -1); - field2299 = new ClientPacket(84, 15); - field2316 = new ClientPacket(85, 2); - field2317 = new ClientPacket(86, 2); - field2266 = new ClientPacket(87, 8); - field2319 = new ClientPacket(88, 0); - field2320 = new ClientPacket(89, 0); - field2321 = new ClientPacket(90, 4); - field2233 = new ClientPacket(91, 2); - field2231 = new ClientPacket(92, 2); - field2305 = new ClientPacket(93, 7); - field2287 = new ClientPacket(94, -1); - field2326 = new ClientPacket(95, -2); - field2327 = new ClientPacket(96, -1); - field2328 = new ClientPacket(97, 11); - field2259 = new ClientPacket(98, 7); - field2332 = new ClientPacket(99, 11); - field2235 = new ClientPacket(100, 3); // L: 105 - field2232 = new ClientPacket(101, 16); // L: 106 - field2333 = new ClientPacket(102, -1); // L: 107 + field2230 = new ClientPacket(0, -2); + field2234 = new ClientPacket(1, -2); + field2317 = new ClientPacket(2, 7); + field2329 = new ClientPacket(3, 6); + field2231 = new ClientPacket(4, 8); + field2232 = new ClientPacket(5, -1); + field2233 = new ClientPacket(6, -1); + field2277 = new ClientPacket(7, 1); + field2235 = new ClientPacket(8, 0); + field2262 = new ClientPacket(9, 3); + field2237 = new ClientPacket(10, 13); + field2238 = new ClientPacket(11, 3); + field2291 = new ClientPacket(12, 4); + field2240 = new ClientPacket(13, 8); + field2241 = new ClientPacket(14, -1); + field2242 = new ClientPacket(15, 3); + field2316 = new ClientPacket(16, 8); + field2244 = new ClientPacket(17, 0); + field2245 = new ClientPacket(18, -1); + field2246 = new ClientPacket(19, 3); + field2290 = new ClientPacket(20, -1); + field2248 = new ClientPacket(21, 7); + field2249 = new ClientPacket(22, 8); + field2250 = new ClientPacket(23, 2); + field2328 = new ClientPacket(24, 4); + field2252 = new ClientPacket(25, 8); + field2258 = new ClientPacket(26, 11); + field2254 = new ClientPacket(27, 7); + field2255 = new ClientPacket(28, 10); + field2256 = new ClientPacket(29, 9); + field2257 = new ClientPacket(30, 8); + field2227 = new ClientPacket(31, -1); + field2259 = new ClientPacket(32, 8); + field2260 = new ClientPacket(33, 3); + field2296 = new ClientPacket(34, 16); + field2236 = new ClientPacket(35, 3); + field2263 = new ClientPacket(36, 15); + field2247 = new ClientPacket(37, 8); + field2265 = new ClientPacket(38, 8); + field2266 = new ClientPacket(39, 6); + field2267 = new ClientPacket(40, 7); + field2280 = new ClientPacket(41, -1); + field2269 = new ClientPacket(42, 9); + field2324 = new ClientPacket(43, 7); + field2271 = new ClientPacket(44, 7); + field2272 = new ClientPacket(45, -1); + field2279 = new ClientPacket(46, 15); + field2274 = new ClientPacket(47, 9); + field2275 = new ClientPacket(48, 4); + field2276 = new ClientPacket(49, 3); + field2312 = new ClientPacket(50, 3); + field2253 = new ClientPacket(51, 3); + field2278 = new ClientPacket(52, 3); + field2268 = new ClientPacket(53, 3); + field2281 = new ClientPacket(54, 13); + field2282 = new ClientPacket(55, 3); + field2283 = new ClientPacket(56, 11); + field2284 = new ClientPacket(57, 8); + field2285 = new ClientPacket(58, -1); + field2286 = new ClientPacket(59, 8); + field2323 = new ClientPacket(60, 7); + field2288 = new ClientPacket(61, 2); + field2289 = new ClientPacket(62, 8); + field2326 = new ClientPacket(63, -1); + field2304 = new ClientPacket(64, -1); + field2297 = new ClientPacket(65, -1); + field2293 = new ClientPacket(66, 7); + field2270 = new ClientPacket(67, -2); + field2295 = new ClientPacket(68, 16); + field2287 = new ClientPacket(69, 4); + field2294 = new ClientPacket(70, 8); + field2292 = new ClientPacket(71, -1); + field2299 = new ClientPacket(72, 4); + field2306 = new ClientPacket(73, 0); + field2301 = new ClientPacket(74, -1); + field2302 = new ClientPacket(75, 9); + field2303 = new ClientPacket(76, 0); + field2261 = new ClientPacket(77, -1); + field2305 = new ClientPacket(78, 7); + field2228 = new ClientPacket(79, -1); + field2307 = new ClientPacket(80, 8); + field2308 = new ClientPacket(81, 3); + field2229 = new ClientPacket(82, 8); + field2310 = new ClientPacket(83, 7); + field2311 = new ClientPacket(84, 7); + field2314 = new ClientPacket(85, 2); + field2313 = new ClientPacket(86, 2); + field2309 = new ClientPacket(87, 3); + field2315 = new ClientPacket(88, 8); + field2239 = new ClientPacket(89, 13); + field2320 = new ClientPacket(90, 8); + field2318 = new ClientPacket(91, -1); + field2319 = new ClientPacket(92, -1); + field2327 = new ClientPacket(93, 14); + field2321 = new ClientPacket(94, 2); + field2322 = new ClientPacket(95, 0); + field2330 = new ClientPacket(96, 8); + field2298 = new ClientPacket(97, 16); + field2325 = new ClientPacket(98, 8); + field2264 = new ClientPacket(99, 8); + field2251 = new ClientPacket(100, -1); + field2273 = new ClientPacket(101, 5); + field2243 = new ClientPacket(102, -1); } ClientPacket(int var1, int var2) { @@ -652,131 +646,8 @@ public class ClientPacket implements class190 { this.length = var2; } - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(IS)Ljo;", - garbageValue = "29667" - ) - @Export("StructDefinition_getStructDefinition") - public static StructDefinition StructDefinition_getStructDefinition(int var0) { - StructDefinition var1 = (StructDefinition)StructDefinition.StructDefinition_cached.get((long)var0); // L: 23 - if (var1 != null) { // L: 24 - return var1; - } else { - byte[] var2 = StructDefinition.StructDefinition_archive.takeFile(34, var0); // L: 25 - var1 = new StructDefinition(); // L: 26 - if (var2 != null) { // L: 27 - var1.decode(new Buffer(var2)); - } - - var1.postDecode(); // L: 28 - StructDefinition.StructDefinition_cached.put(var1, (long)var0); // L: 29 - return var1; // L: 30 - } + @ObfuscatedName("w") + public static int method3671(long var0) { + return (int)(var0 >>> 0 & 127L); } - - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "711631648" - ) - static void method3745() { - try { - File var0 = new File(class52.userHomeDirectory, "random.dat"); // L: 281 - int var2; - if (var0.exists()) { // L: 282 - JagexCache.JagexCache_randomDat = new BufferedFile(new AccessFile(var0, "rw", 25L), 24, 0); // L: 283 - } else { - label38: - for (int var1 = 0; var1 < Client.field957.length; ++var1) { // L: 286 - for (var2 = 0; var2 < GrandExchangeEvents.field68.length; ++var2) { // L: 287 - File var3 = new File(GrandExchangeEvents.field68[var2] + Client.field957[var1] + File.separatorChar + "random.dat"); // L: 288 - if (var3.exists()) { // L: 289 - JagexCache.JagexCache_randomDat = new BufferedFile(new AccessFile(var3, "rw", 25L), 24, 0); // L: 290 - break label38; // L: 291 - } - } - } - } - - if (JagexCache.JagexCache_randomDat == null) { // L: 296 - RandomAccessFile var4 = new RandomAccessFile(var0, "rw"); // L: 297 - var2 = var4.read(); // L: 298 - var4.seek(0L); // L: 299 - var4.write(var2); // L: 300 - var4.seek(0L); // L: 301 - var4.close(); // L: 302 - JagexCache.JagexCache_randomDat = new BufferedFile(new AccessFile(var0, "rw", 25L), 24, 0); // L: 303 - } - } catch (IOException var5) { // L: 306 - } - - } // L: 307 - - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "([BI)Lco;", - garbageValue = "-1523199610" - ) - @Export("newScript") - static Script newScript(byte[] var0) { - Script var1 = new Script(); // L: 83 - Buffer var2 = new Buffer(var0); // L: 84 - var2.offset = var2.array.length - 2; // L: 85 - int var3 = var2.readUnsignedShort(); // L: 86 - int var4 = var2.array.length - 2 - var3 - 12; // L: 87 - var2.offset = var4; // L: 88 - int var5 = var2.readInt(); // L: 89 - var1.localIntCount = var2.readUnsignedShort(); // L: 90 - var1.localStringCount = var2.readUnsignedShort(); // L: 91 - var1.intArgumentCount = var2.readUnsignedShort(); // L: 92 - var1.stringArgumentCount = var2.readUnsignedShort(); // L: 93 - int var6 = var2.readUnsignedByte(); // L: 94 - int var7; - int var8; - if (var6 > 0) { // L: 95 - var1.switches = var1.newIterableNodeHashTable(var6); // L: 96 - - for (var7 = 0; var7 < var6; ++var7) { // L: 97 - var8 = var2.readUnsignedShort(); // L: 98 - IterableNodeHashTable var9 = new IterableNodeHashTable(var8 > 0 ? WorldMapData_0.method266(var8) : 1); // L: 99 - var1.switches[var7] = var9; // L: 100 - - while (var8-- > 0) { // L: 101 - int var10 = var2.readInt(); // L: 102 - int var11 = var2.readInt(); // L: 103 - var9.put(new IntegerNode(var11), (long)var10); // L: 104 - } - } - } - - var2.offset = 0; // L: 108 - var2.readStringCp1252NullTerminatedOrNull(); // L: 109 - var1.opcodes = new int[var5]; // L: 110 - var1.intOperands = new int[var5]; // L: 111 - var1.stringOperands = new String[var5]; // L: 112 - - for (var7 = 0; var2.offset < var4; var1.opcodes[var7++] = var8) { // L: 113 114 119 - var8 = var2.readUnsignedShort(); // L: 115 - if (var8 == 3) { // L: 116 - var1.stringOperands[var7] = var2.readStringCp1252NullTerminated(); - } else if (var8 < 100 && var8 != 21 && var8 != 38 && var8 != 39) { // L: 117 - var1.intOperands[var7] = var2.readInt(); - } else { - var1.intOperands[var7] = var2.readUnsignedByte(); // L: 118 - } - } - - return var1; // L: 121 - } - - @ObfuscatedName("jh") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1900705803" - ) - static final void method3744() { - Client.field875 = Client.cycleCntr; // L: 11489 - ClanChat_inClanChat = true; // L: 11490 - } // L: 11491 } diff --git a/runescape-client/src/main/java/ClientPreferences.java b/runescape-client/src/main/java/ClientPreferences.java index 1de4548820..36190d3ac9 100644 --- a/runescape-client/src/main/java/ClientPreferences.java +++ b/runescape-client/src/main/java/ClientPreferences.java @@ -7,134 +7,246 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cp") +@ObfuscatedName("cd") @Implements("ClientPreferences") public class ClientPreferences { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 297838275 + intValue = 1425200295 ) @Export("ClientPreferences_optionCount") static int ClientPreferences_optionCount; - @ObfuscatedName("ak") - @ObfuscatedSignature( - descriptor = "Llw;" - ) - static Bounds field1089; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("roofsHidden") boolean roofsHidden; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("titleMusicDisabled") boolean titleMusicDisabled; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 183452859 + intValue = 681335643 ) @Export("windowMode") int windowMode; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("rememberedUsername") String rememberedUsername; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("hideUsername") boolean hideUsername; - @ObfuscatedName("c") + @ObfuscatedName("p") + double field1057; + @ObfuscatedName("l") + @ObfuscatedGetter( + intValue = 489243513 + ) + @Export("musicVolume") + int musicVolume; + @ObfuscatedName("z") + @ObfuscatedGetter( + intValue = -482830731 + ) + @Export("soundEffectsVolume") + int soundEffectsVolume; + @ObfuscatedName("u") + @ObfuscatedGetter( + intValue = 452733913 + ) + @Export("areaSoundEffectsVolume") + int areaSoundEffectsVolume; + @ObfuscatedName("e") @Export("parameters") LinkedHashMap parameters; static { - ClientPreferences_optionCount = 6; // L: 11 + ClientPreferences_optionCount = 7; } ClientPreferences() { this.windowMode = 1; this.rememberedUsername = null; this.hideUsername = false; + this.field1057 = 0.8D; + this.musicVolume = 127; + this.soundEffectsVolume = 127; + this.areaSoundEffectsVolume = 127; this.parameters = new LinkedHashMap(); - this.method1948(true); // L: 21 - } // L: 22 + this.method1908(true); + } @ObfuscatedSignature( - descriptor = "(Lkb;)V" + descriptor = "(Lkj;)V" ) ClientPreferences(Buffer var1) { - this.windowMode = 1; // L: 15 - this.rememberedUsername = null; // L: 16 - this.hideUsername = false; // L: 17 - this.parameters = new LinkedHashMap(); // L: 18 - if (var1 != null && var1.array != null) { // L: 25 - int var2 = var1.readUnsignedByte(); // L: 29 - if (var2 >= 0 && var2 <= ClientPreferences_optionCount) { // L: 30 - if (var1.readUnsignedByte() == 1) { // L: 34 + this.windowMode = 1; + this.rememberedUsername = null; + this.hideUsername = false; + this.field1057 = 0.8D; + this.musicVolume = 127; + this.soundEffectsVolume = 127; + this.areaSoundEffectsVolume = 127; + this.parameters = new LinkedHashMap(); + if (var1 != null && var1.array != null) { + int var2 = var1.readUnsignedByte(); + if (var2 >= 0 && var2 <= ClientPreferences_optionCount) { + if (var1.readUnsignedByte() == 1) { this.roofsHidden = true; } - if (var2 > 1) { // L: 35 - this.titleMusicDisabled = var1.readUnsignedByte() == 1; // L: 36 + if (var2 > 1) { + this.titleMusicDisabled = var1.readUnsignedByte() == 1; } - if (var2 > 3) { // L: 38 - this.windowMode = var1.readUnsignedByte(); // L: 39 + if (var2 > 3) { + this.windowMode = var1.readUnsignedByte(); } - if (var2 > 2) { // L: 41 - int var3 = var1.readUnsignedByte(); // L: 42 + if (var2 > 2) { + int var3 = var1.readUnsignedByte(); - for (int var4 = 0; var4 < var3; ++var4) { // L: 43 - int var5 = var1.readInt(); // L: 44 - int var6 = var1.readInt(); // L: 45 - this.parameters.put(var5, var6); // L: 46 + for (int var4 = 0; var4 < var3; ++var4) { + int var5 = var1.readInt(); + int var6 = var1.readInt(); + this.parameters.put(var5, var6); } } - if (var2 > 4) { // L: 49 - this.rememberedUsername = var1.readStringCp1252NullTerminatedOrNull(); // L: 50 + if (var2 > 4) { + this.rememberedUsername = var1.readStringCp1252NullTerminatedOrNull(); } - if (var2 > 5) { // L: 52 - this.hideUsername = var1.readBoolean(); // L: 53 + if (var2 > 5) { + this.hideUsername = var1.readBoolean(); + } + + if (var2 > 6) { + this.field1057 = (double)var1.readUnsignedByte() / 100.0D; + this.musicVolume = var1.readUnsignedByte(); + this.soundEffectsVolume = var1.readUnsignedByte(); + this.areaSoundEffectsVolume = var1.readUnsignedByte(); } } else { - this.method1948(true); // L: 31 + this.method1908(true); } } else { - this.method1948(true); // L: 26 + this.method1908(true); } - } // L: 57 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(ZB)V", - garbageValue = "120" + descriptor = "(ZI)V", + garbageValue = "-1410665690" ) - void method1948(boolean var1) { - } // L: 59 + void method1908(boolean var1) { + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(I)Lkb;", - garbageValue = "-948717510" + descriptor = "(B)Lkj;", + garbageValue = "-99" ) @Export("toBuffer") Buffer toBuffer() { - Buffer var1 = new Buffer(100); // L: 62 - var1.writeByte(ClientPreferences_optionCount); // L: 63 - var1.writeByte(this.roofsHidden ? 1 : 0); // L: 64 - var1.writeByte(this.titleMusicDisabled ? 1 : 0); // L: 65 - var1.writeByte(this.windowMode); // L: 66 - var1.writeByte(this.parameters.size()); // L: 67 - Iterator var2 = this.parameters.entrySet().iterator(); // L: 68 + Buffer var1 = new Buffer(100); + var1.writeByte(ClientPreferences_optionCount); + var1.writeByte(this.roofsHidden ? 1 : 0); + var1.writeByte(this.titleMusicDisabled ? 1 : 0); + var1.writeByte(this.windowMode); + var1.writeByte(this.parameters.size()); + Iterator var2 = this.parameters.entrySet().iterator(); while (var2.hasNext()) { - Entry var3 = (Entry)var2.next(); // L: 69 - var1.writeInt((Integer)var3.getKey()); // L: 71 - var1.writeInt((Integer)var3.getValue()); // L: 72 + Entry var3 = (Entry)var2.next(); + var1.writeInt((Integer)var3.getKey()); + var1.writeInt((Integer)var3.getValue()); + } + + var1.writeStringCp1252NullTerminated(this.rememberedUsername != null ? this.rememberedUsername : ""); + var1.writeBoolean(this.hideUsername); + var1.writeByte((int)(100.0D * this.field1057)); + var1.writeByte(this.musicVolume); + var1.writeByte(this.soundEffectsVolume); + var1.writeByte(this.areaSoundEffectsVolume); + return var1; + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Lib;IIB)[Llm;", + garbageValue = "93" + ) + public static Sprite[] method1918(AbstractArchive var0, int var1, int var2) { + if (!class304.method5363(var0, var1, var2)) { + return null; + } else { + Sprite[] var4 = new Sprite[class336.SpriteBuffer_spriteCount]; + + for (int var5 = 0; var5 < class336.SpriteBuffer_spriteCount; ++var5) { + Sprite var6 = var4[var5] = new Sprite(); + var6.width = DirectByteArrayCopier.SpriteBuffer_spriteWidth; + var6.height = class336.SpriteBuffer_spriteHeight; + var6.xOffset = class336.SpriteBuffer_xOffsets[var5]; + var6.yOffset = class336.SpriteBuffer_yOffsets[var5]; + var6.subWidth = class336.SpriteBuffer_spriteWidths[var5]; + var6.subHeight = class336.SpriteBuffer_spriteHeights[var5]; + int var7 = var6.subHeight * var6.subWidth; + byte[] var8 = GrandExchangeEvents.SpriteBuffer_pixels[var5]; + var6.pixels = new int[var7]; + + for (int var9 = 0; var9 < var7; ++var9) { + var6.pixels[var9] = class336.SpriteBuffer_spritePalette[var8[var9] & 255]; + } + } + + class336.SpriteBuffer_xOffsets = null; + class336.SpriteBuffer_yOffsets = null; + class336.SpriteBuffer_spriteWidths = null; + class336.SpriteBuffer_spriteHeights = null; + class336.SpriteBuffer_spritePalette = null; + GrandExchangeEvents.SpriteBuffer_pixels = null; + return var4; + } + } + + @ObfuscatedName("hq") + @ObfuscatedSignature( + descriptor = "(Lbq;ZI)V", + garbageValue = "-864569617" + ) + @Export("addPlayerToScene") + static void addPlayerToScene(Player var0, boolean var1) { + if (var0 != null && var0.isVisible() && !var0.isHidden) { + var0.isUnanimated = false; + if ((Client.isLowDetail && Players.Players_count > 50 || Players.Players_count > 200) && var1 && var0.movementSequence == var0.idleSequence) { + var0.isUnanimated = true; + } + + int var2 = var0.x >> 7; + int var3 = var0.y >> 7; + if (var2 >= 0 && var2 < 104 && var3 >= 0 && var3 < 104) { + long var4 = NPC.calculateTag(0, 0, 0, false, var0.index); + if (var0.model0 != null && Client.cycle >= var0.animationCycleStart && Client.cycle < var0.animationCycleEnd) { + var0.isUnanimated = false; + var0.tileHeight = SecureRandomFuture.getTileHeight(var0.x, var0.y, GameObject.Client_plane); + var0.playerCycle = Client.cycle; + ArchiveLoader.scene.addNullableObject(GameObject.Client_plane, var0.x, var0.y, var0.tileHeight, 60, var0, var0.rotation, var4, var0.field620, var0.field606, var0.field622, var0.field623); + } else { + if ((var0.x & 127) == 64 && (var0.y & 127) == 64) { + if (Client.tileLastDrawnActor[var2][var3] == Client.viewportDrawCount) { + return; + } + + Client.tileLastDrawnActor[var2][var3] = Client.viewportDrawCount; + } + + var0.tileHeight = SecureRandomFuture.getTileHeight(var0.x, var0.y, GameObject.Client_plane); + var0.playerCycle = Client.cycle; + ArchiveLoader.scene.drawEntity(GameObject.Client_plane, var0.x, var0.y, var0.tileHeight, 60, var0, var0.rotation, var4, var0.isWalking); + } + } } - var1.writeStringCp1252NullTerminated(this.rememberedUsername != null ? this.rememberedUsername : ""); // L: 75 - var1.writeBoolean(this.hideUsername); // L: 76 - return var1; // L: 77 } } diff --git a/runescape-client/src/main/java/Clock.java b/runescape-client/src/main/java/Clock.java index 997e07f28c..86381e6c75 100644 --- a/runescape-client/src/main/java/Clock.java +++ b/runescape-client/src/main/java/Clock.java @@ -3,68 +3,54 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ft") +@ObfuscatedName("fl") @Implements("Clock") public abstract class Clock { Clock() { - } // L: 4 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "345512591" + garbageValue = "2095078818" ) @Export("mark") public abstract void mark(); - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(III)I", - garbageValue = "-837141414" + garbageValue = "-680717242" ) @Export("wait") public abstract int wait(int var1, int var2); - @ObfuscatedName("f") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(II)Ljn;", - garbageValue = "-1793250808" + descriptor = "([BIIB)Ljava/lang/String;", + garbageValue = "74" ) - @Export("getNpcDefinition") - public static NPCDefinition getNpcDefinition(int var0) { - NPCDefinition var1 = (NPCDefinition)NPCDefinition.NpcDefinition_cached.get((long)var0); // L: 57 - if (var1 != null) { // L: 58 - return var1; - } else { - byte[] var2 = NPCDefinition.NpcDefinition_archive.takeFile(9, var0); // L: 59 - var1 = new NPCDefinition(); // L: 60 - var1.id = var0; // L: 61 - if (var2 != null) { // L: 62 - var1.decode(new Buffer(var2)); - } + @Export("decodeStringCp1252") + public static String decodeStringCp1252(byte[] var0, int var1, int var2) { + char[] var3 = new char[var2]; + int var4 = 0; - var1.postDecode(); // L: 63 - NPCDefinition.NpcDefinition_cached.put(var1, (long)var0); // L: 64 - return var1; // L: 65 - } - } + for (int var5 = 0; var5 < var2; ++var5) { + int var6 = var0[var5 + var1] & 255; + if (var6 != 0) { + if (var6 >= 128 && var6 < 160) { + char var7 = class298.cp1252AsciiExtension[var6 - 128]; + if (var7 == 0) { + var7 = '?'; + } - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "34" - ) - @Export("isKeyDown") - public static final boolean isKeyDown() { - synchronized(KeyHandler.KeyHandler_instance) { // L: 183 - if (KeyHandler.field428 == KeyHandler.field415) { // L: 184 - return false; - } else { - SecureRandomCallable.field555 = KeyHandler.field425[KeyHandler.field415]; // L: 185 - WorldMapManager.field335 = KeyHandler.field424[KeyHandler.field415]; // L: 186 - KeyHandler.field415 = KeyHandler.field415 + 1 & 127; // L: 187 - return true; // L: 188 + var6 = var7; + } + + var3[var4++] = (char)var6; } } + + return new String(var3, 0, var4); } } diff --git a/runescape-client/src/main/java/CollisionMap.java b/runescape-client/src/main/java/CollisionMap.java index 6ed6502e67..a32584afd2 100644 --- a/runescape-client/src/main/java/CollisionMap.java +++ b/runescape-client/src/main/java/CollisionMap.java @@ -4,512 +4,523 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fh") +@ObfuscatedName("fo") @Implements("CollisionMap") public class CollisionMap { - @ObfuscatedName("ah") + @ObfuscatedName("ll") + @ObfuscatedSignature( + descriptor = "Lhe;" + ) + static Widget field2092; + @ObfuscatedName("ac") @ObfuscatedGetter( - intValue = 1469076521 + intValue = -791234187 ) @Export("xInset") - int xInset; - @ObfuscatedName("az") - @ObfuscatedGetter( - intValue = -1784403855 - ) - @Export("yInset") - int yInset; + public int xInset; @ObfuscatedName("ak") @ObfuscatedGetter( - intValue = 803284803 + intValue = -32855099 + ) + @Export("yInset") + public int yInset; + @ObfuscatedName("av") + @ObfuscatedGetter( + intValue = -1313868737 ) @Export("xSize") int xSize; - @ObfuscatedName("au") + @ObfuscatedName("aq") @ObfuscatedGetter( - intValue = 726006289 + intValue = -1461710845 ) @Export("ySize") int ySize; - @ObfuscatedName("ai") + @ObfuscatedName("ah") @Export("flags") public int[][] flags; public CollisionMap(int var1, int var2) { - this.xInset = 0; // L: 44 + this.xInset = 0; this.yInset = 0; this.xSize = var1; this.ySize = var2; - this.flags = new int[this.xSize][this.ySize]; // L: 48 + this.flags = new int[this.xSize][this.ySize]; this.clear(); - } // L: 50 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1102469876" + garbageValue = "245593528" ) @Export("clear") public void clear() { - for (int var1 = 0; var1 < this.xSize; ++var1) { // L: 53 - for (int var2 = 0; var2 < this.ySize; ++var2) { // L: 54 - if (var1 != 0 && var2 != 0 && var1 < this.xSize - 5 && var2 < this.ySize - 5) { // L: 55 - this.flags[var1][var2] = 16777216; // L: 56 + for (int var1 = 0; var1 < this.xSize; ++var1) { + for (int var2 = 0; var2 < this.ySize; ++var2) { + if (var1 != 0 && var2 != 0 && var1 < this.xSize - 5 && var2 < this.ySize - 5) { + this.flags[var1][var2] = 16777216; } else { this.flags[var1][var2] = 16777215; } } } - } // L: 59 + } - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(IIIIZI)V", - garbageValue = "1208614237" - ) - public void method3683(int var1, int var2, int var3, int var4, boolean var5) { - var1 -= this.xInset; // L: 62 - var2 -= this.yInset; // L: 63 - if (var3 == 0) { // L: 64 - if (var4 == 0) { // L: 65 - this.setFlag(var1, var2, 128); // L: 66 - this.setFlag(var1 - 1, var2, 8); // L: 67 - } - - if (var4 == 1) { // L: 69 - this.setFlag(var1, var2, 2); // L: 70 - this.setFlag(var1, var2 + 1, 32); // L: 71 - } - - if (var4 == 2) { // L: 73 - this.setFlag(var1, var2, 8); // L: 74 - this.setFlag(var1 + 1, var2, 128); // L: 75 - } - - if (var4 == 3) { // L: 77 - this.setFlag(var1, var2, 32); // L: 78 - this.setFlag(var1, var2 - 1, 2); // L: 79 - } - } - - if (var3 == 1 || var3 == 3) { // L: 82 - if (var4 == 0) { // L: 83 - this.setFlag(var1, var2, 1); // L: 84 - this.setFlag(var1 - 1, var2 + 1, 16); // L: 85 - } - - if (var4 == 1) { // L: 87 - this.setFlag(var1, var2, 4); // L: 88 - this.setFlag(var1 + 1, var2 + 1, 64); // L: 89 - } - - if (var4 == 2) { // L: 91 - this.setFlag(var1, var2, 16); // L: 92 - this.setFlag(var1 + 1, var2 - 1, 1); // L: 93 - } - - if (var4 == 3) { // L: 95 - this.setFlag(var1, var2, 64); // L: 96 - this.setFlag(var1 - 1, var2 - 1, 4); // L: 97 - } - } - - if (var3 == 2) { // L: 100 - if (var4 == 0) { // L: 101 - this.setFlag(var1, var2, 130); // L: 102 - this.setFlag(var1 - 1, var2, 8); // L: 103 - this.setFlag(var1, var2 + 1, 32); // L: 104 - } - - if (var4 == 1) { // L: 106 - this.setFlag(var1, var2, 10); // L: 107 - this.setFlag(var1, var2 + 1, 32); // L: 108 - this.setFlag(var1 + 1, var2, 128); // L: 109 - } - - if (var4 == 2) { // L: 111 - this.setFlag(var1, var2, 40); // L: 112 - this.setFlag(var1 + 1, var2, 128); // L: 113 - this.setFlag(var1, var2 - 1, 2); // L: 114 - } - - if (var4 == 3) { // L: 116 - this.setFlag(var1, var2, 160); // L: 117 - this.setFlag(var1, var2 - 1, 2); // L: 118 - this.setFlag(var1 - 1, var2, 8); // L: 119 - } - } - - if (var5) { // L: 122 - if (var3 == 0) { // L: 123 - if (var4 == 0) { // L: 124 - this.setFlag(var1, var2, 65536); // L: 125 - this.setFlag(var1 - 1, var2, 4096); // L: 126 - } - - if (var4 == 1) { // L: 128 - this.setFlag(var1, var2, 1024); // L: 129 - this.setFlag(var1, var2 + 1, 16384); // L: 130 - } - - if (var4 == 2) { // L: 132 - this.setFlag(var1, var2, 4096); // L: 133 - this.setFlag(var1 + 1, var2, 65536); // L: 134 - } - - if (var4 == 3) { // L: 136 - this.setFlag(var1, var2, 16384); // L: 137 - this.setFlag(var1, var2 - 1, 1024); // L: 138 - } - } - - if (var3 == 1 || var3 == 3) { // L: 141 - if (var4 == 0) { // L: 142 - this.setFlag(var1, var2, 512); // L: 143 - this.setFlag(var1 - 1, var2 + 1, 8192); // L: 144 - } - - if (var4 == 1) { // L: 146 - this.setFlag(var1, var2, 2048); // L: 147 - this.setFlag(var1 + 1, var2 + 1, 32768); // L: 148 - } - - if (var4 == 2) { // L: 150 - this.setFlag(var1, var2, 8192); // L: 151 - this.setFlag(var1 + 1, var2 - 1, 512); // L: 152 - } - - if (var4 == 3) { // L: 154 - this.setFlag(var1, var2, 32768); // L: 155 - this.setFlag(var1 - 1, var2 - 1, 2048); // L: 156 - } - } - - if (var3 == 2) { // L: 159 - if (var4 == 0) { // L: 160 - this.setFlag(var1, var2, 66560); // L: 161 - this.setFlag(var1 - 1, var2, 4096); // L: 162 - this.setFlag(var1, var2 + 1, 16384); // L: 163 - } - - if (var4 == 1) { // L: 165 - this.setFlag(var1, var2, 5120); // L: 166 - this.setFlag(var1, var2 + 1, 16384); // L: 167 - this.setFlag(var1 + 1, var2, 65536); // L: 168 - } - - if (var4 == 2) { // L: 170 - this.setFlag(var1, var2, 20480); // L: 171 - this.setFlag(var1 + 1, var2, 65536); // L: 172 - this.setFlag(var1, var2 - 1, 1024); // L: 173 - } - - if (var4 == 3) { // L: 175 - this.setFlag(var1, var2, 81920); // L: 176 - this.setFlag(var1, var2 - 1, 1024); // L: 177 - this.setFlag(var1 - 1, var2, 4096); // L: 178 - } - } - } - - } // L: 182 - - @ObfuscatedName("l") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(IIIIZB)V", - garbageValue = "1" + garbageValue = "-12" + ) + public void method3611(int var1, int var2, int var3, int var4, boolean var5) { + var1 -= this.xInset; + var2 -= this.yInset; + if (var3 == 0) { + if (var4 == 0) { + this.setFlag(var1, var2, 128); + this.setFlag(var1 - 1, var2, 8); + } + + if (var4 == 1) { + this.setFlag(var1, var2, 2); + this.setFlag(var1, var2 + 1, 32); + } + + if (var4 == 2) { + this.setFlag(var1, var2, 8); + this.setFlag(var1 + 1, var2, 128); + } + + if (var4 == 3) { + this.setFlag(var1, var2, 32); + this.setFlag(var1, var2 - 1, 2); + } + } + + if (var3 == 1 || var3 == 3) { + if (var4 == 0) { + this.setFlag(var1, var2, 1); + this.setFlag(var1 - 1, var2 + 1, 16); + } + + if (var4 == 1) { + this.setFlag(var1, var2, 4); + this.setFlag(var1 + 1, var2 + 1, 64); + } + + if (var4 == 2) { + this.setFlag(var1, var2, 16); + this.setFlag(var1 + 1, var2 - 1, 1); + } + + if (var4 == 3) { + this.setFlag(var1, var2, 64); + this.setFlag(var1 - 1, var2 - 1, 4); + } + } + + if (var3 == 2) { + if (var4 == 0) { + this.setFlag(var1, var2, 130); + this.setFlag(var1 - 1, var2, 8); + this.setFlag(var1, var2 + 1, 32); + } + + if (var4 == 1) { + this.setFlag(var1, var2, 10); + this.setFlag(var1, var2 + 1, 32); + this.setFlag(var1 + 1, var2, 128); + } + + if (var4 == 2) { + this.setFlag(var1, var2, 40); + this.setFlag(var1 + 1, var2, 128); + this.setFlag(var1, var2 - 1, 2); + } + + if (var4 == 3) { + this.setFlag(var1, var2, 160); + this.setFlag(var1, var2 - 1, 2); + this.setFlag(var1 - 1, var2, 8); + } + } + + if (var5) { + if (var3 == 0) { + if (var4 == 0) { + this.setFlag(var1, var2, 65536); + this.setFlag(var1 - 1, var2, 4096); + } + + if (var4 == 1) { + this.setFlag(var1, var2, 1024); + this.setFlag(var1, var2 + 1, 16384); + } + + if (var4 == 2) { + this.setFlag(var1, var2, 4096); + this.setFlag(var1 + 1, var2, 65536); + } + + if (var4 == 3) { + this.setFlag(var1, var2, 16384); + this.setFlag(var1, var2 - 1, 1024); + } + } + + if (var3 == 1 || var3 == 3) { + if (var4 == 0) { + this.setFlag(var1, var2, 512); + this.setFlag(var1 - 1, var2 + 1, 8192); + } + + if (var4 == 1) { + this.setFlag(var1, var2, 2048); + this.setFlag(var1 + 1, var2 + 1, 32768); + } + + if (var4 == 2) { + this.setFlag(var1, var2, 8192); + this.setFlag(var1 + 1, var2 - 1, 512); + } + + if (var4 == 3) { + this.setFlag(var1, var2, 32768); + this.setFlag(var1 - 1, var2 - 1, 2048); + } + } + + if (var3 == 2) { + if (var4 == 0) { + this.setFlag(var1, var2, 66560); + this.setFlag(var1 - 1, var2, 4096); + this.setFlag(var1, var2 + 1, 16384); + } + + if (var4 == 1) { + this.setFlag(var1, var2, 5120); + this.setFlag(var1, var2 + 1, 16384); + this.setFlag(var1 + 1, var2, 65536); + } + + if (var4 == 2) { + this.setFlag(var1, var2, 20480); + this.setFlag(var1 + 1, var2, 65536); + this.setFlag(var1, var2 - 1, 1024); + } + + if (var4 == 3) { + this.setFlag(var1, var2, 81920); + this.setFlag(var1, var2 - 1, 1024); + this.setFlag(var1 - 1, var2, 4096); + } + } + } + + } + + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "(IIIIZB)V", + garbageValue = "-10" ) @Export("addGameObject") public void addGameObject(int var1, int var2, int var3, int var4, boolean var5) { - int var6 = 256; // L: 185 - if (var5) { // L: 186 + int var6 = 256; + if (var5) { var6 += 131072; } - var1 -= this.xInset; // L: 187 - var2 -= this.yInset; // L: 188 + var1 -= this.xInset; + var2 -= this.yInset; - for (int var7 = var1; var7 < var3 + var1; ++var7) { // L: 189 - if (var7 >= 0 && var7 < this.xSize) { // L: 190 - for (int var8 = var2; var8 < var2 + var4; ++var8) { // L: 191 - if (var8 >= 0 && var8 < this.ySize) { // L: 192 + for (int var7 = var1; var7 < var3 + var1; ++var7) { + if (var7 >= 0 && var7 < this.xSize) { + for (int var8 = var2; var8 < var2 + var4; ++var8) { + if (var8 >= 0 && var8 < this.ySize) { this.setFlag(var7, var8, var6); } } } } - } // L: 196 + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "-497900388" + garbageValue = "-2097917762" ) @Export("setBlockedByFloor") public void setBlockedByFloor(int var1, int var2) { - var1 -= this.xInset; // L: 199 - var2 -= this.yInset; // L: 200 - int[] var10000 = this.flags[var1]; // L: 201 + var1 -= this.xInset; + var2 -= this.yInset; + int[] var10000 = this.flags[var1]; var10000[var2] |= 2097152; - } // L: 202 + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "-2077478185" + garbageValue = "-1697769054" ) @Export("setBlockedByFloorDec") public void setBlockedByFloorDec(int var1, int var2) { - var1 -= this.xInset; // L: 205 - var2 -= this.yInset; // L: 206 - int[] var10000 = this.flags[var1]; // L: 207 + var1 -= this.xInset; + var2 -= this.yInset; + int[] var10000 = this.flags[var1]; var10000[var2] |= 262144; - } // L: 208 + } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(IIII)V", - garbageValue = "-1102921575" + descriptor = "(IIIB)V", + garbageValue = "4" ) @Export("setFlag") void setFlag(int var1, int var2, int var3) { - int[] var10000 = this.flags[var1]; // L: 211 + int[] var10000 = this.flags[var1]; var10000[var2] |= var3; - } // L: 212 + } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( descriptor = "(IIIIZI)V", - garbageValue = "1625102421" + garbageValue = "1790847002" ) - public void method3688(int var1, int var2, int var3, int var4, boolean var5) { - var1 -= this.xInset; // L: 215 - var2 -= this.yInset; // L: 216 - if (var3 == 0) { // L: 217 - if (var4 == 0) { // L: 218 - this.setFlagOff(var1, var2, 128); // L: 219 - this.setFlagOff(var1 - 1, var2, 8); // L: 220 + public void method3616(int var1, int var2, int var3, int var4, boolean var5) { + var1 -= this.xInset; + var2 -= this.yInset; + if (var3 == 0) { + if (var4 == 0) { + this.setFlagOff(var1, var2, 128); + this.setFlagOff(var1 - 1, var2, 8); } - if (var4 == 1) { // L: 222 - this.setFlagOff(var1, var2, 2); // L: 223 - this.setFlagOff(var1, var2 + 1, 32); // L: 224 + if (var4 == 1) { + this.setFlagOff(var1, var2, 2); + this.setFlagOff(var1, var2 + 1, 32); } - if (var4 == 2) { // L: 226 - this.setFlagOff(var1, var2, 8); // L: 227 - this.setFlagOff(var1 + 1, var2, 128); // L: 228 + if (var4 == 2) { + this.setFlagOff(var1, var2, 8); + this.setFlagOff(var1 + 1, var2, 128); } - if (var4 == 3) { // L: 230 - this.setFlagOff(var1, var2, 32); // L: 231 - this.setFlagOff(var1, var2 - 1, 2); // L: 232 + if (var4 == 3) { + this.setFlagOff(var1, var2, 32); + this.setFlagOff(var1, var2 - 1, 2); } } - if (var3 == 1 || var3 == 3) { // L: 235 - if (var4 == 0) { // L: 236 - this.setFlagOff(var1, var2, 1); // L: 237 - this.setFlagOff(var1 - 1, var2 + 1, 16); // L: 238 + if (var3 == 1 || var3 == 3) { + if (var4 == 0) { + this.setFlagOff(var1, var2, 1); + this.setFlagOff(var1 - 1, var2 + 1, 16); } - if (var4 == 1) { // L: 240 - this.setFlagOff(var1, var2, 4); // L: 241 - this.setFlagOff(var1 + 1, var2 + 1, 64); // L: 242 + if (var4 == 1) { + this.setFlagOff(var1, var2, 4); + this.setFlagOff(var1 + 1, var2 + 1, 64); } - if (var4 == 2) { // L: 244 - this.setFlagOff(var1, var2, 16); // L: 245 - this.setFlagOff(var1 + 1, var2 - 1, 1); // L: 246 + if (var4 == 2) { + this.setFlagOff(var1, var2, 16); + this.setFlagOff(var1 + 1, var2 - 1, 1); } - if (var4 == 3) { // L: 248 - this.setFlagOff(var1, var2, 64); // L: 249 - this.setFlagOff(var1 - 1, var2 - 1, 4); // L: 250 + if (var4 == 3) { + this.setFlagOff(var1, var2, 64); + this.setFlagOff(var1 - 1, var2 - 1, 4); } } - if (var3 == 2) { // L: 253 - if (var4 == 0) { // L: 254 - this.setFlagOff(var1, var2, 130); // L: 255 - this.setFlagOff(var1 - 1, var2, 8); // L: 256 - this.setFlagOff(var1, var2 + 1, 32); // L: 257 + if (var3 == 2) { + if (var4 == 0) { + this.setFlagOff(var1, var2, 130); + this.setFlagOff(var1 - 1, var2, 8); + this.setFlagOff(var1, var2 + 1, 32); } - if (var4 == 1) { // L: 259 - this.setFlagOff(var1, var2, 10); // L: 260 - this.setFlagOff(var1, var2 + 1, 32); // L: 261 - this.setFlagOff(var1 + 1, var2, 128); // L: 262 + if (var4 == 1) { + this.setFlagOff(var1, var2, 10); + this.setFlagOff(var1, var2 + 1, 32); + this.setFlagOff(var1 + 1, var2, 128); } - if (var4 == 2) { // L: 264 - this.setFlagOff(var1, var2, 40); // L: 265 - this.setFlagOff(var1 + 1, var2, 128); // L: 266 - this.setFlagOff(var1, var2 - 1, 2); // L: 267 + if (var4 == 2) { + this.setFlagOff(var1, var2, 40); + this.setFlagOff(var1 + 1, var2, 128); + this.setFlagOff(var1, var2 - 1, 2); } - if (var4 == 3) { // L: 269 - this.setFlagOff(var1, var2, 160); // L: 270 - this.setFlagOff(var1, var2 - 1, 2); // L: 271 - this.setFlagOff(var1 - 1, var2, 8); // L: 272 + if (var4 == 3) { + this.setFlagOff(var1, var2, 160); + this.setFlagOff(var1, var2 - 1, 2); + this.setFlagOff(var1 - 1, var2, 8); } } - if (var5) { // L: 275 - if (var3 == 0) { // L: 276 - if (var4 == 0) { // L: 277 - this.setFlagOff(var1, var2, 65536); // L: 278 - this.setFlagOff(var1 - 1, var2, 4096); // L: 279 + if (var5) { + if (var3 == 0) { + if (var4 == 0) { + this.setFlagOff(var1, var2, 65536); + this.setFlagOff(var1 - 1, var2, 4096); } - if (var4 == 1) { // L: 281 - this.setFlagOff(var1, var2, 1024); // L: 282 - this.setFlagOff(var1, var2 + 1, 16384); // L: 283 + if (var4 == 1) { + this.setFlagOff(var1, var2, 1024); + this.setFlagOff(var1, var2 + 1, 16384); } - if (var4 == 2) { // L: 285 - this.setFlagOff(var1, var2, 4096); // L: 286 - this.setFlagOff(var1 + 1, var2, 65536); // L: 287 + if (var4 == 2) { + this.setFlagOff(var1, var2, 4096); + this.setFlagOff(var1 + 1, var2, 65536); } - if (var4 == 3) { // L: 289 - this.setFlagOff(var1, var2, 16384); // L: 290 - this.setFlagOff(var1, var2 - 1, 1024); // L: 291 + if (var4 == 3) { + this.setFlagOff(var1, var2, 16384); + this.setFlagOff(var1, var2 - 1, 1024); } } - if (var3 == 1 || var3 == 3) { // L: 294 - if (var4 == 0) { // L: 295 - this.setFlagOff(var1, var2, 512); // L: 296 - this.setFlagOff(var1 - 1, var2 + 1, 8192); // L: 297 + if (var3 == 1 || var3 == 3) { + if (var4 == 0) { + this.setFlagOff(var1, var2, 512); + this.setFlagOff(var1 - 1, var2 + 1, 8192); } - if (var4 == 1) { // L: 299 - this.setFlagOff(var1, var2, 2048); // L: 300 - this.setFlagOff(var1 + 1, var2 + 1, 32768); // L: 301 + if (var4 == 1) { + this.setFlagOff(var1, var2, 2048); + this.setFlagOff(var1 + 1, var2 + 1, 32768); } - if (var4 == 2) { // L: 303 - this.setFlagOff(var1, var2, 8192); // L: 304 - this.setFlagOff(var1 + 1, var2 - 1, 512); // L: 305 + if (var4 == 2) { + this.setFlagOff(var1, var2, 8192); + this.setFlagOff(var1 + 1, var2 - 1, 512); } - if (var4 == 3) { // L: 307 - this.setFlagOff(var1, var2, 32768); // L: 308 - this.setFlagOff(var1 - 1, var2 - 1, 2048); // L: 309 + if (var4 == 3) { + this.setFlagOff(var1, var2, 32768); + this.setFlagOff(var1 - 1, var2 - 1, 2048); } } - if (var3 == 2) { // L: 312 - if (var4 == 0) { // L: 313 - this.setFlagOff(var1, var2, 66560); // L: 314 - this.setFlagOff(var1 - 1, var2, 4096); // L: 315 - this.setFlagOff(var1, var2 + 1, 16384); // L: 316 + if (var3 == 2) { + if (var4 == 0) { + this.setFlagOff(var1, var2, 66560); + this.setFlagOff(var1 - 1, var2, 4096); + this.setFlagOff(var1, var2 + 1, 16384); } - if (var4 == 1) { // L: 318 - this.setFlagOff(var1, var2, 5120); // L: 319 - this.setFlagOff(var1, var2 + 1, 16384); // L: 320 - this.setFlagOff(var1 + 1, var2, 65536); // L: 321 + if (var4 == 1) { + this.setFlagOff(var1, var2, 5120); + this.setFlagOff(var1, var2 + 1, 16384); + this.setFlagOff(var1 + 1, var2, 65536); } - if (var4 == 2) { // L: 323 - this.setFlagOff(var1, var2, 20480); // L: 324 - this.setFlagOff(var1 + 1, var2, 65536); // L: 325 - this.setFlagOff(var1, var2 - 1, 1024); // L: 326 + if (var4 == 2) { + this.setFlagOff(var1, var2, 20480); + this.setFlagOff(var1 + 1, var2, 65536); + this.setFlagOff(var1, var2 - 1, 1024); } - if (var4 == 3) { // L: 328 - this.setFlagOff(var1, var2, 81920); // L: 329 - this.setFlagOff(var1, var2 - 1, 1024); // L: 330 - this.setFlagOff(var1 - 1, var2, 4096); // L: 331 + if (var4 == 3) { + this.setFlagOff(var1, var2, 81920); + this.setFlagOff(var1, var2 - 1, 1024); + this.setFlagOff(var1 - 1, var2, 4096); } } } - } // L: 335 + } - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "(IIIIIZI)V", - garbageValue = "825527844" + descriptor = "(IIIIIZB)V", + garbageValue = "4" ) @Export("setFlagOffNonSquare") public void setFlagOffNonSquare(int var1, int var2, int var3, int var4, int var5, boolean var6) { - int var7 = 256; // L: 338 - if (var6) { // L: 339 + int var7 = 256; + if (var6) { var7 += 131072; } - var1 -= this.xInset; // L: 340 - var2 -= this.yInset; // L: 341 + var1 -= this.xInset; + var2 -= this.yInset; int var8; - if (var5 == 1 || var5 == 3) { // L: 342 - var8 = var3; // L: 343 - var3 = var4; // L: 344 - var4 = var8; // L: 345 + if (var5 == 1 || var5 == 3) { + var8 = var3; + var3 = var4; + var4 = var8; } - for (var8 = var1; var8 < var3 + var1; ++var8) { // L: 347 - if (var8 >= 0 && var8 < this.xSize) { // L: 348 - for (int var9 = var2; var9 < var2 + var4; ++var9) { // L: 349 + for (var8 = var1; var8 < var3 + var1; ++var8) { + if (var8 >= 0 && var8 < this.xSize) { + for (int var9 = var2; var9 < var2 + var4; ++var9) { if (var9 >= 0 && var9 < this.ySize) { - this.setFlagOff(var8, var9, var7); // L: 350 + this.setFlagOff(var8, var9, var7); } } } } - } // L: 354 + } - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( descriptor = "(IIII)V", - garbageValue = "-1464049351" + garbageValue = "180780669" ) @Export("setFlagOff") void setFlagOff(int var1, int var2, int var3) { - int[] var10000 = this.flags[var1]; // L: 357 + int[] var10000 = this.flags[var1]; var10000[var2] &= ~var3; - } // L: 358 + } - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "(IIS)V", - garbageValue = "-5902" + descriptor = "(IIB)V", + garbageValue = "22" ) - public void method3691(int var1, int var2) { - var1 -= this.xInset; // L: 361 - var2 -= this.yInset; // L: 362 - int[] var10000 = this.flags[var1]; // L: 363 + public void method3619(int var1, int var2) { + var1 -= this.xInset; + var2 -= this.yInset; + int[] var10000 = this.flags[var1]; var10000[var2] &= -262145; - } // L: 364 + } - @ObfuscatedName("b") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ljava/lang/Object;ZI)[B", - garbageValue = "299117016" + descriptor = "(II)Lhe;", + garbageValue = "185154733" ) - public static byte[] method3712(Object var0, boolean var1) { - if (var0 == null) { // L: 30 - return null; - } else if (var0 instanceof byte[]) { // L: 31 - byte[] var6 = (byte[])((byte[])var0); // L: 32 - if (var1) { // L: 33 - int var4 = var6.length; // L: 36 - byte[] var5 = new byte[var4]; // L: 37 - System.arraycopy(var6, 0, var5, 0, var4); // L: 38 - return var5; // L: 41 - } else { - return var6; // L: 43 + @Export("getWidget") + public static Widget getWidget(int var0) { + int var1 = var0 >> 16; + int var2 = var0 & 65535; + if (class9.Widget_interfaceComponents[var1] == null || class9.Widget_interfaceComponents[var1][var2] == null) { + boolean var3 = class41.loadInterface(var1); + if (!var3) { + return null; } - } else if (var0 instanceof AbstractByteArrayCopier) { // L: 45 - AbstractByteArrayCopier var2 = (AbstractByteArrayCopier)var0; // L: 46 - return var2.get(); // L: 47 - } else { - throw new IllegalArgumentException(); // L: 49 } + + return class9.Widget_interfaceComponents[var1][var2]; + } + + @ObfuscatedName("kn") + @ObfuscatedSignature( + descriptor = "(Lhe;I)V", + garbageValue = "-595086327" + ) + @Export("invalidateWidget") + static void invalidateWidget(Widget var0) { + if (var0.cycle == Client.field852) { + Client.field901[var0.rootIndex] = true; + } + } } diff --git a/runescape-client/src/main/java/Coord.java b/runescape-client/src/main/java/Coord.java index 60a82b723f..c441912231 100644 --- a/runescape-client/src/main/java/Coord.java +++ b/runescape-client/src/main/java/Coord.java @@ -4,208 +4,132 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hw") +@ObfuscatedName("hs") @Implements("Coord") public class Coord { - @ObfuscatedName("k") - @Export("ByteArrayPool_alternativeSizes") - static int[] ByteArrayPool_alternativeSizes; - @ObfuscatedName("ej") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = -579877889 - ) - @Export("port1") - static int port1; - @ObfuscatedName("em") - @ObfuscatedGetter( - intValue = 604273715 - ) - @Export("port2") - static int port2; - @ObfuscatedName("lv") - @ObfuscatedGetter( - intValue = 1585489899 - ) - @Export("menuX") - static int menuX; - @ObfuscatedName("f") - @ObfuscatedGetter( - intValue = 252017765 + intValue = -578473323 ) @Export("plane") public int plane; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -865171177 + intValue = -1743960415 ) @Export("x") public int x; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 1194018723 + intValue = -1369689255 ) @Export("y") public int y; @ObfuscatedSignature( - descriptor = "(Lhw;)V" + descriptor = "(Lhs;)V" ) public Coord(Coord var1) { - this.plane = var1.plane; // L: 15 - this.x = var1.x; // L: 16 - this.y = var1.y; // L: 17 - } // L: 18 + this.plane = var1.plane; + this.x = var1.x; + this.y = var1.y; + } public Coord(int var1, int var2, int var3) { - this.plane = var1; // L: 9 - this.x = var2; // L: 10 - this.y = var3; // L: 11 - } // L: 12 + this.plane = var1; + this.x = var2; + this.y = var3; + } public Coord(int var1) { - if (var1 == -1) { // L: 21 + if (var1 == -1) { this.plane = -1; } else { - this.plane = var1 >> 28 & 3; // L: 23 - this.x = var1 >> 14 & 16383; // L: 24 - this.y = var1 & 16383; // L: 25 + this.plane = var1 >> 28 & 3; + this.x = var1 >> 14 & 16383; + this.y = var1 & 16383; } - } // L: 27 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-330056145" + descriptor = "(B)I", + garbageValue = "-27" ) @Export("packed") public int packed() { - return this.plane << 28 | this.x << 14 | this.y; // L: 30 + return this.plane << 28 | this.x << 14 | this.y; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lhw;I)Z", - garbageValue = "824045461" + descriptor = "(Lhs;I)Z", + garbageValue = "902297370" ) @Export("equalsCoord") boolean equalsCoord(Coord var1) { - if (this.plane != var1.plane) { // L: 40 + if (this.plane != var1.plane) { return false; - } else if (this.x != var1.x) { // L: 41 + } else if (this.x != var1.x) { return false; } else { - return this.y == var1.y; // L: 42 + return this.y == var1.y; } } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)Ljava/lang/String;", - garbageValue = "-40" + descriptor = "(Ljava/lang/String;I)Ljava/lang/String;", + garbageValue = "-1856185425" ) @Export("toString") String toString(String var1) { - return this.plane + var1 + (this.x >> 6) + var1 + (this.y >> 6) + var1 + (this.x & 63) + var1 + (this.y & 63); // L: 55 + return this.plane + var1 + (this.x >> 6) + var1 + (this.y >> 6) + var1 + (this.x & 63) + var1 + (this.y & 63); } public boolean equals(Object var1) { - if (this == var1) { // L: 34 + if (this == var1) { return true; } else { - return !(var1 instanceof Coord) ? false : this.equalsCoord((Coord)var1); // L: 35 36 + return !(var1 instanceof Coord) ? false : this.equalsCoord((Coord)var1); } } public int hashCode() { - return this.packed(); // L: 47 + return this.packed(); } public String toString() { - return this.toString(","); // L: 51 + return this.toString(","); } - @ObfuscatedName("gm") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(IIIIZI)V", - garbageValue = "1944404" + descriptor = "(II)I", + garbageValue = "-676384531" ) - @Export("setViewportShape") - static final void setViewportShape(int var0, int var1, int var2, int var3, boolean var4) { - if (var2 < 1) { // L: 4748 - var2 = 1; - } - - if (var3 < 1) { // L: 4749 - var3 = 1; - } - - int var5 = var3 - 334; // L: 4750 - int var6; - if (var5 < 0) { // L: 4752 - var6 = Client.field873; - } else if (var5 >= 100) { // L: 4753 - var6 = Client.field932; + @Export("getVarbit") + public static int getVarbit(int var0) { + VarbitDefinition var2 = (VarbitDefinition)VarbitDefinition.VarbitDefinition_cached.get((long)var0); + VarbitDefinition var1; + if (var2 != null) { + var1 = var2; } else { - var6 = (Client.field932 - Client.field873) * var5 / 100 + Client.field873; // L: 4754 - } - - int var7 = var3 * var6 * 512 / (var2 * 334); // L: 4755 - int var8; - int var9; - short var14; - if (var7 < Client.field937) { // L: 4756 - var14 = Client.field937; // L: 4757 - var6 = var14 * var2 * 334 / (var3 * 512); // L: 4758 - if (var6 > Client.field753) { // L: 4759 - var6 = Client.field753; // L: 4760 - var8 = var3 * var6 * 512 / (var14 * 334); // L: 4761 - var9 = (var2 - var8) / 2; // L: 4762 - if (var4) { // L: 4763 - Rasterizer2D.Rasterizer2D_resetClip(); // L: 4764 - Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var9, var3, -16777216); // L: 4765 - Rasterizer2D.Rasterizer2D_fillRectangle(var0 + var2 - var9, var1, var9, var3, -16777216); // L: 4766 - } - - var0 += var9; // L: 4768 - var2 -= var9 * 2; // L: 4769 - } - } else if (var7 > Client.field935) { // L: 4772 - var14 = Client.field935; // L: 4773 - var6 = var14 * var2 * 334 / (var3 * 512); // L: 4774 - if (var6 < Client.field865) { // L: 4775 - var6 = Client.field865; // L: 4776 - var8 = var14 * var2 * 334 / (var6 * 512); // L: 4777 - var9 = (var3 - var8) / 2; // L: 4778 - if (var4) { // L: 4779 - Rasterizer2D.Rasterizer2D_resetClip(); // L: 4780 - Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var2, var9, -16777216); // L: 4781 - Rasterizer2D.Rasterizer2D_fillRectangle(var0, var3 + var1 - var9, var2, var9, -16777216); // L: 4782 - } - - var1 += var9; // L: 4784 - var3 -= var9 * 2; // L: 4785 - } - } - - Client.viewportZoom = var3 * var6 / 334; // L: 4788 - if (var2 != Client.viewportWidth || var3 != Client.viewportHeight) { // L: 4789 - int[] var13 = new int[9]; // L: 4791 - - for (var9 = 0; var9 < var13.length; ++var9) { // L: 4792 - int var10 = var9 * 32 + 15 + 128; // L: 4793 - int var11 = MilliClock.method3587(var10); // L: 4794 - int var12 = Rasterizer3D.Rasterizer3D_sine[var10]; // L: 4795 - var11 = HorizontalAlignment.method4876(var11, var3); // L: 4796 - var13[var9] = var11 * var12 >> 16; // L: 4797 + byte[] var3 = VarbitDefinition.VarbitDefinition_archive.takeFile(14, var0); + var2 = new VarbitDefinition(); + if (var3 != null) { + var2.decode(new Buffer(var3)); } - Scene.Scene_buildVisiblityMap(var13, 500, 800, var2 * 334 / var3, 334); // L: 4799 + VarbitDefinition.VarbitDefinition_cached.put(var2, (long)var0); + var1 = var2; } - Client.viewportOffsetX = var0; // L: 4802 - Client.viewportOffsetY = var1; // L: 4803 - Client.viewportWidth = var2; // L: 4804 - Client.viewportHeight = var3; // L: 4805 - } // L: 4806 + int var7 = var1.baseVar; + int var4 = var1.startBit; + int var5 = var1.endBit; + int var6 = Varps.Varps_masks[var5 - var4]; + return Varps.Varps_main[var7] >> var4 & var6; + } } diff --git a/runescape-client/src/main/java/Decimator.java b/runescape-client/src/main/java/Decimator.java index 5baff2c97a..fe0f998a6e 100644 --- a/runescape-client/src/main/java/Decimator.java +++ b/runescape-client/src/main/java/Decimator.java @@ -4,170 +4,160 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dw") +@ObfuscatedName("dn") @Implements("Decimator") public class Decimator { - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "Liw;" - ) - @Export("Widget_archive") - static AbstractArchive Widget_archive; - @ObfuscatedName("m") + @ObfuscatedName("ig") @ObfuscatedGetter( - intValue = 176497707 + intValue = -303993957 + ) + @Export("oculusOrbFocalPointY") + static int oculusOrbFocalPointY; + @ObfuscatedName("w") + @ObfuscatedGetter( + intValue = -1543125857 ) @Export("inputRate") int inputRate; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 829338493 + intValue = 1624874363 ) @Export("outputRate") int outputRate; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("table") int[][] table; public Decimator(int var1, int var2) { - if (var2 != var1) { // L: 14 - int var3 = GameShell.method1072(var1, var2); // L: 15 - var1 /= var3; // L: 16 - var2 /= var3; // L: 17 - this.inputRate = var1; // L: 18 - this.outputRate = var2; // L: 19 - this.table = new int[var1][14]; // L: 20 + if (var2 != var1) { + int var4 = var1; + int var5 = var2; + if (var2 > var1) { + var4 = var2; + var5 = var1; + } - for (int var4 = 0; var4 < var1; ++var4) { // L: 21 - int[] var5 = this.table[var4]; // L: 22 - double var6 = (double)var4 / (double)var1 + 6.0D; // L: 23 - int var8 = (int)Math.floor(var6 - 7.0D + 1.0D); // L: 24 - if (var8 < 0) { // L: 25 - var8 = 0; + while (var5 != 0) { + int var6 = var4 % var5; + var4 = var5; + var5 = var6; + } + + var1 /= var4; + var2 /= var4; + this.inputRate = var1; + this.outputRate = var2; + this.table = new int[var1][14]; + + for (int var7 = 0; var7 < var1; ++var7) { + int[] var8 = this.table[var7]; + double var9 = 6.0D + (double)var7 / (double)var1; + int var11 = (int)Math.floor(1.0D + (var9 - 7.0D)); + if (var11 < 0) { + var11 = 0; } - int var9 = (int)Math.ceil(7.0D + var6); // L: 26 - if (var9 > 14) { // L: 27 - var9 = 14; + int var12 = (int)Math.ceil(7.0D + var9); + if (var12 > 14) { + var12 = 14; } - for (double var10 = (double)var2 / (double)var1; var8 < var9; ++var8) { // L: 28 - double var12 = 3.141592653589793D * ((double)var8 - var6); - double var14 = var10; - if (var12 < -1.0E-4D || var12 > 1.0E-4D) { - var14 = var10 * (Math.sin(var12) / var12); + for (double var13 = (double)var2 / (double)var1; var11 < var12; ++var11) { + double var15 = 3.141592653589793D * ((double)var11 - var9); + double var17 = var13; + if (var15 < -1.0E-4D || var15 > 1.0E-4D) { + var17 = var13 * (Math.sin(var15) / var15); } - var14 *= 0.54D + 0.46D * Math.cos(((double)var8 - var6) * 0.2243994752564138D); - var5[var8] = (int)Math.floor(0.5D + var14 * 65536.0D); + var17 *= 0.54D + 0.46D * Math.cos(((double)var11 - var9) * 0.2243994752564138D); + var8[var11] = (int)Math.floor(var17 * 65536.0D + 0.5D); } } } - } // L: 37 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "([BI)[B", - garbageValue = "-792714030" + garbageValue = "-77952931" ) @Export("resample") byte[] resample(byte[] var1) { - if (this.table != null) { // L: 40 - int var2 = (int)((long)this.outputRate * (long)var1.length / (long)this.inputRate) + 14; // L: 41 - int[] var3 = new int[var2]; // L: 42 - int var4 = 0; // L: 43 - int var5 = 0; // L: 44 + if (this.table != null) { + int var2 = (int)((long)var1.length * (long)this.outputRate / (long)this.inputRate) + 14; + int[] var3 = new int[var2]; + int var4 = 0; + int var5 = 0; int var6; - for (var6 = 0; var6 < var1.length; ++var6) { // L: 45 - byte var7 = var1[var6]; // L: 46 - int[] var8 = this.table[var5]; // L: 47 + for (var6 = 0; var6 < var1.length; ++var6) { + byte var7 = var1[var6]; + int[] var8 = this.table[var5]; int var9; - for (var9 = 0; var9 < 14; ++var9) { // L: 48 - var3[var9 + var4] += var8[var9] * var7; + for (var9 = 0; var9 < 14; ++var9) { + var3[var4 + var9] += var8[var9] * var7; } - var5 += this.outputRate; // L: 49 - var9 = var5 / this.inputRate; // L: 50 - var4 += var9; // L: 51 - var5 -= var9 * this.inputRate; // L: 52 + var5 += this.outputRate; + var9 = var5 / this.inputRate; + var4 += var9; + var5 -= var9 * this.inputRate; } - var1 = new byte[var2]; // L: 54 + var1 = new byte[var2]; - for (var6 = 0; var6 < var2; ++var6) { // L: 55 - int var10 = var3[var6] + 32768 >> 16; // L: 56 - if (var10 < -128) { // L: 57 + for (var6 = 0; var6 < var2; ++var6) { + int var10 = var3[var6] + 32768 >> 16; + if (var10 < -128) { var1[var6] = -128; - } else if (var10 > 127) { // L: 58 + } else if (var10 > 127) { var1[var6] = 127; } else { - var1[var6] = (byte)var10; // L: 59 + var1[var6] = (byte)var10; } } } - return var1; // L: 62 + return var1; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "1298471977" + descriptor = "(IB)I", + garbageValue = "-4" ) @Export("scaleRate") int scaleRate(int var1) { if (this.table != null) { - var1 = (int)((long)var1 * (long)this.outputRate / (long)this.inputRate); // L: 66 + var1 = (int)((long)this.outputRate * (long)var1 / (long)this.inputRate); } - return var1; // L: 67 + return var1; } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "-1879393337" + descriptor = "(IB)I", + garbageValue = "-38" ) @Export("scalePosition") int scalePosition(int var1) { - if (this.table != null) { // L: 71 + if (this.table != null) { var1 = (int)((long)var1 * (long)this.outputRate / (long)this.inputRate) + 6; } - return var1; // L: 72 + return var1; } - @ObfuscatedName("b") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(II)Ljd;", - garbageValue = "1446464010" + descriptor = "(II)Z", + garbageValue = "319524550" ) - @Export("getEnum") - public static EnumDefinition getEnum(int var0) { - EnumDefinition var1 = (EnumDefinition)EnumDefinition.EnumDefinition_cached.get((long)var0); // L: 29 - if (var1 != null) { // L: 30 - return var1; - } else { - byte[] var2 = EnumDefinition.EnumDefinition_archive.takeFile(8, var0); // L: 31 - var1 = new EnumDefinition(); // L: 32 - if (var2 != null) { // L: 33 - var1.decode(new Buffer(var2)); - } - - EnumDefinition.EnumDefinition_cached.put(var1, (long)var0); // L: 34 - return var1; // L: 35 - } + public static boolean method2598(int var0) { + return (var0 >> 21 & 1) != 0; } - - @ObfuscatedName("kr") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "1079487427" - ) - static void method2668(int var0) { - Client.oculusOrbState = var0; // L: 11660 - } // L: 11661 } diff --git a/runescape-client/src/main/java/DefaultsGroup.java b/runescape-client/src/main/java/DefaultsGroup.java index 944e23ba6c..b14f55b799 100644 --- a/runescape-client/src/main/java/DefaultsGroup.java +++ b/runescape-client/src/main/java/DefaultsGroup.java @@ -4,44 +4,71 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lk") +@ObfuscatedName("ld") @Implements("DefaultsGroup") public class DefaultsGroup { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Llk;" + descriptor = "Lld;" ) - static final DefaultsGroup field3833; - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "Liw;" - ) - @Export("SequenceDefinition_skeletonsArchive") - public static AbstractArchive SequenceDefinition_skeletonsArchive; - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "[Lcf;" - ) - @Export("World_worlds") - static World[] World_worlds; - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "[Lle;" - ) - @Export("title_muteSprite") - static IndexedSprite[] title_muteSprite; - @ObfuscatedName("b") + static final DefaultsGroup field3839; + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -506210431 + intValue = 139926061 ) @Export("group") final int group; static { - field3833 = new DefaultsGroup(3); // L: 4 + field3839 = new DefaultsGroup(3); } DefaultsGroup(int var1) { - this.group = var1; // L: 8 - } // L: 9 + this.group = var1; + } + + @ObfuscatedName("fd") + @ObfuscatedSignature( + descriptor = "(S)V", + garbageValue = "19331" + ) + static void method5939() { + Client.packetWriter.clearBuffer(); + Client.packetWriter.packetBuffer.offset = 0; + Client.packetWriter.serverPacket = null; + Client.packetWriter.field1335 = null; + Client.packetWriter.field1336 = null; + Client.packetWriter.field1337 = null; + Client.packetWriter.serverPacketLength = 0; + Client.packetWriter.field1333 = 0; + Client.rebootTimer = 0; + Client.menuOptionsCount = 0; + Client.isMenuOpen = false; + Client.minimapState = 0; + Client.destinationX = 0; + + int var0; + for (var0 = 0; var0 < 2048; ++var0) { + Client.players[var0] = null; + } + + PlayerAppearance.localPlayer = null; + + for (var0 = 0; var0 < Client.npcs.length; ++var0) { + NPC var1 = Client.npcs[var0]; + if (var1 != null) { + var1.targetIndex = -1; + var1.false0 = false; + } + } + + ItemContainer.itemContainers = new NodeHashTable(32); + WorldMapCacheName.updateGameState(30); + + for (var0 = 0; var0 < 100; ++var0) { + Client.field901[var0] = true; + } + + MouseRecorder.method1264(); + } } diff --git a/runescape-client/src/main/java/DemotingHashTable.java b/runescape-client/src/main/java/DemotingHashTable.java index 852698ede4..75fa26bc61 100644 --- a/runescape-client/src/main/java/DemotingHashTable.java +++ b/runescape-client/src/main/java/DemotingHashTable.java @@ -3,154 +3,154 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fi") +@ObfuscatedName("fr") @Implements("DemotingHashTable") public final class DemotingHashTable { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("capacity") int capacity; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("remaining") int remaining; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lll;" + descriptor = "Lla;" ) @Export("hashTable") IterableNodeHashTable hashTable; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Ljt;" + descriptor = "Ljf;" ) @Export("queue") IterableDualNodeQueue queue; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lee;" + descriptor = "Len;" ) - class155 field1986; + class155 field1984; public DemotingHashTable(int var1, int var2) { - this.queue = new IterableDualNodeQueue(); // L: 11 - this.capacity = var1; // L: 15 - this.remaining = var1; // L: 16 + this.queue = new IterableDualNodeQueue(); + this.capacity = var1; + this.remaining = var1; int var3; - for (var3 = 1; var3 + var3 < var1 && var3 < var2; var3 += var3) { // L: 17 18 + for (var3 = 1; var3 + var3 < var1 && var3 < var2; var3 += var3) { } - this.hashTable = new IterableNodeHashTable(var3); // L: 19 - } // L: 20 + this.hashTable = new IterableNodeHashTable(var3); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("get") public Object get(long var1) { - Wrapper var3 = (Wrapper)this.hashTable.get(var1); // L: 23 - if (var3 == null) { // L: 24 + Wrapper var3 = (Wrapper)this.hashTable.get(var1); + if (var3 == null) { return null; } else { - Object var4 = var3.get(); // L: 25 - if (var4 == null) { // L: 26 - var3.remove(); // L: 27 - var3.removeDual(); // L: 28 - this.remaining += var3.size; // L: 29 - return null; // L: 30 + Object var4 = var3.get(); + if (var4 == null) { + var3.remove(); + var3.removeDual(); + this.remaining += var3.size; + return null; } else { - if (var3.isSoft()) { // L: 32 - DirectWrapper var5 = new DirectWrapper(var4, var3.size); // L: 33 - this.hashTable.put(var5, var3.key); // L: 34 - this.queue.add(var5); // L: 35 - var5.keyDual = 0L; // L: 36 - var3.remove(); // L: 37 - var3.removeDual(); // L: 38 + if (var3.isSoft()) { + DirectWrapper var5 = new DirectWrapper(var4, var3.size); + this.hashTable.put(var5, var3.key); + this.queue.add(var5); + var5.keyDual = 0L; + var3.remove(); + var3.removeDual(); } else { - this.queue.add(var3); // L: 41 - var3.keyDual = 0L; // L: 42 + this.queue.add(var3); + var3.keyDual = 0L; } - return var4; // L: 44 + return var4; } } } - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("remove") void remove(long var1) { - Wrapper var3 = (Wrapper)this.hashTable.get(var1); // L: 48 - this.removeWrapper(var3); // L: 49 - } // L: 50 + Wrapper var3 = (Wrapper)this.hashTable.get(var1); + this.removeWrapper(var3); + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lfw;)V" + descriptor = "(Lft;)V" ) @Export("removeWrapper") void removeWrapper(Wrapper var1) { - if (var1 != null) { // L: 53 - var1.remove(); // L: 54 - var1.removeDual(); // L: 55 - this.remaining += var1.size; // L: 56 + if (var1 != null) { + var1.remove(); + var1.removeDual(); + this.remaining += var1.size; } - } // L: 58 + } - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("put") public void put(Object var1, long var2, int var4) { - if (var4 > this.capacity) { // L: 61 + if (var4 > this.capacity) { throw new IllegalStateException(); } else { - this.remove(var2); // L: 62 - this.remaining -= var4; // L: 63 + this.remove(var2); + this.remaining -= var4; - while (this.remaining < 0) { // L: 64 - Wrapper var5 = (Wrapper)this.queue.removeLast(); // L: 65 - if (var5 == null) { // L: 66 - throw new RuntimeException(""); // L: 67 + while (this.remaining < 0) { + Wrapper var5 = (Wrapper)this.queue.removeLast(); + if (var5 == null) { + throw new RuntimeException(""); } - if (!var5.isSoft()) { // L: 69 + if (!var5.isSoft()) { } - this.removeWrapper(var5); // L: 70 - if (this.field1986 != null) { // L: 71 - this.field1986.method3450(var5.get()); // L: 72 + this.removeWrapper(var5); + if (this.field1984 != null) { + this.field1984.method3411(var5.get()); } } - DirectWrapper var6 = new DirectWrapper(var1, var4); // L: 75 - this.hashTable.put(var6, var2); // L: 76 - this.queue.add(var6); // L: 77 - var6.keyDual = 0L; // L: 78 + DirectWrapper var6 = new DirectWrapper(var1, var4); + this.hashTable.put(var6, var2); + this.queue.add(var6); + var6.keyDual = 0L; } - } // L: 79 + } - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("demote") public void demote(int var1) { - for (Wrapper var2 = (Wrapper)this.queue.last(); var2 != null; var2 = (Wrapper)this.queue.previous()) { // L: 82 - if (var2.isSoft()) { // L: 83 - if (var2.get() == null) { // L: 84 - var2.remove(); // L: 85 - var2.removeDual(); // L: 86 - this.remaining += var2.size; // L: 87 + for (Wrapper var2 = (Wrapper)this.queue.last(); var2 != null; var2 = (Wrapper)this.queue.previous()) { + if (var2.isSoft()) { + if (var2.get() == null) { + var2.remove(); + var2.removeDual(); + this.remaining += var2.size; } - } else if (++var2.keyDual > (long)var1) { // L: 92 - SoftWrapper var3 = new SoftWrapper(var2.get(), var2.size); // L: 93 - this.hashTable.put(var3, var2.key); // L: 94 - IterableDualNodeQueue.DualNodeDeque_addBefore(var3, var2); // L: 95 - var2.remove(); // L: 96 - var2.removeDual(); // L: 97 + } else if (++var2.keyDual > (long)var1) { + SoftWrapper var3 = new SoftWrapper(var2.get(), var2.size); + this.hashTable.put(var3, var2.key); + IterableDualNodeQueue.DualNodeDeque_addBefore(var3, var2); + var2.remove(); + var2.removeDual(); } } - } // L: 101 + } - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("clear") public void clear() { - this.queue.clear(); // L: 104 - this.hashTable.clear(); // L: 105 - this.remaining = this.capacity; // L: 106 - } // L: 107 + this.queue.clear(); + this.hashTable.clear(); + this.remaining = this.capacity; + } } diff --git a/runescape-client/src/main/java/DesktopPlatformInfoProvider.java b/runescape-client/src/main/java/DesktopPlatformInfoProvider.java index 149e250e9b..094c73b462 100644 --- a/runescape-client/src/main/java/DesktopPlatformInfoProvider.java +++ b/runescape-client/src/main/java/DesktopPlatformInfoProvider.java @@ -4,201 +4,201 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mx") +@ObfuscatedName("mc") @Implements("DesktopPlatformInfoProvider") public class DesktopPlatformInfoProvider implements PlatformInfoProvider { - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 1591606451 - ) - int field3938; - @ObfuscatedName("z") - @ObfuscatedGetter( - intValue = -1274184543 + intValue = -935966695 ) int field3941; - @ObfuscatedName("q") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -1204832127 + intValue = 1689133229 ) - int field3944; + int field3942; + @ObfuscatedName("j") + @ObfuscatedGetter( + intValue = -685403723 + ) + int field3943; - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)Lme;", - garbageValue = "1154202585" + descriptor = "(I)Lmf;", + garbageValue = "-1820791637" ) @Export("get") public PlatformInfo get() { byte var1; - if (MouseRecorder.field617.startsWith("win")) { // L: 15 + if (ObjectSound.field1077.startsWith("win")) { var1 = 1; - } else if (MouseRecorder.field617.startsWith("mac")) { // L: 16 + } else if (ObjectSound.field1077.startsWith("mac")) { var1 = 2; - } else if (MouseRecorder.field617.startsWith("linux")) { // L: 17 + } else if (ObjectSound.field1077.startsWith("linux")) { var1 = 3; } else { - var1 = 4; // L: 18 + var1 = 4; } String var2; try { - var2 = System.getProperty("os.arch").toLowerCase(); // L: 22 - } catch (Exception var27) { // L: 24 - var2 = ""; // L: 25 + var2 = System.getProperty("os.arch").toLowerCase(); + } catch (Exception var27) { + var2 = ""; } String var3; try { - var3 = System.getProperty("os.version").toLowerCase(); // L: 28 - } catch (Exception var26) { // L: 30 - var3 = ""; // L: 31 + var3 = System.getProperty("os.version").toLowerCase(); + } catch (Exception var26) { + var3 = ""; } - String var4 = "Unknown"; // L: 33 - String var5 = "1.1"; // L: 34 + String var4 = "Unknown"; + String var5 = "1.1"; try { - var4 = System.getProperty("java.vendor"); // L: 36 - var5 = System.getProperty("java.version"); // L: 37 - } catch (Exception var25) { // L: 39 + var4 = System.getProperty("java.vendor"); + var5 = System.getProperty("java.version"); + } catch (Exception var25) { } boolean var24; - if (!var2.startsWith("amd64") && !var2.startsWith("x86_64")) { // L: 41 - var24 = false; // L: 42 + if (!var2.startsWith("amd64") && !var2.startsWith("x86_64")) { + var24 = false; } else { var24 = true; } - byte var7 = 0; // L: 43 - if (var1 == 1) { // L: 44 - if (var3.indexOf("4.0") != -1) { // L: 45 + byte var7 = 0; + if (var1 == 1) { + if (var3.indexOf("4.0") != -1) { var7 = 1; - } else if (var3.indexOf("4.1") != -1) { // L: 46 + } else if (var3.indexOf("4.1") != -1) { var7 = 2; - } else if (var3.indexOf("4.9") != -1) { // L: 47 + } else if (var3.indexOf("4.9") != -1) { var7 = 3; - } else if (var3.indexOf("5.0") != -1) { // L: 48 + } else if (var3.indexOf("5.0") != -1) { var7 = 4; - } else if (var3.indexOf("5.1") != -1) { // L: 49 + } else if (var3.indexOf("5.1") != -1) { var7 = 5; - } else if (var3.indexOf("5.2") != -1) { // L: 50 + } else if (var3.indexOf("5.2") != -1) { var7 = 8; - } else if (var3.indexOf("6.0") != -1) { // L: 51 + } else if (var3.indexOf("6.0") != -1) { var7 = 6; - } else if (var3.indexOf("6.1") != -1) { // L: 52 + } else if (var3.indexOf("6.1") != -1) { var7 = 7; - } else if (var3.indexOf("6.2") != -1) { // L: 53 + } else if (var3.indexOf("6.2") != -1) { var7 = 9; - } else if (var3.indexOf("6.3") != -1) { // L: 54 + } else if (var3.indexOf("6.3") != -1) { var7 = 10; - } else if (var3.indexOf("10.0") != -1) { // L: 55 + } else if (var3.indexOf("10.0") != -1) { var7 = 11; } - } else if (var1 == 2) { // L: 57 - if (var3.indexOf("10.4") != -1) { // L: 58 + } else if (var1 == 2) { + if (var3.indexOf("10.4") != -1) { var7 = 20; - } else if (var3.indexOf("10.5") != -1) { // L: 59 + } else if (var3.indexOf("10.5") != -1) { var7 = 21; - } else if (var3.indexOf("10.6") != -1) { // L: 60 + } else if (var3.indexOf("10.6") != -1) { var7 = 22; - } else if (var3.indexOf("10.7") != -1) { // L: 61 + } else if (var3.indexOf("10.7") != -1) { var7 = 23; - } else if (var3.indexOf("10.8") != -1) { // L: 62 + } else if (var3.indexOf("10.8") != -1) { var7 = 24; - } else if (var3.indexOf("10.9") != -1) { // L: 63 + } else if (var3.indexOf("10.9") != -1) { var7 = 25; - } else if (var3.indexOf("10.10") != -1) { // L: 64 + } else if (var3.indexOf("10.10") != -1) { var7 = 26; - } else if (var3.indexOf("10.11") != -1) { // L: 65 + } else if (var3.indexOf("10.11") != -1) { var7 = 27; - } else if (var3.indexOf("10.12") != -1) { // L: 66 + } else if (var3.indexOf("10.12") != -1) { var7 = 28; - } else if (var3.indexOf("10.13") != -1) { // L: 67 + } else if (var3.indexOf("10.13") != -1) { var7 = 29; } } byte var8; - if (var4.toLowerCase().indexOf("sun") != -1) { // L: 70 + if (var4.toLowerCase().indexOf("sun") != -1) { var8 = 1; - } else if (var4.toLowerCase().indexOf("microsoft") != -1) { // L: 71 + } else if (var4.toLowerCase().indexOf("microsoft") != -1) { var8 = 2; - } else if (var4.toLowerCase().indexOf("apple") != -1) { // L: 72 + } else if (var4.toLowerCase().indexOf("apple") != -1) { var8 = 3; - } else if (var4.toLowerCase().indexOf("oracle") != -1) { // L: 73 + } else if (var4.toLowerCase().indexOf("oracle") != -1) { var8 = 5; } else { - var8 = 4; // L: 74 + var8 = 4; } - this.method6425(var5); // L: 75 - int var10 = (int)(Runtime.getRuntime().maxMemory() / 1048576L) + 1; // L: 77 + this.method6322(var5); + int var10 = (int)(Runtime.getRuntime().maxMemory() / 1048576L) + 1; int var11; - if (this.field3938 > 3) { // L: 80 + if (this.field3941 > 3) { var11 = Runtime.getRuntime().availableProcessors(); } else { - var11 = 0; // L: 81 + var11 = 0; } - byte var12 = 0; // L: 82 - String var13 = ""; // L: 83 - String var14 = ""; // L: 84 - String var15 = ""; // L: 85 - String var16 = ""; // L: 86 - String var17 = ""; // L: 87 - String var18 = ""; // L: 88 - int[] var23 = new int[3]; // L: 93 - return new PlatformInfo(var1, var24, var7, var8, this.field3938, this.field3941, this.field3944, false, var10, var11, var12, 0, var13, var14, var15, var16, 0, 0, 0, 0, var17, var18, var23, 0, ""); // L: 97 + byte var12 = 0; + String var13 = ""; + String var14 = ""; + String var15 = ""; + String var16 = ""; + String var17 = ""; + String var18 = ""; + int[] var23 = new int[3]; + return new PlatformInfo(var1, var24, var7, var8, this.field3941, this.field3942, this.field3943, false, var10, var11, var12, 0, var13, var14, var15, var16, 0, 0, 0, 0, var17, var18, var23, 0, ""); } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;B)V", - garbageValue = "1" + garbageValue = "-54" ) - void method6425(String var1) { - if (var1.startsWith("1.")) { // L: 101 - this.method6426(var1); // L: 102 + void method6322(String var1) { + if (var1.startsWith("1.")) { + this.method6321(var1); } else { - this.method6427(var1); // L: 105 + this.method6331(var1); } - } // L: 107 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "291167261" + garbageValue = "-1601938226" ) - void method6426(String var1) { - String[] var2 = var1.split("\\."); // L: 110 + void method6321(String var1) { + String[] var2 = var1.split("\\."); try { - this.field3938 = Integer.parseInt(var2[1]); // L: 112 - var2 = var2[2].split("_"); // L: 113 - this.field3941 = Integer.parseInt(var2[0]); // L: 114 - this.field3944 = Integer.parseInt(var2[1]); // L: 115 - } catch (Exception var4) { // L: 117 + this.field3941 = Integer.parseInt(var2[1]); + var2 = var2[2].split("_"); + this.field3942 = Integer.parseInt(var2[0]); + this.field3943 = Integer.parseInt(var2[1]); + } catch (Exception var4) { } - } // L: 118 + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-1635640262" + descriptor = "(Ljava/lang/String;S)V", + garbageValue = "-13668" ) - void method6427(String var1) { - String[] var2 = var1.split("\\."); // L: 121 + void method6331(String var1) { + String[] var2 = var1.split("\\."); try { - this.field3938 = Integer.parseInt(var2[0]); // L: 123 - this.field3941 = Integer.parseInt(var2[1]); // L: 124 - this.field3944 = Integer.parseInt(var2[2]); // L: 125 - } catch (Exception var4) { // L: 127 + this.field3941 = Integer.parseInt(var2[0]); + this.field3942 = Integer.parseInt(var2[1]); + this.field3943 = Integer.parseInt(var2[2]); + } catch (Exception var4) { } - } // L: 128 + } } diff --git a/runescape-client/src/main/java/DevicePcmPlayer.java b/runescape-client/src/main/java/DevicePcmPlayer.java index 8aba60b604..8991a3550a 100644 --- a/runescape-client/src/main/java/DevicePcmPlayer.java +++ b/runescape-client/src/main/java/DevicePcmPlayer.java @@ -9,120 +9,120 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bn") +@ObfuscatedName("bz") @Implements("DevicePcmPlayer") public class DevicePcmPlayer extends PcmPlayer { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("format") AudioFormat format; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("line") SourceDataLine line; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 1657780029 + intValue = 888712507 ) @Export("capacity2") int capacity2; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("byteSamples") byte[] byteSamples; DevicePcmPlayer() { - } // L: 18 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-906788639" + descriptor = "(B)V", + garbageValue = "99" ) @Export("init") protected void init() { - this.format = new AudioFormat((float)PcmPlayer.field1442, 16, PcmPlayer.PcmPlayer_stereo ? 2 : 1, true, false); // L: 21 - this.byteSamples = new byte[256 << (PcmPlayer.PcmPlayer_stereo ? 2 : 1)]; // L: 22 - } // L: 23 + this.format = new AudioFormat((float)PcmPlayer.field1443, 16, PcmPlayer.PcmPlayer_stereo ? 2 : 1, true, false); + this.byteSamples = new byte[256 << (PcmPlayer.PcmPlayer_stereo ? 2 : 1)]; + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-32" + descriptor = "(IS)V", + garbageValue = "3677" ) @Export("open") protected void open(int var1) throws LineUnavailableException { try { - Info var2 = new Info(SourceDataLine.class, this.format, var1 << (PcmPlayer.PcmPlayer_stereo ? 2 : 1)); // L: 27 - this.line = (SourceDataLine)AudioSystem.getLine(var2); // L: 28 - this.line.open(); // L: 29 - this.line.start(); // L: 30 - this.capacity2 = var1; // L: 31 - } catch (LineUnavailableException var5) { // L: 33 - int var4 = (var1 >>> 1 & 1431655765) + (var1 & 1431655765); // L: 37 - var4 = (var4 >>> 2 & 858993459) + (var4 & 858993459); // L: 38 - var4 = (var4 >>> 4) + var4 & 252645135; // L: 39 - var4 += var4 >>> 8; // L: 40 - var4 += var4 >>> 16; // L: 41 - int var3 = var4 & 255; // L: 42 - if (var3 != 1) { // L: 44 - this.open(WorldMapData_0.method266(var1)); // L: 45 + Info var2 = new Info(SourceDataLine.class, this.format, var1 << (PcmPlayer.PcmPlayer_stereo ? 2 : 1)); + this.line = (SourceDataLine)AudioSystem.getLine(var2); + this.line.open(); + this.line.start(); + this.capacity2 = var1; + } catch (LineUnavailableException var5) { + int var4 = (var1 >>> 1 & 1431655765) + (var1 & 1431655765); + var4 = (var4 >>> 2 & 858993459) + (var4 & 858993459); + var4 = (var4 >>> 4) + var4 & 252645135; + var4 += var4 >>> 8; + var4 += var4 >>> 16; + int var3 = var4 & 255; + if (var3 != 1) { + this.open(World.method1870(var1)); } else { - this.line = null; // L: 48 - throw var5; // L: 49 + this.line = null; + throw var5; } } - } // L: 46 51 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-612241013" + descriptor = "(B)I", + garbageValue = "60" ) @Export("position") protected int position() { - return this.capacity2 - (this.line.available() >> (PcmPlayer.PcmPlayer_stereo ? 2 : 1)); // L: 54 + return this.capacity2 - (this.line.available() >> (PcmPlayer.PcmPlayer_stereo ? 2 : 1)); } - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("write") protected void write() { - int var1 = 256; // L: 59 - if (PcmPlayer.PcmPlayer_stereo) { // L: 60 + int var1 = 256; + if (PcmPlayer.PcmPlayer_stereo) { var1 <<= 1; } - for (int var2 = 0; var2 < var1; ++var2) { // L: 61 - int var3 = super.samples[var2]; // L: 62 - if ((var3 + 8388608 & -16777216) != 0) { // L: 63 - var3 = 8388607 ^ var3 >> 31; // L: 64 + for (int var2 = 0; var2 < var1; ++var2) { + int var3 = super.samples[var2]; + if ((var3 + 8388608 & -16777216) != 0) { + var3 = 8388607 ^ var3 >> 31; } - this.byteSamples[var2 * 2] = (byte)(var3 >> 8); // L: 66 - this.byteSamples[var2 * 2 + 1] = (byte)(var3 >> 16); // L: 67 + this.byteSamples[var2 * 2] = (byte)(var3 >> 8); + this.byteSamples[var2 * 2 + 1] = (byte)(var3 >> 16); } - this.line.write(this.byteSamples, 0, var1 << 1); // L: 69 - } // L: 70 + this.line.write(this.byteSamples, 0, var1 << 1); + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "0" + descriptor = "(I)V", + garbageValue = "-310479525" ) @Export("close") protected void close() { - if (this.line != null) { // L: 73 - this.line.close(); // L: 74 - this.line = null; // L: 75 + if (this.line != null) { + this.line.close(); + this.line = null; } - } // L: 77 + } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1393012391" + descriptor = "(B)V", + garbageValue = "-7" ) @Export("discard") protected void discard() { - this.line.flush(); // L: 80 - } // L: 81 + this.line.flush(); + } } diff --git a/runescape-client/src/main/java/DevicePcmPlayerProvider.java b/runescape-client/src/main/java/DevicePcmPlayerProvider.java index bdd87f2e41..575bcc061e 100644 --- a/runescape-client/src/main/java/DevicePcmPlayerProvider.java +++ b/runescape-client/src/main/java/DevicePcmPlayerProvider.java @@ -3,144 +3,49 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bg") +@ObfuscatedName("br") @Implements("DevicePcmPlayerProvider") public class DevicePcmPlayerProvider implements PlayerProvider { - @ObfuscatedName("pt") - @ObfuscatedSignature( - descriptor = "Lkv;" - ) - @Export("clanChat") - static ClanChat clanChat; - @ObfuscatedName("x") - @ObfuscatedSignature( - descriptor = "Lle;" - ) - static IndexedSprite field439; - @ObfuscatedName("fp") - @ObfuscatedSignature( - descriptor = "Lkq;" - ) - @Export("fontPlain11") - static Font fontPlain11; - DevicePcmPlayerProvider() { - } // L: 7 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)Ldh;", - garbageValue = "1306134642" + descriptor = "(I)Ldp;", + garbageValue = "-2011148953" ) @Export("player") public PcmPlayer player() { - return new DevicePcmPlayer(); // L: 10 + return new DevicePcmPlayer(); } - @ObfuscatedName("f") + @ObfuscatedName("jt") @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Lgb;I)I", - garbageValue = "-1791433879" + descriptor = "(II)Ljava/lang/String;", + garbageValue = "1976029859" ) - @Export("compareStrings") - public static int compareStrings(CharSequence var0, CharSequence var1, Language var2) { - int var3 = var0.length(); // L: 11 - int var4 = var1.length(); // L: 12 - int var5 = 0; // L: 13 - int var6 = 0; // L: 14 - char var7 = 0; // L: 15 - char var8 = 0; // L: 16 + @Export("formatItemStacks") + static final String formatItemStacks(int var0) { + String var1 = Integer.toString(var0); - while (var5 - var7 < var3 || var6 - var8 < var4) { // L: 18 - if (var5 - var7 >= var3) { // L: 19 - return -1; - } - - if (var6 - var8 >= var4) { // L: 20 - return 1; - } - - char var9; - if (var7 != 0) { - var9 = var7; - boolean var14 = false; // L: 25 - } else { - var9 = var0.charAt(var5++); // L: 27 - } - - char var10; - if (var8 != 0) { // L: 28 - var10 = var8; // L: 29 - boolean var15 = false; // L: 30 - } else { - var10 = var1.charAt(var6++); // L: 32 - } - - var7 = VarbitDefinition.method4663(var9); // L: 33 - var8 = VarbitDefinition.method4663(var10); // L: 34 - var9 = class182.standardizeChar(var9, var2); // L: 35 - var10 = class182.standardizeChar(var10, var2); // L: 36 - if (var10 != var9 && Character.toUpperCase(var9) != Character.toUpperCase(var10)) { // L: 37 - var9 = Character.toLowerCase(var9); // L: 38 - var10 = Character.toLowerCase(var10); // L: 39 - if (var10 != var9) { // L: 40 - return AbstractWorldMapIcon.lowercaseChar(var9, var2) - AbstractWorldMapIcon.lowercaseChar(var10, var2); - } - } + for (int var2 = var1.length() - 3; var2 > 0; var2 -= 3) { + var1 = var1.substring(0, var2) + "," + var1.substring(var2); } - int var16 = Math.min(var3, var4); // L: 43 - - char var12; - int var17; - for (var17 = 0; var17 < var16; ++var17) { // L: 44 - if (var2 == Language.Language_FR) { // L: 45 - var5 = var3 - 1 - var17; // L: 46 - var6 = var4 - 1 - var17; // L: 47 - } else { - var6 = var17; // L: 49 - var5 = var17; - } - - char var11 = var0.charAt(var5); // L: 50 - var12 = var1.charAt(var6); // L: 51 - if (var12 != var11 && Character.toUpperCase(var11) != Character.toUpperCase(var12)) { // L: 52 - var11 = Character.toLowerCase(var11); // L: 53 - var12 = Character.toLowerCase(var12); // L: 54 - if (var11 != var12) { - return AbstractWorldMapIcon.lowercaseChar(var11, var2) - AbstractWorldMapIcon.lowercaseChar(var12, var2); // L: 55 - } - } - } - - var17 = var3 - var4; // L: 58 - if (var17 != 0) { // L: 59 - return var17; + if (var1.length() > 9) { + return " " + class23.colorStartTag(65408) + var1.substring(0, var1.length() - 8) + "M" + " " + " (" + var1 + ")" + ""; } else { - for (int var18 = 0; var18 < var16; ++var18) { // L: 60 - var12 = var0.charAt(var18); // L: 61 - char var13 = var1.charAt(var18); // L: 62 - if (var13 != var12) { // L: 63 - return AbstractWorldMapIcon.lowercaseChar(var12, var2) - AbstractWorldMapIcon.lowercaseChar(var13, var2); - } - } - - return 0; // L: 65 + return var1.length() > 6 ? " " + class23.colorStartTag(16777215) + var1.substring(0, var1.length() - 4) + "K" + " " + " (" + var1 + ")" + "" : " " + class23.colorStartTag(16776960) + var1 + ""; } } - @ObfuscatedName("b") + @ObfuscatedName("lg") @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;Ljava/lang/String;I)V", - garbageValue = "-243383079" + descriptor = "(Lhe;B)Z", + garbageValue = "119" ) - @Export("addGameMessage") - static void addGameMessage(int var0, String var1, String var2) { - class3.addChatMessage(var0, var1, var2, (String)null); // L: 23 - } // L: 24 - - @ObfuscatedName("b") - public static boolean method941(long var0) { - return var0 != 0L && !WorldMapCacheName.method725(var0); // L: 48 + @Export("isComponentHidden") + static boolean isComponentHidden(Widget var0) { + return var0.isHidden; } } diff --git a/runescape-client/src/main/java/DirectByteArrayCopier.java b/runescape-client/src/main/java/DirectByteArrayCopier.java index 676118b1f4..ff8899dd77 100644 --- a/runescape-client/src/main/java/DirectByteArrayCopier.java +++ b/runescape-client/src/main/java/DirectByteArrayCopier.java @@ -1,41 +1,195 @@ import java.nio.ByteBuffer; 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("hv") @Implements("DirectByteArrayCopier") public class DirectByteArrayCopier extends AbstractByteArrayCopier { - @ObfuscatedName("f") + @ObfuscatedName("v") + @ObfuscatedGetter( + intValue = 604929845 + ) + @Export("SpriteBuffer_spriteWidth") + public static int SpriteBuffer_spriteWidth; + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "Llo;" + ) + @Export("options_buttons_0Sprite") + static IndexedSprite options_buttons_0Sprite; + @ObfuscatedName("h") @Export("directBuffer") ByteBuffer directBuffer; - DirectByteArrayCopier() { - } // L: 10 - - @ObfuscatedName("l") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(B)[B", - garbageValue = "-47" + descriptor = "(I)[B", + garbageValue = "-938287989" ) @Export("get") byte[] get() { - byte[] var1 = new byte[this.directBuffer.capacity()]; // L: 13 - this.directBuffer.position(0); // L: 14 - this.directBuffer.get(var1); // L: 15 - return var1; // L: 16 + byte[] var1 = new byte[this.directBuffer.capacity()]; + this.directBuffer.position(0); + this.directBuffer.get(var1); + return var1; } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "([BB)V", - garbageValue = "0" + descriptor = "([BI)V", + garbageValue = "-277286562" ) @Export("set") - void set(byte[] var1) { - this.directBuffer = ByteBuffer.allocateDirect(var1.length); // L: 20 - this.directBuffer.position(0); // L: 21 - this.directBuffer.put(var1); // L: 22 - } // L: 23 + public void set(byte[] var1) { + this.directBuffer = ByteBuffer.allocateDirect(var1.length); + this.directBuffer.position(0); + this.directBuffer.put(var1); + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "-69" + ) + static void method3983() { + Tiles.Tiles_minPlane = 99; + Tiles.field514 = new byte[4][104][104]; + Tiles.field508 = new byte[4][104][104]; + class9.field40 = new byte[4][104][104]; + Username.field3663 = new byte[4][104][104]; + GrandExchangeOfferWorldComparator.field52 = new int[4][105][105]; + Tiles.field511 = new byte[4][105][105]; + class92.field1173 = new int[105][105]; + VarbitDefinition.Tiles_hue = new int[104]; + ArchiveDiskActionHandler.Tiles_saturation = new int[104]; + class92.Tiles_lightness = new int[104]; + UserComparator7.Tiles_hueMultiplier = new int[104]; + Varcs.field1283 = new int[104]; + } + + @ObfuscatedName("kh") + @ObfuscatedSignature( + descriptor = "(Lhe;IIII)V", + garbageValue = "29105444" + ) + @Export("drawMinimap") + static final void drawMinimap(Widget var0, int var1, int var2, int var3) { + FontName.playPcmPlayers(); + SpriteMask var4 = var0.getSpriteMask(false); + if (var4 != null) { + Rasterizer2D.Rasterizer2D_setClip(var1, var2, var4.width + var1, var2 + var4.height); + if (Client.minimapState != 2 && Client.minimapState != 5) { + int var5 = Client.camAngleY & 2047; + int var6 = PlayerAppearance.localPlayer.x / 32 + 48; + int var7 = 464 - PlayerAppearance.localPlayer.y / 32; + class25.sceneMinimapSprite.drawRotatedMaskedCenteredAround(var1, var2, var4.width, var4.height, var6, var7, var5, 256, var4.xStarts, var4.xWidths); + + int var8; + int var10; + int var17; + for (var8 = 0; var8 < Client.mapIconCount; ++var8) { + var17 = Client.mapIconXs[var8] * 4 + 2 - PlayerAppearance.localPlayer.x / 32; + var10 = Client.mapIconYs[var8] * 4 + 2 - PlayerAppearance.localPlayer.y / 32; + class25.drawSpriteOnMinimap(var1, var2, var17, var10, Client.mapIcons[var8], var4); + } + + int var11; + int var12; + for (var8 = 0; var8 < 104; ++var8) { + for (var17 = 0; var17 < 104; ++var17) { + NodeDeque var15 = Client.groundItems[GameObject.Client_plane][var8][var17]; + if (var15 != null) { + var11 = var8 * 4 + 2 - PlayerAppearance.localPlayer.x / 32; + var12 = var17 * 4 + 2 - PlayerAppearance.localPlayer.y / 32; + class25.drawSpriteOnMinimap(var1, var2, var11, var12, Actor.mapDotSprites[0], var4); + } + } + } + + for (var8 = 0; var8 < Client.npcCount; ++var8) { + NPC var9 = Client.npcs[Client.npcIndices[var8]]; + if (var9 != null && var9.isVisible()) { + NPCDefinition var19 = var9.definition; + if (var19 != null && var19.transforms != null) { + var19 = var19.transform(); + } + + if (var19 != null && var19.drawMapDot && var19.isInteractable) { + var11 = var9.x / 32 - PlayerAppearance.localPlayer.x / 32; + var12 = var9.y / 32 - PlayerAppearance.localPlayer.y / 32; + class25.drawSpriteOnMinimap(var1, var2, var11, var12, Actor.mapDotSprites[1], var4); + } + } + } + + var8 = Players.Players_count; + int[] var18 = Players.Players_indices; + + for (var10 = 0; var10 < var8; ++var10) { + Player var16 = Client.players[var18[var10]]; + if (var16 != null && var16.isVisible() && !var16.isHidden && var16 != PlayerAppearance.localPlayer) { + var12 = var16.x / 32 - PlayerAppearance.localPlayer.x / 32; + int var13 = var16.y / 32 - PlayerAppearance.localPlayer.y / 32; + boolean var14 = false; + if (PlayerAppearance.localPlayer.team != 0 && var16.team != 0 && var16.team == PlayerAppearance.localPlayer.team) { + var14 = true; + } + + if (var16.isFriend()) { + class25.drawSpriteOnMinimap(var1, var2, var12, var13, Actor.mapDotSprites[3], var4); + } else if (var14) { + class25.drawSpriteOnMinimap(var1, var2, var12, var13, Actor.mapDotSprites[4], var4); + } else if (var16.isClanMember()) { + class25.drawSpriteOnMinimap(var1, var2, var12, var13, Actor.mapDotSprites[5], var4); + } else { + class25.drawSpriteOnMinimap(var1, var2, var12, var13, Actor.mapDotSprites[2], var4); + } + } + } + + if (Client.hintArrowType != 0 && Client.cycle % 20 < 10) { + if (Client.hintArrowType == 1 && Client.hintArrowNpcIndex >= 0 && Client.hintArrowNpcIndex < Client.npcs.length) { + NPC var20 = Client.npcs[Client.hintArrowNpcIndex]; + if (var20 != null) { + var11 = var20.x / 32 - PlayerAppearance.localPlayer.x / 32; + var12 = var20.y / 32 - PlayerAppearance.localPlayer.y / 32; + AbstractWorldMapData.worldToMinimap(var1, var2, var11, var12, GrandExchangeOfferUnitPriceComparator.mapMarkerSprites[1], var4); + } + } + + if (Client.hintArrowType == 2) { + var10 = Client.hintArrowX * 4 - NetFileRequest.baseX * 256 + 2 - PlayerAppearance.localPlayer.x / 32; + var11 = Client.hintArrowY * 4 - class41.baseY * 256 + 2 - PlayerAppearance.localPlayer.y / 32; + AbstractWorldMapData.worldToMinimap(var1, var2, var10, var11, GrandExchangeOfferUnitPriceComparator.mapMarkerSprites[1], var4); + } + + if (Client.hintArrowType == 10 && Client.hintArrowPlayerIndex >= 0 && Client.hintArrowPlayerIndex < Client.players.length) { + Player var21 = Client.players[Client.hintArrowPlayerIndex]; + if (var21 != null) { + var11 = var21.x / 32 - PlayerAppearance.localPlayer.x / 32; + var12 = var21.y / 32 - PlayerAppearance.localPlayer.y / 32; + AbstractWorldMapData.worldToMinimap(var1, var2, var11, var12, GrandExchangeOfferUnitPriceComparator.mapMarkerSprites[1], var4); + } + } + } + + if (Client.destinationX != 0) { + var10 = Client.destinationX * 4 + 2 - PlayerAppearance.localPlayer.x / 32; + var11 = Client.destinationY * 4 + 2 - PlayerAppearance.localPlayer.y / 32; + class25.drawSpriteOnMinimap(var1, var2, var10, var11, GrandExchangeOfferUnitPriceComparator.mapMarkerSprites[0], var4); + } + + if (!PlayerAppearance.localPlayer.isHidden) { + Rasterizer2D.Rasterizer2D_fillRectangle(var4.width / 2 + var1 - 1, var4.height / 2 + var2 - 1, 3, 3, 16777215); + } + } else { + Rasterizer2D.Rasterizer2D_fillMaskedRectangle(var1, var2, 0, var4.xStarts, var4.xWidths); + } + + Client.field854[var3] = true; + } + } } diff --git a/runescape-client/src/main/java/DirectWrapper.java b/runescape-client/src/main/java/DirectWrapper.java index d43efefbd8..b42ee30b2d 100644 --- a/runescape-client/src/main/java/DirectWrapper.java +++ b/runescape-client/src/main/java/DirectWrapper.java @@ -2,27 +2,27 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("fs") +@ObfuscatedName("fn") @Implements("DirectWrapper") public class DirectWrapper extends Wrapper { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("obj") Object obj; DirectWrapper(Object var1, int var2) { - super(var2); // L: 7 - this.obj = var1; // L: 8 - } // L: 9 + super(var2); + this.obj = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("get") Object get() { - return this.obj; // L: 12 + return this.obj; } - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("isSoft") boolean isSoft() { - return false; // L: 16 + return false; } } diff --git a/runescape-client/src/main/java/DualNode.java b/runescape-client/src/main/java/DualNode.java index c711118f93..e1319a9d99 100644 --- a/runescape-client/src/main/java/DualNode.java +++ b/runescape-client/src/main/java/DualNode.java @@ -3,33 +3,33 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gp") +@ObfuscatedName("gj") @Implements("DualNode") public class DualNode extends Node { - @ObfuscatedName("cq") + @ObfuscatedName("cl") @Export("keyDual") public long keyDual; - @ObfuscatedName("cd") + @ObfuscatedName("cw") @ObfuscatedSignature( - descriptor = "Lgp;" + descriptor = "Lgj;" ) @Export("previousDual") public DualNode previousDual; - @ObfuscatedName("cj") + @ObfuscatedName("cp") @ObfuscatedSignature( - descriptor = "Lgp;" + descriptor = "Lgj;" ) @Export("nextDual") public DualNode nextDual; - @ObfuscatedName("cu") + @ObfuscatedName("ck") @Export("removeDual") public void removeDual() { - if (this.nextDual != null) { // L: 9 - this.nextDual.previousDual = this.previousDual; // L: 10 - this.previousDual.nextDual = this.nextDual; // L: 11 - this.previousDual = null; // L: 12 - this.nextDual = null; // L: 13 + if (this.nextDual != null) { + this.nextDual.previousDual = this.previousDual; + this.previousDual.nextDual = this.nextDual; + this.previousDual = null; + this.nextDual = null; } - } // L: 14 + } } diff --git a/runescape-client/src/main/java/DualNodeDeque.java b/runescape-client/src/main/java/DualNodeDeque.java index 26eacc7cfd..cb1fc8b61c 100644 --- a/runescape-client/src/main/java/DualNodeDeque.java +++ b/runescape-client/src/main/java/DualNodeDeque.java @@ -3,61 +3,61 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jv") +@ObfuscatedName("ji") @Implements("DualNodeDeque") public final class DualNodeDeque { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lgp;" + descriptor = "Lgj;" ) @Export("sentinel") DualNode sentinel; public DualNodeDeque() { - this.sentinel = new DualNode(); // L: 6 - this.sentinel.previousDual = this.sentinel; // L: 9 - this.sentinel.nextDual = this.sentinel; // L: 10 - } // L: 11 + this.sentinel = new DualNode(); + this.sentinel.previousDual = this.sentinel; + this.sentinel.nextDual = this.sentinel; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lgp;)V" + descriptor = "(Lgj;)V" ) @Export("addFirst") public void addFirst(DualNode var1) { - if (var1.nextDual != null) { // L: 14 + if (var1.nextDual != null) { var1.removeDual(); } - var1.nextDual = this.sentinel.nextDual; // L: 15 - var1.previousDual = this.sentinel; // L: 16 - var1.nextDual.previousDual = var1; // L: 17 - var1.previousDual.nextDual = var1; // L: 18 - } // L: 19 + var1.nextDual = this.sentinel.nextDual; + var1.previousDual = this.sentinel; + var1.nextDual.previousDual = var1; + var1.previousDual.nextDual = var1; + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lgp;)V" + descriptor = "(Lgj;)V" ) @Export("addLast") public void addLast(DualNode var1) { - if (var1.nextDual != null) { // L: 22 + if (var1.nextDual != null) { var1.removeDual(); } - var1.nextDual = this.sentinel; // L: 23 - var1.previousDual = this.sentinel.previousDual; // L: 24 - var1.nextDual.previousDual = var1; // L: 25 - var1.previousDual.nextDual = var1; // L: 26 - } // L: 27 + var1.nextDual = this.sentinel; + var1.previousDual = this.sentinel.previousDual; + var1.nextDual.previousDual = var1; + var1.previousDual.nextDual = var1; + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "()Lgp;" + descriptor = "()Lgj;" ) @Export("removeLast") public DualNode removeLast() { - DualNode var1 = this.sentinel.previousDual; // L: 30 - return var1 == this.sentinel ? null : var1; // L: 31 32 + DualNode var1 = this.sentinel.previousDual; + return var1 == this.sentinel ? null : var1; } } diff --git a/runescape-client/src/main/java/DynamicObject.java b/runescape-client/src/main/java/DynamicObject.java index cedca224e3..a41a0af2ba 100644 --- a/runescape-client/src/main/java/DynamicObject.java +++ b/runescape-client/src/main/java/DynamicObject.java @@ -4,195 +4,214 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ck") +@ObfuscatedName("cn") @Implements("DynamicObject") public class DynamicObject extends Entity { - @ObfuscatedName("f") + @ObfuscatedName("rl") @ObfuscatedGetter( - intValue = -550843083 + intValue = 2126595663 + ) + static int field1316; + @ObfuscatedName("b") + public static String[] field1318; + @ObfuscatedName("dv") + @ObfuscatedSignature( + descriptor = "Lil;" + ) + @Export("archive2") + static Archive archive2; + @ObfuscatedName("le") + @ObfuscatedGetter( + intValue = -517336583 + ) + @Export("menuY") + static int menuY; + @ObfuscatedName("h") + @ObfuscatedGetter( + intValue = -1717972659 ) @Export("id") int id; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 174390429 + intValue = 345674945 ) @Export("type") int type; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 89407283 + intValue = 92935987 ) @Export("orientation") int orientation; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -1374963731 + intValue = 1741952123 ) @Export("plane") int plane; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -2010464009 + intValue = 433284603 ) @Export("x") int x; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = 647351421 + intValue = 189208991 ) @Export("y") int y; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Ljg;" + descriptor = "Ljy;" ) @Export("sequenceDefinition") SequenceDefinition sequenceDefinition; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 2125087057 + intValue = 1563491791 ) @Export("frame") int frame; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = 561855979 + intValue = -542544735 ) @Export("cycleStart") int cycleStart; @ObfuscatedSignature( - descriptor = "(IIIIIIIZLej;)V" + descriptor = "(IIIIIIIZLer;)V" ) DynamicObject(int var1, int var2, int var3, int var4, int var5, int var6, int var7, boolean var8, Entity var9) { - this.id = var1; // L: 20 - this.type = var2; // L: 21 - this.orientation = var3; // L: 22 - this.plane = var4; // L: 23 - this.x = var5; // L: 24 - this.y = var6; // L: 25 - if (var7 != -1) { // L: 26 - this.sequenceDefinition = class105.SequenceDefinition_get(var7); // L: 27 - this.frame = 0; // L: 28 - this.cycleStart = Client.cycle - 1; // L: 29 - if (this.sequenceDefinition.field3551 == 0 && var9 != null && var9 instanceof DynamicObject) { // L: 30 - DynamicObject var10 = (DynamicObject)var9; // L: 31 - if (var10.sequenceDefinition == this.sequenceDefinition) { // L: 32 - this.frame = var10.frame; // L: 33 - this.cycleStart = var10.cycleStart; // L: 34 - return; // L: 35 + this.id = var1; + this.type = var2; + this.orientation = var3; + this.plane = var4; + this.x = var5; + this.y = var6; + if (var7 != -1) { + this.sequenceDefinition = ParamDefinition.SequenceDefinition_get(var7); + this.frame = 0; + this.cycleStart = Client.cycle - 1; + if (this.sequenceDefinition.field3548 == 0 && var9 != null && var9 instanceof DynamicObject) { + DynamicObject var10 = (DynamicObject)var9; + if (var10.sequenceDefinition == this.sequenceDefinition) { + this.frame = var10.frame; + this.cycleStart = var10.cycleStart; + return; } } - if (var8 && this.sequenceDefinition.frameCount != -1) { // L: 38 - this.frame = (int)(Math.random() * (double)this.sequenceDefinition.frameIds.length); // L: 39 - this.cycleStart -= (int)(Math.random() * (double)this.sequenceDefinition.frameLengths[this.frame]); // L: 40 + if (var8 && this.sequenceDefinition.frameCount != -1) { + this.frame = (int)(Math.random() * (double)this.sequenceDefinition.frameIds.length); + this.cycleStart -= (int)(Math.random() * (double)this.sequenceDefinition.frameLengths[this.frame]); } } - } // L: 43 + } - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( descriptor = "(I)Leh;", - garbageValue = "-2070677844" + garbageValue = "-1814248977" ) @Export("getModel") protected final Model getModel() { - if (this.sequenceDefinition != null) { // L: 46 - int var1 = Client.cycle - this.cycleStart; // L: 47 - if (var1 > 100 && this.sequenceDefinition.frameCount > 0) { // L: 48 + if (this.sequenceDefinition != null) { + int var1 = Client.cycle - this.cycleStart; + if (var1 > 100 && this.sequenceDefinition.frameCount > 0) { var1 = 100; } - label55: { + label56: { do { do { - if (var1 <= this.sequenceDefinition.frameLengths[this.frame]) { // L: 49 - break label55; + if (var1 <= this.sequenceDefinition.frameLengths[this.frame]) { + break label56; } - var1 -= this.sequenceDefinition.frameLengths[this.frame]; // L: 50 - ++this.frame; // L: 51 - } while(this.frame < this.sequenceDefinition.frameIds.length); // L: 52 + var1 -= this.sequenceDefinition.frameLengths[this.frame]; + ++this.frame; + } while(this.frame < this.sequenceDefinition.frameIds.length); - this.frame -= this.sequenceDefinition.frameCount; // L: 53 - } while(this.frame >= 0 && this.frame < this.sequenceDefinition.frameIds.length); // L: 54 + this.frame -= this.sequenceDefinition.frameCount; + } while(this.frame >= 0 && this.frame < this.sequenceDefinition.frameIds.length); - this.sequenceDefinition = null; // L: 55 + this.sequenceDefinition = null; } - this.cycleStart = Client.cycle - var1; // L: 60 + this.cycleStart = Client.cycle - var1; } - ObjectDefinition var12 = ScriptEvent.getObjectDefinition(this.id); // L: 62 - if (var12.transforms != null) { // L: 63 + ObjectDefinition var12 = WorldMapDecoration.getObjectDefinition(this.id); + if (var12.transforms != null) { var12 = var12.transform(); } - if (var12 == null) { // L: 64 + if (var12 == null) { return null; } else { int var2; int var3; - if (this.orientation != 1 && this.orientation != 3) { // L: 67 - var2 = var12.sizeX; // L: 72 - var3 = var12.sizeY; // L: 73 + if (this.orientation != 1 && this.orientation != 3) { + var2 = var12.sizeX; + var3 = var12.sizeY; } else { - var2 = var12.sizeY; // L: 68 - var3 = var12.sizeX; // L: 69 + var2 = var12.sizeY; + var3 = var12.sizeX; } - int var4 = (var2 >> 1) + this.x; // L: 75 - int var5 = (var2 + 1 >> 1) + this.x; // L: 76 - int var6 = (var3 >> 1) + this.y; // L: 77 - int var7 = (var3 + 1 >> 1) + this.y; // L: 78 - int[][] var8 = Tiles.Tiles_heights[this.plane]; // L: 79 - int var9 = var8[var4][var7] + var8[var4][var6] + var8[var5][var6] + var8[var5][var7] >> 2; // L: 80 - int var10 = (this.x << 7) + (var2 << 6); // L: 81 - int var11 = (this.y << 7) + (var3 << 6); // L: 82 - return var12.getModelDynamic(this.type, this.orientation, var8, var10, var9, var11, this.sequenceDefinition, this.frame); // L: 83 + int var4 = (var2 >> 1) + this.x; + int var5 = (var2 + 1 >> 1) + this.x; + int var6 = (var3 >> 1) + this.y; + int var7 = (var3 + 1 >> 1) + this.y; + int[][] var8 = Tiles.Tiles_heights[this.plane]; + int var9 = var8[var5][var7] + var8[var4][var7] + var8[var5][var6] + var8[var4][var6] >> 2; + int var10 = (this.x << 7) + (var2 << 6); + int var11 = (this.y << 7) + (var3 << 6); + return var12.getModelDynamic(this.type, this.orientation, var8, var10, var9, var11, this.sequenceDefinition, this.frame); } } - @ObfuscatedName("c") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(IIII)I", - garbageValue = "1129350300" + descriptor = "([BB)Laq;", + garbageValue = "92" ) - static final int method2357(int var0, int var1, int var2) { - int var3 = var0 / var2; // L: 436 - int var4 = var0 & var2 - 1; // L: 437 - int var5 = var1 / var2; // L: 438 - int var6 = var1 & var2 - 1; // L: 439 - int var7 = WorldMapID.method665(var3, var5); // L: 440 - int var8 = WorldMapID.method665(var3 + 1, var5); // L: 441 - int var9 = WorldMapID.method665(var3, var5 + 1); // L: 442 - int var10 = WorldMapID.method665(var3 + 1, var5 + 1); // L: 443 - int var11 = PendingSpawn.method1841(var7, var8, var4, var2); // L: 444 - int var12 = PendingSpawn.method1841(var9, var10, var4, var2); // L: 445 - return PendingSpawn.method1841(var11, var12, var6, var2); // L: 446 + static WorldMapSprite method2300(byte[] var0) { + return var0 == null ? new WorldMapSprite() : new WorldMapSprite(WorldMapSection0.convertJpgToSprite(var0).pixels); } - @ObfuscatedName("ip") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "-41" + descriptor = "(I)I", + garbageValue = "1772389683" ) - static boolean method2362(int var0) { - return var0 == 57 || var0 == 58 || var0 == 1007 || var0 == 25 || var0 == 30; // L: 8956 + static int method2304() { + return 12; } - @ObfuscatedName("jo") + @ObfuscatedName("aw") @ObfuscatedSignature( - descriptor = "(IIIIIIII)V", - garbageValue = "-2144644905" + descriptor = "([BIB)I", + garbageValue = "-35" ) - @Export("updateRootInterface") - static final void updateRootInterface(int var0, int var1, int var2, int var3, int var4, int var5, int var6) { - if (ScriptFrame.loadInterface(var0)) { // L: 10342 - class69.updateInterface(Widget.Widget_interfaceComponents[var0], -1, var1, var2, var3, var4, var5, var6); // L: 10343 - } - } // L: 10344 + public static int method2305(byte[] var0, int var1) { + return WorldMapRectangle.method334(var0, 0, var1); + } + + @ObfuscatedName("ix") + @ObfuscatedSignature( + descriptor = "(III)V", + garbageValue = "-1991750086" + ) + @Export("resumePauseWidget") + static void resumePauseWidget(int var0, int var1) { + PacketBufferNode var2 = ItemContainer.getPacketBufferNode(ClientPacket.field2266, Client.packetWriter.isaacCipher); + var2.packetBuffer.writeInt(var0); + var2.packetBuffer.writeShort(var1); + Client.packetWriter.addNode(var2); + } } diff --git a/runescape-client/src/main/java/Entity.java b/runescape-client/src/main/java/Entity.java index c0824432fa..46c646d319 100644 --- a/runescape-client/src/main/java/Entity.java +++ b/runescape-client/src/main/java/Entity.java @@ -4,60 +4,75 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ej") +@ObfuscatedName("er") @Implements("Entity") public abstract class Entity extends DualNode { - @ObfuscatedName("hj") - @ObfuscatedSignature( - descriptor = "[Llc;" - ) - @Export("mapDotSprites") - static Sprite[] mapDotSprites; - @ObfuscatedName("iz") + @ObfuscatedName("nw") @ObfuscatedGetter( - intValue = 685420897 + intValue = -1743769759 ) - @Export("selectedItemId") - static int selectedItemId; - @ObfuscatedName("cu") + static int field1893; + @ObfuscatedName("cq") @ObfuscatedGetter( - intValue = 1647777713 + intValue = 1865957833 ) @Export("height") public int height; protected Entity() { - this.height = 1000; // L: 6 - } // L: 8 + this.height = 1000; + } - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( descriptor = "(I)Leh;", - garbageValue = "-2070677844" + garbageValue = "-1814248977" ) @Export("getModel") protected Model getModel() { - return null; // L: 19 + return null; } - @ObfuscatedName("cg") + @ObfuscatedName("cf") @Export("draw") void draw(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, long var9) { - Model var11 = this.getModel(); // L: 11 - if (var11 != null) { // L: 12 - this.height = var11.height; // L: 13 - var11.draw(var1, var2, var3, var4, var5, var6, var7, var8, var9); // L: 14 + Model var11 = this.getModel(); + if (var11 != null) { + this.height = var11.height; + var11.draw(var1, var2, var3, var4, var5, var6, var7, var8, var9); } - } // L: 16 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lbd;I)V", - garbageValue = "-1146861517" + descriptor = "(Ljava/lang/CharSequence;B)J", + garbageValue = "85" ) - @Export("runScriptEvent") - public static void runScriptEvent(ScriptEvent var0) { - class58.runScript(var0, 500000); // L: 97 - } // L: 98 + static long method3340(CharSequence var0) { + long var1 = 0L; + int var3 = var0.length(); + + for (int var4 = 0; var4 < var3; ++var4) { + var1 *= 37L; + char var5 = var0.charAt(var4); + if (var5 >= 'A' && var5 <= 'Z') { + var1 += (long)(var5 + 1 - 65); + } else if (var5 >= 'a' && var5 <= 'z') { + var1 += (long)(var5 + 1 - 97); + } else if (var5 >= '0' && var5 <= '9') { + var1 += (long)(var5 + 27 - 48); + } + + if (var1 >= 177917621779460413L) { + break; + } + } + + while (0L == var1 % 37L && var1 != 0L) { + var1 /= 37L; + } + + return var1; + } } diff --git a/runescape-client/src/main/java/EnumDefinition.java b/runescape-client/src/main/java/EnumDefinition.java index 3f89abeb0f..38560ee7f2 100644 --- a/runescape-client/src/main/java/EnumDefinition.java +++ b/runescape-client/src/main/java/EnumDefinition.java @@ -4,164 +4,136 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jd") +@ObfuscatedName("jx") @Implements("EnumDefinition") public class EnumDefinition extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("rk") + @ObfuscatedGetter( + intValue = -718709376 + ) + static int field3340; + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("EnumDefinition_archive") static AbstractArchive EnumDefinition_archive; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("EnumDefinition_cached") static EvictingDualNodeHashTable EnumDefinition_cached; - @ObfuscatedName("bb") - @Export("otp") - static String otp; - @ObfuscatedName("bn") + @ObfuscatedName("lh") @ObfuscatedSignature( - descriptor = "[Llc;" + descriptor = "Lhe;" ) - @Export("worldSelectBackSprites") - static Sprite[] worldSelectBackSprites; - @ObfuscatedName("l") + @Export("mousedOverWidgetIf1") + static Widget mousedOverWidgetIf1; + @ObfuscatedName("x") @Export("inputType") public char inputType; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("outputType") public char outputType; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("defaultStr") public String defaultStr; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -25790237 + intValue = 1632225121 ) @Export("defaultInt") public int defaultInt; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -1613773715 + intValue = -1333539623 ) @Export("outputCount") public int outputCount; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("keys") public int[] keys; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("intVals") public int[] intVals; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("strVals") public String[] strVals; static { - EnumDefinition_cached = new EvictingDualNodeHashTable(64); // L: 12 + EnumDefinition_cached = new EvictingDualNodeHashTable(64); } EnumDefinition() { - this.defaultStr = "null"; // L: 15 - this.outputCount = 0; // L: 17 - } // L: 22 + this.defaultStr = "null"; + this.outputCount = 0; + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "729247361" + descriptor = "(Lkj;B)V", + garbageValue = "1" ) @Export("decode") void decode(Buffer var1) { while (true) { - int var2 = var1.readUnsignedByte(); // L: 40 - if (var2 == 0) { // L: 41 - return; // L: 44 + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; } - this.decodeNext(var1, var2); // L: 42 + this.decodeNext(var1, var2); } } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "-2002314807" + descriptor = "(Lkj;II)V", + garbageValue = "-1344091650" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { - if (var2 == 1) { // L: 47 + if (var2 == 1) { this.inputType = (char)var1.readUnsignedByte(); - } else if (var2 == 2) { // L: 48 + } else if (var2 == 2) { this.outputType = (char)var1.readUnsignedByte(); - } else if (var2 == 3) { // L: 49 + } else if (var2 == 3) { this.defaultStr = var1.readStringCp1252NullTerminated(); - } else if (var2 == 4) { // L: 50 + } else if (var2 == 4) { this.defaultInt = var1.readInt(); } else { int var3; - if (var2 == 5) { // L: 51 - this.outputCount = var1.readUnsignedShort(); // L: 52 - this.keys = new int[this.outputCount]; // L: 53 - this.strVals = new String[this.outputCount]; // L: 54 + if (var2 == 5) { + this.outputCount = var1.readUnsignedShort(); + this.keys = new int[this.outputCount]; + this.strVals = new String[this.outputCount]; - for (var3 = 0; var3 < this.outputCount; ++var3) { // L: 55 - this.keys[var3] = var1.readInt(); // L: 56 - this.strVals[var3] = var1.readStringCp1252NullTerminated(); // L: 57 + for (var3 = 0; var3 < this.outputCount; ++var3) { + this.keys[var3] = var1.readInt(); + this.strVals[var3] = var1.readStringCp1252NullTerminated(); } - } else if (var2 == 6) { // L: 60 - this.outputCount = var1.readUnsignedShort(); // L: 61 - this.keys = new int[this.outputCount]; // L: 62 - this.intVals = new int[this.outputCount]; // L: 63 + } else if (var2 == 6) { + this.outputCount = var1.readUnsignedShort(); + this.keys = new int[this.outputCount]; + this.intVals = new int[this.outputCount]; - for (var3 = 0; var3 < this.outputCount; ++var3) { // L: 64 - this.keys[var3] = var1.readInt(); // L: 65 - this.intVals[var3] = var1.readInt(); // L: 66 + for (var3 = 0; var3 < this.outputCount; ++var3) { + this.keys[var3] = var1.readInt(); + this.intVals[var3] = var1.readInt(); } } } - } // L: 70 + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1958366010" + garbageValue = "-1619007901" ) @Export("size") public int size() { - return this.outputCount; // L: 73 + return this.outputCount; } - - @ObfuscatedName("p") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "22707007" - ) - public static int method4714(int var0) { - if (var0 > 0) { // L: 191 - return 1; - } else { - return var0 < 0 ? -1 : 0; // L: 192 193 - } - } - - @ObfuscatedName("ht") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "1488753124" - ) - static final void method4721(int var0) { - if (var0 >= 0) { // L: 7935 - int var1 = Client.menuArguments1[var0]; // L: 7936 - int var2 = Client.menuArguments2[var0]; // L: 7937 - int var3 = Client.menuOpcodes[var0]; // L: 7938 - int var4 = Client.menuIdentifiers[var0]; // L: 7939 - String var5 = Client.menuActions[var0]; // L: 7940 - String var6 = Client.menuTargets[var0]; // L: 7941 - Calendar.menuAction(var1, var2, var3, var4, var5, var6, MouseHandler.MouseHandler_lastPressedX, MouseHandler.MouseHandler_lastPressedY); // L: 7942 - } - } // L: 7943 } diff --git a/runescape-client/src/main/java/Enumerated.java b/runescape-client/src/main/java/Enumerated.java index 7f0cc57b08..9ad2a35821 100644 --- a/runescape-client/src/main/java/Enumerated.java +++ b/runescape-client/src/main/java/Enumerated.java @@ -3,13 +3,13 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ga") +@ObfuscatedName("gd") @Implements("Enumerated") public interface Enumerated { - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "23" + descriptor = "(I)I", + garbageValue = "-275768542" ) @Export("rsOrdinal") int rsOrdinal(); diff --git a/runescape-client/src/main/java/EvictingDualNodeHashTable.java b/runescape-client/src/main/java/EvictingDualNodeHashTable.java index 88b1cb677c..776d5d54bf 100644 --- a/runescape-client/src/main/java/EvictingDualNodeHashTable.java +++ b/runescape-client/src/main/java/EvictingDualNodeHashTable.java @@ -3,101 +3,101 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ev") +@ObfuscatedName("ez") @Implements("EvictingDualNodeHashTable") public final class EvictingDualNodeHashTable { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lgp;" + descriptor = "Lgj;" ) - DualNode field1978; - @ObfuscatedName("b") + DualNode field1977; + @ObfuscatedName("v") @Export("capacity") int capacity; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("remainingCapacity") int remainingCapacity; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lll;" + descriptor = "Lla;" ) @Export("hashTable") IterableNodeHashTable hashTable; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Ljt;" + descriptor = "Ljf;" ) @Export("deque") IterableDualNodeQueue deque; public EvictingDualNodeHashTable(int var1) { - this.field1978 = new DualNode(); // L: 8 - this.deque = new IterableDualNodeQueue(); // L: 12 - this.capacity = var1; // L: 15 - this.remainingCapacity = var1; // L: 16 + this.field1977 = new DualNode(); + this.deque = new IterableDualNodeQueue(); + this.capacity = var1; + this.remainingCapacity = var1; int var2; - for (var2 = 1; var2 + var2 < var1; var2 += var2) { // L: 17 18 + for (var2 = 1; var2 + var2 < var1; var2 += var2) { } - this.hashTable = new IterableNodeHashTable(var2); // L: 19 - } // L: 20 + this.hashTable = new IterableNodeHashTable(var2); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(J)Lgp;" + descriptor = "(J)Lgj;" ) @Export("get") public DualNode get(long var1) { - DualNode var3 = (DualNode)this.hashTable.get(var1); // L: 23 - if (var3 != null) { // L: 24 - this.deque.add(var3); // L: 25 + DualNode var3 = (DualNode)this.hashTable.get(var1); + if (var3 != null) { + this.deque.add(var3); } - return var3; // L: 28 + return var3; } - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("remove") public void remove(long var1) { - DualNode var3 = (DualNode)this.hashTable.get(var1); // L: 32 - if (var3 != null) { // L: 33 - var3.remove(); // L: 34 - var3.removeDual(); // L: 35 - ++this.remainingCapacity; // L: 36 + DualNode var3 = (DualNode)this.hashTable.get(var1); + if (var3 != null) { + var3.remove(); + var3.removeDual(); + ++this.remainingCapacity; } - } // L: 38 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lgp;J)V" + descriptor = "(Lgj;J)V" ) @Export("put") public void put(DualNode var1, long var2) { - if (this.remainingCapacity == 0) { // L: 41 - DualNode var4 = this.deque.removeLast(); // L: 42 - var4.remove(); // L: 43 - var4.removeDual(); // L: 44 - if (var4 == this.field1978) { // L: 45 - var4 = this.deque.removeLast(); // L: 46 - var4.remove(); // L: 47 - var4.removeDual(); // L: 48 + if (this.remainingCapacity == 0) { + DualNode var4 = this.deque.removeLast(); + var4.remove(); + var4.removeDual(); + if (var4 == this.field1977) { + var4 = this.deque.removeLast(); + var4.remove(); + var4.removeDual(); } } else { - --this.remainingCapacity; // L: 51 + --this.remainingCapacity; } - this.hashTable.put(var1, var2); // L: 52 - this.deque.add(var1); // L: 53 - } // L: 54 + this.hashTable.put(var1, var2); + this.deque.add(var1); + } - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("clear") public void clear() { - this.deque.clear(); // L: 57 - this.hashTable.clear(); // L: 58 - this.field1978 = new DualNode(); // L: 59 - this.remainingCapacity = this.capacity; // L: 60 - } // L: 61 + this.deque.clear(); + this.hashTable.clear(); + this.field1977 = new DualNode(); + this.remainingCapacity = this.capacity; + } } diff --git a/runescape-client/src/main/java/FaceNormal.java b/runescape-client/src/main/java/FaceNormal.java index 8db945504b..f8f5bd34ec 100644 --- a/runescape-client/src/main/java/FaceNormal.java +++ b/runescape-client/src/main/java/FaceNormal.java @@ -4,72 +4,131 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("eb") +@ObfuscatedName("ef") @Implements("FaceNormal") public class FaceNormal { - @ObfuscatedName("bo") - @ObfuscatedSignature( - descriptor = "[Lle;" - ) - @Export("worldSelectFlagSprites") - static IndexedSprite[] worldSelectFlagSprites; - @ObfuscatedName("dy") - @ObfuscatedSignature( - descriptor = "Lid;" - ) - @Export("archive3") - static Archive archive3; - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 875969351 + intValue = 1410868853 ) @Export("x") int x; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -440953057 + intValue = 855520165 ) @Export("y") int y; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1278044513 + intValue = 1494276377 ) @Export("z") int z; FaceNormal() { - } // L: 8 + } - @ObfuscatedName("f") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "([I[II)V", - garbageValue = "-2056587398" + descriptor = "(ILcs;ZI)I", + garbageValue = "1343156262" ) - public static void method3392(int[] var0, int[] var1) { - if (var0 != null && var1 != null) { - Coord.ByteArrayPool_alternativeSizes = var0; // L: 25 - FloorDecoration.ByteArrayPool_altSizeArrayCounts = new int[var0.length]; // L: 26 - ByteArrayPool.ByteArrayPool_arrays = new byte[var0.length][][]; // L: 27 - - for (int var2 = 0; var2 < Coord.ByteArrayPool_alternativeSizes.length; ++var2) { // L: 28 - ByteArrayPool.ByteArrayPool_arrays[var2] = new byte[var1[var2]][]; // L: 29 - } - + static int method3345(int var0, Script var1, boolean var2) { + if (var0 < 1000) { + return class231.method4154(var0, var1, var2); + } else if (var0 < 1100) { + return class200.method3711(var0, var1, var2); + } else if (var0 < 1200) { + return WorldMapData_1.method736(var0, var1, var2); + } else if (var0 < 1300) { + return UserComparator9.method3478(var0, var1, var2); + } else if (var0 < 1400) { + return ScriptFrame.method1213(var0, var1, var2); + } else if (var0 < 1500) { + return ModeWhere.method3717(var0, var1, var2); + } else if (var0 < 1600) { + return Messages.method2283(var0, var1, var2); + } else if (var0 < 1700) { + return GrandExchangeOfferUnitPriceComparator.method200(var0, var1, var2); + } else if (var0 < 1800) { + return class277.method5005(var0, var1, var2); + } else if (var0 < 1900) { + return WorldMapRectangle.method331(var0, var1, var2); + } else if (var0 < 2000) { + return Frames.method3354(var0, var1, var2); + } else if (var0 < 2100) { + return class200.method3711(var0, var1, var2); + } else if (var0 < 2200) { + return WorldMapData_1.method736(var0, var1, var2); + } else if (var0 < 2300) { + return UserComparator9.method3478(var0, var1, var2); + } else if (var0 < 2400) { + return ScriptFrame.method1213(var0, var1, var2); + } else if (var0 < 2500) { + return ModeWhere.method3717(var0, var1, var2); + } else if (var0 < 2600) { + return class22.method221(var0, var1, var2); + } else if (var0 < 2700) { + return WorldMapIcon_1.method336(var0, var1, var2); + } else if (var0 < 2800) { + return WorldMapIcon_1.method345(var0, var1, var2); + } else if (var0 < 2900) { + return AbstractWorldMapData.method328(var0, var1, var2); + } else if (var0 < 3000) { + return Frames.method3354(var0, var1, var2); + } else if (var0 < 3200) { + return WorldMapID.method600(var0, var1, var2); + } else if (var0 < 3300) { + return WorldMapData_0.method245(var0, var1, var2); + } else if (var0 < 3400) { + return Language.method3709(var0, var1, var2); + } else if (var0 < 3500) { + return TileItemPile.method2850(var0, var1, var2); + } else if (var0 < 3700) { + return ApproximateRouteStrategy.method1302(var0, var1, var2); + } else if (var0 < 4000) { + return GrandExchangeEvents.method146(var0, var1, var2); + } else if (var0 < 4100) { + return class41.method602(var0, var1, var2); + } else if (var0 < 4200) { + return GrandExchangeOfferAgeComparator.method218(var0, var1, var2); + } else if (var0 < 4300) { + return StudioGame.method4186(var0, var1, var2); + } else if (var0 < 5100) { + return class258.method4516(var0, var1, var2); + } else if (var0 < 5400) { + return class58.method916(var0, var1, var2); + } else if (var0 < 5600) { + return FloorUnderlayDefinition.method4460(var0, var1, var2); + } else if (var0 < 5700) { + return AbstractWorldMapIcon.method656(var0, var1, var2); + } else if (var0 < 6300) { + return WorldMapID.method599(var0, var1, var2); + } else if (var0 < 6600) { + return HorizontalAlignment.method4729(var0, var1, var2); } else { - Coord.ByteArrayPool_alternativeSizes = null; - FloorDecoration.ByteArrayPool_altSizeArrayCounts = null; // L: 21 - ByteArrayPool.ByteArrayPool_arrays = null; // L: 22 + return var0 < 6700 ? class52.method845(var0, var1, var2) : 2; } - } // L: 23 31 + } - @ObfuscatedName("f") + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "(Liw;I)V", - garbageValue = "-1326300873" + descriptor = "(Ldw;I)V", + garbageValue = "398077002" ) - public static void method3393(AbstractArchive var0) { - class25.VarpDefinition_archive = var0; // L: 18 - VarpDefinition.VarpDefinition_fileCount = class25.VarpDefinition_archive.getGroupFileCount(16); // L: 19 - } // L: 20 + public static final void method3344(PlayerProvider var0) { + Varps.pcmPlayerProvider = var0; + } + + @ObfuscatedName("lx") + @ObfuscatedSignature( + descriptor = "(Lhe;I)I", + garbageValue = "1443888680" + ) + @Export("getWidgetFlags") + static int getWidgetFlags(Widget var0) { + IntegerNode var1 = (IntegerNode)Client.widgetFlags.get((long)var0.childIndex + ((long)var0.id << 32)); + return var1 != null ? var1.integer : var0.flags; + } } diff --git a/runescape-client/src/main/java/FileSystem.java b/runescape-client/src/main/java/FileSystem.java index c153869d28..bad00cb13a 100644 --- a/runescape-client/src/main/java/FileSystem.java +++ b/runescape-client/src/main/java/FileSystem.java @@ -1,92 +1,67 @@ import java.io.File; +import java.io.IOException; import java.util.Hashtable; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fn") +@ObfuscatedName("fc") @Implements("FileSystem") public class FileSystem { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("FileSystem_hasPermissions") - static boolean FileSystem_hasPermissions; - @ObfuscatedName("b") + public static boolean FileSystem_hasPermissions; + @ObfuscatedName("v") @Export("FileSystem_cacheDir") - static File FileSystem_cacheDir; - @ObfuscatedName("l") + public static File FileSystem_cacheDir; + @ObfuscatedName("x") @Export("FileSystem_cacheFiles") static Hashtable FileSystem_cacheFiles; + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "Lhg;" + ) + @Export("musicTrack") + static MusicTrack musicTrack; + @ObfuscatedName("gt") + @Export("regions") + static int[] regions; static { - FileSystem_hasPermissions = false; // L: 7 + FileSystem_hasPermissions = false; FileSystem_cacheFiles = new Hashtable(16); - } // L: 9 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(Liw;Liw;I)V", - garbageValue = "1765921646" - ) - public static void method3630(AbstractArchive var0, AbstractArchive var1) { - KitDefinition.KitDefinition_archive = var0; // L: 27 - KitDefinition.KitDefinition_modelsArchive = var1; // L: 28 - KitDefinition.KitDefinition_fileCount = KitDefinition.KitDefinition_archive.getGroupFileCount(3); // L: 29 - } // L: 30 - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(I)Lcf;", - garbageValue = "1501989228" - ) - @Export("getNextWorldListWorld") - static World getNextWorldListWorld() { - return World.World_listCount < World.World_count ? DefaultsGroup.World_worlds[++World.World_listCount - 1] : null; // L: 242 243 } - @ObfuscatedName("ic") + @ObfuscatedName("la") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "77" + descriptor = "(Lkj;I)V", + garbageValue = "-1885661901" ) - static final int method3638() { - return Client.menuOptionsCount - 1; // L: 8952 + static void method3573(Buffer var0) { + if (Client.randomDatData != null) { + var0.writeBytes(Client.randomDatData, 0, Client.randomDatData.length); + } else { + byte[] var2 = new byte[24]; + + try { + JagexCache.JagexCache_randomDat.seek(0L); + JagexCache.JagexCache_randomDat.readFully(var2); + + int var3; + for (var3 = 0; var3 < 24 && var2[var3] == 0; ++var3) { + } + + if (var3 >= 24) { + throw new IOException(); + } + } catch (Exception var6) { + for (int var4 = 0; var4 < 24; ++var4) { + var2[var4] = -1; + } + } + + var0.writeBytes(var2, 0, var2.length); + } } - - @ObfuscatedName("ig") - @ObfuscatedSignature( - descriptor = "(Lht;IIS)V", - garbageValue = "10290" - ) - @Export("alignWidgetPosition") - static void alignWidgetPosition(Widget var0, int var1, int var2) { - if (var0.xAlignment == 0) { // L: 9925 - var0.x = var0.rawX; - } else if (var0.xAlignment == 1) { // L: 9926 - var0.x = var0.rawX + (var1 - var0.width) / 2; - } else if (var0.xAlignment == 2) { // L: 9927 - var0.x = var1 - var0.width - var0.rawX; - } else if (var0.xAlignment == 3) { // L: 9928 - var0.x = var0.rawX * var1 >> 14; - } else if (var0.xAlignment == 4) { // L: 9929 - var0.x = (var0.rawX * var1 >> 14) + (var1 - var0.width) / 2; - } else { - var0.x = var1 - var0.width - (var0.rawX * var1 >> 14); // L: 9930 - } - - if (var0.yAlignment == 0) { // L: 9931 - var0.y = var0.rawY; - } else if (var0.yAlignment == 1) { // L: 9932 - var0.y = (var2 - var0.height) / 2 + var0.rawY; - } else if (var0.yAlignment == 2) { // L: 9933 - var0.y = var2 - var0.height - var0.rawY; - } else if (var0.yAlignment == 3) { - var0.y = var2 * var0.rawY >> 14; // L: 9934 - } else if (var0.yAlignment == 4) { // L: 9935 - var0.y = (var2 - var0.height) / 2 + (var2 * var0.rawY >> 14); - } else { - var0.y = var2 - var0.height - (var2 * var0.rawY >> 14); // L: 9936 - } - - } // L: 9937 } diff --git a/runescape-client/src/main/java/FillMode.java b/runescape-client/src/main/java/FillMode.java deleted file mode 100644 index 66008c4515..0000000000 --- a/runescape-client/src/main/java/FillMode.java +++ /dev/null @@ -1,56 +0,0 @@ -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("lu") -@Implements("FillMode") -public enum FillMode implements Enumerated { - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "Llu;" - ) - @Export("SOLID") - SOLID(0, 0), - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "Llu;" - ) - @Export("GRADIENT") - GRADIENT(1, 1), - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "Llu;" - ) - @Export("GRADIENT_ALPHA") - GRADIENT_ALPHA(2, 2); - - @ObfuscatedName("m") - @ObfuscatedGetter( - intValue = -142023791 - ) - @Export("id") - public final int id; - @ObfuscatedName("z") - @ObfuscatedGetter( - intValue = 2056260395 - ) - @Export("index") - final int index; - - FillMode(int var3, int var4) { - this.id = var3; // L: 19 - this.index = var4; // L: 20 - } // L: 21 - - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "23" - ) - @Export("rsOrdinal") - public int rsOrdinal() { - return this.index; // L: 24 - } -} diff --git a/runescape-client/src/main/java/FloorDecoration.java b/runescape-client/src/main/java/FloorDecoration.java index f638474a90..b208b86890 100644 --- a/runescape-client/src/main/java/FloorDecoration.java +++ b/runescape-client/src/main/java/FloorDecoration.java @@ -4,51 +4,42 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ek") +@ObfuscatedName("em") @Implements("FloorDecoration") public final class FloorDecoration { - @ObfuscatedName("c") - @Export("ByteArrayPool_altSizeArrayCounts") - static int[] ByteArrayPool_altSizeArrayCounts; - @ObfuscatedName("gs") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 1831338455 - ) - @Export("baseX") - static int baseX; - @ObfuscatedName("f") - @ObfuscatedGetter( - intValue = 1613676277 + intValue = -689308621 ) @Export("tileHeight") int tileHeight; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -191694913 + intValue = -1437698275 ) @Export("x") int x; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 489421685 + intValue = 380443133 ) @Export("y") int y; - @ObfuscatedName("m") - @ObfuscatedGetter( - longValue = 2791850332732375269L - ) - @Export("tag") - public long tag; - @ObfuscatedName("z") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lej;" + descriptor = "Ler;" ) @Export("entity") public Entity entity; - @ObfuscatedName("q") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -1457303601 + longValue = 2801138791321477185L + ) + @Export("tag") + public long tag; + @ObfuscatedName("j") + @ObfuscatedGetter( + intValue = 1520433835 ) @Export("flags") int flags; @@ -56,82 +47,164 @@ public final class FloorDecoration { FloorDecoration() { } - @ObfuscatedName("f") + @ObfuscatedName("e") @ObfuscatedSignature( - descriptor = "(I)[Llb;", - garbageValue = "1849672417" + descriptor = "(Ljava/lang/String;I)V", + garbageValue = "390219432" ) - static PrivateChatMode[] method2989() { - return new PrivateChatMode[]{PrivateChatMode.field3826, PrivateChatMode.field3824, PrivateChatMode.field3827}; // L: 11 + static final void method2932(String var0) { + PacketBufferNode var1 = ItemContainer.getPacketBufferNode(ClientPacket.field2241, Client.packetWriter.isaacCipher); + var1.packetBuffer.writeByte(stringCp1252NullTerminatedByteSize(var0)); + var1.packetBuffer.writeStringCp1252NullTerminated(var0); + Client.packetWriter.addNode(var1); } - @ObfuscatedName("m") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Liw;III)Llc;", - garbageValue = "1333431169" + descriptor = "(Ljava/lang/String;B)I", + garbageValue = "-120" ) - @Export("SpriteBuffer_getSprite") - public static Sprite SpriteBuffer_getSprite(AbstractArchive var0, int var1, int var2) { - byte[] var4 = var0.takeFile(var1, var2); // L: 141 - boolean var3; - if (var4 == null) { // L: 142 - var3 = false; // L: 143 - } else { - class217.SpriteBuffer_decode(var4); // L: 146 - var3 = true; // L: 147 - } - - return !var3 ? null : class281.method5132(); // L: 149 150 + @Export("stringCp1252NullTerminatedByteSize") + public static int stringCp1252NullTerminatedByteSize(String var0) { + return var0.length() + 1; } - @ObfuscatedName("ee") + @ObfuscatedName("im") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1780593024" + descriptor = "(ILjava/lang/String;B)V", + garbageValue = "-74" ) - static final void method2986() { - if (Client.logoutTimer > 0) { // L: 3026 - class89.logOut(); // L: 3027 - } else { - Client.timer.method5147(); // L: 3030 - BuddyRankComparator.updateGameState(40); // L: 3031 - MouseRecorder.field615 = Client.packetWriter.getSocket(); // L: 3032 - Client.packetWriter.removeSocket(); // L: 3033 - } - } // L: 3028 3034 + static void method2931(int var0, String var1) { + int var2 = Players.Players_count; + int[] var3 = Players.Players_indices; + boolean var4 = false; + Username var5 = new Username(var1, GrandExchangeOfferUnitPriceComparator.loginType); - @ObfuscatedName("hz") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-584173376" - ) - static final void method2988() { - for (PendingSpawn var0 = (PendingSpawn)Client.pendingSpawns.last(); var0 != null; var0 = (PendingSpawn)Client.pendingSpawns.previous()) { // L: 7190 7191 7210 - if (var0.hitpoints > 0) { // L: 7192 - --var0.hitpoints; + for (int var6 = 0; var6 < var2; ++var6) { + Player var7 = Client.players[var3[var6]]; + if (var7 != null && var7 != PlayerAppearance.localPlayer && var7.username != null && var7.username.equals(var5)) { + PacketBufferNode var8; + if (var0 == 1) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2260, Client.packetWriter.isaacCipher); + var8.packetBuffer.method5568(0); + var8.packetBuffer.writeShortLE(var3[var6]); + Client.packetWriter.addNode(var8); + } else if (var0 == 4) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2312, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShortLE(var3[var6]); + var8.packetBuffer.method5568(0); + Client.packetWriter.addNode(var8); + } else if (var0 == 6) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2242, Client.packetWriter.isaacCipher); + var8.packetBuffer.method5568(0); + var8.packetBuffer.method5578(var3[var6]); + Client.packetWriter.addNode(var8); + } else if (var0 == 7) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2268, Client.packetWriter.isaacCipher); + var8.packetBuffer.method5578(var3[var6]); + var8.packetBuffer.writeIntME(0); + Client.packetWriter.addNode(var8); + } + + var4 = true; + break; } + } - if (var0.hitpoints == 0) { // L: 7193 - if (var0.objectId < 0 || UrlRequest.method3437(var0.objectId, var0.field959)) { // L: 7194 - WorldMapIcon_0.addPendingSpawnToScene(var0.plane, var0.type, var0.x, var0.y, var0.objectId, var0.field963, var0.field959); // L: 7195 - var0.remove(); // L: 7196 - } - } else { - if (var0.delay > 0) { // L: 7200 - --var0.delay; + if (!var4) { + class234.addGameMessage(4, "", "Unable to find " + var1); + } + + } + + @ObfuscatedName("jb") + @ObfuscatedSignature( + descriptor = "(Lbq;IIII)V", + garbageValue = "-1914334357" + ) + @Export("addPlayerToMenu") + static final void addPlayerToMenu(Player var0, int var1, int var2, int var3) { + if (PlayerAppearance.localPlayer != var0) { + if (Client.menuOptionsCount < 400) { + String var4; + int var7; + if (var0.skillLevel == 0) { + String var5 = var0.actions[0] + var0.username + var0.actions[1]; + var7 = var0.combatLevel; + int var8 = PlayerAppearance.localPlayer.combatLevel; + int var9 = var8 - var7; + String var6; + if (var9 < -9) { + var6 = class23.colorStartTag(16711680); + } else if (var9 < -6) { + var6 = class23.colorStartTag(16723968); + } else if (var9 < -3) { + var6 = class23.colorStartTag(16740352); + } else if (var9 < 0) { + var6 = class23.colorStartTag(16756736); + } else if (var9 > 9) { + var6 = class23.colorStartTag(65280); + } else if (var9 > 6) { + var6 = class23.colorStartTag(4259584); + } else if (var9 > 3) { + var6 = class23.colorStartTag(8453888); + } else if (var9 > 0) { + var6 = class23.colorStartTag(12648192); + } else { + var6 = class23.colorStartTag(16776960); + } + + var4 = var5 + var6 + " " + " (" + "level-" + var0.combatLevel + ")" + var0.actions[2]; + } else { + var4 = var0.actions[0] + var0.username + var0.actions[1] + " " + " (" + "skill-" + var0.skillLevel + ")" + var0.actions[2]; } - if (var0.delay == 0 && var0.x >= 1 && var0.y >= 1 && var0.x <= 102 && var0.y <= 102 && (var0.id < 0 || UrlRequest.method3437(var0.id, var0.field962))) { // L: 7201 7202 - WorldMapIcon_0.addPendingSpawnToScene(var0.plane, var0.type, var0.x, var0.y, var0.id, var0.orientation, var0.field962); // L: 7203 - var0.delay = -1; // L: 7204 - if (var0.objectId == var0.id && var0.objectId == -1) { // L: 7205 - var0.remove(); - } else if (var0.id == var0.objectId && var0.field963 == var0.orientation && var0.field962 == var0.field959) { - var0.remove(); // L: 7206 + int var10; + if (Client.isItemSelected == 1) { + WorldMapRegion.insertMenuItemNoShift("Use", Client.selectedItemName + " " + "->" + " " + class23.colorStartTag(16777215) + var4, 14, var1, var2, var3); + } else if (Client.isSpellSelected) { + if ((Player.selectedSpellFlags & 8) == 8) { + WorldMapRegion.insertMenuItemNoShift(Client.selectedSpellActionName, Client.selectedSpellName + " " + "->" + " " + class23.colorStartTag(16777215) + var4, 15, var1, var2, var3); + } + } else { + for (var10 = 7; var10 >= 0; --var10) { + if (Client.playerMenuActions[var10] != null) { + short var11 = 0; + if (Client.playerMenuActions[var10].equalsIgnoreCase("Attack")) { + if (AttackOption.AttackOption_hidden == Client.playerAttackOption) { + continue; + } + + if (Client.playerAttackOption == AttackOption.AttackOption_alwaysRightClick || AttackOption.AttackOption_dependsOnCombatLevels == Client.playerAttackOption && var0.combatLevel > PlayerAppearance.localPlayer.combatLevel) { + var11 = 2000; + } + + if (PlayerAppearance.localPlayer.team != 0 && var0.team != 0) { + if (var0.team == PlayerAppearance.localPlayer.team) { + var11 = 2000; + } else { + var11 = 0; + } + } + } else if (Client.playerOptionsPriorities[var10]) { + var11 = 2000; + } + + boolean var12 = false; + var7 = Client.playerMenuOpcodes[var10] + var11; + WorldMapRegion.insertMenuItemNoShift(Client.playerMenuActions[var10], class23.colorStartTag(16777215) + var4, var7, var1, var2, var3); + } } } + + for (var10 = 0; var10 < Client.menuOptionsCount; ++var10) { + if (Client.menuOpcodes[var10] == 23) { + Client.menuTargets[var10] = class23.colorStartTag(16777215) + var4; + break; + } + } + } } - - } // L: 7212 + } } diff --git a/runescape-client/src/main/java/FloorOverlayDefinition.java b/runescape-client/src/main/java/FloorOverlayDefinition.java index e8168d192e..2d3412e5cc 100644 --- a/runescape-client/src/main/java/FloorOverlayDefinition.java +++ b/runescape-client/src/main/java/FloorOverlayDefinition.java @@ -4,208 +4,226 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jp") +@ObfuscatedName("jv") @Implements("FloorOverlayDefinition") public class FloorOverlayDefinition extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("FloorOverlayDefinition_archive") - public static AbstractArchive FloorOverlayDefinition_archive; - @ObfuscatedName("b") + static AbstractArchive FloorOverlayDefinition_archive; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("FloorOverlayDefinition_cached") - static EvictingDualNodeHashTable FloorOverlayDefinition_cached; - @ObfuscatedName("l") + public static EvictingDualNodeHashTable FloorOverlayDefinition_cached; + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1626409717 + intValue = -1526945035 ) @Export("primaryRgb") public int primaryRgb; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -1711745165 + intValue = -721578033 ) @Export("texture") public int texture; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("hideUnderlay") public boolean hideUnderlay; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -245262637 + intValue = 1521326545 ) @Export("secondaryRgb") public int secondaryRgb; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -334470275 + intValue = 842502255 ) @Export("hue") public int hue; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 530209803 + intValue = 1500542353 ) @Export("saturation") public int saturation; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = -1645062629 + intValue = -1673894867 ) @Export("lightness") public int lightness; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = 390180503 + intValue = 1564345129 ) @Export("secondaryHue") public int secondaryHue; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedGetter( - intValue = 700927849 + intValue = 385284739 ) @Export("secondarySaturation") public int secondarySaturation; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedGetter( - intValue = 862539151 + intValue = -1523532645 ) @Export("secondaryLightness") public int secondaryLightness; static { - FloorOverlayDefinition_cached = new EvictingDualNodeHashTable(64); // L: 11 + FloorOverlayDefinition_cached = new EvictingDualNodeHashTable(64); } FloorOverlayDefinition() { - this.primaryRgb = 0; // L: 12 - this.texture = -1; // L: 13 - this.hideUnderlay = true; // L: 14 - this.secondaryRgb = -1; // L: 15 - } // L: 23 + this.primaryRgb = 0; + this.texture = -1; + this.hideUnderlay = true; + this.secondaryRgb = -1; + } - @ObfuscatedName("b") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1333451124" + garbageValue = "-456917444" ) @Export("postDecode") void postDecode() { - if (this.secondaryRgb != -1) { // L: 37 - this.setHsl(this.secondaryRgb); // L: 38 - this.secondaryHue = this.hue; // L: 39 - this.secondarySaturation = this.saturation; // L: 40 - this.secondaryLightness = this.lightness; // L: 41 + if (this.secondaryRgb != -1) { + this.setHsl(this.secondaryRgb); + this.secondaryHue = this.hue; + this.secondarySaturation = this.saturation; + this.secondaryLightness = this.lightness; } - this.setHsl(this.primaryRgb); // L: 43 - } // L: 44 + this.setHsl(this.primaryRgb); + } - @ObfuscatedName("l") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lkb;IB)V", - garbageValue = "10" + descriptor = "(Lkj;II)V", + garbageValue = "876279839" ) @Export("decode") void decode(Buffer var1, int var2) { while (true) { - int var3 = var1.readUnsignedByte(); // L: 48 - if (var3 == 0) { // L: 49 - return; // L: 52 + int var3 = var1.readUnsignedByte(); + if (var3 == 0) { + return; } - this.decodeNext(var1, var3, var2); // L: 50 + this.decodeNext(var1, var3, var2); } } - @ObfuscatedName("m") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(Lkb;III)V", - garbageValue = "1891819359" + descriptor = "(Lkj;IIB)V", + garbageValue = "41" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2, int var3) { - if (var2 == 1) { // L: 55 + if (var2 == 1) { this.primaryRgb = var1.readMedium(); } else if (var2 == 2) { - this.texture = var1.readUnsignedByte(); // L: 56 - } else if (var2 == 5) { // L: 57 + this.texture = var1.readUnsignedByte(); + } else if (var2 == 5) { this.hideUnderlay = false; } else if (var2 == 7) { - this.secondaryRgb = var1.readMedium(); // L: 58 - } else if (var2 == 8) { // L: 59 + this.secondaryRgb = var1.readMedium(); + } else if (var2 == 8) { } - } // L: 61 + } - @ObfuscatedName("z") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(IS)V", - garbageValue = "23572" + descriptor = "(II)V", + garbageValue = "-774110413" ) @Export("setHsl") void setHsl(int var1) { - double var2 = (double)(var1 >> 16 & 255) / 256.0D; // L: 64 - double var4 = (double)(var1 >> 8 & 255) / 256.0D; // L: 65 - double var6 = (double)(var1 & 255) / 256.0D; // L: 66 - double var8 = var2; // L: 67 - if (var4 < var2) { // L: 68 + double var2 = (double)(var1 >> 16 & 255) / 256.0D; + double var4 = (double)(var1 >> 8 & 255) / 256.0D; + double var6 = (double)(var1 & 255) / 256.0D; + double var8 = var2; + if (var4 < var2) { var8 = var4; } - if (var6 < var8) { // L: 69 + if (var6 < var8) { var8 = var6; } - double var10 = var2; // L: 70 - if (var4 > var2) { // L: 71 + double var10 = var2; + if (var4 > var2) { var10 = var4; } - if (var6 > var10) { // L: 72 + if (var6 > var10) { var10 = var6; } - double var12 = 0.0D; // L: 73 - double var14 = 0.0D; // L: 74 - double var16 = (var10 + var8) / 2.0D; // L: 75 - if (var10 != var8) { // L: 76 - if (var16 < 0.5D) { // L: 77 + double var12 = 0.0D; + double var14 = 0.0D; + double var16 = (var10 + var8) / 2.0D; + if (var8 != var10) { + if (var16 < 0.5D) { var14 = (var10 - var8) / (var8 + var10); } - if (var16 >= 0.5D) { // L: 78 + if (var16 >= 0.5D) { var14 = (var10 - var8) / (2.0D - var10 - var8); } - if (var10 == var2) { // L: 79 + if (var10 == var2) { var12 = (var4 - var6) / (var10 - var8); - } else if (var10 == var4) { // L: 80 - var12 = (var6 - var2) / (var10 - var8) + 2.0D; - } else if (var10 == var6) { - var12 = (var2 - var4) / (var10 - var8) + 4.0D; // L: 81 + } else if (var10 == var4) { + var12 = 2.0D + (var6 - var2) / (var10 - var8); + } else if (var6 == var10) { + var12 = 4.0D + (var2 - var4) / (var10 - var8); } } - var12 /= 6.0D; // L: 83 - this.hue = (int)(256.0D * var12); // L: 84 - this.saturation = (int)(256.0D * var14); // L: 85 - this.lightness = (int)(var16 * 256.0D); // L: 86 - if (this.saturation < 0) { // L: 87 + var12 /= 6.0D; + this.hue = (int)(256.0D * var12); + this.saturation = (int)(var14 * 256.0D); + this.lightness = (int)(var16 * 256.0D); + if (this.saturation < 0) { this.saturation = 0; - } else if (this.saturation > 255) { // L: 88 + } else if (this.saturation > 255) { this.saturation = 255; } - if (this.lightness < 0) { // L: 89 + if (this.lightness < 0) { this.lightness = 0; - } else if (this.lightness > 255) { // L: 90 + } else if (this.lightness > 255) { this.lightness = 255; } - } // L: 91 + } + + @ObfuscatedName("p") + @ObfuscatedSignature( + descriptor = "(Lib;IB)Llo;", + garbageValue = "-54" + ) + public static IndexedSprite method4789(AbstractArchive var0, int var1) { + byte[] var3 = var0.takeFileFlat(var1); + boolean var2; + if (var3 == null) { + var2 = false; + } else { + class232.SpriteBuffer_decode(var3); + var2 = true; + } + + return !var2 ? null : PrivateChatMode.method5937(); + } } diff --git a/runescape-client/src/main/java/FloorUnderlayDefinition.java b/runescape-client/src/main/java/FloorUnderlayDefinition.java index 13f5399ba4..2a8ad30b09 100644 --- a/runescape-client/src/main/java/FloorUnderlayDefinition.java +++ b/runescape-client/src/main/java/FloorUnderlayDefinition.java @@ -3,175 +3,215 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("ia") +@ObfuscatedName("iw") @Implements("FloorUnderlayDefinition") public class FloorUnderlayDefinition extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("FloorUnderlayDefinition_archive") - static AbstractArchive FloorUnderlayDefinition_archive; - @ObfuscatedName("b") + public static AbstractArchive FloorUnderlayDefinition_archive; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("FloorUnderlayDefinition_cached") static EvictingDualNodeHashTable FloorUnderlayDefinition_cached; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1168290687 + intValue = -1640099513 ) @Export("rgb") int rgb; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 1022846445 + intValue = 772769107 ) @Export("hue") public int hue; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 1296043119 + intValue = 1277008429 ) @Export("saturation") public int saturation; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -834824709 + intValue = 1129854273 ) @Export("lightness") public int lightness; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -1129037543 + intValue = 2072275111 ) @Export("hueMultiplier") public int hueMultiplier; static { - FloorUnderlayDefinition_cached = new EvictingDualNodeHashTable(64); // L: 11 + FloorUnderlayDefinition_cached = new EvictingDualNodeHashTable(64); } FloorUnderlayDefinition() { - this.rgb = 0; // L: 12 - } // L: 18 + this.rgb = 0; + } - @ObfuscatedName("l") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1295425125" + garbageValue = "1848989672" ) @Export("postDecode") void postDecode() { - this.setHsl(this.rgb); // L: 36 - } // L: 37 + this.setHsl(this.rgb); + } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "387811374" + descriptor = "(Lkj;II)V", + garbageValue = "731438667" ) @Export("decode") void decode(Buffer var1, int var2) { while (true) { - int var3 = var1.readUnsignedByte(); // L: 41 - if (var3 == 0) { // L: 42 - return; // L: 45 + int var3 = var1.readUnsignedByte(); + if (var3 == 0) { + return; } - this.decodeNext(var1, var3, var2); // L: 43 + this.decodeNext(var1, var3, var2); } } - @ObfuscatedName("z") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lkb;IIS)V", - garbageValue = "255" + descriptor = "(Lkj;IIB)V", + garbageValue = "5" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2, int var3) { - if (var2 == 1) { // L: 48 + if (var2 == 1) { this.rgb = var1.readMedium(); } - } // L: 50 + } - @ObfuscatedName("q") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "1228051433" + garbageValue = "1248052268" ) @Export("setHsl") void setHsl(int var1) { - double var2 = (double)(var1 >> 16 & 255) / 256.0D; // L: 53 - double var4 = (double)(var1 >> 8 & 255) / 256.0D; // L: 54 - double var6 = (double)(var1 & 255) / 256.0D; // L: 55 - double var8 = var2; // L: 56 - if (var4 < var2) { // L: 57 + double var2 = (double)(var1 >> 16 & 255) / 256.0D; + double var4 = (double)(var1 >> 8 & 255) / 256.0D; + double var6 = (double)(var1 & 255) / 256.0D; + double var8 = var2; + if (var4 < var2) { var8 = var4; } - if (var6 < var8) { // L: 58 + if (var6 < var8) { var8 = var6; } - double var10 = var2; // L: 59 - if (var4 > var2) { // L: 60 + double var10 = var2; + if (var4 > var2) { var10 = var4; } - if (var6 > var10) { // L: 61 + if (var6 > var10) { var10 = var6; } - double var12 = 0.0D; // L: 62 - double var14 = 0.0D; // L: 63 - double var16 = (var10 + var8) / 2.0D; // L: 64 - if (var8 != var10) { // L: 65 - if (var16 < 0.5D) { // L: 66 - var14 = (var10 - var8) / (var10 + var8); + double var12 = 0.0D; + double var14 = 0.0D; + double var16 = (var8 + var10) / 2.0D; + if (var8 != var10) { + if (var16 < 0.5D) { + var14 = (var10 - var8) / (var8 + var10); } - if (var16 >= 0.5D) { // L: 67 + if (var16 >= 0.5D) { var14 = (var10 - var8) / (2.0D - var10 - var8); } - if (var10 == var2) { // L: 68 + if (var2 == var10) { var12 = (var4 - var6) / (var10 - var8); - } else if (var4 == var10) { // L: 69 + } else if (var10 == var4) { var12 = 2.0D + (var6 - var2) / (var10 - var8); } else if (var6 == var10) { - var12 = 4.0D + (var2 - var4) / (var10 - var8); // L: 70 + var12 = 4.0D + (var2 - var4) / (var10 - var8); } } - var12 /= 6.0D; // L: 72 - this.saturation = (int)(256.0D * var14); // L: 73 - this.lightness = (int)(256.0D * var16); // L: 74 - if (this.saturation < 0) { // L: 75 + var12 /= 6.0D; + this.saturation = (int)(var14 * 256.0D); + this.lightness = (int)(256.0D * var16); + if (this.saturation < 0) { this.saturation = 0; - } else if (this.saturation > 255) { // L: 76 + } else if (this.saturation > 255) { this.saturation = 255; } - if (this.lightness < 0) { // L: 77 + if (this.lightness < 0) { this.lightness = 0; - } else if (this.lightness > 255) { // L: 78 + } else if (this.lightness > 255) { this.lightness = 255; } - if (var16 > 0.5D) { // L: 79 - this.hueMultiplier = (int)(512.0D * (1.0D - var16) * var14); + if (var16 > 0.5D) { + this.hueMultiplier = (int)(var14 * (1.0D - var16) * 512.0D); } else { - this.hueMultiplier = (int)(var14 * var16 * 512.0D); // L: 80 + this.hueMultiplier = (int)(var16 * var14 * 512.0D); } - if (this.hueMultiplier < 1) { // L: 81 + if (this.hueMultiplier < 1) { this.hueMultiplier = 1; } - this.hue = (int)((double)this.hueMultiplier * var12); // L: 82 - } // L: 83 + this.hue = (int)((double)this.hueMultiplier * var12); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(ILcs;ZI)I", + garbageValue = "-170727251" + ) + static int method4460(int var0, Script var1, boolean var2) { + int var3; + if (var0 == ScriptOpcodes.CAM_FORCEANGLE) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + int var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + if (!Client.isCameraLocked) { + Client.camAngleX = var3; + Client.camAngleY = var4; + } + + return 1; + } else if (var0 == ScriptOpcodes.CAM_GETANGLE_XA) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.camAngleX; + return 1; + } else if (var0 == ScriptOpcodes.CAM_GETANGLE_YA) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.camAngleY; + return 1; + } else if (var0 == ScriptOpcodes.CAM_SETFOLLOWHEIGHT) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (var3 < 0) { + var3 = 0; + } + + Client.camFollowHeight = var3; + return 1; + } else if (var0 == ScriptOpcodes.CAM_GETFOLLOWHEIGHT) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.camFollowHeight; + return 1; + } else { + return 2; + } + } } diff --git a/runescape-client/src/main/java/Font.java b/runescape-client/src/main/java/Font.java index df7643c813..27a72f1a12 100644 --- a/runescape-client/src/main/java/Font.java +++ b/runescape-client/src/main/java/Font.java @@ -2,98 +2,98 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("kq") +@ObfuscatedName("ku") @Implements("Font") public final class Font extends AbstractFont { public Font(byte[] var1, int[] var2, int[] var3, int[] var4, int[] var5, int[] var6, byte[][] var7) { - super(var1, var2, var3, var4, var5, var6, var7); // L: 7 - } // L: 8 + super(var1, var2, var3, var4, var5, var6, var7); + } public Font(byte[] var1) { - super(var1); // L: 11 - } // L: 12 + super(var1); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("drawGlyph") final void drawGlyph(byte[] var1, int var2, int var3, int var4, int var5, int var6) { - int var7 = var3 * Rasterizer2D.Rasterizer2D_width + var2; // L: 15 - int var8 = Rasterizer2D.Rasterizer2D_width - var4; // L: 16 - int var9 = 0; // L: 17 - int var10 = 0; // L: 18 + int var7 = var3 * Rasterizer2D.Rasterizer2D_width + var2; + int var8 = Rasterizer2D.Rasterizer2D_width - var4; + int var9 = 0; + int var10 = 0; int var11; - if (var3 < Rasterizer2D.Rasterizer2D_yClipStart) { // L: 19 - var11 = Rasterizer2D.Rasterizer2D_yClipStart - var3; // L: 20 - var5 -= var11; // L: 21 - var3 = Rasterizer2D.Rasterizer2D_yClipStart; // L: 22 - var10 += var11 * var4; // L: 23 - var7 += var11 * Rasterizer2D.Rasterizer2D_width; // L: 24 + if (var3 < Rasterizer2D.Rasterizer2D_yClipStart) { + var11 = Rasterizer2D.Rasterizer2D_yClipStart - var3; + var5 -= var11; + var3 = Rasterizer2D.Rasterizer2D_yClipStart; + var10 += var11 * var4; + var7 += var11 * Rasterizer2D.Rasterizer2D_width; } - if (var3 + var5 > Rasterizer2D.Rasterizer2D_yClipEnd) { // L: 26 + if (var3 + var5 > Rasterizer2D.Rasterizer2D_yClipEnd) { var5 -= var3 + var5 - Rasterizer2D.Rasterizer2D_yClipEnd; } - if (var2 < Rasterizer2D.Rasterizer2D_xClipStart) { // L: 27 - var11 = Rasterizer2D.Rasterizer2D_xClipStart - var2; // L: 28 - var4 -= var11; // L: 29 - var2 = Rasterizer2D.Rasterizer2D_xClipStart; // L: 30 - var10 += var11; // L: 31 - var7 += var11; // L: 32 - var9 += var11; // L: 33 - var8 += var11; // L: 34 + if (var2 < Rasterizer2D.Rasterizer2D_xClipStart) { + var11 = Rasterizer2D.Rasterizer2D_xClipStart - var2; + var4 -= var11; + var2 = Rasterizer2D.Rasterizer2D_xClipStart; + var10 += var11; + var7 += var11; + var9 += var11; + var8 += var11; } - if (var2 + var4 > Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 36 - var11 = var2 + var4 - Rasterizer2D.Rasterizer2D_xClipEnd; // L: 37 - var4 -= var11; // L: 38 - var9 += var11; // L: 39 - var8 += var11; // L: 40 + if (var2 + var4 > Rasterizer2D.Rasterizer2D_xClipEnd) { + var11 = var2 + var4 - Rasterizer2D.Rasterizer2D_xClipEnd; + var4 -= var11; + var9 += var11; + var8 += var11; } - if (var4 > 0 && var5 > 0) { // L: 42 - AbstractFont.AbstractFont_placeGlyph(Rasterizer2D.Rasterizer2D_pixels, var1, var6, var10, var7, var4, var5, var8, var9); // L: 43 + if (var4 > 0 && var5 > 0) { + AbstractFont.AbstractFont_placeGlyph(Rasterizer2D.Rasterizer2D_pixels, var1, var6, var10, var7, var4, var5, var8, var9); } - } // L: 44 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("drawGlyphAlpha") final void drawGlyphAlpha(byte[] var1, int var2, int var3, int var4, int var5, int var6, int var7) { - int var8 = var3 * Rasterizer2D.Rasterizer2D_width + var2; // L: 47 - int var9 = Rasterizer2D.Rasterizer2D_width - var4; // L: 48 - int var10 = 0; // L: 49 - int var11 = 0; // L: 50 + int var8 = var3 * Rasterizer2D.Rasterizer2D_width + var2; + int var9 = Rasterizer2D.Rasterizer2D_width - var4; + int var10 = 0; + int var11 = 0; int var12; - if (var3 < Rasterizer2D.Rasterizer2D_yClipStart) { // L: 51 - var12 = Rasterizer2D.Rasterizer2D_yClipStart - var3; // L: 52 - var5 -= var12; // L: 53 - var3 = Rasterizer2D.Rasterizer2D_yClipStart; // L: 54 - var11 += var12 * var4; // L: 55 - var8 += var12 * Rasterizer2D.Rasterizer2D_width; // L: 56 + if (var3 < Rasterizer2D.Rasterizer2D_yClipStart) { + var12 = Rasterizer2D.Rasterizer2D_yClipStart - var3; + var5 -= var12; + var3 = Rasterizer2D.Rasterizer2D_yClipStart; + var11 += var12 * var4; + var8 += var12 * Rasterizer2D.Rasterizer2D_width; } - if (var3 + var5 > Rasterizer2D.Rasterizer2D_yClipEnd) { // L: 58 + if (var3 + var5 > Rasterizer2D.Rasterizer2D_yClipEnd) { var5 -= var3 + var5 - Rasterizer2D.Rasterizer2D_yClipEnd; } - if (var2 < Rasterizer2D.Rasterizer2D_xClipStart) { // L: 59 - var12 = Rasterizer2D.Rasterizer2D_xClipStart - var2; // L: 60 - var4 -= var12; // L: 61 - var2 = Rasterizer2D.Rasterizer2D_xClipStart; // L: 62 - var11 += var12; // L: 63 - var8 += var12; // L: 64 - var10 += var12; // L: 65 - var9 += var12; // L: 66 + if (var2 < Rasterizer2D.Rasterizer2D_xClipStart) { + var12 = Rasterizer2D.Rasterizer2D_xClipStart - var2; + var4 -= var12; + var2 = Rasterizer2D.Rasterizer2D_xClipStart; + var11 += var12; + var8 += var12; + var10 += var12; + var9 += var12; } - if (var2 + var4 > Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 68 - var12 = var2 + var4 - Rasterizer2D.Rasterizer2D_xClipEnd; // L: 69 - var4 -= var12; // L: 70 - var10 += var12; // L: 71 - var9 += var12; // L: 72 + if (var2 + var4 > Rasterizer2D.Rasterizer2D_xClipEnd) { + var12 = var2 + var4 - Rasterizer2D.Rasterizer2D_xClipEnd; + var4 -= var12; + var10 += var12; + var9 += var12; } - if (var4 > 0 && var5 > 0) { // L: 74 - AbstractFont.AbstractFont_placeGlyphAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, var11, var8, var4, var5, var9, var10, var7); // L: 75 + if (var4 > 0 && var5 > 0) { + AbstractFont.AbstractFont_placeGlyphAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, var11, var8, var4, var5, var9, var10, var7); } - } // L: 76 + } } diff --git a/runescape-client/src/main/java/FontName.java b/runescape-client/src/main/java/FontName.java index fd2dfed677..0608d4ebe4 100644 --- a/runescape-client/src/main/java/FontName.java +++ b/runescape-client/src/main/java/FontName.java @@ -1,180 +1,759 @@ 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("ko") +@ObfuscatedName("kr") @Implements("FontName") public class FontName { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lko;" + descriptor = "Lkr;" ) @Export("FontName_plain11") public static final FontName FontName_plain11; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lko;" + descriptor = "Lkr;" ) @Export("FontName_plain12") public static final FontName FontName_plain12; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lko;" + descriptor = "Lkr;" ) @Export("FontName_bold12") public static final FontName FontName_bold12; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lko;" + descriptor = "Lkr;" ) @Export("FontName_verdana11") public static final FontName FontName_verdana11; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lko;" + descriptor = "Lkr;" ) @Export("FontName_verdana13") public static final FontName FontName_verdana13; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lko;" + descriptor = "Lkr;" ) @Export("FontName_verdana15") public static final FontName FontName_verdana15; - @ObfuscatedName("u") - @ObfuscatedGetter( - intValue = 218864089 - ) - public static int field3694; - @ObfuscatedName("bo") + @ObfuscatedName("es") @ObfuscatedSignature( - descriptor = "Lgb;" + descriptor = "Lil;" ) - @Export("clientLanguage") - static Language clientLanguage; - @ObfuscatedName("ew") - @ObfuscatedSignature( - descriptor = "Llo;" - ) - @Export("spriteIds") - static GraphicsDefaults spriteIds; - @ObfuscatedName("k") + @Export("archive14") + static Archive archive14; + @ObfuscatedName("n") @Export("name") String name; static { - FontName_plain11 = new FontName("p11_full"); // L: 7 - FontName_plain12 = new FontName("p12_full"); // L: 8 - FontName_bold12 = new FontName("b12_full"); // L: 9 - FontName_verdana11 = new FontName("verdana_11pt_regular"); // L: 10 - FontName_verdana13 = new FontName("verdana_13pt_regular"); // L: 11 - FontName_verdana15 = new FontName("verdana_15pt_regular"); // L: 12 + FontName_plain11 = new FontName("p11_full"); + FontName_plain12 = new FontName("p12_full"); + FontName_bold12 = new FontName("b12_full"); + FontName_verdana11 = new FontName("verdana_11pt_regular"); + FontName_verdana13 = new FontName("verdana_13pt_regular"); + FontName_verdana15 = new FontName("verdana_15pt_regular"); } FontName(String var1) { - this.name = var1; // L: 20 - } // L: 21 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(B)[Lko;", - garbageValue = "-98" - ) - public static FontName[] method5456() { - return new FontName[]{FontName_bold12, FontName_plain11, FontName_verdana11, FontName_verdana13, FontName_plain12, FontName_verdana15}; // L: 16 + this.name = var1; } - @ObfuscatedName("l") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1218729276" + descriptor = "(B)[Lkr;", + garbageValue = "1" ) - public static void method5459(int var0) { - if (class206.musicPlayerStatus != 0) { // L: 44 - class206.musicTrackVolume = var0; - } else { - class13.midiPcmStream.setPcmStreamVolume(var0); // L: 45 - } - - } // L: 46 - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "13921338" - ) - static int method5455(int var0) { - return (int)Math.pow(2.0D, (double)((float)var0 / 256.0F + 7.0F)); // L: 3193 + public static FontName[] method5353() { + return new FontName[]{FontName_plain11, FontName_bold12, FontName_verdana11, FontName_verdana13, FontName_verdana15, FontName_plain12}; } - @ObfuscatedName("hc") + @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;B)V", - garbageValue = "18" + descriptor = "(I)Z", + garbageValue = "1883982153" ) - static void method5458(int var0, String var1) { - int var2 = Players.Players_count; // L: 8749 - int[] var3 = Players.Players_indices; // L: 8750 - boolean var4 = false; // L: 8751 - Username var5 = new Username(var1, UserComparator4.loginType); // L: 8752 + static final boolean method5355() { + return ViewportMouse.ViewportMouse_isInViewport; + } - for (int var6 = 0; var6 < var2; ++var6) { // L: 8753 - Player var7 = Client.players[var3[var6]]; // L: 8754 - if (var7 != null && var7 != PlayerType.localPlayer && var7.username != null && var7.username.equals(var5)) { // L: 8755 - PacketBufferNode var8; - if (var0 == 1) { // L: 8756 - var8 = class4.getPacketBufferNode(ClientPacket.field2239, Client.packetWriter.isaacCipher); // L: 8758 - var8.packetBuffer.writeByte(0); // L: 8759 - var8.packetBuffer.method5673(var3[var6]); // L: 8760 - Client.packetWriter.addNode(var8); // L: 8761 - } else if (var0 == 4) { // L: 8763 - var8 = class4.getPacketBufferNode(ClientPacket.field2281, Client.packetWriter.isaacCipher); // L: 8765 - var8.packetBuffer.writeShort(var3[var6]); // L: 8766 - var8.packetBuffer.writeByte(0); // L: 8767 - Client.packetWriter.addNode(var8); // L: 8768 - } else if (var0 == 6) { // L: 8770 - var8 = class4.getPacketBufferNode(ClientPacket.field2323, Client.packetWriter.isaacCipher); // L: 8772 - var8.packetBuffer.writeShort(var3[var6]); // L: 8773 - var8.packetBuffer.writeIntME(0); // L: 8774 - Client.packetWriter.addNode(var8); // L: 8775 - } else if (var0 == 7) { // L: 8777 - var8 = class4.getPacketBufferNode(ClientPacket.field2324, Client.packetWriter.isaacCipher); // L: 8779 - var8.packetBuffer.method5674(var3[var6]); // L: 8780 - var8.packetBuffer.writeIntME(0); // L: 8781 - Client.packetWriter.addNode(var8); // L: 8782 - } - - var4 = true; // L: 8784 - break; - } + @ObfuscatedName("fo") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "8" + ) + @Export("playPcmPlayers") + static final void playPcmPlayers() { + if (FriendLoginUpdate.pcmPlayer1 != null) { + FriendLoginUpdate.pcmPlayer1.run(); } - if (!var4) { // L: 8788 - DevicePcmPlayerProvider.addGameMessage(4, "", "Unable to find " + var1); + if (AbstractWorldMapData.pcmPlayer0 != null) { + AbstractWorldMapData.pcmPlayer0.run(); } - } // L: 8789 + } - @ObfuscatedName("js") + @ObfuscatedName("ib") @ObfuscatedSignature( descriptor = "(IB)V", - garbageValue = "67" + garbageValue = "43" ) - @Export("Widget_resetModelFrames") - static final void Widget_resetModelFrames(int var0) { - if (ScriptFrame.loadInterface(var0)) { // L: 11056 - Widget[] var1 = Widget.Widget_interfaceComponents[var0]; // L: 11057 + static final void method5356(int var0) { + if (var0 >= 0) { + int var1 = Client.menuArguments1[var0]; + int var2 = Client.menuArguments2[var0]; + int var3 = Client.menuOpcodes[var0]; + int var4 = Client.menuIdentifiers[var0]; + String var5 = Client.menuActions[var0]; + String var6 = Client.menuTargets[var0]; + RouteStrategy.menuAction(var1, var2, var3, var4, var5, var6, MouseHandler.MouseHandler_lastPressedX, MouseHandler.MouseHandler_lastPressedY); + } + } - for (int var2 = 0; var2 < var1.length; ++var2) { // L: 11058 - Widget var3 = var1[var2]; // L: 11059 - if (var3 != null) { // L: 11060 - var3.modelFrame = 0; // L: 11061 - var3.modelFrameCycle = 0; // L: 11062 + @ObfuscatedName("je") + @ObfuscatedSignature( + descriptor = "([Lhe;IIIIIIIIB)V", + garbageValue = "105" + ) + @Export("drawInterface") + static final void drawInterface(Widget[] var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { + Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D(); + + for (int var9 = 0; var9 < var0.length; ++var9) { + Widget var10 = var0[var9]; + if (var10 != null && (var10.parentId == var1 || var1 == -1412584499 && var10 == Client.clickedWidget)) { + int var11; + if (var8 == -1) { + Client.rootWidgetXs[Client.rootWidgetCount] = var10.x + var6; + Client.rootWidgetYs[Client.rootWidgetCount] = var7 + var10.y; + Client.rootWidgetWidths[Client.rootWidgetCount] = var10.width; + Client.rootWidgetHeights[Client.rootWidgetCount] = var10.height; + var11 = ++Client.rootWidgetCount - 1; + } else { + var11 = var8; + } + + var10.rootIndex = var11; + var10.cycle = Client.cycle; + if (!var10.isIf3 || !DevicePcmPlayerProvider.isComponentHidden(var10)) { + if (var10.contentType > 0) { + class279.method5006(var10); + } + + int var12 = var10.x + var6; + int var13 = var7 + var10.y; + int var14 = var10.transparencyTop; + int var15; + int var16; + if (var10 == Client.clickedWidget) { + if (var1 != -1412584499 && !var10.isScrollBar) { + class200.field2390 = var0; + Client.field923 = var6; + Entity.field1893 = var7; + continue; + } + + if (Client.isDraggingWidget && Client.field859) { + var15 = MouseHandler.MouseHandler_x; + var16 = MouseHandler.MouseHandler_y; + var15 -= Client.widgetClickX; + var16 -= Client.widgetClickY; + if (var15 < Client.field827) { + var15 = Client.field827; + } + + if (var15 + var10.width > Client.field827 + Client.clickedWidgetParent.width) { + var15 = Client.field827 + Client.clickedWidgetParent.width - var10.width; + } + + if (var16 < Client.field716) { + var16 = Client.field716; + } + + if (var16 + var10.height > Client.field716 + Client.clickedWidgetParent.height) { + var16 = Client.field716 + Client.clickedWidgetParent.height - var10.height; + } + + var12 = var15; + var13 = var16; + } + + if (!var10.isScrollBar) { + var14 = 128; + } + } + + int var17; + int var18; + int var19; + int var20; + int var21; + int var22; + if (var10.type == 2) { + var15 = var2; + var16 = var3; + var17 = var4; + var18 = var5; + } else if (var10.type == 9) { + var19 = var12; + var20 = var13; + var21 = var12 + var10.width; + var22 = var13 + var10.height; + if (var21 < var12) { + var19 = var21; + var21 = var12; + } + + if (var22 < var13) { + var20 = var22; + var22 = var13; + } + + ++var21; + ++var22; + var15 = var19 > var2 ? var19 : var2; + var16 = var20 > var3 ? var20 : var3; + var17 = var21 < var4 ? var21 : var4; + var18 = var22 < var5 ? var22 : var5; + } else { + var19 = var12 + var10.width; + var20 = var13 + var10.height; + var15 = var12 > var2 ? var12 : var2; + var16 = var13 > var3 ? var13 : var3; + var17 = var19 < var4 ? var19 : var4; + var18 = var20 < var5 ? var20 : var5; + } + + if (!var10.isIf3 || var15 < var17 && var16 < var18) { + if (var10.contentType != 0) { + if (var10.contentType == 1336) { + if (Client.displayFps) { + var13 += 15; + WorldMapLabelSize.fontPlain12.drawRightAligned("Fps:" + GameShell.fps, var12 + var10.width, var13, 16776960, -1); + var13 += 15; + Runtime var42 = Runtime.getRuntime(); + var20 = (int)((var42.totalMemory() - var42.freeMemory()) / 1024L); + var21 = 16776960; + if (var20 > 327680 && !Client.isLowDetail) { + var21 = 16711680; + } + + WorldMapLabelSize.fontPlain12.drawRightAligned("Mem:" + var20 + "k", var12 + var10.width, var13, var21, -1); + var13 += 15; + } + continue; + } + + if (var10.contentType == 1337) { + Client.viewportX = var12; + Client.viewportY = var13; + SecureRandomFuture.drawEntities(var12, var13, var10.width, var10.height); + Client.field901[var10.rootIndex] = true; + Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + continue; + } + + if (var10.contentType == 1338) { + DirectByteArrayCopier.drawMinimap(var10, var12, var13, var11); + Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + continue; + } + + if (var10.contentType == 1339) { + Varcs.drawCompass(var10, var12, var13, var11); + Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + continue; + } + + if (var10.contentType == 1400) { + WorldMapRectangle.worldMap.draw(var12, var13, var10.width, var10.height, Client.cycle); + } + + if (var10.contentType == 1401) { + WorldMapRectangle.worldMap.drawOverview(var12, var13, var10.width, var10.height); + } + + if (var10.contentType == 1402) { + class1.loginScreenRunesAnimation.draw(var12, Client.cycle); + } + } + + if (var10.type == 0) { + if (!var10.isIf3 && DevicePcmPlayerProvider.isComponentHidden(var10) && var10 != EnumDefinition.mousedOverWidgetIf1) { + continue; + } + + if (!var10.isIf3) { + if (var10.scrollY > var10.scrollHeight - var10.height) { + var10.scrollY = var10.scrollHeight - var10.height; + } + + if (var10.scrollY < 0) { + var10.scrollY = 0; + } + } + + drawInterface(var0, var10.id, var15, var16, var17, var18, var12 - var10.scrollX, var13 - var10.scrollY, var11); + if (var10.children != null) { + drawInterface(var10.children, var10.id, var15, var16, var17, var18, var12 - var10.scrollX, var13 - var10.scrollY, var11); + } + + InterfaceParent var30 = (InterfaceParent)Client.interfaceParents.get((long)var10.id); + if (var30 != null) { + KeyHandler.drawWidgets(var30.group, var15, var16, var17, var18, var12, var13, var11); + } + + Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D(); + } + + if (Client.isResizable || Client.field855[var11] || Client.gameDrawingMode > 1) { + if (var10.type == 0 && !var10.isIf3 && var10.scrollHeight > var10.height) { + class89.drawScrollBar(var12 + var10.width, var13, var10.scrollY, var10.height, var10.scrollHeight); + } + + if (var10.type != 1) { + int var23; + int var24; + int var25; + int var26; + if (var10.type == 2) { + var19 = 0; + + for (var20 = 0; var20 < var10.rawHeight; ++var20) { + for (var21 = 0; var21 < var10.rawWidth; ++var21) { + var22 = var12 + var21 * (var10.paddingX + 32); + var23 = var13 + var20 * (var10.paddingY + 32); + if (var19 < 20) { + var22 += var10.inventoryXOffsets[var19]; + var23 += var10.inventoryYOffsets[var19]; + } + + if (var10.itemIds[var19] <= 0) { + if (var10.inventorySprites != null && var19 < 20) { + Sprite var46 = var10.getInventorySprite(var19); + if (var46 != null) { + var46.drawTransBgAt(var22, var23); + } else if (Widget.field2603) { + CollisionMap.invalidateWidget(var10); + } + } + } else { + boolean var37 = false; + boolean var38 = false; + var26 = var10.itemIds[var19] - 1; + if (var22 + 32 > var2 && var22 < var4 && var23 + 32 > var3 && var23 < var5 || var10 == class171.dragInventoryWidget && var19 == Client.dragItemSlotSource) { + Sprite var35; + if (Client.isItemSelected == 1 && var19 == ChatChannel.selectedItemSlot && var10.id == WorldMapLabelSize.selectedItemWidget) { + var35 = WorldMapManager.getItemSprite(var26, var10.itemQuantities[var19], 2, 0, 2, false); + } else { + var35 = WorldMapManager.getItemSprite(var26, var10.itemQuantities[var19], 1, 3153952, 2, false); + } + + if (var35 != null) { + if (var10 == class171.dragInventoryWidget && var19 == Client.dragItemSlotSource) { + var24 = MouseHandler.MouseHandler_x - Client.draggedWidgetX; + var25 = MouseHandler.MouseHandler_y - Client.draggedWidgetY; + if (var24 < 5 && var24 > -5) { + var24 = 0; + } + + if (var25 < 5 && var25 > -5) { + var25 = 0; + } + + if (Client.itemDragDuration < 5) { + var24 = 0; + var25 = 0; + } + + var35.drawTransAt(var22 + var24, var23 + var25, 128); + if (var1 != -1) { + Widget var28 = var0[var1 & 65535]; + int var29; + if (var23 + var25 < Rasterizer2D.Rasterizer2D_yClipStart && var28.scrollY > 0) { + var29 = (Rasterizer2D.Rasterizer2D_yClipStart - var23 - var25) * Client.field850 / 3; + if (var29 > Client.field850 * 10) { + var29 = Client.field850 * 10; + } + + if (var29 > var28.scrollY) { + var29 = var28.scrollY; + } + + var28.scrollY -= var29; + Client.draggedWidgetY += var29; + CollisionMap.invalidateWidget(var28); + } + + if (var23 + var25 + 32 > Rasterizer2D.Rasterizer2D_yClipEnd && var28.scrollY < var28.scrollHeight - var28.height) { + var29 = (var25 + var23 + 32 - Rasterizer2D.Rasterizer2D_yClipEnd) * Client.field850 / 3; + if (var29 > Client.field850 * 10) { + var29 = Client.field850 * 10; + } + + if (var29 > var28.scrollHeight - var28.height - var28.scrollY) { + var29 = var28.scrollHeight - var28.height - var28.scrollY; + } + + var28.scrollY += var29; + Client.draggedWidgetY -= var29; + CollisionMap.invalidateWidget(var28); + } + } + } else if (var10 == NPC.field1131 && var19 == Client.field881) { + var35.drawTransAt(var22, var23, 128); + } else { + var35.drawTransBgAt(var22, var23); + } + } else { + CollisionMap.invalidateWidget(var10); + } + } + } + + ++var19; + } + } + } else if (var10.type == 3) { + if (class8.runCs1(var10)) { + var19 = var10.color2; + if (var10 == EnumDefinition.mousedOverWidgetIf1 && var10.mouseOverColor2 != 0) { + var19 = var10.mouseOverColor2; + } + } else { + var19 = var10.color; + if (var10 == EnumDefinition.mousedOverWidgetIf1 && var10.mouseOverColor != 0) { + var19 = var10.mouseOverColor; + } + } + + if (var10.fill) { + switch(var10.fillMode.field3902) { + case 1: + Rasterizer2D.Rasterizer2D_fillRectangleGradient(var12, var13, var10.width, var10.height, var10.color, var10.color2); + break; + case 2: + Rasterizer2D.Rasterizer2D_fillRectangleGradientAlpha(var12, var13, var10.width, var10.height, var10.color, var10.color2, 255 - (var10.transparencyTop & 255), 255 - (var10.transparencyBot & 255)); + break; + default: + if (var14 == 0) { + Rasterizer2D.Rasterizer2D_fillRectangle(var12, var13, var10.width, var10.height, var19); + } else { + Rasterizer2D.Rasterizer2D_fillRectangleAlpha(var12, var13, var10.width, var10.height, var19, 256 - (var14 & 255)); + } + } + } else if (var14 == 0) { + Rasterizer2D.Rasterizer2D_drawRectangle(var12, var13, var10.width, var10.height, var19); + } else { + Rasterizer2D.Rasterizer2D_drawRectangleAlpha(var12, var13, var10.width, var10.height, var19, 256 - (var14 & 255)); + } + } else { + Font var39; + if (var10.type == 4) { + var39 = var10.getFont(); + if (var39 == null) { + if (Widget.field2603) { + CollisionMap.invalidateWidget(var10); + } + } else { + String var44 = var10.text; + if (class8.runCs1(var10)) { + var20 = var10.color2; + if (var10 == EnumDefinition.mousedOverWidgetIf1 && var10.mouseOverColor2 != 0) { + var20 = var10.mouseOverColor2; + } + + if (var10.text2.length() > 0) { + var44 = var10.text2; + } + } else { + var20 = var10.color; + if (var10 == EnumDefinition.mousedOverWidgetIf1 && var10.mouseOverColor != 0) { + var20 = var10.mouseOverColor; + } + } + + if (var10.isIf3 && var10.itemId != -1) { + ItemDefinition var45 = SecureRandomCallable.ItemDefinition_get(var10.itemId); + var44 = var45.name; + if (var44 == null) { + var44 = "null"; + } + + if ((var45.isStackable == 1 || var10.itemQuantity != 1) && var10.itemQuantity != -1) { + var44 = class23.colorStartTag(16748608) + var44 + "" + " " + 'x' + DevicePcmPlayerProvider.formatItemStacks(var10.itemQuantity); + } + } + + if (var10 == Client.meslayerContinueWidget) { + var44 = "Please wait..."; + var20 = var10.color; + } + + if (!var10.isIf3) { + var44 = class234.method4160(var44, var10); + } + + var39.drawLines(var44, var12, var13, var10.width, var10.height, var20, var10.textShadowed ? 0 : -1, var10.textXAlignment, var10.textYAlignment, var10.textLineHeight); + } + } else if (var10.type == 5) { + Sprite var40; + if (!var10.isIf3) { + var40 = var10.getSprite(class8.runCs1(var10)); + if (var40 != null) { + var40.drawTransBgAt(var12, var13); + } else if (Widget.field2603) { + CollisionMap.invalidateWidget(var10); + } + } else { + if (var10.itemId != -1) { + var40 = WorldMapManager.getItemSprite(var10.itemId, var10.itemQuantity, var10.outline, var10.spriteShadow, var10.itemQuantityMode, false); + } else { + var40 = var10.getSprite(false); + } + + if (var40 == null) { + if (Widget.field2603) { + CollisionMap.invalidateWidget(var10); + } + } else { + var20 = var40.width; + var21 = var40.height; + if (!var10.spriteTiling) { + var22 = var10.width * 4096 / var20; + if (var10.spriteAngle != 0) { + var40.method6190(var10.width / 2 + var12, var10.height / 2 + var13, var10.spriteAngle, var22); + } else if (var14 != 0) { + var40.drawTransScaledAt(var12, var13, var10.width, var10.height, 256 - (var14 & 255)); + } else if (var20 == var10.width && var21 == var10.height) { + var40.drawTransBgAt(var12, var13); + } else { + var40.drawScaledAt(var12, var13, var10.width, var10.height); + } + } else { + Rasterizer2D.Rasterizer2D_expandClip(var12, var13, var12 + var10.width, var13 + var10.height); + var22 = (var20 - 1 + var10.width) / var20; + var23 = (var21 - 1 + var10.height) / var21; + + for (var24 = 0; var24 < var22; ++var24) { + for (var25 = 0; var25 < var23; ++var25) { + if (var10.spriteAngle != 0) { + var40.method6190(var20 / 2 + var12 + var20 * var24, var21 / 2 + var13 + var21 * var25, var10.spriteAngle, 4096); + } else if (var14 != 0) { + var40.drawTransAt(var12 + var24 * var20, var13 + var25 * var21, 256 - (var14 & 255)); + } else { + var40.drawTransBgAt(var12 + var20 * var24, var13 + var25 * var21); + } + } + } + + Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + } + } + } + } else { + ItemDefinition var33; + if (var10.type == 6) { + boolean var36 = class8.runCs1(var10); + if (var36) { + var20 = var10.sequenceId2; + } else { + var20 = var10.sequenceId; + } + + Model var41 = null; + var22 = 0; + if (var10.itemId != -1) { + var33 = SecureRandomCallable.ItemDefinition_get(var10.itemId); + if (var33 != null) { + var33 = var33.getCountObj(var10.itemQuantity); + var41 = var33.getModel(1); + if (var41 != null) { + var41.calculateBoundsCylinder(); + var22 = var41.height / 2; + } else { + CollisionMap.invalidateWidget(var10); + } + } + } else if (var10.modelType == 5) { + if (var10.modelId == 0) { + var41 = Client.playerAppearance.getModel((SequenceDefinition)null, -1, (SequenceDefinition)null, -1); + } else { + var41 = PlayerAppearance.localPlayer.getModel(); + } + } else if (var20 == -1) { + var41 = var10.getModel((SequenceDefinition)null, -1, var36, PlayerAppearance.localPlayer.appearance); + if (var41 == null && Widget.field2603) { + CollisionMap.invalidateWidget(var10); + } + } else { + SequenceDefinition var47 = ParamDefinition.SequenceDefinition_get(var20); + var41 = var10.getModel(var47, var10.modelFrame, var36, PlayerAppearance.localPlayer.appearance); + if (var41 == null && Widget.field2603) { + CollisionMap.invalidateWidget(var10); + } + } + + Rasterizer3D.method3138(var10.width / 2 + var12, var10.height / 2 + var13); + var23 = Rasterizer3D.Rasterizer3D_sine[var10.modelAngleX] * var10.modelZoom >> 16; + var24 = Rasterizer3D.Rasterizer3D_cosine[var10.modelAngleX] * var10.modelZoom >> 16; + if (var41 != null) { + if (!var10.isIf3) { + var41.method2966(0, var10.modelAngleY, 0, var10.modelAngleX, 0, var23, var24); + } else { + var41.calculateBoundsCylinder(); + if (var10.modelOrthog) { + var41.method2967(0, var10.modelAngleY, var10.modelAngleZ, var10.modelAngleX, var10.modelOffsetX, var22 + var23 + var10.modelOffsetY, var24 + var10.modelOffsetY, var10.modelZoom); + } else { + var41.method2966(0, var10.modelAngleY, var10.modelAngleZ, var10.modelAngleX, var10.modelOffsetX, var22 + var23 + var10.modelOffsetY, var24 + var10.modelOffsetY); + } + } + } + + Rasterizer3D.Rasterizer3D_method3(); + } else { + if (var10.type == 7) { + var39 = var10.getFont(); + if (var39 == null) { + if (Widget.field2603) { + CollisionMap.invalidateWidget(var10); + } + continue; + } + + var20 = 0; + + for (var21 = 0; var21 < var10.rawHeight; ++var21) { + for (var22 = 0; var22 < var10.rawWidth; ++var22) { + if (var10.itemIds[var20] > 0) { + var33 = SecureRandomCallable.ItemDefinition_get(var10.itemIds[var20] - 1); + String var34; + if (var33.isStackable != 1 && var10.itemQuantities[var20] == 1) { + var34 = class23.colorStartTag(16748608) + var33.name + ""; + } else { + var34 = class23.colorStartTag(16748608) + var33.name + "" + " " + 'x' + DevicePcmPlayerProvider.formatItemStacks(var10.itemQuantities[var20]); + } + + var25 = var12 + var22 * (var10.paddingX + 115); + var26 = var21 * (var10.paddingY + 12) + var13; + if (var10.textXAlignment == 0) { + var39.draw(var34, var25, var26, var10.color, var10.textShadowed ? 0 : -1); + } else if (var10.textXAlignment == 1) { + var39.drawCentered(var34, var10.width / 2 + var25, var26, var10.color, var10.textShadowed ? 0 : -1); + } else { + var39.drawRightAligned(var34, var25 + var10.width - 1, var26, var10.color, var10.textShadowed ? 0 : -1); + } + } + + ++var20; + } + } + } + + if (var10.type == 8 && var10 == CollisionMap.field2092 && Client.field799 == Client.field751) { + var19 = 0; + var20 = 0; + Font var31 = WorldMapLabelSize.fontPlain12; + String var32 = var10.text; + + String var43; + for (var32 = class234.method4160(var32, var10); var32.length() > 0; var20 = var20 + var31.ascent + 1) { + var24 = var32.indexOf("
"); + if (var24 != -1) { + var43 = var32.substring(0, var24); + var32 = var32.substring(var24 + 4); + } else { + var43 = var32; + var32 = ""; + } + + var25 = var31.stringWidth(var43); + if (var25 > var19) { + var19 = var25; + } + } + + var19 += 6; + var20 += 7; + var24 = var12 + var10.width - 5 - var19; + var25 = var13 + var10.height + 5; + if (var24 < var12 + 5) { + var24 = var12 + 5; + } + + if (var19 + var24 > var4) { + var24 = var4 - var19; + } + + if (var20 + var25 > var5) { + var25 = var5 - var20; + } + + Rasterizer2D.Rasterizer2D_fillRectangle(var24, var25, var19, var20, 16777120); + Rasterizer2D.Rasterizer2D_drawRectangle(var24, var25, var19, var20, 0); + var32 = var10.text; + var26 = var25 + var31.ascent + 2; + + for (var32 = class234.method4160(var32, var10); var32.length() > 0; var26 = var26 + var31.ascent + 1) { + int var27 = var32.indexOf("
"); + if (var27 != -1) { + var43 = var32.substring(0, var27); + var32 = var32.substring(var27 + 4); + } else { + var43 = var32; + var32 = ""; + } + + var31.draw(var43, var24 + 3, var26, 0, -1); + } + } + + if (var10.type == 9) { + if (var10.field2620) { + var19 = var12; + var20 = var13 + var10.height; + var21 = var12 + var10.width; + var22 = var13; + } else { + var19 = var12; + var20 = var13; + var21 = var12 + var10.width; + var22 = var13 + var10.height; + } + + if (var10.lineWid == 1) { + Rasterizer2D.Rasterizer2D_drawLine(var19, var20, var21, var22, var10.color); + } else { + class7.method87(var19, var20, var21, var22, var10.color, var10.lineWid); + } + } + } + } + } + } + } + } } } - } - } // L: 11064 + + } + + @ObfuscatedName("ls") + @ObfuscatedSignature( + descriptor = "(IS)V", + garbageValue = "17801" + ) + static void method5354(int var0) { + Client.oculusOrbState = var0; + } } diff --git a/runescape-client/src/main/java/Fonts.java b/runescape-client/src/main/java/Fonts.java index ca1e4897f4..4c6e07865a 100644 --- a/runescape-client/src/main/java/Fonts.java +++ b/runescape-client/src/main/java/Fonts.java @@ -4,68 +4,57 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kn") +@ObfuscatedName("kv") @Implements("Fonts") public class Fonts { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("spritesArchive") AbstractArchive spritesArchive; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("fontsArchive") AbstractArchive fontsArchive; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("map") HashMap map; @ObfuscatedSignature( - descriptor = "(Liw;Liw;)V" + descriptor = "(Lib;Lib;)V" ) public Fonts(AbstractArchive var1, AbstractArchive var2) { - this.spritesArchive = var1; // L: 14 - this.fontsArchive = var2; // L: 15 - this.map = new HashMap(); // L: 16 - } // L: 17 + this.spritesArchive = var1; + this.fontsArchive = var2; + this.map = new HashMap(); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "([Lko;I)Ljava/util/HashMap;", - garbageValue = "1654438568" + descriptor = "([Lkr;S)Ljava/util/HashMap;", + garbageValue = "272" ) @Export("createMap") public HashMap createMap(FontName[] var1) { - HashMap var2 = new HashMap(); // L: 20 - FontName[] var3 = var1; // L: 22 + HashMap var2 = new HashMap(); + FontName[] var3 = var1; - for (int var4 = 0; var4 < var3.length; ++var4) { // L: 23 - FontName var5 = var3[var4]; // L: 24 - if (this.map.containsKey(var5)) { // L: 26 - var2.put(var5, this.map.get(var5)); // L: 27 + for (int var4 = 0; var4 < var3.length; ++var4) { + FontName var5 = var3[var4]; + if (this.map.containsKey(var5)) { + var2.put(var5, this.map.get(var5)); } else { - Font var6 = TilePaint.method3210(this.spritesArchive, this.fontsArchive, var5.name, ""); // L: 30 - if (var6 != null) { // L: 31 - this.map.put(var5, var6); // L: 32 - var2.put(var5, var6); // L: 33 + Font var6 = class169.method3534(this.spritesArchive, this.fontsArchive, var5.name, ""); + if (var6 != null) { + this.map.put(var5, var6); + var2.put(var5, var6); } } } - return var2; // L: 39 + return var2; } - - @ObfuscatedName("iq") - @ObfuscatedSignature( - descriptor = "(IIIZI)V", - garbageValue = "-1606902213" - ) - static final void method5463(int var0, int var1, int var2, boolean var3) { - if (ScriptFrame.loadInterface(var0)) { // L: 9885 - SecureRandomFuture.resizeInterface(Widget.Widget_interfaceComponents[var0], -1, var1, var2, var3); // L: 9886 - } - } // L: 9887 } diff --git a/runescape-client/src/main/java/Frames.java b/runescape-client/src/main/java/Frames.java index 644997e736..d4e4dcec84 100644 --- a/runescape-client/src/main/java/Frames.java +++ b/runescape-client/src/main/java/Frames.java @@ -2,132 +2,155 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("ex") +@ObfuscatedName("ep") @Implements("Frames") public class Frames extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "[Ler;" + descriptor = "[Leu;" ) @Export("frames") Animation[] frames; @ObfuscatedSignature( - descriptor = "(Liw;Liw;IZ)V" + descriptor = "(Lib;Lib;IZ)V" ) Frames(AbstractArchive var1, AbstractArchive var2, int var3, boolean var4) { - NodeDeque var5 = new NodeDeque(); // L: 35 - int var6 = var1.getGroupFileCount(var3); // L: 36 - this.frames = new Animation[var6]; // L: 37 - int[] var7 = var1.getGroupFileIds(var3); // L: 38 + NodeDeque var5 = new NodeDeque(); + int var6 = var1.getGroupFileCount(var3); + this.frames = new Animation[var6]; + int[] var7 = var1.getGroupFileIds(var3); - for (int var8 = 0; var8 < var7.length; ++var8) { // L: 39 - byte[] var9 = var1.takeFile(var3, var7[var8]); // L: 40 - Skeleton var10 = null; // L: 41 - int var11 = (var9[0] & 255) << 8 | var9[1] & 255; // L: 42 + for (int var8 = 0; var8 < var7.length; ++var8) { + byte[] var9 = var1.takeFile(var3, var7[var8]); + Skeleton var10 = null; + int var11 = (var9[0] & 255) << 8 | var9[1] & 255; - for (Skeleton var12 = (Skeleton)var5.last(); var12 != null; var12 = (Skeleton)var5.previous()) { // L: 43 44 49 - if (var11 == var12.id) { // L: 45 - var10 = var12; // L: 46 + for (Skeleton var12 = (Skeleton)var5.last(); var12 != null; var12 = (Skeleton)var5.previous()) { + if (var11 == var12.id) { + var10 = var12; break; } } - if (var10 == null) { // L: 51 + if (var10 == null) { byte[] var13; - if (var4) { // L: 53 + if (var4) { var13 = var2.getFile(0, var11); } else { - var13 = var2.getFile(var11, 0); // L: 54 + var13 = var2.getFile(var11, 0); } - var10 = new Skeleton(var11, var13); // L: 55 - var5.addFirst(var10); // L: 56 + var10 = new Skeleton(var11, var13); + var5.addFirst(var10); } - this.frames[var7[var8]] = new Animation(var9, var10); // L: 58 + this.frames[var7[var8]] = new Animation(var9, var10); } - } // L: 60 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "-35" + descriptor = "(II)Z", + garbageValue = "-1239705769" ) @Export("hasAlphaTransform") public boolean hasAlphaTransform(int var1) { - return this.frames[var1].hasAlphaTransform; // L: 63 + return this.frames[var1].hasAlphaTransform; } - @ObfuscatedName("ja") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "([Lht;II)V", - garbageValue = "-1768141764" + descriptor = "(IIB)I", + garbageValue = "-67" ) - @Export("drawModelComponents") - static final void drawModelComponents(Widget[] var0, int var1) { - for (int var2 = 0; var2 < var0.length; ++var2) { // L: 11067 - Widget var3 = var0[var2]; // L: 11068 - if (var3 != null && var3.parentId == var1 && (!var3.isIf3 || !VertexNormal.isComponentHidden(var3))) { // L: 11069 11070 11071 - int var5; - if (var3.type == 0) { // L: 11072 - if (!var3.isIf3 && VertexNormal.isComponentHidden(var3) && var3 != GrandExchangeEvent.mousedOverWidgetIf1) { // L: 11073 - continue; - } + static int method3356(int var0, int var1) { + ItemContainer var2 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); + if (var2 == null) { + return 0; + } else if (var1 == -1) { + return 0; + } else { + int var3 = 0; - drawModelComponents(var0, var3.id); // L: 11074 - if (var3.children != null) { // L: 11075 - drawModelComponents(var3.children, var3.id); - } - - InterfaceParent var4 = (InterfaceParent)Client.interfaceParents.get((long)var3.id); // L: 11076 - if (var4 != null) { // L: 11077 - var5 = var4.group; // L: 11078 - if (ScriptFrame.loadInterface(var5)) { // L: 11080 - drawModelComponents(Widget.Widget_interfaceComponents[var5], -1); // L: 11081 - } - } + for (int var4 = 0; var4 < var2.quantities.length; ++var4) { + if (var2.ids[var4] == var1) { + var3 += var2.quantities[var4]; } + } - if (var3.type == 6) { // L: 11085 - if (var3.sequenceId != -1 || var3.sequenceId2 != -1) { // L: 11086 - boolean var7 = BufferedNetSocket.runCs1(var3); // L: 11087 - if (var7) { // L: 11089 - var5 = var3.sequenceId2; - } else { - var5 = var3.sequenceId; // L: 11090 - } + return var3; + } + } - if (var5 != -1) { // L: 11091 - SequenceDefinition var6 = class105.SequenceDefinition_get(var5); // L: 11092 - - for (var3.modelFrameCycle += Client.field743; var3.modelFrameCycle > var6.frameLengths[var3.modelFrame]; GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3)) { // L: 11093 11094 11101 - var3.modelFrameCycle -= var6.frameLengths[var3.modelFrame]; // L: 11095 - ++var3.modelFrame; // L: 11096 - if (var3.modelFrame >= var6.frameIds.length) { // L: 11097 - var3.modelFrame -= var6.frameCount; // L: 11098 - if (var3.modelFrame < 0 || var3.modelFrame >= var6.frameIds.length) { // L: 11099 - var3.modelFrame = 0; - } - } - } - } - } - - if (var3.field2734 != 0 && !var3.isIf3) { // L: 11105 - int var8 = var3.field2734 >> 16; // L: 11106 - var5 = var3.field2734 << 16 >> 16; // L: 11107 - var8 *= Client.field743; // L: 11108 - var5 *= Client.field743; // L: 11109 - var3.modelAngleX = var8 + var3.modelAngleX & 2047; // L: 11110 - var3.modelAngleY = var5 + var3.modelAngleY & 2047; // L: 11111 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 11112 - } + @ObfuscatedName("y") + @ObfuscatedSignature( + descriptor = "(ILcs;ZI)I", + garbageValue = "2053155417" + ) + static int method3354(int var0, Script var1, boolean var2) { + Widget var6; + if (var0 != ScriptOpcodes.CC_CALLONRESIZE && var0 != ScriptOpcodes.IF_CALLONRESIZE) { + int var4; + if (var0 == 1928) { + var6 = var2 ? PlayerAppearance.field2561 : VarcInt.field3264; + var4 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (var4 >= 1 && var4 <= 10) { + class3.widgetDefaultMenuAction(var4, var6.id, var6.childIndex, var6.itemId, ""); + return 1; + } else { + throw new RuntimeException(); } + } else if (var0 == 2928) { + VarcInt.Interpreter_intStackSize -= 3; + int var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + int var5 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 2]; + if (var5 >= 1 && var5 <= 10) { + class3.widgetDefaultMenuAction(var5, var3, var4, CollisionMap.getWidget(var3).itemId, ""); + return 1; + } else { + throw new RuntimeException(); + } + } else { + return 2; + } + } else if (Interpreter.field1097 >= 10) { + throw new RuntimeException(); + } else { + if (var0 >= 2000) { + var6 = CollisionMap.getWidget(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + } else { + var6 = var2 ? PlayerAppearance.field2561 : VarcInt.field3264; + } + + if (var6.onResize == null) { + return 0; + } else { + ScriptEvent var7 = new ScriptEvent(); + var7.widget = var6; + var7.args = var6.onResize; + var7.field569 = Interpreter.field1097 + 1; + Client.scriptEvents.addFirst(var7); + return 1; + } + } + } + + @ObfuscatedName("id") + @ObfuscatedSignature( + descriptor = "(IIIIB)V", + garbageValue = "-41" + ) + static final void method3352(int var0, int var1, int var2, int var3) { + for (int var4 = 0; var4 < Client.rootWidgetCount; ++var4) { + if (Client.rootWidgetXs[var4] + Client.rootWidgetWidths[var4] > var0 && Client.rootWidgetXs[var4] < var0 + var2 && Client.rootWidgetYs[var4] + Client.rootWidgetHeights[var4] > var1 && Client.rootWidgetYs[var4] < var3 + var1) { + Client.field901[var4] = true; } } - } // L: 11116 + } } diff --git a/runescape-client/src/main/java/Friend.java b/runescape-client/src/main/java/Friend.java index c394cee23b..0a6160acdb 100644 --- a/runescape-client/src/main/java/Friend.java +++ b/runescape-client/src/main/java/Friend.java @@ -3,56 +3,56 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ki") +@ObfuscatedName("kx") @Implements("Friend") public class Friend extends Buddy { - @ObfuscatedName("f") - boolean field3659; - @ObfuscatedName("b") - boolean field3660; + @ObfuscatedName("h") + boolean field3666; + @ObfuscatedName("v") + boolean field3667; Friend() { - } // L: 9 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lki;I)I", - garbageValue = "638196038" + descriptor = "(Lkx;I)I", + garbageValue = "-1658027604" ) @Export("compareToFriend") int compareToFriend(Friend var1) { - if (super.world == Client.worldId && Client.worldId != var1.world) { // L: 12 + if (super.world == Client.worldId && Client.worldId != var1.world) { return -1; - } else if (Client.worldId == var1.world && super.world != Client.worldId) { // L: 13 + } else if (Client.worldId == var1.world && super.world != Client.worldId) { return 1; - } else if (super.world != 0 && var1.world == 0) { // L: 14 + } else if (super.world != 0 && var1.world == 0) { return -1; - } else if (var1.world != 0 && super.world == 0) { // L: 15 + } else if (var1.world != 0 && super.world == 0) { return 1; - } else if (this.field3659 && !var1.field3659) { // L: 16 + } else if (this.field3666 && !var1.field3666) { return -1; - } else if (!this.field3659 && var1.field3659) { // L: 17 + } else if (!this.field3666 && var1.field3666) { return 1; - } else if (this.field3660 && !var1.field3660) { // L: 18 + } else if (this.field3667 && !var1.field3667) { return -1; - } else if (!this.field3660 && var1.field3660) { // L: 19 + } else if (!this.field3667 && var1.field3667) { return 1; } else { - return super.world != 0 ? super.int2 - var1.int2 : var1.int2 - super.int2; // L: 20 21 24 + return super.world != 0 ? super.int2 - var1.int2 : var1.int2 - super.int2; } } - @ObfuscatedName("av") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Ljh;B)I", - garbageValue = "69" + descriptor = "(Lju;I)I", + garbageValue = "-1545516578" ) @Export("compareTo_user") public int compareTo_user(User var1) { - return this.compareToFriend((Friend)var1); // L: 29 + return this.compareToFriend((Friend)var1); } public int compareTo(Object var1) { - return this.compareToFriend((Friend)var1); // L: 33 + return this.compareToFriend((Friend)var1); } } diff --git a/runescape-client/src/main/java/FriendLoginUpdate.java b/runescape-client/src/main/java/FriendLoginUpdate.java index 2a36d1a210..639ba9be67 100644 --- a/runescape-client/src/main/java/FriendLoginUpdate.java +++ b/runescape-client/src/main/java/FriendLoginUpdate.java @@ -4,32 +4,55 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kk") +@ObfuscatedName("ke") @Implements("FriendLoginUpdate") public class FriendLoginUpdate extends Link { - @ObfuscatedName("u") - public static short[] field3671; - @ObfuscatedName("l") - @ObfuscatedGetter( - intValue = 1131935431 - ) - public int field3670; - @ObfuscatedName("m") + @ObfuscatedName("qv") @ObfuscatedSignature( - descriptor = "Lkm;" + descriptor = "Ldp;" + ) + @Export("pcmPlayer1") + static PcmPlayer pcmPlayer1; + @ObfuscatedName("x") + @ObfuscatedGetter( + intValue = 1005138925 + ) + public int field3680; + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "Lki;" ) @Export("username") public Username username; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("world") public short world; @ObfuscatedSignature( - descriptor = "(Lkm;I)V" + descriptor = "(Lki;I)V" ) FriendLoginUpdate(Username var1, int var2) { - this.field3670 = (int)(User.currentTimeMillis() / 1000L); // L: 106 - this.username = var1; // L: 107 - this.world = (short)var2; // L: 108 - } // L: 109 + this.field3680 = (int)(class298.currentTimeMillis() / 1000L); + this.username = var1; + this.world = (short)var2; + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(IB)Z", + garbageValue = "-1" + ) + public static boolean method5290(int var0) { + return var0 >= WorldMapDecorationType.field2761.id && var0 <= WorldMapDecorationType.field2747.id || var0 == WorldMapDecorationType.field2748.id; + } + + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "(CI)Z", + garbageValue = "-1404693123" + ) + @Export("isAlphaNumeric") + public static boolean isAlphaNumeric(char var0) { + return var0 >= '0' && var0 <= '9' || var0 >= 'A' && var0 <= 'Z' || var0 >= 'a' && var0 <= 'z'; + } } diff --git a/runescape-client/src/main/java/FriendSystem.java b/runescape-client/src/main/java/FriendSystem.java index 80f5d3d0ec..d7eca44d01 100644 --- a/runescape-client/src/main/java/FriendSystem.java +++ b/runescape-client/src/main/java/FriendSystem.java @@ -1,115 +1,111 @@ -import java.util.Iterator; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("cc") +@ObfuscatedName("cm") @Implements("FriendSystem") public class FriendSystem { - @ObfuscatedName("os") - @ObfuscatedSignature( - descriptor = "Lcz;" + @ObfuscatedName("u") + @ObfuscatedGetter( + intValue = -831766123 ) - @Export("varcs") - static Varcs varcs; - @ObfuscatedName("m") + static int field1065; + @ObfuscatedName("ay") + @ObfuscatedGetter( + intValue = 1062926745 + ) + static int field1071; + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lmc;" + descriptor = "Lmu;" ) @Export("loginType") final LoginType loginType; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lkd;" + descriptor = "Lko;" ) @Export("friendsList") public final FriendsList friendsList; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lke;" + descriptor = "Lkf;" ) @Export("ignoreList") public final IgnoreList ignoreList; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = 1331025573 + intValue = 584921379 ) - int field1097; + int field1069; @ObfuscatedSignature( - descriptor = "(Lmc;)V" + descriptor = "(Lmu;)V" ) FriendSystem(LoginType var1) { - this.field1097 = 0; // L: 23 - this.loginType = var1; // L: 26 - this.friendsList = new FriendsList(var1); // L: 27 - this.ignoreList = new IgnoreList(var1); // L: 28 - } // L: 29 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "366163976" - ) - boolean method1958() { - return this.field1097 == 2; // L: 32 + this.field1069 = 0; + this.loginType = var1; + this.friendsList = new FriendsList(var1); + this.ignoreList = new IgnoreList(var1); } - @ObfuscatedName("b") + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "-413073532" + ) + boolean method1939() { + return this.field1069 == 2; + } + + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1495060497" + garbageValue = "321244010" ) - final void method1957() { - this.field1097 = 1; // L: 36 - } // L: 37 + final void method1919() { + this.field1069 = 1; + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "-320273584" + descriptor = "(Lkj;II)V", + garbageValue = "-1406977446" ) @Export("readUpdate") final void readUpdate(Buffer var1, int var2) { - this.friendsList.read(var1, var2); // L: 40 - this.field1097 = 2; // L: 41 + this.friendsList.read(var1, var2); + this.field1069 = 2; - for (int var3 = 0; var3 < Players.Players_count; ++var3) { // L: 43 - Player var4 = Client.players[Players.Players_indices[var3]]; // L: 44 - var4.clearIsFriend(); // L: 45 + for (int var3 = 0; var3 < Players.Players_count; ++var3) { + Player var4 = Client.players[Players.Players_indices[var3]]; + var4.clearIsFriend(); } - Iterator var5 = Messages.Messages_hashTable.iterator(); // L: 48 - - while (var5.hasNext()) { - Message var6 = (Message)var5.next(); // L: 49 - var6.clearIsFromFriend(); // L: 51 + TileItem.method2189(); + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.clearFriends(); } - if (DevicePcmPlayerProvider.clanChat != null) { // L: 55 - DevicePcmPlayerProvider.clanChat.clearFriends(); // L: 56 - } + } - } // L: 59 - - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1762300851" + garbageValue = "502952777" ) @Export("processFriendUpdates") final void processFriendUpdates() { - for (FriendLoginUpdate var1 = (FriendLoginUpdate)this.friendsList.friendLoginUpdates.last(); var1 != null; var1 = (FriendLoginUpdate)this.friendsList.friendLoginUpdates.previous()) { // L: 62 - if ((long)var1.field3670 < User.currentTimeMillis() / 1000L - 5L) { + for (FriendLoginUpdate var1 = (FriendLoginUpdate)this.friendsList.friendLoginUpdates.last(); var1 != null; var1 = (FriendLoginUpdate)this.friendsList.friendLoginUpdates.previous()) { + if ((long)var1.field3680 < class298.currentTimeMillis() / 1000L - 5L) { if (var1.world > 0) { - DevicePcmPlayerProvider.addGameMessage(5, "", var1.username + " has logged in."); + class234.addGameMessage(5, "", var1.username + " has logged in."); } if (var1.world == 0) { - DevicePcmPlayerProvider.addGameMessage(5, "", var1.username + " has logged out."); + class234.addGameMessage(5, "", var1.username + " has logged out."); } var1.remove(); @@ -118,418 +114,205 @@ public class FriendSystem { } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-710169059" + garbageValue = "-2051278822" ) @Export("clear") final void clear() { - this.field1097 = 0; - this.friendsList.clear(); // L: 73 - this.ignoreList.clear(); // L: 74 + this.field1069 = 0; + this.friendsList.clear(); + this.ignoreList.clear(); } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(Lkm;ZI)Z", - garbageValue = "-1897160718" + descriptor = "(Lki;ZB)Z", + garbageValue = "66" ) @Export("isFriended") final boolean isFriended(Username var1, boolean var2) { if (var1 == null) { return false; - } else if (var1.equals(PlayerType.localPlayer.username)) { // L: 79 + } else if (var1.equals(PlayerAppearance.localPlayer.username)) { return true; } else { - return this.friendsList.isFriended(var1, var2); // L: 80 + return this.friendsList.isFriended(var1, var2); } } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(Lkm;I)Z", - garbageValue = "1651377109" + descriptor = "(Lki;I)Z", + garbageValue = "-1147819947" ) @Export("isIgnored") final boolean isIgnored(Username var1) { - if (var1 == null) { // L: 85 + if (var1 == null) { return false; } else { - return this.ignoreList.contains(var1); // L: 86 + return this.ignoreList.contains(var1); } } + @ObfuscatedName("p") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;I)V", + garbageValue = "-262000374" + ) + @Export("addFriend") + final void addFriend(String var1) { + if (var1 != null) { + Username var2 = new Username(var1, this.loginType); + if (var2.hasCleanName()) { + if (this.friendsListIsFull()) { + Calendar.method3985(); + } else if (PlayerAppearance.localPlayer.username.equals(var2)) { + ServerPacket.method3668(); + } else if (this.isFriended(var2, false)) { + class219.method4003(var1); + } else if (this.isIgnored(var2)) { + StringBuilder var10000 = new StringBuilder(); + Object var10001 = null; + var10000 = var10000.append("Please remove ").append(var1); + var10001 = null; + String var3 = var10000.append(" from your ignore list first").toString(); + class234.addGameMessage(30, "", var3); + } else { + FloorDecoration.method2932(var1); + } + } + } + } + + @ObfuscatedName("m") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "1820755315" + ) + @Export("friendsListIsFull") + final boolean friendsListIsFull() { + return this.friendsList.isFull() || this.friendsList.getSize() >= 200 && Client.field766 != 1; + } + @ObfuscatedName("c") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "625813578" - ) - @Export("addFriend") - final void addFriend(String var1) { - if (var1 != null) { // L: 91 - Username var2 = new Username(var1, this.loginType); // L: 92 - if (var2.hasCleanName()) { // L: 93 - if (this.friendsListIsFull()) { // L: 94 - Object var10000 = null; // L: 96 - String var3 = "Your friend list is full. Max of 200 for free users, and 400 for members"; - DevicePcmPlayerProvider.addGameMessage(30, "", var3); // L: 98 - } else if (PlayerType.localPlayer.username.equals(var2)) { // L: 103 - MouseRecorder.method1286(); // L: 104 - } else if (this.isFriended(var2, false)) { // L: 107 - class60.method983(var1); // L: 108 - } else if (this.isIgnored(var2)) { // L: 111 - GrandExchangeOfferAgeComparator.method241(var1); // L: 112 - } else { - Canvas.method949(var1); // L: 115 - } - } - } - } // L: 101 105 109 113 116 - - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1768016322" - ) - @Export("friendsListIsFull") - final boolean friendsListIsFull() { - return this.friendsList.isFull() || this.friendsList.getSize() >= 200 && Client.field799 != 1; // L: 148 - } - - @ObfuscatedName("x") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-109423207" + garbageValue = "-1480172940" ) @Export("addIgnore") final void addIgnore(String var1) { - if (var1 != null) { // L: 155 + if (var1 != null) { Username var2 = new Username(var1, this.loginType); if (var2.hasCleanName()) { - Object var10000; + StringBuilder var10000; String var3; if (this.canAddIgnore()) { var10000 = null; var3 = "Your ignore list is full. Max of 100 for free users, and 400 for members"; - DevicePcmPlayerProvider.addGameMessage(30, "", var3); - } else if (PlayerType.localPlayer.username.equals(var2)) { - var10000 = null; // L: 169 + class234.addGameMessage(30, "", var3); + } else if (PlayerAppearance.localPlayer.username.equals(var2)) { + var10000 = null; var3 = "You can't add yourself to your own ignore list"; - DevicePcmPlayerProvider.addGameMessage(30, "", var3); - } else if (this.isIgnored(var2)) { // L: 176 - class217.method4098(var1); + class234.addGameMessage(30, "", var3); + } else if (this.isIgnored(var2)) { + var10000 = (new StringBuilder()).append(var1); + Object var10001 = null; + var3 = var10000.append(" is already on your ignore list").toString(); + class234.addGameMessage(30, "", var3); } else if (this.isFriended(var2, false)) { - WorldMapArea.method506(var1); // L: 181 + GrandExchangeOfferTotalQuantityComparator.method165(var1); } else { - HealthBarUpdate.method1869(var1); // L: 184 + Skeleton.method3155(var1); } } } - } // L: 174 182 185 + } - @ObfuscatedName("s") + @ObfuscatedName("y") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-34" + descriptor = "(I)Z", + garbageValue = "-1353584964" ) @Export("canAddIgnore") final boolean canAddIgnore() { - return this.ignoreList.isFull() || this.ignoreList.getSize() >= 100 && Client.field799 != 1; // L: 210 + return this.ignoreList.isFull() || this.ignoreList.getSize() >= 100 && Client.field766 != 1; } - @ObfuscatedName("j") + @ObfuscatedName("r") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-1777583860" + garbageValue = "92133268" ) @Export("removeFriend") final void removeFriend(String var1) { - if (var1 != null) { // L: 217 - Username var2 = new Username(var1, this.loginType); // L: 218 - if (var2.hasCleanName()) { // L: 219 - if (this.friendsList.removeByUsername(var2)) { // L: 220 - Client.field874 = Client.cycleCntr; // L: 222 - PacketBufferNode var3 = class4.getPacketBufferNode(ClientPacket.field2327, Client.packetWriter.isaacCipher); // L: 225 - var3.packetBuffer.writeByte(SpriteMask.stringCp1252NullTerminatedByteSize(var1)); // L: 226 - var3.packetBuffer.writeStringCp1252NullTerminated(var1); // L: 227 - Client.packetWriter.addNode(var3); // L: 228 + if (var1 != null) { + Username var2 = new Username(var1, this.loginType); + if (var2.hasCleanName()) { + if (this.friendsList.removeByUsername(var2)) { + Client.field879 = Client.cycleCntr; + PacketBufferNode var3 = ItemContainer.getPacketBufferNode(ClientPacket.field2290, Client.packetWriter.isaacCipher); + var3.packetBuffer.writeByte(FloorDecoration.stringCp1252NullTerminatedByteSize(var1)); + var3.packetBuffer.writeStringCp1252NullTerminated(var1); + Client.packetWriter.addNode(var3); } - for (int var5 = 0; var5 < Players.Players_count; ++var5) { // L: 231 - Player var4 = Client.players[Players.Players_indices[var5]]; // L: 232 - var4.clearIsFriend(); // L: 233 + for (int var5 = 0; var5 < Players.Players_count; ++var5) { + Player var4 = Client.players[Players.Players_indices[var5]]; + var4.clearIsFriend(); } - Iterator var6 = Messages.Messages_hashTable.iterator(); // L: 236 - - while (var6.hasNext()) { - Message var7 = (Message)var6.next(); // L: 237 - var7.clearIsFromFriend(); // L: 239 - } - - if (DevicePcmPlayerProvider.clanChat != null) { // L: 243 - DevicePcmPlayerProvider.clanChat.clearFriends(); // L: 244 + TileItem.method2189(); + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.clearFriends(); } } } - } // L: 247 + } - @ObfuscatedName("d") + @ObfuscatedName("q") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;B)V", - garbageValue = "66" + garbageValue = "40" ) @Export("removeIgnore") final void removeIgnore(String var1) { - if (var1 != null) { // L: 250 - Username var2 = new Username(var1, this.loginType); // L: 251 - if (var2.hasCleanName()) { // L: 252 - if (this.ignoreList.removeByUsername(var2)) { // L: 253 - Client.field874 = Client.cycleCntr; // L: 255 - PacketBufferNode var3 = class4.getPacketBufferNode(ClientPacket.field2240, Client.packetWriter.isaacCipher); // L: 258 - var3.packetBuffer.writeByte(SpriteMask.stringCp1252NullTerminatedByteSize(var1)); // L: 259 - var3.packetBuffer.writeStringCp1252NullTerminated(var1); // L: 260 - Client.packetWriter.addNode(var3); // L: 261 + if (var1 != null) { + Username var2 = new Username(var1, this.loginType); + if (var2.hasCleanName()) { + if (this.ignoreList.removeByUsername(var2)) { + Client.field879 = Client.cycleCntr; + PacketBufferNode var3 = ItemContainer.getPacketBufferNode(ClientPacket.field2318, Client.packetWriter.isaacCipher); + var3.packetBuffer.writeByte(FloorDecoration.stringCp1252NullTerminatedByteSize(var1)); + var3.packetBuffer.writeStringCp1252NullTerminated(var1); + Client.packetWriter.addNode(var3); } - class52.FriendSystem_invalidateIgnoreds(); // L: 263 + class9.FriendSystem_invalidateIgnoreds(); } } - } // L: 264 + } - @ObfuscatedName("g") + @ObfuscatedName("o") @ObfuscatedSignature( - descriptor = "(Lkm;I)Z", - garbageValue = "-1712856211" + descriptor = "(Lki;I)Z", + garbageValue = "-1294359433" ) @Export("isFriendAndHasWorld") final boolean isFriendAndHasWorld(Username var1) { - Friend var2 = (Friend)this.friendsList.getByUsername(var1); // L: 276 - return var2 != null && var2.hasWorld(); // L: 277 + Friend var2 = (Friend)this.friendsList.getByUsername(var1); + return var2 != null && var2.hasWorld(); } - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "-145581337" - ) - @Export("changeWorldSelectSorting") - static void changeWorldSelectSorting(int var0, int var1) { - int[] var2 = new int[4]; // L: 63 - int[] var3 = new int[4]; // L: 64 - var2[0] = var0; // L: 65 - var3[0] = var1; // L: 66 - int var4 = 1; // L: 67 - - for (int var5 = 0; var5 < 4; ++var5) { // L: 68 - if (World.World_sortOption1[var5] != var0) { // L: 69 - var2[var4] = World.World_sortOption1[var5]; // L: 70 - var3[var4] = World.World_sortOption2[var5]; // L: 71 - ++var4; // L: 72 - } - } - - World.World_sortOption1 = var2; // L: 75 - World.World_sortOption2 = var3; // L: 76 - ModeWhere.sortWorlds(DefaultsGroup.World_worlds, 0, DefaultsGroup.World_worlds.length - 1, World.World_sortOption1, World.World_sortOption2); // L: 77 - } // L: 78 - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "1" - ) - public static void method2017() { - synchronized(KeyHandler.KeyHandler_instance) { // L: 156 - ++KeyHandler.KeyHandler_idleCycles; // L: 157 - KeyHandler.field415 = KeyHandler.field428; // L: 158 - KeyHandler.field427 = 0; // L: 159 - int var1; - if (KeyHandler.field423 < 0) { // L: 160 - for (var1 = 0; var1 < 112; ++var1) { // L: 161 - KeyHandler.KeyHandler_pressedKeys[var1] = false; - } - - KeyHandler.field423 = KeyHandler.field422; // L: 162 - } else { - while (KeyHandler.field422 != KeyHandler.field423) { // L: 165 - var1 = KeyHandler.field435[KeyHandler.field422]; // L: 166 - KeyHandler.field422 = KeyHandler.field422 + 1 & 127; // L: 167 - if (var1 < 0) { // L: 168 - KeyHandler.KeyHandler_pressedKeys[~var1] = false; - } else { - if (!KeyHandler.KeyHandler_pressedKeys[var1] && KeyHandler.field427 < KeyHandler.field430.length - 1) { // L: 170 - KeyHandler.field430[++KeyHandler.field427 - 1] = var1; // L: 171 - } - - KeyHandler.KeyHandler_pressedKeys[var1] = true; // L: 173 - } - } - } - - if (KeyHandler.field427 > 0) { // L: 177 - KeyHandler.KeyHandler_idleCycles = 0; - } - - KeyHandler.field428 = KeyHandler.field413; // L: 178 - } - } // L: 180 - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(ILco;ZB)I", - garbageValue = "104" - ) - static int method2018(int var0, Script var1, boolean var2) { - boolean var3 = true; // L: 772 - Widget var4; - if (var0 >= 2000) { // L: 774 - var0 -= 1000; // L: 775 - var4 = UserComparator4.getWidget(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 776 - var3 = false; // L: 777 - } else { - var4 = var2 ? MouseRecorder.field621 : Interpreter.field1122; // L: 779 - } - - int var11; - if (var0 == ScriptOpcodes.CC_SETOP) { // L: 780 - var11 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] - 1; // L: 781 - if (var11 >= 0 && var11 <= 9) { // L: 782 - var4.setAction(var11, Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]); // L: 786 - return 1; // L: 787 - } else { - --UrlRequester.Interpreter_stringStackSize; // L: 783 - return 1; // L: 784 - } - } else { - int var6; - if (var0 == ScriptOpcodes.CC_SETDRAGGABLE) { // L: 789 - MilliClock.Interpreter_intStackSize -= 2; // L: 790 - var11 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 791 - var6 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 792 - var4.parent = ItemContainer.getWidgetChild(var11, var6); // L: 793 - return 1; // L: 794 - } else if (var0 == ScriptOpcodes.CC_SETDRAGGABLEBEHAVIOR) { // L: 796 - var4.isScrollBar = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 797 - return 1; // L: 798 - } else if (var0 == ScriptOpcodes.CC_SETDRAGDEADZONE) { // L: 800 - var4.dragZoneSize = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 801 - return 1; // L: 802 - } else if (var0 == ScriptOpcodes.CC_SETDRAGDEADTIME) { // L: 804 - var4.dragThreshold = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 805 - return 1; // L: 806 - } else if (var0 == ScriptOpcodes.CC_SETOPBASE) { // L: 808 - var4.dataText = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 809 - return 1; // L: 810 - } else if (var0 == ScriptOpcodes.CC_SETTARGETVERB) { // L: 812 - var4.spellActionName = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 813 - return 1; // L: 814 - } else if (var0 == ScriptOpcodes.CC_CLEAROPS) { // L: 816 - var4.actions = null; // L: 817 - return 1; // L: 818 - } else if (var0 == 1308) { // L: 820 - var4.prioritizeMenuEntry = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 821 - return 1; // L: 822 - } else if (var0 == 1309) { // L: 824 - --MilliClock.Interpreter_intStackSize; // L: 825 - return 1; // L: 826 - } else { - int var7; - byte[] var8; - if (var0 != ScriptOpcodes.CC_SETOPKEY) { // L: 828 - byte var5; - if (var0 == ScriptOpcodes.CC_SETOPTKEY) { // L: 858 - MilliClock.Interpreter_intStackSize -= 2; // L: 859 - var5 = 10; // L: 860 - var8 = new byte[]{(byte)Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]}; // L: 861 - byte[] var9 = new byte[]{(byte)Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]}; // L: 862 - ChatChannel.Widget_setKey(var4, var5, var8, var9); // L: 863 - return 1; // L: 864 - } else if (var0 == ScriptOpcodes.CC_SETOPKEYRATE) { // L: 866 - MilliClock.Interpreter_intStackSize -= 3; // L: 867 - var11 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize] - 1; // L: 868 - var6 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 869 - var7 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 2]; // L: 870 - if (var11 >= 0 && var11 <= 9) { // L: 871 - WorldMapIcon_1.Widget_setKeyRate(var4, var11, var6, var7); // L: 874 - return 1; // L: 875 - } else { - throw new RuntimeException(); // L: 872 - } - } else if (var0 == ScriptOpcodes.CC_SETOPTKEYRATE) { // L: 877 - var5 = 10; // L: 878 - var6 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 879 - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 880 - WorldMapIcon_1.Widget_setKeyRate(var4, var5, var6, var7); // L: 881 - return 1; // L: 882 - } else if (var0 == ScriptOpcodes.CC_SETOPKEYIGNOREHELD) { // L: 884 - --MilliClock.Interpreter_intStackSize; // L: 885 - var11 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize] - 1; // L: 886 - if (var11 >= 0 && var11 <= 9) { // L: 887 - MusicPatchNode2.Widget_setKeyIgnoreHeld(var4, var11); // L: 890 - return 1; // L: 891 - } else { - throw new RuntimeException(); // L: 888 - } - } else if (var0 == ScriptOpcodes.CC_SETOPTKEYIGNOREHELD) { // L: 893 - var5 = 10; // L: 894 - MusicPatchNode2.Widget_setKeyIgnoreHeld(var4, var5); // L: 895 - return 1; // L: 896 - } else { - return 2; // L: 898 - } - } else { - byte[] var10 = null; // L: 829 - var8 = null; // L: 830 - if (var3) { // L: 831 - MilliClock.Interpreter_intStackSize -= 10; // L: 832 - - for (var7 = 0; var7 < 10 && Interpreter.Interpreter_intStack[var7 + MilliClock.Interpreter_intStackSize] >= 0; var7 += 2) { // L: 834 835 - } - - if (var7 > 0) { // L: 837 - var10 = new byte[var7 / 2]; // L: 838 - var8 = new byte[var7 / 2]; // L: 839 - - for (var7 -= 2; var7 >= 0; var7 -= 2) { // L: 840 - var10[var7 / 2] = (byte)Interpreter.Interpreter_intStack[var7 + MilliClock.Interpreter_intStackSize]; // L: 841 - var8[var7 / 2] = (byte)Interpreter.Interpreter_intStack[var7 + MilliClock.Interpreter_intStackSize + 1]; // L: 842 - } - } - } else { - MilliClock.Interpreter_intStackSize -= 2; // L: 847 - var10 = new byte[]{(byte)Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]}; // L: 848 - var8 = new byte[]{(byte)Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]}; // L: 849 - } - - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] - 1; // L: 851 - if (var7 >= 0 && var7 <= 9) { // L: 852 - ChatChannel.Widget_setKey(var4, var7, var10, var8); // L: 855 - return 1; // L: 856 - } else { - throw new RuntimeException(); // L: 853 - } - } - } - } + @ObfuscatedName("h") + static double method1972(double var0) { + return Math.exp(var0 * -var0 / 2.0D) / Math.sqrt(6.283185307179586D); } - @ObfuscatedName("fi") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1364904686" - ) - @Export("playPcmPlayers") - static final void playPcmPlayers() { - if (class23.pcmPlayer1 != null) { // L: 3491 - class23.pcmPlayer1.run(); - } - - if (class195.pcmPlayer0 != null) { // L: 3492 - class195.pcmPlayer0.run(); - } - - } // L: 3493 + @ObfuscatedName("v") + public static boolean method1943(long var0) { + return 0L != var0 && !AbstractWorldMapIcon.method657(var0); + } } diff --git a/runescape-client/src/main/java/FriendsList.java b/runescape-client/src/main/java/FriendsList.java index f5f7960a7f..f0a6d7ba44 100644 --- a/runescape-client/src/main/java/FriendsList.java +++ b/runescape-client/src/main/java/FriendsList.java @@ -4,21 +4,21 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kd") +@ObfuscatedName("ko") @Implements("FriendsList") public class FriendsList extends UserList { - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lmc;" + descriptor = "Lmu;" ) @Export("loginType") final LoginType loginType; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = -1451394125 + intValue = -1380465553 ) - int field3649; - @ObfuscatedName("e") + int field3657; + @ObfuscatedName("u") @ObfuscatedSignature( descriptor = "Ljj;" ) @@ -26,136 +26,214 @@ public class FriendsList extends UserList { public LinkDeque friendLoginUpdates; @ObfuscatedSignature( - descriptor = "(Lmc;)V" + descriptor = "(Lmu;)V" ) public FriendsList(LoginType var1) { - super(400); // L: 17 - this.field3649 = 1; // L: 13 - this.friendLoginUpdates = new LinkDeque(); // L: 14 - this.loginType = var1; // L: 18 - } // L: 19 + super(400); + this.field3657 = 1; + this.friendLoginUpdates = new LinkDeque(); + this.loginType = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)Ljh;", - garbageValue = "-1664145399" + descriptor = "(B)Lju;", + garbageValue = "-99" ) @Export("newInstance") User newInstance() { - return new Friend(); // L: 22 + return new Friend(); } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IB)[Ljh;", - garbageValue = "-35" + descriptor = "(II)[Lju;", + garbageValue = "-1524839332" ) @Export("newTypedArray") User[] newTypedArray(int var1) { - return new Friend[var1]; // L: 26 + return new Friend[var1]; } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkm;ZB)Z", - garbageValue = "36" + descriptor = "(Lki;ZB)Z", + garbageValue = "-6" ) @Export("isFriended") public boolean isFriended(Username var1, boolean var2) { - Friend var3 = (Friend)this.getByUsername(var1); // L: 30 + Friend var3 = (Friend)this.getByUsername(var1); if (var3 == null) { - return false; // L: 31 + return false; } else { - return !var2 || var3.world != 0; // L: 32 + return !var2 || var3.world != 0; } } @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "1702528493" + descriptor = "(Lkj;II)V", + garbageValue = "-1122558022" ) @Export("read") public void read(Buffer var1, int var2) { while (true) { - if (var1.offset < var2) { // L: 37 - boolean var3 = var1.readUnsignedByte() == 1; // L: 38 - Username var4 = new Username(var1.readStringCp1252NullTerminated(), this.loginType); // L: 39 - Username var5 = new Username(var1.readStringCp1252NullTerminated(), this.loginType); // L: 40 - int var6 = var1.readUnsignedShort(); // L: 41 - int var7 = var1.readUnsignedByte(); // L: 42 - int var8 = var1.readUnsignedByte(); // L: 43 - boolean var9 = (var8 & 2) != 0; // L: 44 - boolean var10 = (var8 & 1) != 0; // L: 45 - if (var6 > 0) { // L: 46 - var1.readStringCp1252NullTerminated(); // L: 47 - var1.readUnsignedByte(); // L: 48 - var1.readInt(); // L: 49 + if (var1.offset < var2) { + boolean var3 = var1.readUnsignedByte() == 1; + Username var4 = new Username(var1.readStringCp1252NullTerminated(), this.loginType); + Username var5 = new Username(var1.readStringCp1252NullTerminated(), this.loginType); + int var6 = var1.readUnsignedShort(); + int var7 = var1.readUnsignedByte(); + int var8 = var1.readUnsignedByte(); + boolean var9 = (var8 & 2) != 0; + boolean var10 = (var8 & 1) != 0; + if (var6 > 0) { + var1.readStringCp1252NullTerminated(); + var1.readUnsignedByte(); + var1.readInt(); } - var1.readStringCp1252NullTerminated(); // L: 51 - if (var4 != null && var4.hasCleanName()) { // L: 52 - Friend var11 = (Friend)this.getByCurrentUsername(var4); // L: 53 - if (var3) { // L: 54 - Friend var12 = (Friend)this.getByCurrentUsername(var5); // L: 55 - if (var12 != null && var11 != var12) { // L: 56 - if (var11 != null) { // L: 57 - this.remove(var12); // L: 58 + var1.readStringCp1252NullTerminated(); + if (var4 != null && var4.hasCleanName()) { + Friend var11 = (Friend)this.getByCurrentUsername(var4); + if (var3) { + Friend var12 = (Friend)this.getByCurrentUsername(var5); + if (var12 != null && var12 != var11) { + if (var11 != null) { + this.remove(var12); } else { - var11 = var12; // L: 61 + var11 = var12; } } } - if (var11 != null) { // L: 65 - this.changeName(var11, var4, var5); // L: 66 - if (var6 != var11.world) { // L: 67 - boolean var14 = true; // L: 68 + if (var11 != null) { + this.changeName(var11, var4, var5); + if (var6 != var11.world) { + boolean var14 = true; - for (FriendLoginUpdate var13 = (FriendLoginUpdate)this.friendLoginUpdates.last(); var13 != null; var13 = (FriendLoginUpdate)this.friendLoginUpdates.previous()) { // L: 69 - if (var13.username.equals(var4)) { // L: 70 - if (var6 != 0 && var13.world == 0) { // L: 71 - var13.remove(); // L: 72 - var14 = false; // L: 73 - } else if (var6 == 0 && var13.world != 0) { // L: 75 - var13.remove(); // L: 76 - var14 = false; // L: 77 + for (FriendLoginUpdate var13 = (FriendLoginUpdate)this.friendLoginUpdates.last(); var13 != null; var13 = (FriendLoginUpdate)this.friendLoginUpdates.previous()) { + if (var13.username.equals(var4)) { + if (var6 != 0 && var13.world == 0) { + var13.remove(); + var14 = false; + } else if (var6 == 0 && var13.world != 0) { + var13.remove(); + var14 = false; } } } - if (var14) { // L: 81 + if (var14) { this.friendLoginUpdates.addFirst(new FriendLoginUpdate(var4, var6)); } } } else { - if (this.getSize() >= 400) { // L: 84 + if (this.getSize() >= 400) { continue; } - var11 = (Friend)this.addLast(var4, var5); // L: 85 + var11 = (Friend)this.addLast(var4, var5); } - if (var6 != var11.world) { // L: 88 - var11.int2 = ++this.field3649 - 1; // L: 89 - if (var11.world == -1 && var6 == 0) { // L: 90 - var11.int2 = -(var11.int2 * 325522823) * -152395721; + if (var6 != var11.world) { + var11.int2 = ++this.field3657 - 1; + if (var11.world == -1 && var6 == 0) { + var11.int2 = -(var11.int2 * -579950033) * 503110863; } - var11.world = var6; // L: 91 + var11.world = var6; } - var11.rank = var7; // L: 93 - var11.field3659 = var9; // L: 94 - var11.field3660 = var10; // L: 95 - continue; // L: 96 + var11.rank = var7; + var11.field3666 = var9; + var11.field3667 = var10; + continue; } throw new IllegalStateException(); } - this.sort(); // L: 97 - return; // L: 98 + this.sort(); + return; } } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(IIIII)V", + garbageValue = "754468419" + ) + static void method5222(int var0, int var1, int var2, int var3) { + for (ObjectSound var4 = (ObjectSound)ObjectSound.objectSounds.last(); var4 != null; var4 = (ObjectSound)ObjectSound.objectSounds.previous()) { + if (var4.soundEffectId != -1 || var4.soundEffectIds != null) { + int var5 = 0; + if (var1 > var4.field1073 * 128) { + var5 += var1 - var4.field1073 * 128; + } else if (var1 < var4.x * 128) { + var5 += var4.x * 128 - var1; + } + + if (var2 > var4.field1078 * 16384) { + var5 += var2 - var4.field1078 * 16384; + } else if (var2 < var4.y * 16384) { + var5 += var4.y * 16384 - var2; + } + + if (var5 - 64 <= var4.field1086 && Timer.clientPreferences.areaSoundEffectsVolume != 0 && var0 == var4.plane) { + var5 -= 64; + if (var5 < 0) { + var5 = 0; + } + + int var6 = (var4.field1086 - var5) * Timer.clientPreferences.areaSoundEffectsVolume / var4.field1086; + if (var4.stream1 == null) { + if (var4.soundEffectId >= 0) { + SoundEffect var7 = SoundEffect.readSoundEffect(class227.archive4, var4.soundEffectId, 0); + if (var7 != null) { + RawSound var8 = var7.toRawSound().resample(TileItemPile.decimator); + RawPcmStream var9 = RawPcmStream.createRawPcmStream(var8, 100, var6); + var9.setNumLoops(-1); + WorldMapManager.pcmStreamMixer.addSubStream(var9); + var4.stream1 = var9; + } + } + } else { + var4.stream1.method2610(var6); + } + + if (var4.stream2 == null) { + if (var4.soundEffectIds != null && (var4.field1081 -= var3) <= 0) { + int var11 = (int)(Math.random() * (double)var4.soundEffectIds.length); + SoundEffect var12 = SoundEffect.readSoundEffect(class227.archive4, var4.soundEffectIds[var11], 0); + if (var12 != null) { + RawSound var13 = var12.toRawSound().resample(TileItemPile.decimator); + RawPcmStream var10 = RawPcmStream.createRawPcmStream(var13, 100, var6); + var10.setNumLoops(0); + WorldMapManager.pcmStreamMixer.addSubStream(var10); + var4.stream2 = var10; + var4.field1081 = var4.field1085 + (int)(Math.random() * (double)(var4.field1083 - var4.field1085)); + } + } + } else { + var4.stream2.method2610(var6); + if (!var4.stream2.hasNext()) { + var4.stream2 = null; + } + } + } else { + if (var4.stream1 != null) { + WorldMapManager.pcmStreamMixer.removeSubStream(var4.stream1); + var4.stream1 = null; + } + + if (var4.stream2 != null) { + WorldMapManager.pcmStreamMixer.removeSubStream(var4.stream2); + var4.stream2 = null; + } + } + } + } + + } } diff --git a/runescape-client/src/main/java/GZipDecompressor.java b/runescape-client/src/main/java/GZipDecompressor.java index 5138e8869a..46d1ffaa9b 100644 --- a/runescape-client/src/main/java/GZipDecompressor.java +++ b/runescape-client/src/main/java/GZipDecompressor.java @@ -4,10 +4,16 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mw") +@ObfuscatedName("ms") @Implements("GZipDecompressor") public class GZipDecompressor { - @ObfuscatedName("f") + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "[Llo;" + ) + @Export("runesSprite") + static IndexedSprite[] runesSprite; + @ObfuscatedName("h") @Export("inflater") Inflater inflater; @@ -16,35 +22,35 @@ public class GZipDecompressor { garbageValue = "1000000" ) GZipDecompressor(int var1, int var2, int var3) { - } // L: 13 + } public GZipDecompressor() { - this(-1, 1000000, 1000000); // L: 10 - } // L: 11 + this(-1, 1000000, 1000000); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkb;[BI)V", - garbageValue = "118989570" + descriptor = "(Lkj;[BB)V", + garbageValue = "-11" ) @Export("decompress") public void decompress(Buffer var1, byte[] var2) { - if (var1.array[var1.offset] == 31 && var1.array[var1.offset + 1] == -117) { // L: 16 + if (var1.array[var1.offset] == 31 && var1.array[var1.offset + 1] == -117) { if (this.inflater == null) { - this.inflater = new Inflater(true); // L: 17 + this.inflater = new Inflater(true); } try { - this.inflater.setInput(var1.array, var1.offset + 10, var1.array.length - (var1.offset + 8 + 10)); // L: 19 - this.inflater.inflate(var2); // L: 20 - } catch (Exception var4) { // L: 22 - this.inflater.reset(); // L: 23 - throw new RuntimeException(""); // L: 24 + this.inflater.setInput(var1.array, var1.offset + 10, var1.array.length - (var1.offset + 8 + 10)); + this.inflater.inflate(var2); + } catch (Exception var4) { + this.inflater.reset(); + throw new RuntimeException(""); } - this.inflater.reset(); // L: 26 + this.inflater.reset(); } else { throw new RuntimeException(""); } - } // L: 27 + } } diff --git a/runescape-client/src/main/java/GameBuild.java b/runescape-client/src/main/java/GameBuild.java index 7e160aab69..6d96752e95 100644 --- a/runescape-client/src/main/java/GameBuild.java +++ b/runescape-client/src/main/java/GameBuild.java @@ -7,61 +7,49 @@ import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("io") @Implements("GameBuild") public class GameBuild { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "Lio;" ) @Export("LIVE") - public static final GameBuild LIVE; - @ObfuscatedName("b") + static final GameBuild LIVE; + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "Lio;" ) @Export("BUILDLIVE") - public static final GameBuild BUILDLIVE; - @ObfuscatedName("l") + static final GameBuild BUILDLIVE; + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "Lio;" ) @Export("RC") - public static final GameBuild RC; - @ObfuscatedName("m") + static final GameBuild RC; + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "Lio;" ) @Export("WIP") - public static final GameBuild WIP; + static final GameBuild WIP; @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "Liw;" - ) - @Export("Widget_modelsArchive") - static AbstractArchive Widget_modelsArchive; - @ObfuscatedName("jc") - @ObfuscatedSignature( - descriptor = "Lht;" - ) - @Export("dragInventoryWidget") - static Widget dragInventoryWidget; - @ObfuscatedName("z") @Export("name") public final String name; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = 1749368073 + intValue = 1867624169 ) @Export("buildId") - public final int buildId; + final int buildId; static { - LIVE = new GameBuild("LIVE", 0); // L: 5 - BUILDLIVE = new GameBuild("BUILDLIVE", 3); // L: 6 - RC = new GameBuild("RC", 1); // L: 7 - WIP = new GameBuild("WIP", 2); // L: 8 + LIVE = new GameBuild("LIVE", 0); + BUILDLIVE = new GameBuild("BUILDLIVE", 3); + RC = new GameBuild("RC", 1); + WIP = new GameBuild("WIP", 2); } GameBuild(String var1, int var2) { - this.name = var1; // L: 13 - this.buildId = var2; // L: 14 - } // L: 15 + this.name = var1; + this.buildId = var2; + } } diff --git a/runescape-client/src/main/java/GameObject.java b/runescape-client/src/main/java/GameObject.java index 837f68c21a..6cfc060621 100644 --- a/runescape-client/src/main/java/GameObject.java +++ b/runescape-client/src/main/java/GameObject.java @@ -7,188 +7,98 @@ import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("el") @Implements("GameObject") public final class GameObject { - @ObfuscatedName("ba") - @ObfuscatedSignature( - descriptor = "[Lle;" - ) - @Export("worldSelectStars") - static IndexedSprite[] worldSelectStars; - @ObfuscatedName("f") + @ObfuscatedName("ks") @ObfuscatedGetter( - intValue = -1412668883 + intValue = 688960621 + ) + @Export("Client_plane") + static int Client_plane; + @ObfuscatedName("h") + @ObfuscatedGetter( + intValue = -77952931 ) @Export("plane") int plane; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -1556347637 + intValue = -1125235357 ) @Export("height") int height; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 954361615 - ) - @Export("centerX") - int centerX; - @ObfuscatedName("m") - @ObfuscatedGetter( - intValue = -1596359689 - ) - @Export("orientation") - int orientation; - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "Lej;" - ) - @Export("entity") - public Entity entity; - @ObfuscatedName("q") - @ObfuscatedGetter( - intValue = 1994666041 + intValue = 1533148227 ) @Export("centerY") int centerY; - @ObfuscatedName("k") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 207668277 + intValue = 584505067 + ) + @Export("centerX") + int centerX; + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "Ler;" + ) + @Export("entity") + public Entity entity; + @ObfuscatedName("j") + @ObfuscatedGetter( + intValue = 1255599163 + ) + @Export("orientation") + int orientation; + @ObfuscatedName("n") + @ObfuscatedGetter( + intValue = 1704615809 ) @Export("startX") int startX; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = -1940452637 + intValue = 285662481 ) @Export("endX") int endX; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = 1266358135 + intValue = -1961759739 ) @Export("startY") int startY; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = 1643778515 + intValue = -1646674611 ) @Export("endY") int endY; + @ObfuscatedName("u") + @ObfuscatedGetter( + intValue = -1353315181 + ) + int field1953; @ObfuscatedName("e") @ObfuscatedGetter( - intValue = 609082727 - ) - int field1962; - @ObfuscatedName("o") - @ObfuscatedGetter( - intValue = -404331619 + intValue = -2024617529 ) @Export("lastDrawn") int lastDrawn; - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedGetter( - longValue = -2637081015005136759L + longValue = 5601843375615020219L ) @Export("tag") public long tag; - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedGetter( - intValue = -735597717 + intValue = 16020691 ) @Export("flags") int flags; GameObject() { - this.tag = 0L; // L: 16 - this.flags = 0; // L: 17 - } // L: 19 - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "1929394434" - ) - public static boolean method3416(int var0) { - return var0 >= WorldMapDecorationType.field2766.id && var0 <= WorldMapDecorationType.field2767.id; // L: 46 + this.tag = 0L; + this.flags = 0; } - - @ObfuscatedName("fu") - @ObfuscatedSignature( - descriptor = "(Lcs;I)V", - garbageValue = "-755652962" - ) - static final void method3415(Actor var0) { - if (var0.field1028 != 0) { // L: 4120 - if (var0.targetIndex != -1) { // L: 4121 - Object var1 = null; // L: 4122 - if (var0.targetIndex < 32768) { // L: 4123 - var1 = Client.npcs[var0.targetIndex]; - } else if (var0.targetIndex >= 32768) { // L: 4124 - var1 = Client.players[var0.targetIndex - 32768]; - } - - if (var1 != null) { // L: 4125 - int var2 = var0.x - ((Actor)var1).x; // L: 4126 - int var3 = var0.y - ((Actor)var1).y; // L: 4127 - if (var2 != 0 || var3 != 0) { // L: 4128 - var0.orientation = (int)(Math.atan2((double)var2, (double)var3) * 325.949D) & 2047; - } - } else if (var0.false0) { // L: 4130 - var0.targetIndex = -1; // L: 4131 - var0.false0 = false; // L: 4132 - } - } - - if (var0.field1003 != -1 && (var0.pathLength == 0 || var0.field978 > 0)) { // L: 4135 - var0.orientation = var0.field1003; // L: 4136 - var0.field1003 = -1; // L: 4137 - } - - int var4 = var0.orientation - var0.rotation & 2047; // L: 4139 - if (var4 == 0 && var0.false0) { // L: 4140 - var0.targetIndex = -1; // L: 4141 - var0.false0 = false; // L: 4142 - } - - if (var4 != 0) { // L: 4144 - ++var0.field1027; // L: 4145 - boolean var6; - if (var4 > 1024) { // L: 4146 - var0.rotation -= var0.field1028; // L: 4147 - var6 = true; // L: 4148 - if (var4 < var0.field1028 || var4 > 2048 - var0.field1028) { // L: 4149 - var0.rotation = var0.orientation; // L: 4150 - var6 = false; // L: 4151 - } - - if (var0.idleSequence == var0.movementSequence && (var0.field1027 > 25 || var6)) { // L: 4153 - if (var0.turnLeftSequence != -1) { // L: 4154 - var0.movementSequence = var0.turnLeftSequence; - } else { - var0.movementSequence = var0.walkSequence; // L: 4155 - } - } - } else { - var0.rotation += var0.field1028; // L: 4159 - var6 = true; // L: 4160 - if (var4 < var0.field1028 || var4 > 2048 - var0.field1028) { // L: 4161 - var0.rotation = var0.orientation; // L: 4162 - var6 = false; // L: 4163 - } - - if (var0.idleSequence == var0.movementSequence && (var0.field1027 > 25 || var6)) { // L: 4165 - if (var0.turnRightSequence != -1) { // L: 4166 - var0.movementSequence = var0.turnRightSequence; - } else { - var0.movementSequence = var0.walkSequence; // L: 4167 - } - } - } - - var0.rotation &= 2047; // L: 4171 - } else { - var0.field1027 = 0; // L: 4173 - } - - } - } // L: 4174 } diff --git a/runescape-client/src/main/java/GameShell.java b/runescape-client/src/main/java/GameShell.java index 2effb30caf..f264f2a1b3 100644 --- a/runescape-client/src/main/java/GameShell.java +++ b/runescape-client/src/main/java/GameShell.java @@ -24,530 +24,532 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ba") +@ObfuscatedName("bd") @Implements("GameShell") public abstract class GameShell extends Applet implements Runnable, FocusListener, WindowListener { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lfl;" + descriptor = "Lfa;" ) @Export("taskHandler") protected static TaskHandler taskHandler; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lba;" + descriptor = "Lbd;" ) @Export("gameShell") static GameShell gameShell; - @ObfuscatedName("l") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -1935036079 + intValue = 548418733 ) @Export("GameShell_redundantStartThreadCount") static int GameShell_redundantStartThreadCount; - @ObfuscatedName("m") + @ObfuscatedName("j") @ObfuscatedGetter( - longValue = -3572078124580925775L + longValue = -299301004563523829L ) @Export("stopTimeMs") static long stopTimeMs; - @ObfuscatedName("z") + @ObfuscatedName("n") @Export("isKilled") static boolean isKilled; - @ObfuscatedName("k") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = -2072686187 - ) - @Export("gameCyclesToDo") - static int gameCyclesToDo; - @ObfuscatedName("c") - @ObfuscatedGetter( - intValue = 1928791623 + intValue = 1522252181 ) @Export("cycleDurationMillis") static int cycleDurationMillis; @ObfuscatedName("u") @ObfuscatedGetter( - intValue = 1333363833 + intValue = -1346634793 ) @Export("fiveOrOne") static int fiveOrOne; - @ObfuscatedName("t") + @ObfuscatedName("e") @ObfuscatedGetter( - intValue = -1701309635 + intValue = 1771447701 ) @Export("fps") protected static int fps; - @ObfuscatedName("n") + @ObfuscatedName("i") @Export("graphicsTickTimes") - static long[] graphicsTickTimes; - @ObfuscatedName("r") + protected static long[] graphicsTickTimes; + @ObfuscatedName("a") @Export("clientTickTimes") - static long[] clientTickTimes; + protected static long[] clientTickTimes; @ObfuscatedName("ak") - @ObfuscatedGetter( - intValue = 1541130703 + @ObfuscatedSignature( + descriptor = "Llc;" ) - static int field495; - @ObfuscatedName("aa") + static Bounds field481; + @ObfuscatedName("av") + @ObfuscatedGetter( + intValue = 475129239 + ) + static int field471; + @ObfuscatedName("ad") @Export("volatileFocus") static volatile boolean volatileFocus; - @ObfuscatedName("aj") + @ObfuscatedName("ay") @ObfuscatedGetter( - longValue = 5754023503736299787L + longValue = 2878224535020418697L ) @Export("garbageCollectorLastCollectionTime") static long garbageCollectorLastCollectionTime; - @ObfuscatedName("ae") + @ObfuscatedName("af") @ObfuscatedGetter( - longValue = -7246664469956592727L + longValue = 6896252381737928241L ) @Export("garbageCollectorLastCheckTimeMs") static long garbageCollectorLastCheckTimeMs; - @ObfuscatedName("gk") - @Export("regionMapArchives") - static byte[][] regionMapArchives; - @ObfuscatedName("gc") - @ObfuscatedGetter( - intValue = 1206716707 + @ObfuscatedName("dn") + @ObfuscatedSignature( + descriptor = "Lil;" ) - static int field466; - @ObfuscatedName("q") + @Export("archive5") + static Archive archive5; + @ObfuscatedName("p") @Export("hasErrored") boolean hasErrored; - @ObfuscatedName("j") + @ObfuscatedName("r") @ObfuscatedGetter( - intValue = -1942490897 + intValue = -421640867 ) @Export("contentWidth") protected int contentWidth; - @ObfuscatedName("v") + @ObfuscatedName("q") @ObfuscatedGetter( - intValue = -12097029 + intValue = 654050171 ) @Export("contentHeight") protected int contentHeight; - @ObfuscatedName("d") + @ObfuscatedName("g") @ObfuscatedGetter( - intValue = -56321895 + intValue = -153393077 ) @Export("canvasX") int canvasX; - @ObfuscatedName("a") + @ObfuscatedName("s") @ObfuscatedGetter( - intValue = 314779351 + intValue = 1458839985 ) @Export("canvasY") int canvasY; - @ObfuscatedName("i") + @ObfuscatedName("d") @ObfuscatedGetter( - intValue = -1023535157 + intValue = 2092282905 ) - int field482; - @ObfuscatedName("ab") + int field464; + @ObfuscatedName("an") @ObfuscatedGetter( - intValue = -1830509 + intValue = -1103282921 ) - int field483; - @ObfuscatedName("ac") + int field467; + @ObfuscatedName("aj") @ObfuscatedGetter( - intValue = 1518889003 + intValue = -1546847555 ) @Export("maxCanvasWidth") int maxCanvasWidth; - @ObfuscatedName("ao") + @ObfuscatedName("ax") @ObfuscatedGetter( - intValue = -963306765 + intValue = -1533275397 ) @Export("maxCanvasHeight") int maxCanvasHeight; - @ObfuscatedName("ar") + @ObfuscatedName("as") @Export("frame") Frame frame; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("canvas") java.awt.Canvas canvas; - @ObfuscatedName("ah") - volatile boolean field488; - @ObfuscatedName("au") + @ObfuscatedName("ac") + volatile boolean field470; + @ObfuscatedName("aq") @Export("resizeCanvasNextFrame") boolean resizeCanvasNextFrame; - @ObfuscatedName("ai") + @ObfuscatedName("ah") @Export("isCanvasInvalid") volatile boolean isCanvasInvalid; - @ObfuscatedName("ax") + @ObfuscatedName("am") @ObfuscatedGetter( - longValue = 641067398817964123L + longValue = 8455429718960757091L ) - volatile long field492; - @ObfuscatedName("aw") + volatile long field472; + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lbf;" + descriptor = "Lby;" ) @Export("mouseWheelHandler") MouseWheelHandler mouseWheelHandler; - @ObfuscatedName("an") + @ObfuscatedName("aw") @Export("clipboard") Clipboard clipboard; - @ObfuscatedName("am") + @ObfuscatedName("ap") @Export("eventQueue") final EventQueue eventQueue; static { gameShell = null; GameShell_redundantStartThreadCount = 0; - stopTimeMs = 0L; // L: 44 + stopTimeMs = 0L; isKilled = false; - cycleDurationMillis = 20; // L: 48 - fiveOrOne = 1; // L: 49 - fps = 0; // L: 50 - graphicsTickTimes = new long[32]; // L: 53 - clientTickTimes = new long[32]; // L: 55 - field495 = 500; // L: 73 - volatileFocus = true; // L: 82 - garbageCollectorLastCollectionTime = -1L; // L: 85 - garbageCollectorLastCheckTimeMs = -1L; // L: 86 + cycleDurationMillis = 20; + fiveOrOne = 1; + fps = 0; + graphicsTickTimes = new long[32]; + clientTickTimes = new long[32]; + field471 = 500; + volatileFocus = true; + garbageCollectorLastCollectionTime = -1L; + garbageCollectorLastCheckTimeMs = -1L; } protected GameShell() { - this.hasErrored = false; // L: 46 - this.canvasX = 0; // L: 59 - this.canvasY = 0; // L: 60 - this.field488 = true; // L: 71 - this.resizeCanvasNextFrame = false; // L: 74 - this.isCanvasInvalid = false; // L: 75 - this.field492 = 0L; // L: 76 - EventQueue var1 = null; // L: 89 + this.hasErrored = false; + this.canvasX = 0; + this.canvasY = 0; + this.field470 = true; + this.resizeCanvasNextFrame = false; + this.isCanvasInvalid = false; + this.field472 = 0L; + EventQueue var1 = null; try { - var1 = Toolkit.getDefaultToolkit().getSystemEventQueue(); // L: 91 - } catch (Throwable var3) { // L: 93 + var1 = Toolkit.getDefaultToolkit().getSystemEventQueue(); + } catch (Throwable var3) { } - this.eventQueue = var1; // L: 94 - DevicePcmPlayerProvider var2 = new DevicePcmPlayerProvider(); // L: 95 - class69.pcmPlayerProvider = var2; // L: 97 - } // L: 99 + this.eventQueue = var1; + FaceNormal.method3344(new DevicePcmPlayerProvider()); + } - @ObfuscatedName("z") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "(IIS)V", - garbageValue = "8156" + descriptor = "(III)V", + garbageValue = "-387026818" ) @Export("setMaxCanvasSize") protected final void setMaxCanvasSize(int var1, int var2) { - if (this.maxCanvasWidth != var1 || var2 != this.maxCanvasHeight) { // L: 102 - this.method1023(); + if (this.maxCanvasWidth != var1 || var2 != this.maxCanvasHeight) { + this.method985(); } - this.maxCanvasWidth = var1; // L: 103 - this.maxCanvasHeight = var2; // L: 104 - } // L: 105 + this.maxCanvasWidth = var1; + this.maxCanvasHeight = var2; + } - @ObfuscatedName("q") + @ObfuscatedName("z") @ObfuscatedSignature( descriptor = "(Ljava/lang/Object;I)V", - garbageValue = "1268616662" + garbageValue = "136428180" ) @Export("post") final void post(Object var1) { - if (this.eventQueue != null) { // L: 108 - for (int var2 = 0; var2 < 50 && this.eventQueue.peekEvent() != null; ++var2) { // L: 109 - WorldMapSection3.sleepExact(1L); + if (this.eventQueue != null) { + for (int var2 = 0; var2 < 50 && this.eventQueue.peekEvent() != null; ++var2) { + class236.sleepExact(1L); } if (var1 != null) { - this.eventQueue.postEvent(new ActionEvent(var1, 1001, "dummy")); // L: 110 + this.eventQueue.postEvent(new ActionEvent(var1, 1001, "dummy")); } } - } // L: 111 + } - @ObfuscatedName("k") + @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "(I)Lfq;", - garbageValue = "1414879636" + descriptor = "(I)Lfi;", + garbageValue = "1655914874" ) @Export("mouseWheel") protected MouseWheel mouseWheel() { - if (this.mouseWheelHandler == null) { // L: 114 - this.mouseWheelHandler = new MouseWheelHandler(); // L: 115 - this.mouseWheelHandler.addTo(this.canvas); // L: 116 + if (this.mouseWheelHandler == null) { + this.mouseWheelHandler = new MouseWheelHandler(); + this.mouseWheelHandler.addTo(this.canvas); } - return this.mouseWheelHandler; // L: 118 + return this.mouseWheelHandler; + } + + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "636889033" + ) + @Export("setUpClipboard") + protected void setUpClipboard() { + this.clipboard = this.getToolkit().getSystemClipboard(); + } + + @ObfuscatedName("m") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;I)V", + garbageValue = "-1432423267" + ) + @Export("clipboardSetString") + protected void clipboardSetString(String var1) { + this.clipboard.setContents(new StringSelection(var1), (ClipboardOwner)null); } @ObfuscatedName("c") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-2067503658" - ) - @Export("setUpClipboard") - protected void setUpClipboard() { - this.clipboard = this.getToolkit().getSystemClipboard(); // L: 122 - } // L: 123 - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "1423011731" - ) - @Export("clipboardSetString") - protected void clipboardSetString(String var1) { - this.clipboard.setContents(new StringSelection(var1), (ClipboardOwner)null); // L: 126 - } // L: 127 - - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "45" + garbageValue = "639866181" ) @Export("setUpKeyboard") protected final void setUpKeyboard() { - GrandExchangeOfferNameComparator.method228(); // L: 130 - VertexNormal.method3136(this.canvas); // L: 131 - } // L: 132 + WorldMapIcon_1.method354(); + Messages.method2275(this.canvas); + } - @ObfuscatedName("e") + @ObfuscatedName("i") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "932982288" + descriptor = "(B)V", + garbageValue = "49" ) @Export("setUpMouse") protected final void setUpMouse() { - TextureProvider.method2899(this.canvas); // L: 135 - } // L: 136 + java.awt.Canvas var1 = this.canvas; + var1.addMouseListener(MouseHandler.MouseHandler_instance); + var1.addMouseMotionListener(MouseHandler.MouseHandler_instance); + var1.addFocusListener(MouseHandler.MouseHandler_instance); + } - @ObfuscatedName("o") + @ObfuscatedName("f") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-60" + descriptor = "(I)V", + garbageValue = "1383107169" ) @Export("resizeCanvas") final void resizeCanvas() { - Container var1 = this.container(); // L: 139 - if (var1 != null) { // L: 140 - Bounds var2 = this.getFrameContentBounds(); // L: 141 - this.contentWidth = Math.max(var2.highX, this.field482); // L: 142 - this.contentHeight = Math.max(var2.highY, this.field483); // L: 143 - if (this.contentWidth <= 0) { // L: 144 + Container var1 = this.container(); + if (var1 != null) { + Bounds var2 = this.getFrameContentBounds(); + this.contentWidth = Math.max(var2.highX, this.field464); + this.contentHeight = Math.max(var2.highY, this.field467); + if (this.contentWidth <= 0) { this.contentWidth = 1; } - if (this.contentHeight <= 0) { // L: 145 + if (this.contentHeight <= 0) { this.contentHeight = 1; } - ItemContainer.canvasWidth = Math.min(this.contentWidth, this.maxCanvasWidth); // L: 146 - HealthBar.canvasHeight = Math.min(this.contentHeight, this.maxCanvasHeight); // L: 147 - this.canvasX = (this.contentWidth - ItemContainer.canvasWidth) / 2; // L: 148 - this.canvasY = 0; // L: 149 - this.canvas.setSize(ItemContainer.canvasWidth, HealthBar.canvasHeight); // L: 150 - class22.rasterProvider = new RasterProvider(ItemContainer.canvasWidth, HealthBar.canvasHeight, this.canvas); // L: 151 - if (var1 == this.frame) { // L: 152 - Insets var3 = this.frame.getInsets(); // L: 153 - this.canvas.setLocation(this.canvasX + var3.left, var3.top + this.canvasY); // L: 154 + IgnoreList.canvasWidth = Math.min(this.contentWidth, this.maxCanvasWidth); + ModelData0.canvasHeight = Math.min(this.contentHeight, this.maxCanvasHeight); + this.canvasX = (this.contentWidth - IgnoreList.canvasWidth) / 2; + this.canvasY = 0; + this.canvas.setSize(IgnoreList.canvasWidth, ModelData0.canvasHeight); + WorldMapIcon_0.rasterProvider = new RasterProvider(IgnoreList.canvasWidth, ModelData0.canvasHeight, this.canvas); + if (var1 == this.frame) { + Insets var3 = this.frame.getInsets(); + this.canvas.setLocation(var3.left + this.canvasX, this.canvasY + var3.top); } else { - this.canvas.setLocation(this.canvasX, this.canvasY); // L: 156 + this.canvas.setLocation(this.canvasX, this.canvasY); } - this.field488 = true; // L: 157 - this.resizeGame(); // L: 158 + this.field470 = true; + this.resizeGame(); } - } // L: 159 - - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1977357922" - ) - @Export("resizeGame") - protected abstract void resizeGame(); - - @ObfuscatedName("x") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-2136821254" - ) - @Export("clearBackground") - void clearBackground() { - int var1 = this.canvasX; // L: 164 - int var2 = this.canvasY; // L: 165 - int var3 = this.contentWidth - ItemContainer.canvasWidth - var1; // L: 166 - int var4 = this.contentHeight - HealthBar.canvasHeight - var2; // L: 167 - if (var1 > 0 || var3 > 0 || var2 > 0 || var4 > 0) { // L: 168 - try { - Container var5 = this.container(); // L: 170 - int var6 = 0; // L: 171 - int var7 = 0; // L: 172 - if (var5 == this.frame) { // L: 173 - Insets var8 = this.frame.getInsets(); // L: 174 - var6 = var8.left; // L: 175 - var7 = var8.top; // L: 176 - } - - Graphics var10 = var5.getGraphics(); // L: 178 - var10.setColor(Color.black); // L: 179 - if (var1 > 0) { - var10.fillRect(var6, var7, var1, this.contentHeight); // L: 180 - } - - if (var2 > 0) { // L: 181 - var10.fillRect(var6, var7, this.contentWidth, var2); - } - - if (var3 > 0) { // L: 182 - var10.fillRect(var6 + this.contentWidth - var3, var7, var3, this.contentHeight); - } - - if (var4 > 0) { // L: 183 - var10.fillRect(var6, var7 + this.contentHeight - var4, this.contentWidth, var4); - } - } catch (Exception var9) { // L: 185 - } - } - - } // L: 187 - - @ObfuscatedName("p") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1457891067" - ) - @Export("replaceCanvas") - final void replaceCanvas() { - java.awt.Canvas var1 = this.canvas; // L: 190 - var1.removeKeyListener(KeyHandler.KeyHandler_instance); // L: 192 - var1.removeFocusListener(KeyHandler.KeyHandler_instance); // L: 193 - KeyHandler.field423 = -1; // L: 194 - java.awt.Canvas var2 = this.canvas; // L: 196 - var2.removeMouseListener(MouseHandler.MouseHandler_instance); // L: 198 - var2.removeMouseMotionListener(MouseHandler.MouseHandler_instance); // L: 199 - var2.removeFocusListener(MouseHandler.MouseHandler_instance); // L: 200 - MouseHandler.MouseHandler_currentButtonVolatile = 0; // L: 201 - if (this.mouseWheelHandler != null) { - this.mouseWheelHandler.removeFrom(this.canvas); // L: 203 - } - - this.addCanvas(); // L: 204 - VertexNormal.method3136(this.canvas); // L: 205 - TextureProvider.method2899(this.canvas); // L: 206 - if (this.mouseWheelHandler != null) { // L: 207 - this.mouseWheelHandler.addTo(this.canvas); - } - - this.method1023(); // L: 208 - } // L: 209 - - @ObfuscatedName("r") - @ObfuscatedSignature( - descriptor = "(IIII)V", - garbageValue = "1788157665" - ) - @Export("startThread") - protected final void startThread(int var1, int var2, int var3) { - try { - if (gameShell != null) { // L: 213 - ++GameShell_redundantStartThreadCount; // L: 214 - if (GameShell_redundantStartThreadCount >= 3) { // L: 215 - this.error("alreadyloaded"); // L: 216 - return; // L: 217 - } - - this.getAppletContext().showDocument(this.getDocumentBase(), "_self"); // L: 219 - return; // L: 220 - } - - gameShell = this; // L: 222 - ItemContainer.canvasWidth = var1; // L: 223 - HealthBar.canvasHeight = var2; // L: 224 - RunException.RunException_revision = var3; // L: 225 - RunException.RunException_applet = this; // L: 226 - if (taskHandler == null) { // L: 227 - taskHandler = new TaskHandler(); - } - - taskHandler.newThreadTask(this, 1); // L: 228 - } catch (Exception var5) { // L: 230 - PacketWriter.RunException_sendStackTrace((String)null, var5); // L: 231 - this.error("crash"); // L: 232 - } - - } // L: 234 + } @ObfuscatedName("y") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1769153010" + garbageValue = "312942940" + ) + @Export("resizeGame") + protected abstract void resizeGame(); + + @ObfuscatedName("r") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-2111621500" + ) + @Export("clearBackground") + void clearBackground() { + int var1 = this.canvasX; + int var2 = this.canvasY; + int var3 = this.contentWidth - IgnoreList.canvasWidth - var1; + int var4 = this.contentHeight - ModelData0.canvasHeight - var2; + if (var1 > 0 || var3 > 0 || var2 > 0 || var4 > 0) { + try { + Container var5 = this.container(); + int var6 = 0; + int var7 = 0; + if (var5 == this.frame) { + Insets var8 = this.frame.getInsets(); + var6 = var8.left; + var7 = var8.top; + } + + Graphics var10 = var5.getGraphics(); + var10.setColor(Color.black); + if (var1 > 0) { + var10.fillRect(var6, var7, var1, this.contentHeight); + } + + if (var2 > 0) { + var10.fillRect(var6, var7, this.contentWidth, var2); + } + + if (var3 > 0) { + var10.fillRect(var6 + this.contentWidth - var3, var7, var3, this.contentHeight); + } + + if (var4 > 0) { + var10.fillRect(var6, var7 + this.contentHeight - var4, this.contentWidth, var4); + } + } catch (Exception var9) { + } + } + + } + + @ObfuscatedName("q") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-2006885359" + ) + @Export("replaceCanvas") + final void replaceCanvas() { + java.awt.Canvas var1 = this.canvas; + var1.removeKeyListener(KeyHandler.KeyHandler_instance); + var1.removeFocusListener(KeyHandler.KeyHandler_instance); + KeyHandler.field410 = -1; + java.awt.Canvas var2 = this.canvas; + var2.removeMouseListener(MouseHandler.MouseHandler_instance); + var2.removeMouseMotionListener(MouseHandler.MouseHandler_instance); + var2.removeFocusListener(MouseHandler.MouseHandler_instance); + MouseHandler.MouseHandler_currentButtonVolatile = 0; + if (this.mouseWheelHandler != null) { + this.mouseWheelHandler.removeFrom(this.canvas); + } + + this.addCanvas(); + Messages.method2275(this.canvas); + java.awt.Canvas var3 = this.canvas; + var3.addMouseListener(MouseHandler.MouseHandler_instance); + var3.addMouseMotionListener(MouseHandler.MouseHandler_instance); + var3.addFocusListener(MouseHandler.MouseHandler_instance); + if (this.mouseWheelHandler != null) { + this.mouseWheelHandler.addTo(this.canvas); + } + + this.method985(); + } + + @ObfuscatedName("g") + @ObfuscatedSignature( + descriptor = "(IIIB)V", + garbageValue = "-108" + ) + @Export("startThread") + protected final void startThread(int var1, int var2, int var3) { + try { + if (gameShell != null) { + ++GameShell_redundantStartThreadCount; + if (GameShell_redundantStartThreadCount >= 3) { + this.error("alreadyloaded"); + return; + } + + this.getAppletContext().showDocument(this.getDocumentBase(), "_self"); + return; + } + + gameShell = this; + IgnoreList.canvasWidth = var1; + ModelData0.canvasHeight = var2; + RunException.RunException_revision = var3; + RunException.RunException_applet = this; + if (taskHandler == null) { + taskHandler = new TaskHandler(); + } + + taskHandler.newThreadTask(this, 1); + } catch (Exception var5) { + PlayerAppearance.RunException_sendStackTrace((String)null, var5); + this.error("crash"); + } + + } + + @ObfuscatedName("o") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1254255664" ) @Export("addCanvas") final synchronized void addCanvas() { - Container var1 = this.container(); // L: 237 - if (this.canvas != null) { // L: 238 - this.canvas.removeFocusListener(this); // L: 239 - var1.remove(this.canvas); // L: 240 + Container var1 = this.container(); + if (this.canvas != null) { + this.canvas.removeFocusListener(this); + var1.remove(this.canvas); } - ItemContainer.canvasWidth = Math.max(var1.getWidth(), this.field482); // L: 242 - HealthBar.canvasHeight = Math.max(var1.getHeight(), this.field483); // L: 243 + IgnoreList.canvasWidth = Math.max(var1.getWidth(), this.field464); + ModelData0.canvasHeight = Math.max(var1.getHeight(), this.field467); Insets var2; - if (this.frame != null) { // L: 244 - var2 = this.frame.getInsets(); // L: 245 - ItemContainer.canvasWidth -= var2.left + var2.right; // L: 246 - HealthBar.canvasHeight -= var2.bottom + var2.top; // L: 247 + if (this.frame != null) { + var2 = this.frame.getInsets(); + IgnoreList.canvasWidth -= var2.left + var2.right; + ModelData0.canvasHeight -= var2.bottom + var2.top; } - this.canvas = new Canvas(this); // L: 249 - var1.setBackground(Color.BLACK); // L: 250 - var1.setLayout((LayoutManager)null); // L: 251 - var1.add(this.canvas); // L: 252 - this.canvas.setSize(ItemContainer.canvasWidth, HealthBar.canvasHeight); // L: 253 - this.canvas.setVisible(true); // L: 254 - this.canvas.setBackground(Color.BLACK); // L: 255 - if (var1 == this.frame) { // L: 256 - var2 = this.frame.getInsets(); // L: 257 - this.canvas.setLocation(var2.left + this.canvasX, this.canvasY + var2.top); // L: 258 + this.canvas = new Canvas(this); + var1.setBackground(Color.BLACK); + var1.setLayout((LayoutManager)null); + var1.add(this.canvas); + this.canvas.setSize(IgnoreList.canvasWidth, ModelData0.canvasHeight); + this.canvas.setVisible(true); + this.canvas.setBackground(Color.BLACK); + if (var1 == this.frame) { + var2 = this.frame.getInsets(); + this.canvas.setLocation(var2.left + this.canvasX, this.canvasY + var2.top); } else { - this.canvas.setLocation(this.canvasX, this.canvasY); // L: 260 + this.canvas.setLocation(this.canvasX, this.canvasY); } - this.canvas.addFocusListener(this); // L: 261 - this.canvas.requestFocus(); // L: 262 - this.field488 = true; // L: 263 - if (class22.rasterProvider != null && ItemContainer.canvasWidth == class22.rasterProvider.width && HealthBar.canvasHeight == class22.rasterProvider.height) { // L: 264 - ((RasterProvider)class22.rasterProvider).setComponent(this.canvas); // L: 265 - class22.rasterProvider.drawFull(0, 0); // L: 266 + this.canvas.addFocusListener(this); + this.canvas.requestFocus(); + this.field470 = true; + if (WorldMapIcon_0.rasterProvider != null && IgnoreList.canvasWidth == WorldMapIcon_0.rasterProvider.width && ModelData0.canvasHeight == WorldMapIcon_0.rasterProvider.height) { + ((RasterProvider)WorldMapIcon_0.rasterProvider).setComponent(this.canvas); + WorldMapIcon_0.rasterProvider.drawFull(0, 0); } else { - class22.rasterProvider = new RasterProvider(ItemContainer.canvasWidth, HealthBar.canvasHeight, this.canvas); + WorldMapIcon_0.rasterProvider = new RasterProvider(IgnoreList.canvasWidth, ModelData0.canvasHeight, this.canvas); } this.isCanvasInvalid = false; - this.field492 = User.currentTimeMillis(); + this.field472 = class298.currentTimeMillis(); } - @ObfuscatedName("s") + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-25" + descriptor = "(I)Z", + garbageValue = "-206373344" ) @Export("checkHost") protected final boolean checkHost() { - String var1 = this.getDocumentBase().getHost().toLowerCase(); // L: 276 - if (!var1.equals("jagex.com") && !var1.endsWith(".jagex.com")) { // L: 277 - if (!var1.equals("runescape.com") && !var1.endsWith(".runescape.com")) { // L: 278 - if (var1.endsWith("127.0.0.1")) { // L: 279 + String var1 = this.getDocumentBase().getHost().toLowerCase(); + if (!var1.equals("jagex.com") && !var1.endsWith(".jagex.com")) { + if (!var1.equals("runescape.com") && !var1.endsWith(".runescape.com")) { + if (var1.endsWith("127.0.0.1")) { return true; } else { while (var1.length() > 0 && var1.charAt(var1.length() - 1) >= '0' && var1.charAt(var1.length() - 1) <= '9') { - var1 = var1.substring(0, var1.length() - 1); // L: 280 + var1 = var1.substring(0, var1.length() - 1); } - if (var1.endsWith("192.168.1.")) { // L: 281 + if (var1.endsWith("192.168.1.")) { return true; } else { - this.error("invalidhost"); // L: 282 - return false; // L: 283 + this.error("invalidhost"); + return false; } } } else { @@ -558,447 +560,432 @@ public abstract class GameShell extends Applet implements Runnable, FocusListene } } - @ObfuscatedName("j") + @ObfuscatedName("aj") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-840084713" + garbageValue = "176376535" ) @Export("clientTick") void clientTick() { - long var1 = User.currentTimeMillis(); // L: 327 - long var3 = clientTickTimes[class7.clientTickTimeIdx]; // L: 328 - clientTickTimes[class7.clientTickTimeIdx] = var1; // L: 329 - class7.clientTickTimeIdx = class7.clientTickTimeIdx + 1 & 31; // L: 330 - if (var3 != 0L && var1 > var3) { // L: 331 + long var1 = class298.currentTimeMillis(); + long var3 = clientTickTimes[Varcs.clientTickTimeIdx]; + clientTickTimes[Varcs.clientTickTimeIdx] = var1; + Varcs.clientTickTimeIdx = Varcs.clientTickTimeIdx + 1 & 31; + if (var3 != 0L && var1 > var3) { } - synchronized(this) { // L: 332 - class8.hasFocus = volatileFocus; // L: 333 - } // L: 334 + synchronized(this) { + ScriptEvent.hasFocus = volatileFocus; + } - this.doCycle(); // L: 335 - } // L: 336 + this.doCycle(); + } - @ObfuscatedName("d") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "0" + descriptor = "(I)V", + garbageValue = "-2055112654" ) @Export("graphicsTick") void graphicsTick() { - Container var1 = this.container(); // L: 339 - long var2 = User.currentTimeMillis(); // L: 340 - long var4 = graphicsTickTimes[GraphicsDefaults.graphicsTickTimeIdx]; // L: 341 - graphicsTickTimes[GraphicsDefaults.graphicsTickTimeIdx] = var2; // L: 342 - GraphicsDefaults.graphicsTickTimeIdx = GraphicsDefaults.graphicsTickTimeIdx + 1 & 31; // L: 343 - if (0L != var4 && var2 > var4) { // L: 344 - int var6 = (int)(var2 - var4); // L: 345 - fps = ((var6 >> 1) + 32000) / var6; // L: 346 + Container var1 = this.container(); + long var2 = class298.currentTimeMillis(); + long var4 = graphicsTickTimes[PacketWriter.graphicsTickTimeIdx]; + graphicsTickTimes[PacketWriter.graphicsTickTimeIdx] = var2; + PacketWriter.graphicsTickTimeIdx = PacketWriter.graphicsTickTimeIdx + 1 & 31; + if (0L != var4 && var2 > var4) { + int var6 = (int)(var2 - var4); + fps = ((var6 >> 1) + 32000) / var6; } - if (++field495 - 1 > 50) { // L: 348 - field495 -= 50; // L: 349 - this.field488 = true; // L: 350 - this.canvas.setSize(ItemContainer.canvasWidth, HealthBar.canvasHeight); // L: 351 - this.canvas.setVisible(true); // L: 352 - if (var1 == this.frame) { // L: 353 - Insets var7 = this.frame.getInsets(); // L: 354 - this.canvas.setLocation(var7.left + this.canvasX, this.canvasY + var7.top); // L: 355 + if (++field471 - 1 > 50) { + field471 -= 50; + this.field470 = true; + this.canvas.setSize(IgnoreList.canvasWidth, ModelData0.canvasHeight); + this.canvas.setVisible(true); + if (var1 == this.frame) { + Insets var7 = this.frame.getInsets(); + this.canvas.setLocation(this.canvasX + var7.left, var7.top + this.canvasY); } else { - this.canvas.setLocation(this.canvasX, this.canvasY); // L: 357 + this.canvas.setLocation(this.canvasX, this.canvasY); } } - if (this.isCanvasInvalid) { // L: 359 + if (this.isCanvasInvalid) { this.replaceCanvas(); } - this.method1022(); // L: 360 - this.draw(this.field488); // L: 361 - if (this.field488) { // L: 362 + this.method984(); + this.draw(this.field470); + if (this.field470) { this.clearBackground(); } - this.field488 = false; // L: 363 - } // L: 364 + this.field470 = false; + } - @ObfuscatedName("a") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1244527776" - ) - final void method1022() { - Bounds var1 = this.getFrameContentBounds(); // L: 367 - if (this.contentWidth != var1.highX || var1.highY != this.contentHeight || this.resizeCanvasNextFrame) { // L: 368 - this.resizeCanvas(); // L: 369 - this.resizeCanvasNextFrame = false; // L: 370 - } - - } // L: 372 - - @ObfuscatedName("g") + @ObfuscatedName("ag") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "48" + garbageValue = "-26" ) - final void method1023() { - this.resizeCanvasNextFrame = true; // L: 375 - } // L: 376 + final void method984() { + Bounds var1 = this.getFrameContentBounds(); + if (var1.highX != this.contentWidth || var1.highY != this.contentHeight || this.resizeCanvasNextFrame) { + this.resizeCanvas(); + this.resizeCanvasNextFrame = false; + } - @ObfuscatedName("ar") + } + + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-2057674106" + garbageValue = "287076222" + ) + final void method985() { + this.resizeCanvasNextFrame = true; + } + + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "646391246" ) @Export("kill") final synchronized void kill() { - if (!isKilled) { // L: 379 - isKilled = true; // L: 380 + if (!isKilled) { + isKilled = true; try { - this.canvas.removeFocusListener(this); // L: 382 - } catch (Exception var5) { // L: 384 + this.canvas.removeFocusListener(this); + } catch (Exception var5) { } try { - this.kill0(); // L: 386 - } catch (Exception var4) { // L: 388 + this.kill0(); + } catch (Exception var4) { } - if (this.frame != null) { // L: 389 + if (this.frame != null) { try { - System.exit(0); // L: 391 - } catch (Throwable var3) { // L: 393 + System.exit(0); + } catch (Throwable var3) { } } - if (taskHandler != null) { // L: 395 + if (taskHandler != null) { try { - taskHandler.close(); // L: 397 - } catch (Exception var2) { // L: 399 + taskHandler.close(); + } catch (Exception var2) { } } - this.vmethod1384(); // L: 401 + this.vmethod1777(); } - } // L: 402 + } - @ObfuscatedName("ah") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1060461771" + descriptor = "(B)V", + garbageValue = "-91" ) @Export("setUp") protected abstract void setUp(); - @ObfuscatedName("az") + @ObfuscatedName("ak") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1100660042" + garbageValue = "-1376035132" ) @Export("doCycle") protected abstract void doCycle(); - @ObfuscatedName("ak") + @ObfuscatedName("av") @ObfuscatedSignature( descriptor = "(ZI)V", - garbageValue = "-1812204618" + garbageValue = "-20163413" ) @Export("draw") protected abstract void draw(boolean var1); - @ObfuscatedName("au") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "118" + descriptor = "(I)V", + garbageValue = "-6923156" ) @Export("kill0") protected abstract void kill0(); - @ObfuscatedName("ai") + @ObfuscatedName("aw") @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;ZB)V", - garbageValue = "45" + descriptor = "(ILjava/lang/String;ZI)V", + garbageValue = "1645109532" ) @Export("drawInitial") protected final void drawInitial(int var1, String var2, boolean var3) { try { - Graphics var4 = this.canvas.getGraphics(); // L: 469 - if (ViewportMouse.fontHelvetica13 == null) { // L: 470 - ViewportMouse.fontHelvetica13 = new java.awt.Font("Helvetica", 1, 13); // L: 471 - class52.loginScreenFontMetrics = this.canvas.getFontMetrics(ViewportMouse.fontHelvetica13); // L: 472 + Graphics var4 = this.canvas.getGraphics(); + if (GrandExchangeEvent.fontHelvetica13 == null) { + GrandExchangeEvent.fontHelvetica13 = new java.awt.Font("Helvetica", 1, 13); + ViewportMouse.loginScreenFontMetrics = this.canvas.getFontMetrics(GrandExchangeEvent.fontHelvetica13); } - if (var3) { // L: 474 - var4.setColor(Color.black); // L: 475 - var4.fillRect(0, 0, ItemContainer.canvasWidth, HealthBar.canvasHeight); // L: 476 + if (var3) { + var4.setColor(Color.black); + var4.fillRect(0, 0, IgnoreList.canvasWidth, ModelData0.canvasHeight); } - Color var5 = new Color(140, 17, 17); // L: 478 + Color var5 = new Color(140, 17, 17); try { - if (class231.field2779 == null) { // L: 480 - class231.field2779 = this.canvas.createImage(304, 34); + if (Canvas.field425 == null) { + Canvas.field425 = this.canvas.createImage(304, 34); } - Graphics var6 = class231.field2779.getGraphics(); // L: 481 - var6.setColor(var5); // L: 482 - var6.drawRect(0, 0, 303, 33); // L: 483 - var6.fillRect(2, 2, var1 * 3, 30); // L: 484 - var6.setColor(Color.black); // L: 485 - var6.drawRect(1, 1, 301, 31); // L: 486 - var6.fillRect(var1 * 3 + 2, 2, 300 - var1 * 3, 30); // L: 487 - var6.setFont(ViewportMouse.fontHelvetica13); // L: 488 - var6.setColor(Color.white); // L: 489 - var6.drawString(var2, (304 - class52.loginScreenFontMetrics.stringWidth(var2)) / 2, 22); // L: 490 - var4.drawImage(class231.field2779, ItemContainer.canvasWidth / 2 - 152, HealthBar.canvasHeight / 2 - 18, (ImageObserver)null); // L: 491 - } catch (Exception var9) { // L: 493 - int var7 = ItemContainer.canvasWidth / 2 - 152; // L: 494 - int var8 = HealthBar.canvasHeight / 2 - 18; // L: 495 - var4.setColor(var5); // L: 496 - var4.drawRect(var7, var8, 303, 33); // L: 497 - var4.fillRect(var7 + 2, var8 + 2, var1 * 3, 30); // L: 498 - var4.setColor(Color.black); // L: 499 - var4.drawRect(var7 + 1, var8 + 1, 301, 31); // L: 500 - var4.fillRect(var7 + var1 * 3 + 2, var8 + 2, 300 - var1 * 3, 30); // L: 501 - var4.setFont(ViewportMouse.fontHelvetica13); // L: 502 - var4.setColor(Color.white); // L: 503 - var4.drawString(var2, var7 + (304 - class52.loginScreenFontMetrics.stringWidth(var2)) / 2, var8 + 22); // L: 504 + Graphics var6 = Canvas.field425.getGraphics(); + var6.setColor(var5); + var6.drawRect(0, 0, 303, 33); + var6.fillRect(2, 2, var1 * 3, 30); + var6.setColor(Color.black); + var6.drawRect(1, 1, 301, 31); + var6.fillRect(var1 * 3 + 2, 2, 300 - var1 * 3, 30); + var6.setFont(GrandExchangeEvent.fontHelvetica13); + var6.setColor(Color.white); + var6.drawString(var2, (304 - ViewportMouse.loginScreenFontMetrics.stringWidth(var2)) / 2, 22); + var4.drawImage(Canvas.field425, IgnoreList.canvasWidth / 2 - 152, ModelData0.canvasHeight / 2 - 18, (ImageObserver)null); + } catch (Exception var9) { + int var7 = IgnoreList.canvasWidth / 2 - 152; + int var8 = ModelData0.canvasHeight / 2 - 18; + var4.setColor(var5); + var4.drawRect(var7, var8, 303, 33); + var4.fillRect(var7 + 2, var8 + 2, var1 * 3, 30); + var4.setColor(Color.black); + var4.drawRect(var7 + 1, var8 + 1, 301, 31); + var4.fillRect(var1 * 3 + var7 + 2, var8 + 2, 300 - var1 * 3, 30); + var4.setFont(GrandExchangeEvent.fontHelvetica13); + var4.setColor(Color.white); + var4.drawString(var2, var7 + (304 - ViewportMouse.loginScreenFontMetrics.stringWidth(var2)) / 2, var8 + 22); } - } catch (Exception var10) { // L: 507 - this.canvas.repaint(); // L: 508 + } catch (Exception var10) { + this.canvas.repaint(); } - } // L: 510 + } - @ObfuscatedName("ax") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "32" + descriptor = "(I)V", + garbageValue = "-1779228195" ) - protected final void method1112() { - class231.field2779 = null; // L: 513 - ViewportMouse.fontHelvetica13 = null; // L: 514 - class52.loginScreenFontMetrics = null; // L: 515 - } // L: 516 + protected final void method1050() { + Canvas.field425 = null; + GrandExchangeEvent.fontHelvetica13 = null; + ViewportMouse.loginScreenFontMetrics = null; + } - @ObfuscatedName("ag") + @ObfuscatedName("ad") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-1007402931" + garbageValue = "2134570011" ) @Export("error") protected void error(String var1) { - if (!this.hasErrored) { // L: 519 - this.hasErrored = true; // L: 520 - System.out.println("error_game_" + var1); // L: 521 + if (!this.hasErrored) { + this.hasErrored = true; + System.out.println("error_game_" + var1); try { - this.getAppletContext().showDocument(new URL(this.getCodeBase(), "error_game_" + var1 + ".ws"), "_self"); // L: 523 - } catch (Exception var3) { // L: 525 + this.getAppletContext().showDocument(new URL(this.getCodeBase(), "error_game_" + var1 + ".ws"), "_self"); + } catch (Exception var3) { } } - } // L: 526 + } - @ObfuscatedName("aq") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(B)Ljava/awt/Container;", - garbageValue = "1" + descriptor = "(S)Ljava/awt/Container;", + garbageValue = "-16488" ) @Export("container") Container container() { - return (Container)(this.frame != null ? this.frame : this); // L: 529 + return (Container)(this.frame != null ? this.frame : this); } - @ObfuscatedName("aw") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(B)Llw;", - garbageValue = "-50" + descriptor = "(I)Llc;", + garbageValue = "-2080787573" ) @Export("getFrameContentBounds") Bounds getFrameContentBounds() { - Container var1 = this.container(); // L: 534 - int var2 = Math.max(var1.getWidth(), this.field482); // L: 535 - int var3 = Math.max(var1.getHeight(), this.field483); // L: 536 - if (this.frame != null) { // L: 537 - Insets var4 = this.frame.getInsets(); // L: 538 - var2 -= var4.left + var4.right; // L: 539 - var3 -= var4.top + var4.bottom; // L: 540 + Container var1 = this.container(); + int var2 = Math.max(var1.getWidth(), this.field464); + int var3 = Math.max(var1.getHeight(), this.field467); + if (this.frame != null) { + Insets var4 = this.frame.getInsets(); + var2 -= var4.right + var4.left; + var3 -= var4.bottom + var4.top; } - return new Bounds(var2, var3); // L: 542 + return new Bounds(var2, var3); } - @ObfuscatedName("an") + @ObfuscatedName("ay") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "1525003630" + garbageValue = "-418919904" ) @Export("hasFrame") protected final boolean hasFrame() { - return this.frame != null; // L: 546 + return this.frame != null; } - @ObfuscatedName("aa") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "-51" + garbageValue = "96" ) - protected abstract void vmethod1384(); + protected abstract void vmethod1777(); public final synchronized void paint(Graphics var1) { - if (this == gameShell && !isKilled) { // L: 433 - this.field488 = true; // L: 434 - if (User.currentTimeMillis() - this.field492 > 1000L) { // L: 435 - Rectangle var2 = var1.getClipBounds(); // L: 436 - if (var2 == null || var2.width >= ItemContainer.canvasWidth && var2.height >= HealthBar.canvasHeight) { - this.isCanvasInvalid = true; // L: 437 + if (this == gameShell && !isKilled) { + this.field470 = true; + if (class298.currentTimeMillis() - this.field472 > 1000L) { + Rectangle var2 = var1.getClipBounds(); + if (var2 == null || var2.width >= IgnoreList.canvasWidth && var2.height >= ModelData0.canvasHeight) { + this.isCanvasInvalid = true; } } } - } // L: 439 + } public final void destroy() { - if (this == gameShell && !isKilled) { // L: 422 - stopTimeMs = User.currentTimeMillis(); // L: 423 - WorldMapSection3.sleepExact(5000L); // L: 424 - this.kill(); // L: 425 + if (this == gameShell && !isKilled) { + stopTimeMs = class298.currentTimeMillis(); + class236.sleepExact(5000L); + this.kill(); } - } // L: 426 - - public void run() { - try { - if (TaskHandler.javaVendor != null) { // L: 288 - String var1 = TaskHandler.javaVendor.toLowerCase(); // L: 289 - if (var1.indexOf("sun") != -1 || var1.indexOf("apple") != -1) { // L: 290 - String var2 = TaskHandler.javaVersion; // L: 291 - if (var2.equals("1.1") || var2.startsWith("1.1.") || var2.equals("1.2") || var2.startsWith("1.2.") || var2.equals("1.3") || var2.startsWith("1.3.") || var2.equals("1.4") || var2.startsWith("1.4.") || var2.equals("1.5") || var2.startsWith("1.5.") || var2.equals("1.6.0")) { // L: 292 - this.error("wrongjava"); // L: 293 - return; // L: 294 - } - - if (var2.startsWith("1.6.0_")) { // L: 296 - int var3; - for (var3 = 6; var3 < var2.length() && class1.isDigit(var2.charAt(var3)); ++var3) { // L: 297 298 - } - - String var4 = var2.substring(6, var3); // L: 299 - if (class195.isNumber(var4) && ObjectSound.parseInt(var4) < 10) { // L: 300 - this.error("wrongjava"); // L: 301 - return; // L: 302 - } - } - - fiveOrOne = 5; // L: 305 - } - } - - this.setFocusCycleRoot(true); // L: 308 - this.addCanvas(); // L: 309 - this.setUp(); // L: 310 - UserComparator3.clock = Actor.method1864(); // L: 311 - - while (0L == stopTimeMs || User.currentTimeMillis() < stopTimeMs) { // L: 312 - gameCyclesToDo = UserComparator3.clock.wait(cycleDurationMillis, fiveOrOne); // L: 313 - - for (int var5 = 0; var5 < gameCyclesToDo; ++var5) { // L: 314 - this.clientTick(); - } - - this.graphicsTick(); // L: 315 - this.post(this.canvas); // L: 316 - } - } catch (Exception var6) { // L: 319 - PacketWriter.RunException_sendStackTrace((String)null, var6); // L: 320 - this.error("crash"); // L: 321 - } - - this.kill(); // L: 323 - } // L: 324 - - public final void windowIconified(WindowEvent var1) { - } // L: 459 - - public final void stop() { - if (this == gameShell && !isKilled) { // L: 417 - stopTimeMs = User.currentTimeMillis() + 4000L; // L: 418 - } - } // L: 419 + } public final void focusGained(FocusEvent var1) { - volatileFocus = true; // L: 442 - this.field488 = true; // L: 443 - } // L: 444 - - public final void update(Graphics var1) { - this.paint(var1); // L: 429 - } // L: 430 + volatileFocus = true; + this.field470 = true; + } public final void focusLost(FocusEvent var1) { - volatileFocus = false; // L: 447 - } // L: 448 + volatileFocus = false; + } + + public final void windowClosed(WindowEvent var1) { + } + + public final void windowClosing(WindowEvent var1) { + this.destroy(); + } + + public final void windowDeactivated(WindowEvent var1) { + } + + public final void windowIconified(WindowEvent var1) { + } public final void windowOpened(WindowEvent var1) { - } // L: 460 + } public abstract void init(); - public final void windowActivated(WindowEvent var1) { - } // L: 450 - - public final void windowDeiconified(WindowEvent var1) { - } // L: 458 - - public final void windowClosing(WindowEvent var1) { - this.destroy(); // L: 454 - } // L: 455 - - public final void windowDeactivated(WindowEvent var1) { - } // L: 457 - - public final void windowClosed(WindowEvent var1) { - } // L: 451 - - public final void start() { - if (this == gameShell && !isKilled) { // L: 412 - stopTimeMs = 0L; // L: 413 + public final void stop() { + if (this == gameShell && !isKilled) { + stopTimeMs = class298.currentTimeMillis() + 4000L; } - } // L: 414 - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "-516507127" - ) - public static int method1072(int var0, int var1) { - int var2; - if (var1 > var0) { // L: 35 - var2 = var0; // L: 36 - var0 = var1; // L: 37 - var1 = var2; // L: 38 - } - - while (var1 != 0) { // L: 40 - var2 = var0 % var1; // L: 41 - var0 = var1; // L: 42 - var1 = var2; // L: 43 - } - - return var0; // L: 45 } - @ObfuscatedName("a") + public final void start() { + if (this == gameShell && !isKilled) { + stopTimeMs = 0L; + } + } + + public void run() { + try { + if (TaskHandler.javaVendor != null) { + String var1 = TaskHandler.javaVendor.toLowerCase(); + if (var1.indexOf("sun") != -1 || var1.indexOf("apple") != -1) { + String var2 = TaskHandler.javaVersion; + if (var2.equals("1.1") || var2.startsWith("1.1.") || var2.equals("1.2") || var2.startsWith("1.2.") || var2.equals("1.3") || var2.startsWith("1.3.") || var2.equals("1.4") || var2.startsWith("1.4.") || var2.equals("1.5") || var2.startsWith("1.5.") || var2.equals("1.6.0")) { + this.error("wrongjava"); + return; + } + + if (var2.startsWith("1.6.0_")) { + int var3; + for (var3 = 6; var3 < var2.length() && class39.isDigit(var2.charAt(var3)); ++var3) { + } + + String var4 = var2.substring(6, var3); + if (ArchiveDiskAction.isNumber(var4) && class279.parseInt(var4) < 10) { + this.error("wrongjava"); + return; + } + } + + fiveOrOne = 5; + } + } + + this.setFocusCycleRoot(true); + this.addCanvas(); + this.setUp(); + + Object var8; + try { + var8 = new NanoClock(); + } catch (Throwable var6) { + var8 = new MilliClock(); + } + + class225.clock = (Clock)var8; + + while (stopTimeMs == 0L || class298.currentTimeMillis() < stopTimeMs) { + class8.gameCyclesToDo = class225.clock.wait(cycleDurationMillis, fiveOrOne); + + for (int var5 = 0; var5 < class8.gameCyclesToDo; ++var5) { + this.clientTick(); + } + + this.graphicsTick(); + this.post(this.canvas); + } + } catch (Exception var7) { + PlayerAppearance.RunException_sendStackTrace((String)null, var7); + this.error("crash"); + } + + this.kill(); + } + + public final void windowActivated(WindowEvent var1) { + } + + public final void windowDeiconified(WindowEvent var1) { + } + + public final void update(Graphics var1) { + this.paint(var1); + } + + @ObfuscatedName("m") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;II)V", - garbageValue = "-1950130429" + descriptor = "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V", + garbageValue = "-1024924303" ) - static final void method1138(String var0, int var1) { - PacketBufferNode var2 = class4.getPacketBufferNode(ClientPacket.field2234, Client.packetWriter.isaacCipher); // L: 268 - var2.packetBuffer.writeByte(SpriteMask.stringCp1252NullTerminatedByteSize(var0) + 1); // L: 269 - var2.packetBuffer.writeStringCp1252NullTerminated(var0); // L: 270 - var2.packetBuffer.method5664(var1); // L: 271 - Client.packetWriter.addNode(var2); // L: 272 - } // L: 273 + @Export("setLoginResponseString") + static void setLoginResponseString(String var0, String var1, String var2) { + Login.Login_response1 = var0; + Login.Login_response2 = var1; + Login.Login_response3 = var2; + } } diff --git a/runescape-client/src/main/java/GrandExchangeEvent.java b/runescape-client/src/main/java/GrandExchangeEvent.java index a8b10b3596..ecd7e496cb 100644 --- a/runescape-client/src/main/java/GrandExchangeEvent.java +++ b/runescape-client/src/main/java/GrandExchangeEvent.java @@ -1,288 +1,144 @@ +import java.net.URL; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("y") +@ObfuscatedName("a") @Implements("GrandExchangeEvent") public class GrandExchangeEvent { - @ObfuscatedName("nu") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = 1749191729 + intValue = 34061047 ) - @Export("widgetDragDuration") - static int widgetDragDuration; - @ObfuscatedName("ev") - static int[] field77; - @ObfuscatedName("gp") + @Export("musicTrackVolume") + public static int musicTrackVolume; + @ObfuscatedName("ag") + @Export("fontHelvetica13") + static java.awt.Font fontHelvetica13; + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = -1761495631 - ) - static int field78; - @ObfuscatedName("li") - @ObfuscatedSignature( - descriptor = "Lht;" - ) - @Export("mousedOverWidgetIf1") - static Widget mousedOverWidgetIf1; - @ObfuscatedName("f") - @ObfuscatedGetter( - intValue = 1698153219 + intValue = 1823148411 ) @Export("world") public final int world; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - longValue = -4139247955454884713L + longValue = -1010127793754141401L ) @Export("age") public final long age; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lj;" + descriptor = "Ly;" ) @Export("grandExchangeOffer") public final GrandExchangeOffer grandExchangeOffer; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("offerName") String offerName; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("previousOfferName") String previousOfferName; @ObfuscatedSignature( - descriptor = "(Lkb;BI)V" + descriptor = "(Lkj;BI)V" ) GrandExchangeEvent(Buffer var1, byte var2, int var3) { - this.offerName = var1.readStringCp1252NullTerminated(); // L: 111 - this.previousOfferName = var1.readStringCp1252NullTerminated(); // L: 112 - this.world = var1.readUnsignedShort(); // L: 113 - this.age = var1.readLong(); // L: 114 - int var4 = var1.readInt(); // L: 115 - int var5 = var1.readInt(); // L: 116 - this.grandExchangeOffer = new GrandExchangeOffer(); // L: 117 - this.grandExchangeOffer.method189(2); // L: 118 - this.grandExchangeOffer.method206(var2); // L: 119 - this.grandExchangeOffer.unitPrice = var4; // L: 120 - this.grandExchangeOffer.totalQuantity = var5; // L: 121 - this.grandExchangeOffer.currentQuantity = 0; // L: 122 - this.grandExchangeOffer.currentPrice = 0; // L: 123 - this.grandExchangeOffer.id = var3; // L: 124 - } // L: 125 + this.offerName = var1.readStringCp1252NullTerminated(); + this.previousOfferName = var1.readStringCp1252NullTerminated(); + this.world = var1.readUnsignedShort(); + this.age = var1.readLong(); + int var4 = var1.readInt(); + int var5 = var1.readInt(); + this.grandExchangeOffer = new GrandExchangeOffer(); + this.grandExchangeOffer.method171(2); + this.grandExchangeOffer.method176(var2); + this.grandExchangeOffer.unitPrice = var4; + this.grandExchangeOffer.totalQuantity = var5; + this.grandExchangeOffer.currentQuantity = 0; + this.grandExchangeOffer.currentPrice = 0; + this.grandExchangeOffer.id = var3; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(B)Ljava/lang/String;", - garbageValue = "98" + descriptor = "(I)Ljava/lang/String;", + garbageValue = "-819048279" ) @Export("getOfferName") public String getOfferName() { - return this.offerName; // L: 128 + return this.offerName; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "209960511" + descriptor = "(B)Ljava/lang/String;", + garbageValue = "5" ) @Export("getPreviousOfferName") public String getPreviousOfferName() { - return this.previousOfferName; // L: 132 + return this.previousOfferName; } - @ObfuscatedName("l") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lks;I)V", - garbageValue = "-2056491743" + descriptor = "(I)Z", + garbageValue = "2125539222" ) - static final void method172(PacketBuffer var0) { - int var1 = 0; // L: 252 - var0.importIndex(); // L: 253 + @Export("loadWorlds") + static boolean loadWorlds() { + try { + if (World.World_request == null) { + World.World_request = GrandExchangeOfferAgeComparator.urlRequester.request(new URL(GrandExchangeOfferTotalQuantityComparator.field75)); + } else if (World.World_request.isDone()) { + byte[] var0 = World.World_request.getResponse(); + Buffer var1 = new Buffer(var0); + var1.readInt(); + World.World_count = var1.readUnsignedShort(); + World.World_worlds = new World[World.World_count]; - byte[] var10000; - int var2; - int var4; - int var5; - for (var2 = 0; var2 < Players.Players_count; ++var2) { // L: 254 - var5 = Players.Players_indices[var2]; // L: 255 - if ((Players.field1282[var5] & 1) == 0) { // L: 256 - if (var1 > 0) { // L: 257 - --var1; // L: 258 - var10000 = Players.field1282; // L: 259 - var10000[var5] = (byte)(var10000[var5] | 2); - } else { - var4 = var0.readBits(1); // L: 262 - if (var4 == 0) { // L: 263 - var1 = Tiles.method1220(var0); // L: 264 - var10000 = Players.field1282; // L: 265 - var10000[var5] = (byte)(var10000[var5] | 2); - } else { - WorldMapData_1.readPlayerUpdate(var0, var5); // L: 268 - } + World var3; + for (int var2 = 0; var2 < World.World_count; var3.index = var2++) { + var3 = World.World_worlds[var2] = new World(); + var3.id = var1.readUnsignedShort(); + var3.properties = var1.readInt(); + var3.host = var1.readStringCp1252NullTerminated(); + var3.activity = var1.readStringCp1252NullTerminated(); + var3.location = var1.readUnsignedByte(); + var3.population = var1.readShort(); } + + ChatChannel.sortWorlds(World.World_worlds, 0, World.World_worlds.length - 1, World.World_sortOption1, World.World_sortOption2); + World.World_request = null; + return true; } + } catch (Exception var4) { + var4.printStackTrace(); + World.World_request = null; } - var0.exportIndex(); // L: 271 - if (var1 != 0) { // L: 272 - throw new RuntimeException(); // L: 273 - } else { - var0.importIndex(); // L: 275 + return false; + } - for (var2 = 0; var2 < Players.Players_count; ++var2) { // L: 276 - var5 = Players.Players_indices[var2]; // L: 277 - if ((Players.field1282[var5] & 1) != 0) { // L: 278 - if (var1 > 0) { // L: 279 - --var1; // L: 280 - var10000 = Players.field1282; // L: 281 - var10000[var5] = (byte)(var10000[var5] | 2); - } else { - var4 = var0.readBits(1); // L: 284 - if (var4 == 0) { // L: 285 - var1 = Tiles.method1220(var0); // L: 286 - var10000 = Players.field1282; // L: 287 - var10000[var5] = (byte)(var10000[var5] | 2); - } else { - WorldMapData_1.readPlayerUpdate(var0, var5); // L: 290 - } - } - } - } - - var0.exportIndex(); // L: 293 - if (var1 != 0) { // L: 294 - throw new RuntimeException(); // L: 295 - } else { - var0.importIndex(); // L: 297 - - for (var2 = 0; var2 < Players.Players_emptyIdxCount; ++var2) { // L: 298 - var5 = Players.Players_emptyIndices[var2]; // L: 299 - if ((Players.field1282[var5] & 1) != 0) { // L: 300 - if (var1 > 0) { // L: 301 - --var1; // L: 302 - var10000 = Players.field1282; // L: 303 - var10000[var5] = (byte)(var10000[var5] | 2); - } else { - var4 = var0.readBits(1); // L: 306 - if (var4 == 0) { // L: 307 - var1 = Tiles.method1220(var0); // L: 308 - var10000 = Players.field1282; // L: 309 - var10000[var5] = (byte)(var10000[var5] | 2); - } else if (class9.updateExternalPlayer(var0, var5)) { // L: 312 - var10000 = Players.field1282; - var10000[var5] = (byte)(var10000[var5] | 2); - } - } - } - } - - var0.exportIndex(); // L: 315 - if (var1 != 0) { // L: 316 - throw new RuntimeException(); // L: 317 - } else { - var0.importIndex(); // L: 319 - - for (var2 = 0; var2 < Players.Players_emptyIdxCount; ++var2) { // L: 320 - var5 = Players.Players_emptyIndices[var2]; // L: 321 - if ((Players.field1282[var5] & 1) == 0) { // L: 322 - if (var1 > 0) { // L: 323 - --var1; // L: 324 - var10000 = Players.field1282; // L: 325 - var10000[var5] = (byte)(var10000[var5] | 2); - } else { - var4 = var0.readBits(1); // L: 328 - if (var4 == 0) { // L: 329 - var1 = Tiles.method1220(var0); // L: 330 - var10000 = Players.field1282; // L: 331 - var10000[var5] = (byte)(var10000[var5] | 2); - } else if (class9.updateExternalPlayer(var0, var5)) { // L: 334 - var10000 = Players.field1282; - var10000[var5] = (byte)(var10000[var5] | 2); - } - } - } - } - - var0.exportIndex(); // L: 337 - if (var1 != 0) { // L: 338 - throw new RuntimeException(); // L: 339 - } else { - Players.Players_count = 0; // L: 341 - Players.Players_emptyIdxCount = 0; // L: 342 - - for (var2 = 1; var2 < 2048; ++var2) { // L: 343 - var10000 = Players.field1282; // L: 344 - var10000[var2] = (byte)(var10000[var2] >> 1); - Player var3 = Client.players[var2]; // L: 345 - if (var3 != null) { // L: 346 - Players.Players_indices[++Players.Players_count - 1] = var2; - } else { - Players.Players_emptyIndices[++Players.Players_emptyIdxCount - 1] = var2; // L: 347 - } - } - - } - } - } - } - } // L: 349 - - @ObfuscatedName("j") + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(ILco;ZB)I", - garbageValue = "-11" + descriptor = "(B)V", + garbageValue = "31" ) - static int method165(int var0, Script var1, boolean var2) { - Widget var3 = UserComparator4.getWidget(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 1194 - if (var0 == ScriptOpcodes.IF_GETSCROLLX) { // L: 1195 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.scrollX; // L: 1196 - return 1; // L: 1197 - } else if (var0 == ScriptOpcodes.IF_GETSCROLLY) { // L: 1199 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.scrollY; // L: 1200 - return 1; // L: 1201 - } else if (var0 == ScriptOpcodes.IF_GETTEXT) { // L: 1203 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3.text; // L: 1204 - return 1; // L: 1205 - } else if (var0 == ScriptOpcodes.IF_GETSCROLLWIDTH) { // L: 1207 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.scrollWidth; // L: 1208 - return 1; // L: 1209 - } else if (var0 == ScriptOpcodes.IF_GETSCROLLHEIGHT) { // L: 1211 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.scrollHeight; // L: 1212 - return 1; // L: 1213 - } else if (var0 == ScriptOpcodes.IF_GETMODELZOOM) { // L: 1215 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.modelZoom; // L: 1216 - return 1; // L: 1217 - } else if (var0 == ScriptOpcodes.IF_GETMODELANGLE_X) { // L: 1219 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.modelAngleX; // L: 1220 - return 1; // L: 1221 - } else if (var0 == ScriptOpcodes.IF_GETMODELANGLE_Z) { // L: 1223 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.modelAngleZ; // L: 1224 - return 1; // L: 1225 - } else if (var0 == ScriptOpcodes.IF_GETMODELANGLE_Y) { // L: 1227 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.modelAngleY; // L: 1228 - return 1; // L: 1229 - } else if (var0 == ScriptOpcodes.IF_GETTRANSTOP) { // L: 1231 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.transparencyTop; // L: 1232 - return 1; // L: 1233 - } else if (var0 == ScriptOpcodes.IF_GETTRANSBOT) { // L: 1235 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.transparencyBot; // L: 1236 - return 1; // L: 1237 - } else if (var0 == ScriptOpcodes.IF_GETCOLOUR) { // L: 1239 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.color; // L: 1240 - return 1; // L: 1241 - } else if (var0 == ScriptOpcodes.IF_GETFILLCOLOUR) { // L: 1243 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.color2; // L: 1244 - return 1; // L: 1245 - } else if (var0 == ScriptOpcodes.IF_GETFILLMODE) { // L: 1247 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.fillMode.rsOrdinal(); // L: 1248 - return 1; // L: 1249 - } else if (var0 == ScriptOpcodes.IF_GETMODELTRANSPARENT) { // L: 1251 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.modelTransparency ? 1 : 0; // L: 1252 - return 1; // L: 1253 - } else { - return 2; // L: 1255 + protected static final void method153() { + class225.clock.mark(); + + int var0; + for (var0 = 0; var0 < 32; ++var0) { + GameShell.graphicsTickTimes[var0] = 0L; } + + for (var0 = 0; var0 < 32; ++var0) { + GameShell.clientTickTimes[var0] = 0L; + } + + class8.gameCyclesToDo = 0; } } diff --git a/runescape-client/src/main/java/GrandExchangeEvents.java b/runescape-client/src/main/java/GrandExchangeEvents.java index b53be74a6c..d160ffe95f 100644 --- a/runescape-client/src/main/java/GrandExchangeEvents.java +++ b/runescape-client/src/main/java/GrandExchangeEvents.java @@ -4,121 +4,240 @@ import java.util.Comparator; import java.util.List; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; -import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("r") +@ObfuscatedName("f") @Implements("GrandExchangeEvents") public class GrandExchangeEvents { - @ObfuscatedName("qa") - @ObfuscatedSignature( - descriptor = "Ldf;" - ) - @Export("pcmStreamMixer") - static PcmStreamMixer pcmStreamMixer; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("GrandExchangeEvents_ageComparator") public static Comparator GrandExchangeEvents_ageComparator; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("GrandExchangeEvents_priceComparator") public static Comparator GrandExchangeEvents_priceComparator; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("GrandExchangeEvents_nameComparator") public static Comparator GrandExchangeEvents_nameComparator; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("GrandExchangeEvents_quantityComparator") public static Comparator GrandExchangeEvents_quantityComparator; - @ObfuscatedName("y") - static String[] field68; - @ObfuscatedName("go") - @ObfuscatedGetter( - intValue = 1672626269 - ) - static int field64; - @ObfuscatedName("f") + @ObfuscatedName("l") + @Export("SpriteBuffer_pixels") + public static byte[][] SpriteBuffer_pixels; + @ObfuscatedName("h") @Export("events") public final List events; static { - GrandExchangeEvents_ageComparator = new GrandExchangeOfferAgeComparator(); // L: 11 + GrandExchangeEvents_ageComparator = new GrandExchangeOfferAgeComparator(); new GrandExchangeOfferWorldComparator(); GrandExchangeEvents_priceComparator = new GrandExchangeOfferUnitPriceComparator(); - GrandExchangeEvents_nameComparator = new GrandExchangeOfferNameComparator(); // L: 54 + GrandExchangeEvents_nameComparator = new GrandExchangeOfferNameComparator(); GrandExchangeEvents_quantityComparator = new GrandExchangeOfferTotalQuantityComparator(); - } // L: 67 + } @ObfuscatedSignature( - descriptor = "(Lkb;Z)V", + descriptor = "(Lkj;Z)V", garbageValue = "1" ) public GrandExchangeEvents(Buffer var1, boolean var2) { - int var3 = var1.readUnsignedShort(); // L: 82 - boolean var4 = var1.readUnsignedByte() == 1; // L: 83 + int var3 = var1.readUnsignedShort(); + boolean var4 = var1.readUnsignedByte() == 1; byte var5; - if (var4) { // L: 85 + if (var4) { var5 = 1; } else { - var5 = 0; // L: 86 + var5 = 0; } - int var6 = var1.readUnsignedShort(); // L: 87 - this.events = new ArrayList(var6); // L: 88 + int var6 = var1.readUnsignedShort(); + this.events = new ArrayList(var6); - for (int var7 = 0; var7 < var6; ++var7) { // L: 89 - this.events.add(new GrandExchangeEvent(var1, var5, var3)); // L: 90 + for (int var7 = 0; var7 < var6; ++var7) { + this.events.add(new GrandExchangeEvent(var1, var5, var3)); } - } // L: 92 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(Ljava/util/Comparator;ZI)V", - garbageValue = "692042674" + garbageValue = "1883251258" ) @Export("sort") public void sort(Comparator var1, boolean var2) { - if (var2) { // L: 95 - Collections.sort(this.events, var1); // L: 96 + if (var2) { + Collections.sort(this.events, var1); } else { - Collections.sort(this.events, Collections.reverseOrder(var1)); // L: 99 + Collections.sort(this.events, Collections.reverseOrder(var1)); } - } // L: 101 + } - @ObfuscatedName("m") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "(IIIIB)V", - garbageValue = "0" + descriptor = "(I)Lcj;", + garbageValue = "-114002754" ) - @Export("itemContainerSetItem") - static void itemContainerSetItem(int var0, int var1, int var2, int var3) { - ItemContainer var4 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); // L: 39 - if (var4 == null) { // L: 40 - var4 = new ItemContainer(); // L: 41 - ItemContainer.itemContainers.put(var4, (long)var0); // L: 42 - } + @Export("getNextWorldListWorld") + static World getNextWorldListWorld() { + return World.World_listCount < World.World_count ? World.World_worlds[++World.World_listCount - 1] : null; + } - if (var4.ids.length <= var1) { // L: 44 - int[] var5 = new int[var1 + 1]; // L: 45 - int[] var6 = new int[var1 + 1]; // L: 46 + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "(ILcs;ZB)I", + garbageValue = "8" + ) + static int method146(int var0, Script var1, boolean var2) { + int var3; + if (var0 == ScriptOpcodes.STOCKMARKET_GETOFFERTYPE) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].type(); + return 1; + } else if (var0 == ScriptOpcodes.STOCKMARKET_GETOFFERITEM) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].id; + return 1; + } else if (var0 == ScriptOpcodes.STOCKMARKET_GETOFFERPRICE) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].unitPrice; + return 1; + } else if (var0 == ScriptOpcodes.STOCKMARKET_GETOFFERCOUNT) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].totalQuantity; + return 1; + } else if (var0 == ScriptOpcodes.STOCKMARKET_GETOFFERCOMPLETEDCOUNT) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].currentQuantity; + return 1; + } else if (var0 == ScriptOpcodes.STOCKMARKET_GETOFFERCOMPLETEDGOLD) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].currentPrice; + return 1; + } else { + int var13; + if (var0 == ScriptOpcodes.STOCKMARKET_ISOFFEREMPTY) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var13 = Client.grandExchangeOffers[var3].status(); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var13 == 0 ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.STOCKMARKET_ISOFFERSTABLE) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var13 = Client.grandExchangeOffers[var3].status(); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var13 == 2 ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.STOCKMARKET_ISOFFERFINISHED) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var13 = Client.grandExchangeOffers[var3].status(); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var13 == 5 ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.STOCKMARKET_ISOFFERADDING) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var13 = Client.grandExchangeOffers[var3].status(); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var13 == 1 ? 1 : 0; + return 1; + } else { + boolean var12; + if (var0 == ScriptOpcodes.TRADINGPOST_SORTBY_NAME) { + var12 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (AbstractUserComparator.grandExchangeEvents != null) { + AbstractUserComparator.grandExchangeEvents.sort(GrandExchangeEvents_nameComparator, var12); + } - int var7; - for (var7 = 0; var7 < var4.ids.length; ++var7) { // L: 47 - var5[var7] = var4.ids[var7]; // L: 48 - var6[var7] = var4.quantities[var7]; // L: 49 + return 1; + } else if (var0 == ScriptOpcodes.TRADINGPOST_SORTBY_PRICE) { + var12 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (AbstractUserComparator.grandExchangeEvents != null) { + AbstractUserComparator.grandExchangeEvents.sort(GrandExchangeEvents_priceComparator, var12); + } + + return 1; + } else if (var0 == ScriptOpcodes.TRADINGPOST_SORTFILTERBY_WORLD) { + VarcInt.Interpreter_intStackSize -= 2; + var12 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize] == 1; + boolean var11 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1] == 1; + if (AbstractUserComparator.grandExchangeEvents != null) { + Client.GrandExchangeEvents_worldComparator.filterWorlds = var11; + AbstractUserComparator.grandExchangeEvents.sort(Client.GrandExchangeEvents_worldComparator, var12); + } + + return 1; + } else if (var0 == ScriptOpcodes.TRADINGPOST_SORTBY_AGE) { + var12 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (AbstractUserComparator.grandExchangeEvents != null) { + AbstractUserComparator.grandExchangeEvents.sort(GrandExchangeEvents_ageComparator, var12); + } + + return 1; + } else if (var0 == ScriptOpcodes.TRADINGPOST_SORTBY_COUNT) { + var12 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (AbstractUserComparator.grandExchangeEvents != null) { + AbstractUserComparator.grandExchangeEvents.sort(GrandExchangeEvents_quantityComparator, var12); + } + + return 1; + } else if (var0 == ScriptOpcodes.TRADINGPOST_GETTOTALOFFERS) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = AbstractUserComparator.grandExchangeEvents == null ? 0 : AbstractUserComparator.grandExchangeEvents.events.size(); + return 1; + } else { + GrandExchangeEvent var4; + if (var0 == ScriptOpcodes.TRADINGPOST_GETOFFERWORLD) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var4 = (GrandExchangeEvent)AbstractUserComparator.grandExchangeEvents.events.get(var3); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var4.world; + return 1; + } else if (var0 == ScriptOpcodes.TRADINGPOST_GETOFFERNAME) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var4 = (GrandExchangeEvent)AbstractUserComparator.grandExchangeEvents.events.get(var3); + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var4.getOfferName(); + return 1; + } else if (var0 == ScriptOpcodes.TRADINGPOST_GETOFFERPREVIOUSNAME) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var4 = (GrandExchangeEvent)AbstractUserComparator.grandExchangeEvents.events.get(var3); + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var4.getPreviousOfferName(); + return 1; + } else if (var0 == ScriptOpcodes.TRADINGPOST_GETOFFERAGE) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var4 = (GrandExchangeEvent)AbstractUserComparator.grandExchangeEvents.events.get(var3); + long var5 = class298.currentTimeMillis() - class4.field17 - var4.age; + int var7 = (int)(var5 / 3600000L); + int var8 = (int)((var5 - (long)(var7 * 3600000)) / 60000L); + int var9 = (int)((var5 - (long)(var7 * 3600000) - (long)(var8 * 60000)) / 1000L); + String var10 = var7 + ":" + var8 / 10 + var8 % 10 + ":" + var9 / 10 + var9 % 10; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var10; + return 1; + } else if (var0 == ScriptOpcodes.TRADINGPOST_GETOFFERCOUNT) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var4 = (GrandExchangeEvent)AbstractUserComparator.grandExchangeEvents.events.get(var3); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var4.grandExchangeOffer.totalQuantity; + return 1; + } else if (var0 == ScriptOpcodes.TRADINGPOST_GETOFFERPRICE) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var4 = (GrandExchangeEvent)AbstractUserComparator.grandExchangeEvents.events.get(var3); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var4.grandExchangeOffer.unitPrice; + return 1; + } else if (var0 == ScriptOpcodes.TRADINGPOST_GETOFFERITEM) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var4 = (GrandExchangeEvent)AbstractUserComparator.grandExchangeEvents.events.get(var3); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var4.grandExchangeOffer.id; + return 1; + } else { + return 2; + } + } } - - for (var7 = var4.ids.length; var7 < var1; ++var7) { // L: 51 - var5[var7] = -1; // L: 52 - var6[var7] = 0; // L: 53 - } - - var4.ids = var5; // L: 55 - var4.quantities = var6; // L: 56 } + } - var4.ids[var1] = var2; // L: 58 - var4.quantities[var1] = var3; // L: 59 - } // L: 60 + @ObfuscatedName("hu") + @ObfuscatedSignature( + descriptor = "(Lcx;II)V", + garbageValue = "-563338359" + ) + static final void method144(Actor var0, int var1) { + GrandExchangeOffer.worldToScreen(var0.x, var0.y, var1); + } } diff --git a/runescape-client/src/main/java/GrandExchangeOffer.java b/runescape-client/src/main/java/GrandExchangeOffer.java index 77b851a087..0bf40a2816 100644 --- a/runescape-client/src/main/java/GrandExchangeOffer.java +++ b/runescape-client/src/main/java/GrandExchangeOffer.java @@ -3,193 +3,294 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("j") +@ObfuscatedName("y") @Implements("GrandExchangeOffer") public class GrandExchangeOffer { - @ObfuscatedName("nf") - @ObfuscatedGetter( - intValue = -2001741545 - ) - static int field87; - @ObfuscatedName("de") - @ObfuscatedSignature( - descriptor = "Lid;" - ) - @Export("archive8") - static Archive archive8; - @ObfuscatedName("gr") - @Export("regionLandArchives") - static byte[][] regionLandArchives; - @ObfuscatedName("lc") - @ObfuscatedSignature( - descriptor = "Lcu;" - ) - @Export("tempMenuAction") - static MenuAction tempMenuAction; - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("state") byte state; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 1175311391 + intValue = -618339927 ) @Export("id") public int id; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 1620049031 + intValue = -1523390759 ) @Export("unitPrice") public int unitPrice; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -658451115 + intValue = 1138679983 ) @Export("totalQuantity") public int totalQuantity; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 682864265 + intValue = -1993349835 ) @Export("currentQuantity") public int currentQuantity; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = 2131508633 + intValue = 484564731 ) @Export("currentPrice") public int currentPrice; public GrandExchangeOffer() { - } // L: 13 + } @ObfuscatedSignature( - descriptor = "(Lkb;Z)V", + descriptor = "(Lkj;Z)V", garbageValue = "0" ) public GrandExchangeOffer(Buffer var1, boolean var2) { - this.state = var1.readByte(); // L: 16 + this.state = var1.readByte(); this.id = var1.readUnsignedShort(); - this.unitPrice = var1.readInt(); // L: 18 - this.totalQuantity = var1.readInt(); // L: 19 - this.currentQuantity = var1.readInt(); // L: 20 - this.currentPrice = var1.readInt(); // L: 21 - } // L: 22 + this.unitPrice = var1.readInt(); + this.totalQuantity = var1.readInt(); + this.currentQuantity = var1.readInt(); + this.currentPrice = var1.readInt(); + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-682485902" + garbageValue = "-9146614" ) @Export("status") public int status() { - return this.state & 7; // L: 50 + return this.state & 7; + } + + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "1433662389" + ) + @Export("type") + public int type() { + return (this.state & 8) == 8 ? 1 : 0; + } + + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "1068160748" + ) + void method171(int var1) { + this.state &= -8; + this.state = (byte)(this.state | var1 & 7); + } + + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "1708580418" + ) + void method176(int var1) { + this.state &= -9; + if (var1 == 1) { + this.state = (byte)(this.state | 8); + } + + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(IIB)I", + garbageValue = "32" + ) + static int method186(int var0, int var1) { + FloorOverlayDefinition var2 = RouteStrategy.method3648(var0); + if (var2 == null) { + return var1; + } else if (var2.secondaryRgb >= 0) { + return var2.secondaryRgb | -16777216; + } else { + int var4; + int var5; + if (var2.texture >= 0) { + var4 = Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var2.texture); + byte var11 = 96; + int var3; + if (var4 == -2) { + var3 = 12345678; + } else if (var4 == -1) { + if (var11 < 0) { + var11 = 0; + } else if (var11 > 127) { + var11 = 127; + } + + var5 = 127 - var11; + var3 = var5; + } else { + var5 = var11 * (var4 & 127) / 128; + if (var5 < 2) { + var5 = 2; + } else if (var5 > 126) { + var5 = 126; + } + + var3 = var5 + (var4 & 65408); + } + + return Rasterizer3D.Rasterizer3D_colorPalette[var3] | -16777216; + } else if (var2.primaryRgb == 16711935) { + return var1; + } else { + var4 = var2.hue; + var5 = var2.saturation; + int var6 = var2.lightness; + if (var6 > 179) { + var5 /= 2; + } + + if (var6 > 192) { + var5 /= 2; + } + + if (var6 > 217) { + var5 /= 2; + } + + if (var6 > 243) { + var5 /= 2; + } + + int var7 = (var5 / 32 << 7) + var6 / 2 + (var4 / 4 << 10); + byte var9 = 96; + int var8; + if (var7 == -2) { + var8 = 12345678; + } else { + int var12; + if (var7 == -1) { + if (var9 < 0) { + var9 = 0; + } else if (var9 > 127) { + var9 = 127; + } + + var12 = 127 - var9; + var8 = var12; + } else { + var12 = var9 * (var7 & 127) / 128; + if (var12 < 2) { + var12 = 2; + } else if (var12 > 126) { + var12 = 126; + } + + var8 = var12 + (var7 & 65408); + } + } + + return Rasterizer3D.Rasterizer3D_colorPalette[var8] | -16777216; + } + } + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/Object;ZI)[B", + garbageValue = "-2034592352" + ) + public static byte[] method188(Object var0, boolean var1) { + if (var0 == null) { + return null; + } else if (var0 instanceof byte[]) { + byte[] var6 = (byte[])((byte[])var0); + if (var1) { + int var4 = var6.length; + byte[] var5 = new byte[var4]; + System.arraycopy(var6, 0, var5, 0, var4); + return var5; + } else { + return var6; + } + } else if (var0 instanceof AbstractByteArrayCopier) { + AbstractByteArrayCopier var2 = (AbstractByteArrayCopier)var0; + return var2.get(); + } else { + throw new IllegalArgumentException(); + } + } + + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "296728880" + ) + @Export("savePreferences") + static void savePreferences() { + AccessFile var0 = null; + + try { + var0 = WorldMapRegion.getPreferencesFile("", AttackOption.field1174.name, true); + Buffer var1 = Timer.clientPreferences.toBuffer(); + var0.write(var1.array, 0, var1.offset); + } catch (Exception var3) { + } + + try { + if (var0 != null) { + var0.closeSync(true); + } + } catch (Exception var2) { + } + } @ObfuscatedName("m") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-1493721468" + descriptor = "(IIB)I", + garbageValue = "66" ) - @Export("type") - public int type() { - return (this.state & 8) == 8 ? 1 : 0; // L: 54 + static final int method190(int var0, int var1) { + int var2 = var1 * 57 + var0; + var2 ^= var2 << 13; + int var3 = (var2 * var2 * 15731 + 789221) * var2 + 1376312589 & Integer.MAX_VALUE; + return var3 >> 19 & 255; } - @ObfuscatedName("z") + @ObfuscatedName("hx") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-629489777" + descriptor = "(IIII)V", + garbageValue = "-18578608" ) - void method189(int var1) { - this.state &= -8; // L: 58 - this.state = (byte)(this.state | var1 & 7); // L: 59 - } // L: 60 - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-130470346" - ) - void method206(int var1) { - this.state &= -9; // L: 63 - if (var1 == 1) { - this.state = (byte)(this.state | 8); // L: 64 - } - - } // L: 65 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(B)[Lgg;", - garbageValue = "-42" - ) - public static class194[] method208() { - return new class194[]{class194.field2356, class194.field2349, class194.field2359, class194.field2348, class194.field2352, class194.field2351, class194.field2354, class194.field2353, class194.field2355, class194.field2357}; // L: 17 - } - - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "-253768081" - ) - static int method198(int var0, Script var1, boolean var2) { - Widget var3 = var2 ? MouseRecorder.field621 : Interpreter.field1122; // L: 1010 - if (var0 == ScriptOpcodes.CC_GETX) { // L: 1011 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.x; // L: 1012 - return 1; // L: 1013 - } else if (var0 == ScriptOpcodes.CC_GETY) { // L: 1015 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.y; // L: 1016 - return 1; // L: 1017 - } else if (var0 == ScriptOpcodes.CC_GETWIDTH) { // L: 1019 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.width; // L: 1020 - return 1; // L: 1021 - } else if (var0 == ScriptOpcodes.CC_GETHEIGHT) { // L: 1023 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.height; // L: 1024 - return 1; // L: 1025 - } else if (var0 == ScriptOpcodes.CC_GETHIDE) { // L: 1027 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.isHidden ? 1 : 0; // L: 1028 - return 1; // L: 1029 - } else if (var0 == ScriptOpcodes.CC_GETLAYER) { // L: 1031 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.parentId; // L: 1032 - return 1; // L: 1033 - } else { - return 2; // L: 1035 - } - } - - @ObfuscatedName("hy") - @ObfuscatedSignature( - descriptor = "(IIIIIIIIIB)V", - garbageValue = "0" - ) - @Export("updatePendingSpawn") - static final void updatePendingSpawn(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { - PendingSpawn var9 = null; // L: 7144 - - for (PendingSpawn var10 = (PendingSpawn)Client.pendingSpawns.last(); var10 != null; var10 = (PendingSpawn)Client.pendingSpawns.previous()) { // L: 7145 7146 7151 - if (var0 == var10.plane && var10.x == var1 && var2 == var10.y && var3 == var10.type) { // L: 7147 - var9 = var10; // L: 7148 - break; + @Export("worldToScreen") + static final void worldToScreen(int var0, int var1, int var2) { + if (var0 >= 128 && var1 >= 128 && var0 <= 13056 && var1 <= 13056) { + int var3 = SecureRandomFuture.getTileHeight(var0, var1, GameObject.Client_plane) - var2; + var0 -= Player.cameraX; + var3 -= KeyHandler.cameraY; + var1 -= class69.cameraZ; + int var4 = Rasterizer3D.Rasterizer3D_sine[Skeleton.cameraPitch]; + int var5 = Rasterizer3D.Rasterizer3D_cosine[Skeleton.cameraPitch]; + int var6 = Rasterizer3D.Rasterizer3D_sine[AbstractArchive.cameraYaw]; + int var7 = Rasterizer3D.Rasterizer3D_cosine[AbstractArchive.cameraYaw]; + int var8 = var6 * var1 + var0 * var7 >> 16; + var1 = var7 * var1 - var0 * var6 >> 16; + var0 = var8; + var8 = var5 * var3 - var4 * var1 >> 16; + var1 = var3 * var4 + var5 * var1 >> 16; + if (var1 >= 50) { + Client.viewportTempX = var0 * Client.viewportZoom / var1 + Client.viewportWidth / 2; + Client.viewportTempY = Client.viewportHeight / 2 + var8 * Client.viewportZoom / var1; + } else { + Client.viewportTempX = -1; + Client.viewportTempY = -1; } - } - if (var9 == null) { // L: 7153 - var9 = new PendingSpawn(); // L: 7154 - var9.plane = var0; // L: 7155 - var9.type = var3; // L: 7156 - var9.x = var1; // L: 7157 - var9.y = var2; // L: 7158 - JagexCache.method3619(var9); // L: 7159 - Client.pendingSpawns.addFirst(var9); // L: 7160 + } else { + Client.viewportTempX = -1; + Client.viewportTempY = -1; } - - var9.id = var4; // L: 7162 - var9.field962 = var5; // L: 7163 - var9.orientation = var6; // L: 7164 - var9.delay = var7; // L: 7165 - var9.hitpoints = var8; // L: 7166 - } // L: 7167 + } } diff --git a/runescape-client/src/main/java/GrandExchangeOfferAgeComparator.java b/runescape-client/src/main/java/GrandExchangeOfferAgeComparator.java index b95f4dfbd2..2fd52715ae 100644 --- a/runescape-client/src/main/java/GrandExchangeOfferAgeComparator.java +++ b/runescape-client/src/main/java/GrandExchangeOfferAgeComparator.java @@ -1,291 +1,221 @@ -import java.io.IOException; import java.util.Comparator; +import java.util.Date; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("d") +@ObfuscatedName("g") @Implements("GrandExchangeOfferAgeComparator") final class GrandExchangeOfferAgeComparator implements Comparator { - @ObfuscatedName("sk") + @ObfuscatedName("fd") @ObfuscatedSignature( - descriptor = "Lcp;" + descriptor = "Lea;" ) - @Export("clientPreferences") - static ClientPreferences clientPreferences; - @ObfuscatedName("l") + @Export("urlRequester") + static UrlRequester urlRequester; + @ObfuscatedName("hi") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "[Llm;" ) - @Export("ObjectDefinition_modelsArchive") - public static AbstractArchive ObjectDefinition_modelsArchive; + @Export("crossSprites") + static Sprite[] crossSprites; - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ly;Ly;B)I", - garbageValue = "-94" + descriptor = "(La;La;I)I", + garbageValue = "-382122880" ) @Export("compare_bridged") int compare_bridged(GrandExchangeEvent var1, GrandExchangeEvent var2) { - return var1.age < var2.age ? -1 : (var2.age == var1.age ? 0 : 1); // L: 13 + return var1.age < var2.age ? -1 : (var1.age == var2.age ? 0 : 1); } public int compare(Object var1, Object var2) { - return this.compare_bridged((GrandExchangeEvent)var1, (GrandExchangeEvent)var2); // L: 17 + return this.compare_bridged((GrandExchangeEvent)var1, (GrandExchangeEvent)var2); } public boolean equals(Object var1) { - return super.equals(var1); // L: 21 + return super.equals(var1); } - @ObfuscatedName("t") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "65677327" + descriptor = "(ILcs;ZI)I", + garbageValue = "1587665041" ) - static final void method241(String var0) { - StringBuilder var10000 = new StringBuilder(); - Object var10001 = null; // L: 126 - var10000 = var10000.append("Please remove ").append(var0); - var10001 = null; - String var1 = var10000.append(" from your ignore list first").toString(); - DevicePcmPlayerProvider.addGameMessage(30, "", var1); // L: 128 - } // L: 130 - - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1203523043" - ) - public static void method242() { - HitSplatDefinition.HitSplatDefinition_cached.clear(); // L: 192 - HitSplatDefinition.HitSplatDefinition_cachedSprites.clear(); // L: 193 - HitSplatDefinition.HitSplatDefinition_cachedFonts.clear(); // L: 194 - } // L: 195 - - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "-695150363" - ) - static int method240(int var0, Script var1, boolean var2) { - if (var0 == ScriptOpcodes.WORLDLIST_FETCH) { // L: 3273 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = WallDecoration.loadWorlds() ? 1 : 0; // L: 3274 - return 1; // L: 3275 + static int method218(int var0, Script var1, boolean var2) { + String var3; + int var9; + if (var0 == ScriptOpcodes.APPEND_NUM) { + var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + var9 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3 + var9; + return 1; } else { - World var9; - if (var0 == ScriptOpcodes.WORLDLIST_START) { // L: 3277 - var9 = ModelData0.worldListStart(); // L: 3278 - if (var9 != null) { // L: 3279 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9.id; // L: 3280 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9.properties; // L: 3281 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var9.activity; // L: 3282 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9.location; // L: 3283 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9.population; // L: 3284 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var9.host; // L: 3285 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3288 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3289 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 3290 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3291 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3292 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 3293 - } - - return 1; // L: 3295 - } else if (var0 == ScriptOpcodes.WORLDLIST_NEXT) { // L: 3297 - var9 = FileSystem.getNextWorldListWorld(); // L: 3298 - if (var9 != null) { // L: 3299 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9.id; // L: 3300 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9.properties; // L: 3301 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var9.activity; // L: 3302 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9.location; // L: 3303 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9.population; // L: 3304 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var9.host; // L: 3305 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3308 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3309 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 3310 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3311 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3312 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 3313 - } - - return 1; // L: 3315 + String var4; + if (var0 == ScriptOpcodes.APPEND) { + Interpreter.Interpreter_stringStackSize -= 2; + var3 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize]; + var4 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize + 1]; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3 + var4; + return 1; + } else if (var0 == ScriptOpcodes.APPEND_SIGNNUM) { + var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + var9 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3 + HealthBarDefinition.intToString(var9, true); + return 1; + } else if (var0 == ScriptOpcodes.LOWERCASE) { + var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3.toLowerCase(); + return 1; } else { - int var3; - World var7; - int var8; - if (var0 == ScriptOpcodes.WORLDLIST_SPECIFIC) { // L: 3317 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3318 - var7 = null; // L: 3319 - - for (var8 = 0; var8 < World.World_count; ++var8) { // L: 3320 - if (var3 == DefaultsGroup.World_worlds[var8].id) { // L: 3321 - var7 = DefaultsGroup.World_worlds[var8]; // L: 3322 - break; - } - } - - if (var7 != null) { // L: 3326 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var7.id; // L: 3327 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var7.properties; // L: 3328 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var7.activity; // L: 3329 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var7.location; // L: 3330 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var7.population; // L: 3331 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var7.host; // L: 3332 + int var6; + int var10; + if (var0 == ScriptOpcodes.FROMDATE) { + var10 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + long var13 = ((long)var10 + 11745L) * 86400000L; + Interpreter.Interpreter_calendar.setTime(new Date(var13)); + var6 = Interpreter.Interpreter_calendar.get(5); + int var17 = Interpreter.Interpreter_calendar.get(2); + int var8 = Interpreter.Interpreter_calendar.get(1); + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6 + "-" + Interpreter.Interpreter_MONTHS[var17] + "-" + var8; + return 1; + } else if (var0 != ScriptOpcodes.TEXT_GENDER) { + if (var0 == ScriptOpcodes.TOSTRING) { + var10 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = Integer.toString(var10); + return 1; + } else if (var0 == ScriptOpcodes.COMPARE) { + Interpreter.Interpreter_stringStackSize -= 2; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = World.method1874(UrlRequester.compareStrings(Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize], Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize + 1], WorldMapScaleHandler.clientLanguage)); + return 1; } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3335 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3336 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 3337 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3338 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3339 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 3340 - } - - return 1; // L: 3342 - } else if (var0 == ScriptOpcodes.WORLDLIST_SORT) { // L: 3344 - MilliClock.Interpreter_intStackSize -= 4; // L: 3345 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 3346 - boolean var10 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1] == 1; // L: 3347 - var8 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 2]; // L: 3348 - boolean var6 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 3] == 1; // L: 3349 - World.sortWorldList(var3, var10, var8, var6); // L: 3350 - return 1; // L: 3351 - } else if (var0 != ScriptOpcodes.GETWORLDINFO) { // L: 3353 - if (var0 == ScriptOpcodes.SETFOLLOWEROPSLOWPRIORITY) { // L: 3374 - Client.followerOpsLowPriority = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 3375 - return 1; // L: 3376 - } else { - int var4; - ParamDefinition var5; - if (var0 == ScriptOpcodes.NC_PARAM) { // L: 3378 - MilliClock.Interpreter_intStackSize -= 2; // L: 3379 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 3380 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 3381 - var5 = TileItem.getParamDefinition(var4); // L: 3382 - if (var5.isString()) { // L: 3383 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = Clock.getNpcDefinition(var3).getStringParam(var4, var5.defaultStr); // L: 3384 + int var5; + byte[] var11; + Font var12; + if (var0 == ScriptOpcodes.PARAHEIGHT) { + var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var5 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + var11 = GrandExchangeOfferUnitPriceComparator.archive13.takeFile(var5, 0); + var12 = new Font(var11); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var12.lineCount(var3, var9); + return 1; + } else if (var0 == ScriptOpcodes.PARAWIDTH) { + var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var5 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + var11 = GrandExchangeOfferUnitPriceComparator.archive13.takeFile(var5, 0); + var12 = new Font(var11); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var12.lineWidth(var3, var9); + return 1; + } else if (var0 == ScriptOpcodes.TEXT_SWITCH) { + Interpreter.Interpreter_stringStackSize -= 2; + var3 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize]; + var4 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize + 1]; + if (Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3; } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Clock.getNpcDefinition(var3).getIntParam(var4, var5.defaultInt); // L: 3387 + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var4; } - return 1; // L: 3389 - } else if (var0 == ScriptOpcodes.LC_PARAM) { // L: 3391 - MilliClock.Interpreter_intStackSize -= 2; // L: 3392 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 3393 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 3394 - var5 = TileItem.getParamDefinition(var4); // L: 3395 - if (var5.isString()) { // L: 3396 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ScriptEvent.getObjectDefinition(var3).getStringParam(var4, var5.defaultStr); // L: 3397 + return 1; + } else if (var0 == ScriptOpcodes.ESCAPE) { + var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = AbstractFont.escapeBrackets(var3); + return 1; + } else if (var0 == ScriptOpcodes.APPEND_CHAR) { + var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + var9 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3 + (char)var9; + return 1; + } else if (var0 == ScriptOpcodes.CHAR_ISPRINTABLE) { + var10 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = TriBool.isCharPrintable((char)var10) ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.CHAR_ISALPHANUMERIC) { + var10 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = FriendLoginUpdate.isAlphaNumeric((char)var10) ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.CHAR_ISALPHA) { + var10 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = NetCache.isCharAlphabetic((char)var10) ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.CHAR_ISNUMERIC) { + var10 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = class39.isDigit((char)var10) ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.STRING_LENGTH) { + var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + if (var3 != null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.length(); } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = ScriptEvent.getObjectDefinition(var3).getIntParam(var4, var5.defaultInt); // L: 3400 + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; } - return 1; // L: 3402 - } else if (var0 == ScriptOpcodes.OC_PARAM) { // L: 3404 - MilliClock.Interpreter_intStackSize -= 2; // L: 3405 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 3406 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 3407 - var5 = TileItem.getParamDefinition(var4); // L: 3408 - if (var5.isString()) { // L: 3409 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = AbstractWorldMapData.ItemDefinition_get(var3).getStringParam(var4, var5.defaultStr); // L: 3410 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = AbstractWorldMapData.ItemDefinition_get(var3).getIntParam(var4, var5.defaultInt); // L: 3413 + return 1; + } else if (var0 == ScriptOpcodes.SUBSTRING) { + var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var5 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3.substring(var9, var5); + return 1; + } else if (var0 == ScriptOpcodes.REMOVETAGS) { + var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + StringBuilder var15 = new StringBuilder(var3.length()); + boolean var16 = false; + + for (var6 = 0; var6 < var3.length(); ++var6) { + char var7 = var3.charAt(var6); + if (var7 == '<') { + var16 = true; + } else if (var7 == '>') { + var16 = false; + } else if (!var16) { + var15.append(var7); + } } - return 1; // L: 3415 - } else if (var0 == ScriptOpcodes.STRUCT_PARAM) { // L: 3417 - MilliClock.Interpreter_intStackSize -= 2; // L: 3418 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 3419 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 3420 - var5 = TileItem.getParamDefinition(var4); // L: 3421 - if (var5.isString()) { // L: 3422 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ClientPacket.StructDefinition_getStructDefinition(var3).getStringParam(var4, var5.defaultStr); // L: 3423 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = ClientPacket.StructDefinition_getStructDefinition(var3).getIntParam(var4, var5.defaultInt); // L: 3426 - } - - return 1; // L: 3428 - } else if (var0 == ScriptOpcodes.ON_MOBILE) { // L: 3430 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.onMobile ? 1 : 0; // L: 3431 - return 1; // L: 3432 - } else if (var0 == ScriptOpcodes.CLIENTTYPE) { // L: 3434 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.clientType & 3; // L: 3435 - return 1; // L: 3436 - } else if (var0 == 6520) { // L: 3438 - return 1; // L: 3439 - } else if (var0 == ScriptOpcodes.MOBILE_KEYBOARDHIDE) { // L: 3441 - return 1; // L: 3442 - } else if (var0 == 6522) { // L: 3444 - --UrlRequester.Interpreter_stringStackSize; // L: 3445 - --MilliClock.Interpreter_intStackSize; // L: 3446 - return 1; // L: 3447 - } else if (var0 == 6523) { // L: 3449 - --UrlRequester.Interpreter_stringStackSize; // L: 3450 - --MilliClock.Interpreter_intStackSize; // L: 3451 - return 1; // L: 3452 - } else if (var0 == ScriptOpcodes.BATTERYLEVEL) { // L: 3454 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3455 - return 1; // L: 3456 - } else if (var0 == ScriptOpcodes.BATTERYCHARGING) { // L: 3458 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 1; // L: 3459 - return 1; // L: 3460 - } else if (var0 == ScriptOpcodes.WIFIAVAILABLE) { // L: 3462 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 1; // L: 3463 - return 1; // L: 3464 + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var15.toString(); + return 1; + } else if (var0 == ScriptOpcodes.STRING_INDEXOF_CHAR) { + var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + var9 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.indexOf(var9); + return 1; + } else if (var0 == ScriptOpcodes.STRING_INDEXOF_STRING) { + Interpreter.Interpreter_stringStackSize -= 2; + var3 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize]; + var4 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize + 1]; + var5 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.indexOf(var4, var5); + return 1; + } else if (var0 == ScriptOpcodes.UPPERCASE) { + var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3.toUpperCase(); + return 1; } else { - return 2; // L: 3466 + return 2; } } } else { - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3354 - if (var3 >= 0 && var3 < World.World_count) { // L: 3355 - var7 = DefaultsGroup.World_worlds[var3]; // L: 3356 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var7.id; // L: 3357 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var7.properties; // L: 3358 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var7.activity; // L: 3359 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var7.location; // L: 3360 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var7.population; // L: 3361 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var7.host; // L: 3362 + Interpreter.Interpreter_stringStackSize -= 2; + var3 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize]; + var4 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize + 1]; + if (PlayerAppearance.localPlayer.appearance != null && PlayerAppearance.localPlayer.appearance.isFemale) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var4; } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3365 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3366 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 3367 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3368 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3369 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 3370 + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3; } - return 1; // L: 3372 + return 1; } } } } - - @ObfuscatedName("gl") - @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "487407566" - ) - static final void method243(boolean var0) { - FriendSystem.playPcmPlayers(); // L: 5656 - ++Client.packetWriter.pendingWrites; // L: 5657 - if (Client.packetWriter.pendingWrites >= 50 || var0) { // L: 5658 - Client.packetWriter.pendingWrites = 0; // L: 5659 - if (!Client.field730 && Client.packetWriter.getSocket() != null) { // L: 5660 - PacketBufferNode var1 = class4.getPacketBufferNode(ClientPacket.field2247, Client.packetWriter.isaacCipher); // L: 5662 - Client.packetWriter.addNode(var1); // L: 5663 - - try { - Client.packetWriter.flush(); // L: 5665 - } catch (IOException var3) { // L: 5667 - Client.field730 = true; // L: 5668 - } - } - - } - } // L: 5671 } diff --git a/runescape-client/src/main/java/GrandExchangeOfferNameComparator.java b/runescape-client/src/main/java/GrandExchangeOfferNameComparator.java index a8847ca3c0..5b75c9cb3f 100644 --- a/runescape-client/src/main/java/GrandExchangeOfferNameComparator.java +++ b/runescape-client/src/main/java/GrandExchangeOfferNameComparator.java @@ -1,114 +1,153 @@ +import java.lang.management.GarbageCollectorMXBean; +import java.lang.management.ManagementFactory; import java.util.Comparator; +import java.util.Iterator; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("v") +@ObfuscatedName("q") @Implements("GrandExchangeOfferNameComparator") final class GrandExchangeOfferNameComparator implements Comparator { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ly;Ly;I)I", - garbageValue = "-875345693" + descriptor = "(La;La;I)I", + garbageValue = "1347597174" ) @Export("compare_bridged") int compare_bridged(GrandExchangeEvent var1, GrandExchangeEvent var2) { - return var1.getOfferName().compareTo(var2.getOfferName()); // L: 56 - } - - public int compare(Object var1, Object var2) { - return this.compare_bridged((GrandExchangeEvent)var1, (GrandExchangeEvent)var2); // L: 60 + return var1.getOfferName().compareTo(var2.getOfferName()); } public boolean equals(Object var1) { - return super.equals(var1); // L: 64 + return super.equals(var1); } - @ObfuscatedName("f") + public int compare(Object var1, Object var2) { + return this.compare_bridged((GrandExchangeEvent)var1, (GrandExchangeEvent)var2); + } + + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "453891314" + descriptor = "(B)V", + garbageValue = "1" ) - static void method228() { - if (TaskHandler.javaVendor.toLowerCase().indexOf("microsoft") != -1) { // L: 119 - KeyHandler.KeyHandler_keyCodes[186] = 57; // L: 120 - KeyHandler.KeyHandler_keyCodes[187] = 27; // L: 121 - KeyHandler.KeyHandler_keyCodes[188] = 71; // L: 122 - KeyHandler.KeyHandler_keyCodes[189] = 26; // L: 123 - KeyHandler.KeyHandler_keyCodes[190] = 72; // L: 124 - KeyHandler.KeyHandler_keyCodes[191] = 73; // L: 125 - KeyHandler.KeyHandler_keyCodes[192] = 58; // L: 126 - KeyHandler.KeyHandler_keyCodes[219] = 42; // L: 127 - KeyHandler.KeyHandler_keyCodes[220] = 74; // L: 128 - KeyHandler.KeyHandler_keyCodes[221] = 43; // L: 129 - KeyHandler.KeyHandler_keyCodes[222] = 59; // L: 130 - KeyHandler.KeyHandler_keyCodes[223] = 28; // L: 131 - } else { - KeyHandler.KeyHandler_keyCodes[44] = 71; // L: 134 - KeyHandler.KeyHandler_keyCodes[45] = 26; // L: 135 - KeyHandler.KeyHandler_keyCodes[46] = 72; // L: 136 - KeyHandler.KeyHandler_keyCodes[47] = 73; // L: 137 - KeyHandler.KeyHandler_keyCodes[59] = 57; // L: 138 - KeyHandler.KeyHandler_keyCodes[61] = 27; // L: 139 - KeyHandler.KeyHandler_keyCodes[91] = 42; // L: 140 - KeyHandler.KeyHandler_keyCodes[92] = 74; // L: 141 - KeyHandler.KeyHandler_keyCodes[93] = 43; // L: 142 - KeyHandler.KeyHandler_keyCodes[192] = 28; // L: 143 - KeyHandler.KeyHandler_keyCodes[222] = 58; // L: 144 - KeyHandler.KeyHandler_keyCodes[520] = 59; // L: 145 + static void method201() { + WorldMapRegion.WorldMapRegion_cachedSprites.clear(); + } + + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "(IIIII)V", + garbageValue = "1343430336" + ) + @Export("itemContainerSetItem") + static void itemContainerSetItem(int var0, int var1, int var2, int var3) { + ItemContainer var4 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); + if (var4 == null) { + var4 = new ItemContainer(); + ItemContainer.itemContainers.put(var4, (long)var0); } - } // L: 147 + if (var4.ids.length <= var1) { + int[] var5 = new int[var1 + 1]; + int[] var6 = new int[var1 + 1]; - @ObfuscatedName("m") + int var7; + for (var7 = 0; var7 < var4.ids.length; ++var7) { + var5[var7] = var4.ids[var7]; + var6[var7] = var4.quantities[var7]; + } + + for (var7 = var4.ids.length; var7 < var1; ++var7) { + var5[var7] = -1; + var6[var7] = 0; + } + + var4.ids = var5; + var4.quantities = var6; + } + + var4.ids[var1] = var2; + var4.quantities[var1] = var3; + } + + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-91260225" + descriptor = "(I)Z", + garbageValue = "-369903170" ) - static void method227() { - WorldMapRegion.WorldMapRegion_cachedSprites.clear(); // L: 50 - } // L: 51 + @Export("isKeyDown") + public static final boolean isKeyDown() { + synchronized(KeyHandler.KeyHandler_instance) { + if (KeyHandler.field415 == KeyHandler.field417) { + return false; + } else { + StudioGame.field3135 = KeyHandler.field412[KeyHandler.field415]; + WorldMapIcon_1.field200 = KeyHandler.field409[KeyHandler.field415]; + KeyHandler.field415 = KeyHandler.field415 + 1 & 127; + return true; + } + } + } - @ObfuscatedName("o") + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V", - garbageValue = "-559149911" + descriptor = "(B)I", + garbageValue = "-61" ) - @Export("setLoginResponseString") - static void setLoginResponseString(String var0, String var1, String var2) { - Login.Login_response1 = var0; // L: 1532 - Login.Login_response2 = var1; // L: 1533 - Login.Login_response3 = var2; // L: 1534 - } // L: 1535 + @Export("getGcDuration") + protected static int getGcDuration() { + int var0 = 0; + if (class25.garbageCollector == null || !class25.garbageCollector.isValid()) { + try { + Iterator var1 = ManagementFactory.getGarbageCollectorMXBeans().iterator(); - @ObfuscatedName("gh") - @ObfuscatedSignature( - descriptor = "(ZB)V", - garbageValue = "16" - ) - @Export("addNpcsToScene") - static final void addNpcsToScene(boolean var0) { - for (int var1 = 0; var1 < Client.npcCount; ++var1) { // L: 4859 - NPC var2 = Client.npcs[Client.npcIndices[var1]]; // L: 4860 - if (var2 != null && var2.isVisible() && var2.definition.isVisible == var0 && var2.definition.transformIsVisible()) { // L: 4861 - int var3 = var2.x >> 7; // L: 4862 - int var4 = var2.y >> 7; // L: 4863 - if (var3 >= 0 && var3 < 104 && var4 >= 0 && var4 < 104) { // L: 4864 - if (var2.field1011 == 1 && (var2.x & 127) == 64 && (var2.y & 127) == 64) { // L: 4865 - if (Client.tileLastDrawnActor[var3][var4] == Client.viewportDrawCount) { // L: 4866 - continue; - } - - Client.tileLastDrawnActor[var3][var4] = Client.viewportDrawCount; // L: 4867 + while (var1.hasNext()) { + GarbageCollectorMXBean var2 = (GarbageCollectorMXBean)var1.next(); + if (var2.isValid()) { + class25.garbageCollector = var2; + GameShell.garbageCollectorLastCheckTimeMs = -1L; + GameShell.garbageCollectorLastCollectionTime = -1L; } - - long var5 = GrandExchangeOfferOwnWorldComparator.calculateTag(0, 0, 1, !var2.definition.isInteractable, Client.npcIndices[var1]); // L: 4869 - var2.playerCycle = Client.cycle; // L: 4870 - ModeWhere.scene.drawEntity(GrandExchangeOfferUnitPriceComparator.Client_plane, var2.x, var2.y, GrandExchangeOfferWorldComparator.getTileHeight(var2.field1011 * 64 - 64 + var2.x, var2.field1011 * 64 - 64 + var2.y, GrandExchangeOfferUnitPriceComparator.Client_plane), var2.field1011 * 64 - 64 + 60, var2, var2.rotation, var5, var2.isWalking); // L: 4871 } + } catch (Throwable var11) { } } - } // L: 4875 + if (class25.garbageCollector != null) { + long var9 = class298.currentTimeMillis(); + long var3 = class25.garbageCollector.getCollectionTime(); + if (-1L != GameShell.garbageCollectorLastCollectionTime) { + long var5 = var3 - GameShell.garbageCollectorLastCollectionTime; + long var7 = var9 - GameShell.garbageCollectorLastCheckTimeMs; + if (var7 != 0L) { + var0 = (int)(100L * var5 / var7); + } + } + + GameShell.garbageCollectorLastCollectionTime = var3; + GameShell.garbageCollectorLastCheckTimeMs = var9; + } + + return var0; + } + + @ObfuscatedName("gm") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "112778991" + ) + static final void method209() { + if (WorldMapIcon_1.ClanChat_inClanChat) { + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.sort(); + } + + SecureRandomCallable.method1217(); + WorldMapIcon_1.ClanChat_inClanChat = false; + } + + } } diff --git a/runescape-client/src/main/java/GrandExchangeOfferOwnWorldComparator.java b/runescape-client/src/main/java/GrandExchangeOfferOwnWorldComparator.java index 1a6e83262c..390a6e99ac 100644 --- a/runescape-client/src/main/java/GrandExchangeOfferOwnWorldComparator.java +++ b/runescape-client/src/main/java/GrandExchangeOfferOwnWorldComparator.java @@ -4,81 +4,63 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bu") +@ObfuscatedName("be") @Implements("GrandExchangeOfferOwnWorldComparator") public class GrandExchangeOfferOwnWorldComparator implements Comparator { - @ObfuscatedName("t") - @Export("Tiles_hue") - static int[] Tiles_hue; - @ObfuscatedName("lq") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "Lht;" + descriptor = "Llc;" ) - static Widget field677; - @ObfuscatedName("f") + static Bounds field643; + @ObfuscatedName("h") @Export("filterWorlds") boolean filterWorlds; GrandExchangeOfferOwnWorldComparator() { - } // L: 11739 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ly;Ly;B)I", - garbageValue = "22" + descriptor = "(La;La;B)I", + garbageValue = "-7" ) @Export("compare_bridged") int compare_bridged(GrandExchangeEvent var1, GrandExchangeEvent var2) { - if (var2.world == var1.world) { // L: 11742 + if (var2.world == var1.world) { return 0; } else { - if (this.filterWorlds) { // L: 11743 - if (Client.worldId == var1.world) { // L: 11744 + if (this.filterWorlds) { + if (Client.worldId == var1.world) { return -1; } - if (var2.world == Client.worldId) { // L: 11745 + if (var2.world == Client.worldId) { return 1; } } - return var1.world < var2.world ? -1 : 1; // L: 11747 + return var1.world < var2.world ? -1 : 1; } } - public boolean equals(Object var1) { - return super.equals(var1); // L: 11755 - } - public int compare(Object var1, Object var2) { - return this.compare_bridged((GrandExchangeEvent)var1, (GrandExchangeEvent)var2); // L: 11751 + return this.compare_bridged((GrandExchangeEvent)var1, (GrandExchangeEvent)var2); } - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(IIIZIB)J", - garbageValue = "14" - ) - @Export("calculateTag") - public static long calculateTag(int var0, int var1, int var2, boolean var3, int var4) { - long var5 = (long)((var0 & 127) << 0 | (var1 & 127) << 7 | (var2 & 3) << 14) | ((long)var4 & 4294967295L) << 17; // L: 72 - if (var3) { // L: 73 - var5 |= 65536L; - } - - return var5; // L: 74 + public boolean equals(Object var1) { + return super.equals(var1); } - @ObfuscatedName("jg") + @ObfuscatedName("g") @ObfuscatedSignature( - descriptor = "(Lht;I)V", - garbageValue = "1071185333" + descriptor = "(Ljava/lang/String;II)V", + garbageValue = "-812111829" ) - @Export("invalidateWidget") - static void invalidateWidget(Widget var0) { - if (var0.cycle == Client.field748) { // L: 11029 - Client.field834[var0.rootIndex] = true; // L: 11030 - } - - } // L: 11032 + static final void method1359(String var0, int var1) { + PacketBufferNode var2 = ItemContainer.getPacketBufferNode(ClientPacket.field2292, Client.packetWriter.isaacCipher); + var2.packetBuffer.writeByte(FloorDecoration.stringCp1252NullTerminatedByteSize(var0) + 1); + var2.packetBuffer.writeStringCp1252NullTerminated(var0); + var2.packetBuffer.method5569(var1); + Client.packetWriter.addNode(var2); + } } diff --git a/runescape-client/src/main/java/GrandExchangeOfferTotalQuantityComparator.java b/runescape-client/src/main/java/GrandExchangeOfferTotalQuantityComparator.java index 8884a9a4f5..a9453a5ab0 100644 --- a/runescape-client/src/main/java/GrandExchangeOfferTotalQuantityComparator.java +++ b/runescape-client/src/main/java/GrandExchangeOfferTotalQuantityComparator.java @@ -1,27 +1,32 @@ import java.util.Comparator; 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("s") +@ObfuscatedName("b") @Implements("GrandExchangeOfferTotalQuantityComparator") final class GrandExchangeOfferTotalQuantityComparator implements Comparator { - @ObfuscatedName("u") - @ObfuscatedGetter( - intValue = -343674237 - ) - static int field81; - - @ObfuscatedName("f") + @ObfuscatedName("bn") + static String field75; + @ObfuscatedName("fc") @ObfuscatedSignature( - descriptor = "(Ly;Ly;I)I", - garbageValue = "-2113100809" + descriptor = "Lku;" + ) + @Export("fontBold12") + static Font fontBold12; + @ObfuscatedName("gw") + @Export("regionLandArchiveIds") + static int[] regionLandArchiveIds; + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(La;La;B)I", + garbageValue = "5" ) @Export("compare_bridged") int compare_bridged(GrandExchangeEvent var1, GrandExchangeEvent var2) { - return var1.grandExchangeOffer.totalQuantity < var2.grandExchangeOffer.totalQuantity ? -1 : (var2.grandExchangeOffer.totalQuantity == var1.grandExchangeOffer.totalQuantity ? 0 : 1); // L: 69 + return var1.grandExchangeOffer.totalQuantity < var2.grandExchangeOffer.totalQuantity ? -1 : (var2.grandExchangeOffer.totalQuantity == var1.grandExchangeOffer.totalQuantity ? 0 : 1); } public int compare(Object var1, Object var2) { @@ -32,59 +37,17 @@ final class GrandExchangeOfferTotalQuantityComparator implements Comparator { return super.equals(var1); } - @ObfuscatedName("f") + @ObfuscatedName("i") @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "280235874" + descriptor = "(Ljava/lang/String;I)V", + garbageValue = "-1658797049" ) - static int method183(int var0, int var1) { - ItemContainer var2 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); // L: 14 - if (var2 == null) { // L: 15 - return -1; - } else { - return var1 >= 0 && var1 < var2.ids.length ? var2.ids[var1] : -1; // L: 16 17 - } - } - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "43" - ) - public static boolean method174() { - try { - if (class206.musicPlayerStatus == 2) { // L: 71 - if (InterfaceParent.musicTrack == null) { // L: 72 - InterfaceParent.musicTrack = MusicTrack.readTrack(class23.musicTrackArchive, TileItem.musicTrackGroupId, class206.musicTrackFileId); // L: 73 - if (InterfaceParent.musicTrack == null) { // L: 74 - return false; - } - } - - if (LoginType.soundCache == null) { // L: 76 - LoginType.soundCache = new SoundCache(class206.soundEffectsArchive, class206.musicSamplesArchive); - } - - if (class13.midiPcmStream.loadMusicTrack(InterfaceParent.musicTrack, class206.musicPatchesArchive, LoginType.soundCache, 22050)) { // L: 77 - class13.midiPcmStream.clearAll(); // L: 78 - class13.midiPcmStream.setPcmStreamVolume(class206.musicTrackVolume); // L: 79 - class13.midiPcmStream.setMusicTrack(InterfaceParent.musicTrack, class195.musicTrackBoolean); // L: 80 - class206.musicPlayerStatus = 0; // L: 81 - InterfaceParent.musicTrack = null; // L: 82 - LoginType.soundCache = null; // L: 83 - class23.musicTrackArchive = null; // L: 84 - return true; // L: 85 - } - } - } catch (Exception var1) { // L: 89 - var1.printStackTrace(); // L: 90 - class13.midiPcmStream.clear(); // L: 91 - class206.musicPlayerStatus = 0; // L: 92 - InterfaceParent.musicTrack = null; // L: 93 - LoginType.soundCache = null; // L: 94 - class23.musicTrackArchive = null; // L: 95 - } - - return false; // L: 97 + static final void method165(String var0) { + StringBuilder var10000 = new StringBuilder(); + Object var10001 = null; + var10000 = var10000.append("Please remove ").append(var0); + var10001 = null; + String var1 = var10000.append(" from your friend list first").toString(); + class234.addGameMessage(30, "", var1); } } diff --git a/runescape-client/src/main/java/GrandExchangeOfferUnitPriceComparator.java b/runescape-client/src/main/java/GrandExchangeOfferUnitPriceComparator.java index 788815a95b..33dc02c6d9 100644 --- a/runescape-client/src/main/java/GrandExchangeOfferUnitPriceComparator.java +++ b/runescape-client/src/main/java/GrandExchangeOfferUnitPriceComparator.java @@ -1,89 +1,128 @@ import java.util.Comparator; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; -import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("w") +@ObfuscatedName("r") @Implements("GrandExchangeOfferUnitPriceComparator") final class GrandExchangeOfferUnitPriceComparator implements Comparator { - @ObfuscatedName("kt") - @ObfuscatedGetter( - intValue = 2060435919 - ) - @Export("Client_plane") - static int Client_plane; - - @ObfuscatedName("f") + @ObfuscatedName("bx") @ObfuscatedSignature( - descriptor = "(Ly;Ly;S)I", - garbageValue = "-21475" + descriptor = "Lmu;" + ) + @Export("loginType") + static LoginType loginType; + @ObfuscatedName("do") + @ObfuscatedSignature( + descriptor = "Lil;" + ) + @Export("archive9") + static Archive archive9; + @ObfuscatedName("dz") + @ObfuscatedSignature( + descriptor = "Lil;" + ) + @Export("archive13") + static Archive archive13; + @ObfuscatedName("ha") + @ObfuscatedSignature( + descriptor = "[Llm;" + ) + @Export("mapMarkerSprites") + static Sprite[] mapMarkerSprites; + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(La;La;I)I", + garbageValue = "1020581698" ) @Export("compare_bridged") int compare_bridged(GrandExchangeEvent var1, GrandExchangeEvent var2) { - return var1.grandExchangeOffer.unitPrice < var2.grandExchangeOffer.unitPrice ? -1 : (var2.grandExchangeOffer.unitPrice == var1.grandExchangeOffer.unitPrice ? 0 : 1); // L: 43 + return var1.grandExchangeOffer.unitPrice < var2.grandExchangeOffer.unitPrice ? -1 : (var2.grandExchangeOffer.unitPrice == var1.grandExchangeOffer.unitPrice ? 0 : 1); } public int compare(Object var1, Object var2) { - return this.compare_bridged((GrandExchangeEvent)var1, (GrandExchangeEvent)var2); // L: 47 + return this.compare_bridged((GrandExchangeEvent)var1, (GrandExchangeEvent)var2); } public boolean equals(Object var1) { - return super.equals(var1); // L: 51 + return super.equals(var1); } - @ObfuscatedName("f") + @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "([BILjava/lang/CharSequence;I)I", - garbageValue = "2085161041" + descriptor = "(Lhe;II)V", + garbageValue = "1825626795" ) - public static int method219(byte[] var0, int var1, CharSequence var2) { - int var3 = var2.length(); // L: 9 - int var4 = var1; // L: 10 - - for (int var5 = 0; var5 < var3; ++var5) { // L: 11 - char var6 = var2.charAt(var5); // L: 12 - if (var6 <= 127) { // L: 13 - var0[var4++] = (byte)var6; // L: 14 - } else if (var6 <= 2047) { // L: 16 - var0[var4++] = (byte)(192 | var6 >> 6); - var0[var4++] = (byte)(128 | var6 & '?'); - } else { - var0[var4++] = (byte)(224 | var6 >> '\f'); // L: 21 - var0[var4++] = (byte)(128 | var6 >> 6 & 63); // L: 22 - var0[var4++] = (byte)(128 | var6 & '?'); // L: 23 + @Export("Widget_setKeyIgnoreHeld") + static final void Widget_setKeyIgnoreHeld(Widget var0, int var1) { + if (var0.field2649 == null) { + throw new RuntimeException(); + } else { + if (var0.field2684 == null) { + var0.field2684 = new int[var0.field2649.length]; } - } - return var4 - var1; // L: 26 + var0.field2684[var1] = Integer.MAX_VALUE; + } } - @ObfuscatedName("f") + @ObfuscatedName("c") @ObfuscatedSignature( - descriptor = "(Liw;B)V", - garbageValue = "1" + descriptor = "(ILcs;ZI)I", + garbageValue = "-613147121" ) - public static void method211(AbstractArchive var0) { - InvDefinition.InvDefinition_archive = var0; // L: 17 - } // L: 18 - - @ObfuscatedName("kc") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)Ljava/lang/String;", - garbageValue = "-56" - ) - static String method218(String var0) { - PlayerType[] var1 = WorldMapLabelSize.PlayerType_values(); // L: 11676 - - for (int var2 = 0; var2 < var1.length; ++var2) { // L: 11677 - PlayerType var3 = var1[var2]; // L: 11678 - if (var3.modIcon != -1 && var0.startsWith(PrivateChatMode.method6034(var3.modIcon))) { // L: 11680 11681 - var0 = var0.substring(6 + Integer.toString(var3.modIcon).length()); // L: 11682 - break; - } + static int method200(int var0, Script var1, boolean var2) { + Widget var3 = var2 ? PlayerAppearance.field2561 : VarcInt.field3264; + if (var0 == ScriptOpcodes.CC_GETSCROLLX) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.scrollX; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETSCROLLY) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.scrollY; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETTEXT) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3.text; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETSCROLLWIDTH) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.scrollWidth; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETSCROLLHEIGHT) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.scrollHeight; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETMODELZOOM) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.modelZoom; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETMODELANGLE_X) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.modelAngleX; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETMODELANGLE_Z) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.modelAngleZ; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETMODELANGLE_Y) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.modelAngleY; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETTRANSTOP) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.transparencyTop; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETTRANSBOT) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.transparencyBot; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETCOLOUR) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.color; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETFILLCOLOUR) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.color2; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETFILLMODE) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.fillMode.rsOrdinal(); + return 1; + } else if (var0 == ScriptOpcodes.CC_GETMODELTRANSPARENT) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.modelTransparency ? 1 : 0; + return 1; + } else { + return 2; } - - return var0; // L: 11689 } } diff --git a/runescape-client/src/main/java/GrandExchangeOfferWorldComparator.java b/runescape-client/src/main/java/GrandExchangeOfferWorldComparator.java index 93a8e4314c..2b02ffe857 100644 --- a/runescape-client/src/main/java/GrandExchangeOfferWorldComparator.java +++ b/runescape-client/src/main/java/GrandExchangeOfferWorldComparator.java @@ -4,61 +4,33 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("p") +@ObfuscatedName("i") @Implements("GrandExchangeOfferWorldComparator") final class GrandExchangeOfferWorldComparator implements Comparator { - @ObfuscatedName("sj") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "Llt;" + descriptor = "Lib;" ) - @Export("masterDisk") - static ArchiveDisk masterDisk; - @ObfuscatedName("bc") - @ObfuscatedSignature( - descriptor = "Lik;" - ) - static StudioGame field58; + @Export("Widget_modelsArchive") + public static AbstractArchive Widget_modelsArchive; + @ObfuscatedName("i") + static int[][][] field52; - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ly;Ly;B)I", - garbageValue = "15" + descriptor = "(La;La;I)I", + garbageValue = "684314758" ) @Export("compare_bridged") int compare_bridged(GrandExchangeEvent var1, GrandExchangeEvent var2) { - return var1.world < var2.world ? -1 : (var2.world == var1.world ? 0 : 1); // L: 28 + return var1.world < var2.world ? -1 : (var2.world == var1.world ? 0 : 1); } public int compare(Object var1, Object var2) { - return this.compare_bridged((GrandExchangeEvent)var1, (GrandExchangeEvent)var2); // L: 32 + return this.compare_bridged((GrandExchangeEvent)var1, (GrandExchangeEvent)var2); } public boolean equals(Object var1) { - return super.equals(var1); // L: 36 - } - - @ObfuscatedName("gb") - @ObfuscatedSignature( - descriptor = "(IIII)I", - garbageValue = "-297483438" - ) - @Export("getTileHeight") - static final int getTileHeight(int var0, int var1, int var2) { - int var3 = var0 >> 7; // L: 5423 - int var4 = var1 >> 7; // L: 5424 - if (var3 >= 0 && var4 >= 0 && var3 <= 103 && var4 <= 103) { // L: 5425 - int var5 = var2; // L: 5426 - if (var2 < 3 && (Tiles.Tiles_renderFlags[1][var3][var4] & 2) == 2) { // L: 5427 - var5 = var2 + 1; - } - - int var6 = var0 & 127; // L: 5428 - int var7 = var1 & 127; // L: 5429 - int var8 = (128 - var6) * Tiles.Tiles_heights[var5][var3][var4] + var6 * Tiles.Tiles_heights[var5][var3 + 1][var4] >> 7; // L: 5430 - int var9 = Tiles.Tiles_heights[var5][var3 + 1][var4 + 1] * var6 + Tiles.Tiles_heights[var5][var3][var4 + 1] * (128 - var6) >> 7; // L: 5431 - return var8 * (128 - var7) + var7 * var9 >> 7; // L: 5432 - } else { - return 0; - } + return super.equals(var1); } } diff --git a/runescape-client/src/main/java/GraphicsDefaults.java b/runescape-client/src/main/java/GraphicsDefaults.java index c89272c7a7..29b31b2dcf 100644 --- a/runescape-client/src/main/java/GraphicsDefaults.java +++ b/runescape-client/src/main/java/GraphicsDefaults.java @@ -4,120 +4,114 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lo") +@ObfuscatedName("ln") @Implements("GraphicsDefaults") public class GraphicsDefaults { - @ObfuscatedName("p") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 1450250857 - ) - @Export("graphicsTickTimeIdx") - static int graphicsTickTimeIdx; - @ObfuscatedName("f") - @ObfuscatedGetter( - intValue = -1995988465 + intValue = -1044001765 ) @Export("compass") public int compass; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -395005955 + intValue = 1859262069 ) - public int field3835; - @ObfuscatedName("l") + public int field3845; + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1288371471 + intValue = -1603018569 ) @Export("mapScenes") public int mapScenes; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -768564219 + intValue = 1068647141 ) @Export("headIconsPk") public int headIconsPk; - @ObfuscatedName("z") - @ObfuscatedGetter( - intValue = -1062060293 - ) - public int field3836; - @ObfuscatedName("q") - @ObfuscatedGetter( - intValue = -1307072609 - ) - public int field3839; - @ObfuscatedName("k") - @ObfuscatedGetter( - intValue = 534054869 - ) - public int field3841; - @ObfuscatedName("c") - @ObfuscatedGetter( - intValue = 2066068829 - ) - public int field3837; - @ObfuscatedName("u") - @ObfuscatedGetter( - intValue = 835992905 - ) - public int field3834; @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 1361350511 - ) - public int field3842; - @ObfuscatedName("e") - @ObfuscatedGetter( - intValue = 643339115 + intValue = 1862152703 ) public int field3844; + @ObfuscatedName("j") + @ObfuscatedGetter( + intValue = 1527226929 + ) + public int field3843; + @ObfuscatedName("n") + @ObfuscatedGetter( + intValue = -1238390891 + ) + public int field3846; + @ObfuscatedName("p") + @ObfuscatedGetter( + intValue = 1222732897 + ) + public int field3847; + @ObfuscatedName("l") + @ObfuscatedGetter( + intValue = -1053374165 + ) + public int field3848; + @ObfuscatedName("z") + @ObfuscatedGetter( + intValue = -295744595 + ) + public int field3849; + @ObfuscatedName("u") + @ObfuscatedGetter( + intValue = -406039943 + ) + public int field3850; public GraphicsDefaults() { - this.compass = -1; // L: 7 - this.field3835 = -1; // L: 8 - this.mapScenes = -1; // L: 9 - this.headIconsPk = -1; // L: 10 - this.field3836 = -1; // L: 11 - this.field3839 = -1; // L: 12 - this.field3841 = -1; // L: 13 - this.field3837 = -1; // L: 14 - this.field3834 = -1; // L: 15 - this.field3842 = -1; // L: 16 - this.field3844 = -1; // L: 17 + this.compass = -1; + this.field3845 = -1; + this.mapScenes = -1; + this.headIconsPk = -1; + this.field3844 = -1; + this.field3843 = -1; + this.field3846 = -1; + this.field3847 = -1; + this.field3848 = -1; + this.field3849 = -1; + this.field3850 = -1; } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Liw;I)V", - garbageValue = "-1821799353" + descriptor = "(Lib;B)V", + garbageValue = "-1" ) @Export("decode") public void decode(AbstractArchive var1) { - byte[] var2 = var1.takeFileFlat(DefaultsGroup.field3833.group); // L: 20 - Buffer var3 = new Buffer(var2); // L: 21 + byte[] var2 = var1.takeFileFlat(DefaultsGroup.field3839.group); + Buffer var3 = new Buffer(var2); while (true) { - int var4 = var3.readUnsignedByte(); // L: 23 - if (var4 == 0) { // L: 24 - return; // L: 51 + int var4 = var3.readUnsignedByte(); + if (var4 == 0) { + return; } - switch(var4) { // L: 25 + switch(var4) { case 1: - var3.readMedium(); // L: 31 - break; // L: 32 + var3.readMedium(); + break; case 2: - this.compass = var3.method5851(); // L: 36 - this.field3835 = var3.method5851(); // L: 37 - this.mapScenes = var3.method5851(); // L: 38 - this.headIconsPk = var3.method5851(); // L: 39 - this.field3836 = var3.method5851(); // L: 40 - this.field3839 = var3.method5851(); // L: 41 - this.field3841 = var3.method5851(); // L: 42 - this.field3837 = var3.method5851(); // L: 43 - this.field3834 = var3.method5851(); // L: 44 - this.field3842 = var3.method5851(); // L: 45 - this.field3844 = var3.method5851(); // L: 46 + this.compass = var3.method5559(); + this.field3845 = var3.method5559(); + this.mapScenes = var3.method5559(); + this.headIconsPk = var3.method5559(); + this.field3844 = var3.method5559(); + this.field3843 = var3.method5559(); + this.field3846 = var3.method5559(); + this.field3847 = var3.method5559(); + this.field3848 = var3.method5559(); + this.field3849 = var3.method5559(); + this.field3850 = var3.method5559(); } } } diff --git a/runescape-client/src/main/java/GraphicsObject.java b/runescape-client/src/main/java/GraphicsObject.java index c2f04c733a..73bef7aef0 100644 --- a/runescape-client/src/main/java/GraphicsObject.java +++ b/runescape-client/src/main/java/GraphicsObject.java @@ -4,143 +4,167 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cy") +@ObfuscatedName("ce") @Implements("GraphicsObject") public final class GraphicsObject extends Entity { - @ObfuscatedName("f") + @ObfuscatedName("a") + public static String[] field1117; + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 494289481 + intValue = 1733253917 ) @Export("id") int id; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -770993721 + intValue = -561629891 ) @Export("cycleStart") int cycleStart; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 2046486035 - ) - @Export("plane") - int plane; - @ObfuscatedName("m") - @ObfuscatedGetter( - intValue = 467633941 - ) - @Export("x") - int x; - @ObfuscatedName("z") - @ObfuscatedGetter( - intValue = 1569589891 - ) - @Export("height") - int height; - @ObfuscatedName("q") - @ObfuscatedGetter( - intValue = 1673763885 + intValue = 843078799 ) @Export("y") int y; - @ObfuscatedName("k") + @ObfuscatedName("w") + @ObfuscatedGetter( + intValue = -391213595 + ) + @Export("plane") + int plane; + @ObfuscatedName("t") + @ObfuscatedGetter( + intValue = 1438235689 + ) + @Export("x") + int x; + @ObfuscatedName("j") + @ObfuscatedGetter( + intValue = 697288519 + ) + @Export("height") + int height; + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Ljg;" + descriptor = "Ljy;" ) @Export("sequenceDefinition") SequenceDefinition sequenceDefinition; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = -300375293 + intValue = -737281837 ) @Export("frame") int frame; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = 687860479 + intValue = -2023288775 ) @Export("frameCycle") int frameCycle; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("isFinished") boolean isFinished; GraphicsObject(int var1, int var2, int var3, int var4, int var5, int var6, int var7) { - this.frame = 0; // L: 16 - this.frameCycle = 0; // L: 17 - this.isFinished = false; // L: 18 - this.id = var1; // L: 21 - this.plane = var2; // L: 22 - this.x = var3; // L: 23 - this.y = var4; // L: 24 - this.height = var5; // L: 25 - this.cycleStart = var7 + var6; // L: 26 - int var8 = HealthBarUpdate.SpotAnimationDefinition_get(this.id).sequence; // L: 27 - if (var8 != -1) { // L: 28 - this.isFinished = false; // L: 29 - this.sequenceDefinition = class105.SequenceDefinition_get(var8); // L: 30 + this.frame = 0; + this.frameCycle = 0; + this.isFinished = false; + this.id = var1; + this.plane = var2; + this.x = var3; + this.y = var4; + this.height = var5; + this.cycleStart = var7 + var6; + int var8 = TileItem.SpotAnimationDefinition_get(this.id).sequence; + if (var8 != -1) { + this.isFinished = false; + this.sequenceDefinition = ParamDefinition.SequenceDefinition_get(var8); } else { - this.isFinished = true; // L: 32 + this.isFinished = true; } - } // L: 33 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-825901935" + garbageValue = "1007700617" ) @Export("advance") final void advance(int var1) { - if (!this.isFinished) { // L: 36 - this.frameCycle += var1; // L: 37 + if (!this.isFinished) { + this.frameCycle += var1; - while (this.frameCycle > this.sequenceDefinition.frameLengths[this.frame]) { // L: 38 - this.frameCycle -= this.sequenceDefinition.frameLengths[this.frame]; // L: 39 - ++this.frame; // L: 40 - if (this.frame >= this.sequenceDefinition.frameIds.length) { // L: 41 - this.isFinished = true; // L: 42 + while (this.frameCycle > this.sequenceDefinition.frameLengths[this.frame]) { + this.frameCycle -= this.sequenceDefinition.frameLengths[this.frame]; + ++this.frame; + if (this.frame >= this.sequenceDefinition.frameIds.length) { + this.isFinished = true; break; } } } - } // L: 46 + } - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( descriptor = "(I)Leh;", - garbageValue = "-2070677844" + garbageValue = "-1814248977" ) @Export("getModel") protected final Model getModel() { - SpotAnimationDefinition var1 = HealthBarUpdate.SpotAnimationDefinition_get(this.id); // L: 49 + SpotAnimationDefinition var1 = TileItem.SpotAnimationDefinition_get(this.id); Model var2; - if (!this.isFinished) { // L: 51 + if (!this.isFinished) { var2 = var1.getModel(this.frame); } else { - var2 = var1.getModel(-1); // L: 52 + var2 = var1.getModel(-1); } - return var2 == null ? null : var2; // L: 53 + return var2 == null ? null : var2; } - @ObfuscatedName("eb") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1882927898" + descriptor = "(B)V", + garbageValue = "14" ) - static int method2122() { - if (Client.archiveLoaders != null && Client.archiveLoadersDone < Client.archiveLoaders.size()) { // L: 1909 - int var0 = 0; // L: 1910 + public static void method2090() { + synchronized(KeyHandler.KeyHandler_instance) { + ++KeyHandler.KeyHandler_idleCycles; + KeyHandler.field415 = KeyHandler.field417; + KeyHandler.field414 = 0; + int var1; + if (KeyHandler.field410 < 0) { + for (var1 = 0; var1 < 112; ++var1) { + KeyHandler.KeyHandler_pressedKeys[var1] = false; + } - for (int var1 = 0; var1 <= Client.archiveLoadersDone; ++var1) { // L: 1911 - var0 += ((ArchiveLoader)Client.archiveLoaders.get(var1)).loadedCount; // L: 1912 + KeyHandler.field410 = KeyHandler.field401; + } else { + while (KeyHandler.field401 != KeyHandler.field410) { + var1 = KeyHandler.field408[KeyHandler.field401]; + KeyHandler.field401 = KeyHandler.field401 + 1 & 127; + if (var1 < 0) { + KeyHandler.KeyHandler_pressedKeys[~var1] = false; + } else { + if (!KeyHandler.KeyHandler_pressedKeys[var1] && KeyHandler.field414 < KeyHandler.field413.length - 1) { + KeyHandler.field413[++KeyHandler.field414 - 1] = var1; + } + + KeyHandler.KeyHandler_pressedKeys[var1] = true; + } + } } - return var0 * 10000 / Client.field953; // L: 1914 - } else { - return 10000; + if (KeyHandler.field414 > 0) { + KeyHandler.KeyHandler_idleCycles = 0; + } + + KeyHandler.field417 = KeyHandler.field419; } } } diff --git a/runescape-client/src/main/java/HealthBar.java b/runescape-client/src/main/java/HealthBar.java index 35ae3fa18d..9cab845c51 100644 --- a/runescape-client/src/main/java/HealthBar.java +++ b/runescape-client/src/main/java/HealthBar.java @@ -1,207 +1,100 @@ 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("cx") +@ObfuscatedName("cb") @Implements("HealthBar") public class HealthBar extends Node { - @ObfuscatedName("u") - @ObfuscatedGetter( - intValue = -1819103189 - ) - @Export("ItemDefinition_fileCount") - public static int ItemDefinition_fileCount; - @ObfuscatedName("h") - @ObfuscatedGetter( - intValue = 1100752365 - ) - @Export("canvasHeight") - public static int canvasHeight; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lix;" + descriptor = "Lie;" ) @Export("definition") HealthBarDefinition definition; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Ljs;" + descriptor = "Ljn;" ) @Export("updates") IterableNodeDeque updates; @ObfuscatedSignature( - descriptor = "(Lix;)V" + descriptor = "(Lie;)V" ) HealthBar(HealthBarDefinition var1) { - this.updates = new IterableNodeDeque(); // L: 12 - this.definition = var1; // L: 15 - } // L: 16 + this.updates = new IterableNodeDeque(); + this.definition = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(IIIII)V", - garbageValue = "184587772" + garbageValue = "-1617546911" ) @Export("put") void put(int var1, int var2, int var3, int var4) { - HealthBarUpdate var5 = null; // L: 19 - int var6 = 0; // L: 20 + HealthBarUpdate var5 = null; + int var6 = 0; - for (HealthBarUpdate var7 = (HealthBarUpdate)this.updates.last(); var7 != null; var7 = (HealthBarUpdate)this.updates.previous()) { // L: 21 - ++var6; // L: 22 - if (var7.cycle == var1) { // L: 23 - var7.set(var1, var2, var3, var4); // L: 24 - return; // L: 25 + for (HealthBarUpdate var7 = (HealthBarUpdate)this.updates.last(); var7 != null; var7 = (HealthBarUpdate)this.updates.previous()) { + ++var6; + if (var7.cycle == var1) { + var7.set(var1, var2, var3, var4); + return; } - if (var7.cycle <= var1) { // L: 27 + if (var7.cycle <= var1) { var5 = var7; } } - if (var5 == null) { // L: 29 - if (var6 < 4) { // L: 30 + if (var5 == null) { + if (var6 < 4) { this.updates.addLast(new HealthBarUpdate(var1, var2, var3, var4)); } } else { - IterableNodeDeque.IterableNodeDeque_addBefore(new HealthBarUpdate(var1, var2, var3, var4), var5); // L: 33 + IterableNodeDeque.IterableNodeDeque_addBefore(new HealthBarUpdate(var1, var2, var3, var4), var5); if (var6 >= 4) { - this.updates.last().remove(); // L: 34 + this.updates.last().remove(); } } - } // L: 31 35 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(II)Lce;", - garbageValue = "1695918285" + descriptor = "(II)Lci;", + garbageValue = "241304774" ) @Export("get") HealthBarUpdate get(int var1) { - HealthBarUpdate var2 = (HealthBarUpdate)this.updates.last(); // L: 38 - if (var2 != null && var2.cycle <= var1) { // L: 39 - for (HealthBarUpdate var3 = (HealthBarUpdate)this.updates.previous(); var3 != null && var3.cycle <= var1; var3 = (HealthBarUpdate)this.updates.previous()) { // L: 40 41 - var2.remove(); // L: 42 - var2 = var3; // L: 43 + HealthBarUpdate var2 = (HealthBarUpdate)this.updates.last(); + if (var2 != null && var2.cycle <= var1) { + for (HealthBarUpdate var3 = (HealthBarUpdate)this.updates.previous(); var3 != null && var3.cycle <= var1; var3 = (HealthBarUpdate)this.updates.previous()) { + var2.remove(); + var2 = var3; } - if (this.definition.int5 + var2.cycle + var2.cycleOffset > var1) { // L: 47 + if (this.definition.int5 + var2.cycle + var2.cycleOffset > var1) { return var2; } else { - var2.remove(); // L: 49 - return null; // L: 50 + var2.remove(); + return null; } } else { return null; } } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "112420094" + descriptor = "(B)Z", + garbageValue = "127" ) @Export("isEmpty") boolean isEmpty() { - return this.updates.method4990(); // L: 55 + return this.updates.method4840(); } - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(Liw;Liw;ZII)V", - garbageValue = "265238448" - ) - static void method2141(AbstractArchive var0, AbstractArchive var1, boolean var2, int var3) { - if (Login.clearLoginScreen) { // L: 128 - if (var3 == 4) { // L: 129 - Login.loginIndex = 4; // L: 130 - } - - } else { - Login.loginIndex = var3; // L: 134 - Rasterizer2D.Rasterizer2D_clear(); // L: 135 - byte[] var4 = var0.takeFileByNames("title.jpg", ""); // L: 136 - Login.leftTitleSprite = class39.convertJpgToSprite(var4); // L: 137 - Login.rightTitleSprite = Login.leftTitleSprite.mirrorHorizontally(); // L: 138 - AbstractArchive.method4386(var1, Client.worldProperties); // L: 139 - Tiles.titleboxSprite = Canvas.SpriteBuffer_getIndexedSpriteByName(var1, "titlebox", ""); // L: 140 - Login.titlebuttonSprite = Canvas.SpriteBuffer_getIndexedSpriteByName(var1, "titlebutton", ""); // L: 141 - int var6 = var1.getGroupId("runes"); // L: 144 - int var7 = var1.getFileId(var6, ""); // L: 145 - IndexedSprite[] var5 = UserComparator5.method3540(var1, var6, var7); // L: 146 - class278.runesSprite = var5; // L: 148 - var7 = var1.getGroupId("title_mute"); // L: 151 - int var8 = var1.getFileId(var7, ""); // L: 152 - IndexedSprite[] var10 = UserComparator5.method3540(var1, var7, var8); // L: 153 - DefaultsGroup.title_muteSprite = var10; // L: 155 - Login.options_buttons_0Sprite = Canvas.SpriteBuffer_getIndexedSpriteByName(var1, "options_radio_buttons,0", ""); // L: 156 - class69.field583 = Canvas.SpriteBuffer_getIndexedSpriteByName(var1, "options_radio_buttons,4", ""); // L: 157 - Login.options_buttons_2Sprite = Canvas.SpriteBuffer_getIndexedSpriteByName(var1, "options_radio_buttons,2", ""); // L: 158 - DevicePcmPlayerProvider.field439 = Canvas.SpriteBuffer_getIndexedSpriteByName(var1, "options_radio_buttons,6", ""); // L: 159 - class225.field2576 = Login.options_buttons_0Sprite.subWidth; // L: 160 - class232.field2780 = Login.options_buttons_0Sprite.subHeight; // L: 161 - Login.loginScreenRunesAnimation = new LoginScreenAnimation(class278.runesSprite); // L: 162 - if (var2) { // L: 163 - Login.Login_username = ""; // L: 164 - Login.Login_password = ""; // L: 165 - } - - class169.field2035 = 0; // L: 167 - EnumDefinition.otp = ""; // L: 168 - Login.field1227 = true; // L: 169 - Login.worldSelectOpen = false; // L: 170 - if (!GrandExchangeOfferAgeComparator.clientPreferences.titleMusicDisabled) { // L: 171 - Archive var11 = ApproximateRouteStrategy.archive6; // L: 172 - var8 = var11.getGroupId("scape main"); // L: 174 - int var9 = var11.getFileId(var8, ""); // L: 175 - class206.musicPlayerStatus = 1; // L: 177 - class23.musicTrackArchive = var11; // L: 178 - TileItem.musicTrackGroupId = var8; // L: 179 - class206.musicTrackFileId = var9; // L: 180 - class206.musicTrackVolume = 255; // L: 181 - class195.musicTrackBoolean = false; // L: 182 - MusicPatch.pcmSampleLength = 2; // L: 183 - } else { - VertexNormal.method3133(2); // L: 187 - } - - WorldMapSection0.method323(false); // L: 188 - Login.clearLoginScreen = true; // L: 189 - Login.xPadding = (ItemContainer.canvasWidth - 765) / 2; // L: 190 - Login.loginBoxX = Login.xPadding + 202; // L: 191 - AttackOption.loginBoxCenter = Login.loginBoxX + 180; // L: 192 - Login.leftTitleSprite.drawAt(Login.xPadding, 0); // L: 193 - Login.rightTitleSprite.drawAt(Login.xPadding + 382, 0); // L: 194 - SecureRandomFuture.logoSprite.drawAt(Login.xPadding + 382 - SecureRandomFuture.logoSprite.subWidth / 2, 18); // L: 195 - } - } // L: 132 196 - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "-614067797" - ) - @Export("Login_promptCredentials") - static void Login_promptCredentials(boolean var0) { - Login.Login_response1 = ""; // L: 818 - Login.Login_response2 = "Enter your username/email & password."; // L: 819 - Login.Login_response3 = ""; // L: 820 - Login.loginIndex = 2; // L: 821 - if (var0) { // L: 822 - Login.Login_password = ""; - } - - MusicPatch.method4038(); // L: 823 - if (Client.Login_isUsernameRemembered && Login.Login_username != null && Login.Login_username.length() > 0) { // L: 825 - Login.currentLoginField = 1; // L: 826 - } else { - Login.currentLoginField = 0; // L: 829 - } - - } // L: 832 } diff --git a/runescape-client/src/main/java/HealthBarDefinition.java b/runescape-client/src/main/java/HealthBarDefinition.java index 47d17a1320..1085822655 100644 --- a/runescape-client/src/main/java/HealthBarDefinition.java +++ b/runescape-client/src/main/java/HealthBarDefinition.java @@ -4,204 +4,440 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ix") +@ObfuscatedName("ie") @Implements("HealthBarDefinition") public class HealthBarDefinition extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Liw;" - ) - @Export("HealthBarDefinition_archive") - public static AbstractArchive HealthBarDefinition_archive; - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("HitSplatDefinition_spritesArchive") - public static AbstractArchive HitSplatDefinition_spritesArchive; - @ObfuscatedName("l") + static AbstractArchive HitSplatDefinition_spritesArchive; + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("HealthBarDefinition_cached") - public static EvictingDualNodeHashTable HealthBarDefinition_cached; - @ObfuscatedName("m") + static EvictingDualNodeHashTable HealthBarDefinition_cached; + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("HealthBarDefinition_cachedSprites") static EvictingDualNodeHashTable HealthBarDefinition_cachedSprites; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 1202719207 + intValue = 109126469 ) - public int field3310; - @ObfuscatedName("c") + public int field3313; + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 989487885 + intValue = -1820061899 ) @Export("int1") public int int1; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = 609506575 + intValue = -1380273031 ) @Export("int2") public int int2; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = -1179673119 + intValue = 731318801 ) @Export("int3") public int int3; + @ObfuscatedName("u") + @ObfuscatedGetter( + intValue = 1947446505 + ) + public int field3307; @ObfuscatedName("e") @ObfuscatedGetter( - intValue = 1289103719 - ) - public int field3314; - @ObfuscatedName("o") - @ObfuscatedGetter( - intValue = -1724859725 + intValue = 1974124525 ) @Export("int5") public int int5; - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedGetter( - intValue = 1229803207 + intValue = -1776540411 ) @Export("frontSpriteID") int frontSpriteID; - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedGetter( - intValue = -524037047 + intValue = 1196473375 ) @Export("backSpriteID") int backSpriteID; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedGetter( - intValue = 185744125 + intValue = -244272845 ) @Export("width") public int width; - @ObfuscatedName("r") + @ObfuscatedName("f") @ObfuscatedGetter( - intValue = -1513629223 + intValue = -1111051827 ) @Export("widthPadding") public int widthPadding; static { - HealthBarDefinition_cached = new EvictingDualNodeHashTable(64); // L: 14 - HealthBarDefinition_cachedSprites = new EvictingDualNodeHashTable(64); // L: 15 + HealthBarDefinition_cached = new EvictingDualNodeHashTable(64); + HealthBarDefinition_cachedSprites = new EvictingDualNodeHashTable(64); } - public HealthBarDefinition() { - this.int1 = 255; // L: 19 - this.int2 = 255; // L: 20 - this.int3 = -1; // L: 21 - this.field3314 = 1; // L: 22 - this.int5 = 70; // L: 23 - this.frontSpriteID = -1; // L: 24 - this.backSpriteID = -1; // L: 25 - this.width = 30; // L: 26 - this.widthPadding = 0; // L: 27 + HealthBarDefinition() { + this.int1 = 255; + this.int2 = 255; + this.int3 = -1; + this.field3307 = 1; + this.int5 = 70; + this.frontSpriteID = -1; + this.backSpriteID = -1; + this.width = 30; + this.widthPadding = 0; } - @ObfuscatedName("f") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-1137754671" + descriptor = "(Lkj;B)V", + garbageValue = "72" ) @Export("decode") - public void decode(Buffer var1) { + void decode(Buffer var1) { while (true) { - int var2 = var1.readUnsignedByte(); // L: 31 - if (var2 == 0) { // L: 32 - return; // L: 35 + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; } - this.decodeNext(var1, var2); // L: 33 + this.decodeNext(var1, var2); } } - @ObfuscatedName("b") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "1563095853" + descriptor = "(Lkj;IB)V", + garbageValue = "37" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { - if (var2 == 1) { // L: 38 - var1.readUnsignedShort(); // L: 39 - } else if (var2 == 2) { // L: 41 + if (var2 == 1) { + var1.readUnsignedShort(); + } else if (var2 == 2) { this.int1 = var1.readUnsignedByte(); - } else if (var2 == 3) { // L: 42 + } else if (var2 == 3) { this.int2 = var1.readUnsignedByte(); - } else if (var2 == 4) { // L: 43 + } else if (var2 == 4) { this.int3 = 0; } else if (var2 == 5) { - this.int5 = var1.readUnsignedShort(); // L: 44 - } else if (var2 == 6) { // L: 45 - var1.readUnsignedByte(); // L: 46 - } else if (var2 == 7) { // L: 48 - this.frontSpriteID = var1.method5851(); - } else if (var2 == 8) { // L: 49 - this.backSpriteID = var1.method5851(); + this.int5 = var1.readUnsignedShort(); + } else if (var2 == 6) { + var1.readUnsignedByte(); + } else if (var2 == 7) { + this.frontSpriteID = var1.method5559(); + } else if (var2 == 8) { + this.backSpriteID = var1.method5559(); } else if (var2 == 11) { - this.int3 = var1.readUnsignedShort(); // L: 50 - } else if (var2 == 14) { // L: 51 + this.int3 = var1.readUnsignedShort(); + } else if (var2 == 14) { this.width = var1.readUnsignedByte(); - } else if (var2 == 15) { // L: 52 + } else if (var2 == 15) { this.widthPadding = var1.readUnsignedByte(); } - } // L: 54 + } - @ObfuscatedName("l") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(B)Llc;", - garbageValue = "124" + descriptor = "(I)Llm;", + garbageValue = "-1946834755" ) @Export("getFrontSprite") public Sprite getFrontSprite() { - if (this.frontSpriteID < 0) { // L: 57 + if (this.frontSpriteID < 0) { return null; } else { - Sprite var1 = (Sprite)HealthBarDefinition_cachedSprites.get((long)this.frontSpriteID); // L: 58 + Sprite var1 = (Sprite)HealthBarDefinition_cachedSprites.get((long)this.frontSpriteID); if (var1 != null) { - return var1; // L: 59 + return var1; } else { - var1 = FloorDecoration.SpriteBuffer_getSprite(HitSplatDefinition_spritesArchive, this.frontSpriteID, 0); // L: 60 + var1 = Skills.SpriteBuffer_getSprite(HitSplatDefinition_spritesArchive, this.frontSpriteID, 0); if (var1 != null) { - HealthBarDefinition_cachedSprites.put(var1, (long)this.frontSpriteID); // L: 61 + HealthBarDefinition_cachedSprites.put(var1, (long)this.frontSpriteID); } - return var1; // L: 63 + return var1; } } } - @ObfuscatedName("m") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(B)Llc;", - garbageValue = "120" + descriptor = "(S)Llm;", + garbageValue = "-8563" ) @Export("getBackSprite") public Sprite getBackSprite() { - if (this.backSpriteID < 0) { // L: 67 + if (this.backSpriteID < 0) { return null; } else { - Sprite var1 = (Sprite)HealthBarDefinition_cachedSprites.get((long)this.backSpriteID); // L: 68 - if (var1 != null) { // L: 69 + Sprite var1 = (Sprite)HealthBarDefinition_cachedSprites.get((long)this.backSpriteID); + if (var1 != null) { return var1; } else { - var1 = FloorDecoration.SpriteBuffer_getSprite(HitSplatDefinition_spritesArchive, this.backSpriteID, 0); // L: 70 - if (var1 != null) { // L: 71 + var1 = Skills.SpriteBuffer_getSprite(HitSplatDefinition_spritesArchive, this.backSpriteID, 0); + if (var1 != null) { HealthBarDefinition_cachedSprites.put(var1, (long)this.backSpriteID); } - return var1; // L: 73 + return var1; } } } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(III)V", + garbageValue = "-231667488" + ) + @Export("changeWorldSelectSorting") + static void changeWorldSelectSorting(int var0, int var1) { + int[] var2 = new int[4]; + int[] var3 = new int[4]; + var2[0] = var0; + var3[0] = var1; + int var4 = 1; + + for (int var5 = 0; var5 < 4; ++var5) { + if (World.World_sortOption1[var5] != var0) { + var2[var4] = World.World_sortOption1[var5]; + var3[var4] = World.World_sortOption2[var5]; + ++var4; + } + } + + World.World_sortOption1 = var2; + World.World_sortOption2 = var3; + ChatChannel.sortWorlds(World.World_worlds, 0, World.World_worlds.length - 1, World.World_sortOption1, World.World_sortOption2); + } + + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "(IZB)Ljava/lang/String;", + garbageValue = "20" + ) + @Export("intToString") + public static String intToString(int var0, boolean var1) { + if (var1 && var0 >= 0) { + int var3 = var0; + String var2; + if (var1 && var0 >= 0) { + int var4 = 2; + + for (int var5 = var0 / 10; var5 != 0; ++var4) { + var5 /= 10; + } + + char[] var6 = new char[var4]; + var6[0] = '+'; + + for (int var7 = var4 - 1; var7 > 0; --var7) { + int var8 = var3; + var3 /= 10; + int var9 = var8 - var3 * 10; + if (var9 >= 10) { + var6[var7] = (char)(var9 + 87); + } else { + var6[var7] = (char)(var9 + 48); + } + } + + var2 = new String(var6); + } else { + var2 = Integer.toString(var0, 10); + } + + return var2; + } else { + return Integer.toString(var0); + } + } + + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "46" + ) + public static void method4509() { + HitSplatDefinition.HitSplatDefinition_cached.clear(); + HitSplatDefinition.HitSplatDefinition_cachedSprites.clear(); + HitSplatDefinition.HitSplatDefinition_cachedFonts.clear(); + } + + @ObfuscatedName("jo") + @ObfuscatedSignature( + descriptor = "(Lhe;IS)I", + garbageValue = "128" + ) + static final int method4512(Widget var0, int var1) { + if (var0.cs1Instructions != null && var1 < var0.cs1Instructions.length) { + try { + int[] var2 = var0.cs1Instructions[var1]; + int var3 = 0; + int var4 = 0; + byte var5 = 0; + + while (true) { + int var6 = var2[var4++]; + int var7 = 0; + byte var8 = 0; + if (var6 == 0) { + return var3; + } + + if (var6 == 1) { + var7 = Client.currentLevels[var2[var4++]]; + } + + if (var6 == 2) { + var7 = Client.levels[var2[var4++]]; + } + + if (var6 == 3) { + var7 = Client.experience[var2[var4++]]; + } + + int var9; + Widget var10; + int var11; + int var12; + if (var6 == 4) { + var9 = var2[var4++] << 16; + var9 += var2[var4++]; + var10 = CollisionMap.getWidget(var9); + var11 = var2[var4++]; + if (var11 != -1 && (!SecureRandomCallable.ItemDefinition_get(var11).isMembersOnly || Client.isMembersWorld)) { + for (var12 = 0; var12 < var10.itemIds.length; ++var12) { + if (var11 + 1 == var10.itemIds[var12]) { + var7 += var10.itemQuantities[var12]; + } + } + } + } + + if (var6 == 5) { + var7 = Varps.Varps_main[var2[var4++]]; + } + + if (var6 == 6) { + var7 = Skills.Skills_experienceTable[Client.levels[var2[var4++]] - 1]; + } + + if (var6 == 7) { + var7 = Varps.Varps_main[var2[var4++]] * 100 / 46875; + } + + if (var6 == 8) { + var7 = PlayerAppearance.localPlayer.combatLevel; + } + + if (var6 == 9) { + for (var9 = 0; var9 < 25; ++var9) { + if (Skills.Skills_enabled[var9]) { + var7 += Client.levels[var9]; + } + } + } + + if (var6 == 10) { + var9 = var2[var4++] << 16; + var9 += var2[var4++]; + var10 = CollisionMap.getWidget(var9); + var11 = var2[var4++]; + if (var11 != -1 && (!SecureRandomCallable.ItemDefinition_get(var11).isMembersOnly || Client.isMembersWorld)) { + for (var12 = 0; var12 < var10.itemIds.length; ++var12) { + if (var11 + 1 == var10.itemIds[var12]) { + var7 = 999999999; + break; + } + } + } + } + + if (var6 == 11) { + var7 = Client.runEnergy; + } + + if (var6 == 12) { + var7 = Client.weight; + } + + if (var6 == 13) { + var9 = Varps.Varps_main[var2[var4++]]; + int var13 = var2[var4++]; + var7 = (var9 & 1 << var13) != 0 ? 1 : 0; + } + + if (var6 == 14) { + var9 = var2[var4++]; + var7 = Coord.getVarbit(var9); + } + + if (var6 == 15) { + var8 = 1; + } + + if (var6 == 16) { + var8 = 2; + } + + if (var6 == 17) { + var8 = 3; + } + + if (var6 == 18) { + var7 = NetFileRequest.baseX * 64 + (PlayerAppearance.localPlayer.x >> 7); + } + + if (var6 == 19) { + var7 = class41.baseY * 64 + (PlayerAppearance.localPlayer.y >> 7); + } + + if (var6 == 20) { + var7 = var2[var4++]; + } + + if (var8 == 0) { + if (var5 == 0) { + var3 += var7; + } + + if (var5 == 1) { + var3 -= var7; + } + + if (var5 == 2 && var7 != 0) { + var3 /= var7; + } + + if (var5 == 3) { + var3 *= var7; + } + + var5 = 0; + } else { + var5 = var8; + } + } + } catch (Exception var14) { + return -1; + } + } else { + return -2; + } + } } diff --git a/runescape-client/src/main/java/HealthBarUpdate.java b/runescape-client/src/main/java/HealthBarUpdate.java index b4339bc3d5..c57ec66fbd 100644 --- a/runescape-client/src/main/java/HealthBarUpdate.java +++ b/runescape-client/src/main/java/HealthBarUpdate.java @@ -1,175 +1,134 @@ -import java.net.MalformedURLException; -import java.net.URL; 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("ce") +@ObfuscatedName("ci") @Implements("HealthBarUpdate") public class HealthBarUpdate extends Node { - @ObfuscatedName("f") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -591382375 + intValue = 942035737 + ) + @Export("musicTrackGroupId") + static int musicTrackGroupId; + @ObfuscatedName("h") + @ObfuscatedGetter( + intValue = -1928856017 ) @Export("cycle") int cycle; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 1850182953 + intValue = 187911795 ) @Export("health") int health; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -733805573 + intValue = -1933333849 ) @Export("health2") int health2; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 2105811825 + intValue = -280255585 ) @Export("cycleOffset") int cycleOffset; HealthBarUpdate(int var1, int var2, int var3, int var4) { - this.cycle = var1; // L: 12 - this.health = var2; // L: 13 - this.health2 = var3; // L: 14 - this.cycleOffset = var4; // L: 15 - } // L: 16 + this.cycle = var1; + this.health = var2; + this.health2 = var3; + this.cycleOffset = var4; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(IIIII)V", - garbageValue = "2090689234" + garbageValue = "2048204816" ) @Export("set") void set(int var1, int var2, int var3, int var4) { - this.cycle = var1; // L: 19 - this.health = var2; // L: 20 - this.health2 = var3; // L: 21 - this.cycleOffset = var4; // L: 22 - } // L: 23 + this.cycle = var1; + this.health = var2; + this.health2 = var3; + this.cycleOffset = var4; + } - @ObfuscatedName("f") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)Z", - garbageValue = "60" + descriptor = "(IB)Lie;", + garbageValue = "-68" ) - static boolean method1870(String var0) { - if (var0 == null) { // L: 35 - return false; + public static HealthBarDefinition method1826(int var0) { + HealthBarDefinition var1 = (HealthBarDefinition)HealthBarDefinition.HealthBarDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; } else { - try { - new URL(var0); + byte[] var2 = class225.HealthBarDefinition_archive.takeFile(33, var0); + var1 = new HealthBarDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); + } + + HealthBarDefinition.HealthBarDefinition_cached.put(var1, (long)var0); + return var1; + } + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "307117656" + ) + static int method1823(int var0) { + return (int)Math.pow(2.0D, (double)((float)var0 / 256.0F + 7.0F)); + } + + @ObfuscatedName("kc") + @ObfuscatedSignature( + descriptor = "(Lhe;I)Z", + garbageValue = "-1439133446" + ) + static final boolean method1825(Widget var0) { + int var1 = var0.contentType; + if (var1 == 205) { + Client.logoutTimer = 250; + return true; + } else { + int var2; + int var3; + if (var1 >= 300 && var1 <= 313) { + var2 = (var1 - 300) / 2; + var3 = var1 & 1; + Client.playerAppearance.changeAppearance(var2, var3 == 1); + } + + if (var1 >= 314 && var1 <= 323) { + var2 = (var1 - 314) / 2; + var3 = var1 & 1; + Client.playerAppearance.method4043(var2, var3 == 1); + } + + if (var1 == 324) { + Client.playerAppearance.changeSex(false); + } + + if (var1 == 325) { + Client.playerAppearance.changeSex(true); + } + + if (var1 == 326) { + PacketBufferNode var4 = ItemContainer.getPacketBufferNode(ClientPacket.field2239, Client.packetWriter.isaacCipher); + Client.playerAppearance.write(var4.packetBuffer); + Client.packetWriter.addNode(var4); return true; - } catch (MalformedURLException var2) { + } else { return false; } } } - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(II)Lie;", - garbageValue = "-736266811" - ) - @Export("SpotAnimationDefinition_get") - public static SpotAnimationDefinition SpotAnimationDefinition_get(int var0) { - SpotAnimationDefinition var1 = (SpotAnimationDefinition)SpotAnimationDefinition.SpotAnimationDefinition_cached.get((long)var0); // L: 37 - if (var1 != null) { // L: 38 - return var1; - } else { - byte[] var2 = SpotAnimationDefinition.SpotAnimationDefinition_archive.takeFile(13, var0); // L: 39 - var1 = new SpotAnimationDefinition(); // L: 40 - var1.id = var0; // L: 41 - if (var2 != null) { // L: 42 - var1.decode(new Buffer(var2)); - } - - SpotAnimationDefinition.SpotAnimationDefinition_cached.put(var1, (long)var0); // L: 43 - return var1; // L: 44 - } - } - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(Lkb;IIIIIII)V", - garbageValue = "1972730471" - ) - @Export("loadTerrain") - static final void loadTerrain(Buffer var0, int var1, int var2, int var3, int var4, int var5, int var6) { - int var7; - if (var2 >= 0 && var2 < 104 && var3 >= 0 && var3 < 104) { // L: 112 - Tiles.Tiles_renderFlags[var1][var2][var3] = 0; // L: 113 - - while (true) { - var7 = var0.readUnsignedByte(); // L: 115 - if (var7 == 0) { // L: 116 - if (var1 == 0) { - Tiles.Tiles_heights[0][var2][var3] = -Occluder.method3412(var4 + var2 + 932731, var3 + 556238 + var5) * 8; // L: 117 - } else { - Tiles.Tiles_heights[var1][var2][var3] = Tiles.Tiles_heights[var1 - 1][var2][var3] - 240; // L: 118 - } - break; - } - - if (var7 == 1) { // L: 121 - int var8 = var0.readUnsignedByte(); // L: 122 - if (var8 == 1) { // L: 123 - var8 = 0; - } - - if (var1 == 0) { // L: 124 - Tiles.Tiles_heights[0][var2][var3] = -var8 * 8; - } else { - Tiles.Tiles_heights[var1][var2][var3] = Tiles.Tiles_heights[var1 - 1][var2][var3] - var8 * 8; // L: 125 - } - break; - } - - if (var7 <= 49) { // L: 128 - NPC.field1161[var1][var2][var3] = var0.readByte(); // L: 129 - Tiles.field531[var1][var2][var3] = (byte)((var7 - 2) / 4); // L: 130 - UserComparator2.field3859[var1][var2][var3] = (byte)(var7 - 2 + var6 & 3); // L: 131 - } else if (var7 <= 81) { // L: 134 - Tiles.Tiles_renderFlags[var1][var2][var3] = (byte)(var7 - 49); // L: 135 - } else { - TileItem.field1273[var1][var2][var3] = (byte)(var7 - 81); // L: 138 - } - } - } else { - while (true) { - var7 = var0.readUnsignedByte(); // L: 143 - if (var7 == 0) { // L: 144 - break; - } - - if (var7 == 1) { // L: 145 - var0.readUnsignedByte(); // L: 146 - break; - } - - if (var7 <= 49) { // L: 149 - var0.readUnsignedByte(); - } - } - } - - } // L: 152 - - @ObfuscatedName("y") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "1201553018" - ) - static final void method1869(String var0) { - PacketBufferNode var1 = class4.getPacketBufferNode(ClientPacket.field2237, Client.packetWriter.isaacCipher); // L: 203 - var1.packetBuffer.writeByte(SpriteMask.stringCp1252NullTerminatedByteSize(var0)); // L: 204 - var1.packetBuffer.writeStringCp1252NullTerminated(var0); // L: 205 - Client.packetWriter.addNode(var1); // L: 206 - } // L: 207 } diff --git a/runescape-client/src/main/java/HitSplatDefinition.java b/runescape-client/src/main/java/HitSplatDefinition.java index a526d8d218..8167fa8316 100644 --- a/runescape-client/src/main/java/HitSplatDefinition.java +++ b/runescape-client/src/main/java/HitSplatDefinition.java @@ -4,408 +4,412 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jx") +@ObfuscatedName("je") @Implements("HitSplatDefinition") public class HitSplatDefinition extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("HitSplatDefinition_archive") - public static AbstractArchive HitSplatDefinition_archive; - @ObfuscatedName("b") + static AbstractArchive HitSplatDefinition_archive; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) - public static AbstractArchive field3350; - @ObfuscatedName("l") + static AbstractArchive field3354; + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("HitSplatDefinition_fontsArchive") - public static AbstractArchive HitSplatDefinition_fontsArchive; - @ObfuscatedName("m") + static AbstractArchive HitSplatDefinition_fontsArchive; + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("HitSplatDefinition_cached") static EvictingDualNodeHashTable HitSplatDefinition_cached; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("HitSplatDefinition_cachedSprites") static EvictingDualNodeHashTable HitSplatDefinition_cachedSprites; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("HitSplatDefinition_cachedFonts") static EvictingDualNodeHashTable HitSplatDefinition_cachedFonts; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedGetter( - intValue = -815033711 + intValue = 1754036089 ) @Export("fontId") int fontId; - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedGetter( - intValue = -1301515825 + intValue = -1663131013 ) @Export("textColor") public int textColor; - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedGetter( - intValue = -1266638287 - ) - public int field3370; - @ObfuscatedName("p") - @ObfuscatedGetter( - intValue = -83015757 - ) - int field3360; - @ObfuscatedName("r") - @ObfuscatedGetter( - intValue = 651149395 - ) - int field3349; - @ObfuscatedName("y") - @ObfuscatedGetter( - intValue = -1270434679 - ) - int field3362; - @ObfuscatedName("s") - @ObfuscatedGetter( - intValue = -1716225461 - ) - int field3363; - @ObfuscatedName("j") - @ObfuscatedGetter( - intValue = 779984005 + intValue = 1159651447 ) public int field3364; - @ObfuscatedName("w") - @ObfuscatedGetter( - intValue = -770163669 - ) - public int field3365; - @ObfuscatedName("v") - @ObfuscatedGetter( - intValue = -604727169 - ) - public int field3366; - @ObfuscatedName("d") - String field3367; - @ObfuscatedName("a") - @ObfuscatedGetter( - intValue = -1273582511 - ) - public int field3361; - @ObfuscatedName("g") - @ObfuscatedGetter( - intValue = -991437923 - ) - public int field3351; - @ObfuscatedName("h") - @Export("transforms") - public int[] transforms; @ObfuscatedName("i") @ObfuscatedGetter( - intValue = 1964734149 + intValue = -1831454563 + ) + int field3365; + @ObfuscatedName("f") + @ObfuscatedGetter( + intValue = 1646147789 + ) + int field3366; + @ObfuscatedName("a") + @ObfuscatedGetter( + intValue = -507901103 + ) + int field3355; + @ObfuscatedName("b") + @ObfuscatedGetter( + intValue = 1836001377 + ) + int field3358; + @ObfuscatedName("y") + @ObfuscatedGetter( + intValue = 662254573 + ) + public int field3377; + @ObfuscatedName("r") + @ObfuscatedGetter( + intValue = 1128487265 + ) + public int field3353; + @ObfuscatedName("q") + @ObfuscatedGetter( + intValue = 1126942193 + ) + public int field3378; + @ObfuscatedName("g") + String field3370; + @ObfuscatedName("s") + @ObfuscatedGetter( + intValue = 1216299051 + ) + public int field3373; + @ObfuscatedName("o") + @ObfuscatedGetter( + intValue = 423501575 + ) + public int field3374; + @ObfuscatedName("k") + @Export("transforms") + public int[] transforms; + @ObfuscatedName("d") + @ObfuscatedGetter( + intValue = -518228965 ) @Export("transformVarbit") int transformVarbit; - @ObfuscatedName("ab") + @ObfuscatedName("an") @ObfuscatedGetter( - intValue = -1049290465 + intValue = 1219592321 ) @Export("transformVarp") int transformVarp; static { - HitSplatDefinition_cached = new EvictingDualNodeHashTable(64); // L: 18 - HitSplatDefinition_cachedSprites = new EvictingDualNodeHashTable(64); // L: 19 - HitSplatDefinition_cachedFonts = new EvictingDualNodeHashTable(20); // L: 20 + HitSplatDefinition_cached = new EvictingDualNodeHashTable(64); + HitSplatDefinition_cachedSprites = new EvictingDualNodeHashTable(64); + HitSplatDefinition_cachedFonts = new EvictingDualNodeHashTable(20); } HitSplatDefinition() { - this.fontId = -1; // L: 26 - this.textColor = 16777215; // L: 27 - this.field3370 = 70; // L: 28 - this.field3360 = -1; // L: 29 - this.field3349 = -1; // L: 30 - this.field3362 = -1; // L: 31 - this.field3363 = -1; // L: 32 - this.field3364 = 0; // L: 33 - this.field3365 = 0; // L: 34 - this.field3366 = -1; // L: 35 - this.field3367 = ""; // L: 36 - this.field3361 = -1; // L: 37 - this.field3351 = 0; // L: 38 - this.transformVarbit = -1; // L: 40 - this.transformVarp = -1; // L: 41 - } // L: 43 + this.fontId = -1; + this.textColor = 16777215; + this.field3364 = 70; + this.field3365 = -1; + this.field3366 = -1; + this.field3355 = -1; + this.field3358 = -1; + this.field3377 = 0; + this.field3353 = 0; + this.field3378 = -1; + this.field3370 = ""; + this.field3373 = -1; + this.field3374 = 0; + this.transformVarbit = -1; + this.transformVarp = -1; + } - @ObfuscatedName("b") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "738572554" + descriptor = "(Lkj;B)V", + garbageValue = "-46" ) @Export("decode") void decode(Buffer var1) { while (true) { - int var2 = var1.readUnsignedByte(); // L: 57 - if (var2 == 0) { // L: 58 - return; // L: 61 + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; } - this.decodeNext(var1, var2); // L: 59 + this.decodeNext(var1, var2); + } + } + + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "(Lkj;IB)V", + garbageValue = "19" + ) + @Export("decodeNext") + void decodeNext(Buffer var1, int var2) { + if (var2 == 1) { + this.fontId = var1.method5559(); + } else if (var2 == 2) { + this.textColor = var1.readMedium(); + } else if (var2 == 3) { + this.field3365 = var1.method5559(); + } else if (var2 == 4) { + this.field3355 = var1.method5559(); + } else if (var2 == 5) { + this.field3366 = var1.method5559(); + } else if (var2 == 6) { + this.field3358 = var1.method5559(); + } else if (var2 == 7) { + this.field3377 = var1.readShort(); + } else if (var2 == 8) { + this.field3370 = var1.readStringCp1252NullCircumfixed(); + } else if (var2 == 9) { + this.field3364 = var1.readUnsignedShort(); + } else if (var2 == 10) { + this.field3353 = var1.readShort(); + } else if (var2 == 11) { + this.field3378 = 0; + } else if (var2 == 12) { + this.field3373 = var1.readUnsignedByte(); + } else if (var2 == 13) { + this.field3374 = var1.readShort(); + } else if (var2 == 14) { + this.field3378 = var1.readUnsignedShort(); + } else if (var2 == 17 || var2 == 18) { + this.transformVarbit = var1.readUnsignedShort(); + if (this.transformVarbit == 65535) { + this.transformVarbit = -1; + } + + this.transformVarp = var1.readUnsignedShort(); + if (this.transformVarp == 65535) { + this.transformVarp = -1; + } + + int var3 = -1; + if (var2 == 18) { + var3 = var1.readUnsignedShort(); + if (var3 == 65535) { + var3 = -1; + } + } + + int var4 = var1.readUnsignedByte(); + this.transforms = new int[var4 + 2]; + + for (int var5 = 0; var5 <= var4; ++var5) { + this.transforms[var5] = var1.readUnsignedShort(); + if (this.transforms[var5] == 65535) { + this.transforms[var5] = -1; + } + } + + this.transforms[var4 + 1] = var3; + } + + } + + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "(B)Lje;", + garbageValue = "-127" + ) + @Export("transform") + public final HitSplatDefinition transform() { + int var1 = -1; + if (this.transformVarbit != -1) { + var1 = Coord.getVarbit(this.transformVarbit); + } else if (this.transformVarp != -1) { + var1 = Varps.Varps_main[this.transformVarp]; + } + + int var2; + if (var1 >= 0 && var1 < this.transforms.length - 1) { + var2 = this.transforms[var1]; + } else { + var2 = this.transforms[this.transforms.length - 1]; + } + + return var2 != -1 ? class198.method3697(var2) : null; + } + + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "(II)Ljava/lang/String;", + garbageValue = "-1302541631" + ) + @Export("getString") + public String getString(int var1) { + String var2 = this.field3370; + + while (true) { + int var3 = var2.indexOf("%1"); + if (var3 < 0) { + return var2; + } + + var2 = var2.substring(0, var3) + HealthBarDefinition.intToString(var1, false) + var2.substring(var3 + 2); + } + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "(I)Llm;", + garbageValue = "-1476611889" + ) + public Sprite method4583() { + if (this.field3365 < 0) { + return null; + } else { + Sprite var1 = (Sprite)HitSplatDefinition_cachedSprites.get((long)this.field3365); + if (var1 != null) { + return var1; + } else { + var1 = Skills.SpriteBuffer_getSprite(field3354, this.field3365, 0); + if (var1 != null) { + HitSplatDefinition_cachedSprites.put(var1, (long)this.field3365); + } + + return var1; + } + } + } + + @ObfuscatedName("p") + @ObfuscatedSignature( + descriptor = "(I)Llm;", + garbageValue = "809304727" + ) + public Sprite method4578() { + if (this.field3366 < 0) { + return null; + } else { + Sprite var1 = (Sprite)HitSplatDefinition_cachedSprites.get((long)this.field3366); + if (var1 != null) { + return var1; + } else { + var1 = Skills.SpriteBuffer_getSprite(field3354, this.field3366, 0); + if (var1 != null) { + HitSplatDefinition_cachedSprites.put(var1, (long)this.field3366); + } + + return var1; + } } } @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "-403077535" + descriptor = "(I)Llm;", + garbageValue = "644601071" ) - @Export("decodeNext") - void decodeNext(Buffer var1, int var2) { - if (var2 == 1) { // L: 64 - this.fontId = var1.method5851(); - } else if (var2 == 2) { // L: 65 - this.textColor = var1.readMedium(); - } else if (var2 == 3) { // L: 66 - this.field3360 = var1.method5851(); - } else if (var2 == 4) { // L: 67 - this.field3362 = var1.method5851(); - } else if (var2 == 5) { // L: 68 - this.field3349 = var1.method5851(); - } else if (var2 == 6) { // L: 69 - this.field3363 = var1.method5851(); - } else if (var2 == 7) { // L: 70 - this.field3364 = var1.readShort(); - } else if (var2 == 8) { // L: 71 - this.field3367 = var1.readStringCp1252NullCircumfixed(); - } else if (var2 == 9) { // L: 72 - this.field3370 = var1.readUnsignedShort(); - } else if (var2 == 10) { // L: 73 - this.field3365 = var1.readShort(); - } else if (var2 == 11) { // L: 74 - this.field3366 = 0; - } else if (var2 == 12) { // L: 75 - this.field3361 = var1.readUnsignedByte(); - } else if (var2 == 13) { // L: 76 - this.field3351 = var1.readShort(); - } else if (var2 == 14) { - this.field3366 = var1.readUnsignedShort(); // L: 77 - } else if (var2 == 17 || var2 == 18) { // L: 78 - this.transformVarbit = var1.readUnsignedShort(); // L: 79 - if (this.transformVarbit == 65535) { // L: 80 - this.transformVarbit = -1; - } - - this.transformVarp = var1.readUnsignedShort(); // L: 81 - if (this.transformVarp == 65535) { // L: 82 - this.transformVarp = -1; - } - - int var3 = -1; // L: 83 - if (var2 == 18) { // L: 84 - var3 = var1.readUnsignedShort(); // L: 85 - if (var3 == 65535) { // L: 86 - var3 = -1; - } - } - - int var4 = var1.readUnsignedByte(); // L: 88 - this.transforms = new int[var4 + 2]; // L: 89 - - for (int var5 = 0; var5 <= var4; ++var5) { // L: 90 - this.transforms[var5] = var1.readUnsignedShort(); // L: 91 - if (this.transforms[var5] == 65535) { // L: 92 - this.transforms[var5] = -1; - } - } - - this.transforms[var4 + 1] = var3; // L: 94 - } - - } // L: 97 - - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "(B)Ljx;", - garbageValue = "29" - ) - @Export("transform") - public final HitSplatDefinition transform() { - int var1 = -1; // L: 100 - if (this.transformVarbit != -1) { // L: 101 - var1 = ApproximateRouteStrategy.getVarbit(this.transformVarbit); - } else if (this.transformVarp != -1) { // L: 102 - var1 = Varps.Varps_main[this.transformVarp]; - } - - int var2; - if (var1 >= 0 && var1 < this.transforms.length - 1) { // L: 104 - var2 = this.transforms[var1]; // L: 105 + public Sprite method4587() { + if (this.field3355 < 0) { + return null; } else { - var2 = this.transforms[this.transforms.length - 1]; - } + Sprite var1 = (Sprite)HitSplatDefinition_cachedSprites.get((long)this.field3355); + if (var1 != null) { + return var1; + } else { + var1 = Skills.SpriteBuffer_getSprite(field3354, this.field3355, 0); + if (var1 != null) { + HitSplatDefinition_cachedSprites.put(var1, (long)this.field3355); + } - return var2 != -1 ? class258.method4654(var2) : null; // L: 106 107 + return var1; + } + } } @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "(II)Ljava/lang/String;", - garbageValue = "722247792" + descriptor = "(S)Llm;", + garbageValue = "500" ) - @Export("getString") - public String getString(int var1) { - String var2 = this.field3367; // L: 111 - - while (true) { - int var3 = var2.indexOf("%1"); // L: 113 - if (var3 < 0) { // L: 114 - return var2; // L: 117 - } - - var2 = var2.substring(0, var3) + class197.intToString(var1, false) + var2.substring(var3 + 2); // L: 115 - } - } - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(I)Llc;", - garbageValue = "1144318986" - ) - public Sprite method4748() { - if (this.field3360 < 0) { // L: 121 + public Sprite method4585() { + if (this.field3358 < 0) { return null; } else { - Sprite var1 = (Sprite)HitSplatDefinition_cachedSprites.get((long)this.field3360); // L: 122 - if (var1 != null) { // L: 123 + Sprite var1 = (Sprite)HitSplatDefinition_cachedSprites.get((long)this.field3358); + if (var1 != null) { return var1; } else { - var1 = FloorDecoration.SpriteBuffer_getSprite(field3350, this.field3360, 0); // L: 124 - if (var1 != null) { // L: 125 - HitSplatDefinition_cachedSprites.put(var1, (long)this.field3360); - } - - return var1; // L: 127 - } - } - } - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(B)Llc;", - garbageValue = "-104" - ) - public Sprite method4733() { - if (this.field3349 < 0) { // L: 131 - return null; - } else { - Sprite var1 = (Sprite)HitSplatDefinition_cachedSprites.get((long)this.field3349); // L: 132 - if (var1 != null) { - return var1; // L: 133 - } else { - var1 = FloorDecoration.SpriteBuffer_getSprite(field3350, this.field3349, 0); // L: 134 + var1 = Skills.SpriteBuffer_getSprite(field3354, this.field3358, 0); if (var1 != null) { - HitSplatDefinition_cachedSprites.put(var1, (long)this.field3349); // L: 135 + HitSplatDefinition_cachedSprites.put(var1, (long)this.field3358); } - return var1; // L: 137 - } - } - } - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(S)Llc;", - garbageValue = "1003" - ) - public Sprite method4731() { - if (this.field3362 < 0) { // L: 141 - return null; - } else { - Sprite var1 = (Sprite)HitSplatDefinition_cachedSprites.get((long)this.field3362); // L: 142 - if (var1 != null) { - return var1; // L: 143 - } else { - var1 = FloorDecoration.SpriteBuffer_getSprite(field3350, this.field3362, 0); // L: 144 - if (var1 != null) { // L: 145 - HitSplatDefinition_cachedSprites.put(var1, (long)this.field3362); - } - - return var1; // L: 147 + return var1; } } } @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "(I)Llc;", - garbageValue = "1948931470" - ) - public Sprite method4727() { - if (this.field3363 < 0) { // L: 151 - return null; - } else { - Sprite var1 = (Sprite)HitSplatDefinition_cachedSprites.get((long)this.field3363); // L: 152 - if (var1 != null) { - return var1; // L: 153 - } else { - var1 = FloorDecoration.SpriteBuffer_getSprite(field3350, this.field3363, 0); // L: 154 - if (var1 != null) { - HitSplatDefinition_cachedSprites.put(var1, (long)this.field3363); // L: 155 - } - - return var1; // L: 157 - } - } - } - - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "(I)Lkq;", - garbageValue = "-1921749751" + descriptor = "(B)Lku;", + garbageValue = "0" ) @Export("getFont") public Font getFont() { - if (this.fontId == -1) { // L: 161 + if (this.fontId == -1) { return null; } else { - Font var1 = (Font)HitSplatDefinition_cachedFonts.get((long)this.fontId); // L: 162 - if (var1 != null) { // L: 163 + Font var1 = (Font)HitSplatDefinition_cachedFonts.get((long)this.fontId); + if (var1 != null) { return var1; } else { - AbstractArchive var3 = field3350; // L: 165 - AbstractArchive var4 = HitSplatDefinition_fontsArchive; // L: 166 - int var5 = this.fontId; // L: 167 - byte[] var7 = var3.takeFile(var5, 0); // L: 171 - boolean var6; - if (var7 == null) { // L: 172 - var6 = false; // L: 173 - } else { - class217.SpriteBuffer_decode(var7); // L: 176 - var6 = true; // L: 177 + var1 = PrivateChatMode.method5934(field3354, HitSplatDefinition_fontsArchive, this.fontId, 0); + if (var1 != null) { + HitSplatDefinition_cachedFonts.put(var1, (long)this.fontId); } - Font var2; - if (!var6) { // L: 179 - var2 = null; // L: 180 - } else { - var2 = UrlRequester.method3430(var4.takeFile(var5, 0)); // L: 183 - } - - if (var2 != null) { // L: 186 - HitSplatDefinition_cachedFonts.put(var2, (long)this.fontId); - } - - return var2; // L: 188 + return var1; } } } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(IIIIIIB)I", + garbageValue = "20" + ) + public static int method4612(int var0, int var1, int var2, int var3, int var4, int var5) { + if ((var5 & 1) == 1) { + int var6 = var3; + var3 = var4; + var4 = var6; + } + + var2 &= 3; + if (var2 == 0) { + return var0; + } else if (var2 == 1) { + return var1; + } else { + return var2 == 2 ? 7 - var0 - (var3 - 1) : 7 - var1 - (var4 - 1); + } + } } diff --git a/runescape-client/src/main/java/HorizontalAlignment.java b/runescape-client/src/main/java/HorizontalAlignment.java index b85020864b..0047d76809 100644 --- a/runescape-client/src/main/java/HorizontalAlignment.java +++ b/runescape-client/src/main/java/HorizontalAlignment.java @@ -3,125 +3,253 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("jy") +@ObfuscatedName("jt") @Implements("HorizontalAlignment") public enum HorizontalAlignment implements Enumerated { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Ljy;" + descriptor = "Ljt;" ) - field3481(1, 0), - @ObfuscatedName("b") + field3490(2, 0), + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Ljy;" + descriptor = "Ljt;" ) @Export("HorizontalAlignment_centered") - HorizontalAlignment_centered(2, 1), - @ObfuscatedName("l") + HorizontalAlignment_centered(1, 1), + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Ljy;" + descriptor = "Ljt;" ) - field3479(0, 2); + field3491(0, 2); - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 1229271323 + intValue = 1422973227 ) @Export("value") public final int value; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 1995234347 + intValue = 2073239653 ) @Export("id") final int id; HorizontalAlignment(int var3, int var4) { - this.value = var3; // L: 14 - this.id = var4; // L: 15 - } // L: 16 + this.value = var3; + this.id = var4; + } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "23" + descriptor = "(I)I", + garbageValue = "-275768542" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.id; // L: 19 + return this.id; } - @ObfuscatedName("l") + @ObfuscatedName("aw") @ObfuscatedSignature( - descriptor = "(Liw;III)[Llc;", - garbageValue = "2130018574" + descriptor = "(ILcs;ZB)I", + garbageValue = "4" ) - public static Sprite[] method4882(AbstractArchive var0, int var1, int var2) { - byte[] var4 = var0.takeFile(var1, var2); // L: 100 - boolean var3; - if (var4 == null) { // L: 101 - var3 = false; // L: 102 + static int method4729(int var0, Script var1, boolean var2) { + if (var0 == ScriptOpcodes.WORLDLIST_FETCH) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = GrandExchangeEvent.loadWorlds() ? 1 : 0; + return 1; } else { - class217.SpriteBuffer_decode(var4); // L: 105 - var3 = true; // L: 106 - } + World var9; + if (var0 == ScriptOpcodes.WORLDLIST_START) { + var9 = class236.worldListStart(); + if (var9 != null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9.id; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9.properties; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var9.activity; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9.location; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9.population; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var9.host; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + } - if (!var3) { // L: 108 - return null; - } else { - Sprite[] var5 = new Sprite[class336.SpriteBuffer_spriteCount]; // L: 111 + return 1; + } else if (var0 == ScriptOpcodes.WORLDLIST_NEXT) { + var9 = GrandExchangeEvents.getNextWorldListWorld(); + if (var9 != null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9.id; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9.properties; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var9.activity; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9.location; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9.population; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var9.host; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + } - for (int var6 = 0; var6 < class336.SpriteBuffer_spriteCount; ++var6) { // L: 112 - Sprite var7 = var5[var6] = new Sprite(); // L: 113 - var7.width = class336.SpriteBuffer_spriteWidth; // L: 114 - var7.height = class336.SpriteBuffer_spriteHeight; // L: 115 - var7.xOffset = class336.SpriteBuffer_xOffsets[var6]; // L: 116 - var7.yOffset = class225.SpriteBuffer_yOffsets[var6]; // L: 117 - var7.subWidth = class336.SpriteBuffer_spriteWidths[var6]; // L: 118 - var7.subHeight = class336.SpriteBuffer_spriteHeights[var6]; // L: 119 - int var8 = var7.subHeight * var7.subWidth; // L: 120 - byte[] var9 = class13.SpriteBuffer_pixels[var6]; // L: 121 - var7.pixels = new int[var8]; // L: 122 + return 1; + } else { + int var3; + World var7; + int var8; + if (var0 == ScriptOpcodes.WORLDLIST_SPECIFIC) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var7 = null; - for (int var10 = 0; var10 < var8; ++var10) { // L: 123 - var7.pixels[var10] = WorldMapID.SpriteBuffer_spritePalette[var9[var10] & 255]; + for (var8 = 0; var8 < World.World_count; ++var8) { + if (var3 == World.World_worlds[var8].id) { + var7 = World.World_worlds[var8]; + break; + } + } + + if (var7 != null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var7.id; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var7.properties; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var7.activity; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var7.location; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var7.population; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var7.host; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + } + + return 1; + } else if (var0 == ScriptOpcodes.WORLDLIST_SORT) { + VarcInt.Interpreter_intStackSize -= 4; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + boolean var10 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1] == 1; + var8 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 2]; + boolean var6 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 3] == 1; + TaskHandler.sortWorldList(var3, var10, var8, var6); + return 1; + } else if (var0 != ScriptOpcodes.GETWORLDINFO) { + if (var0 == ScriptOpcodes.SETFOLLOWEROPSLOWPRIORITY) { + Client.followerOpsLowPriority = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + return 1; + } else { + int var4; + ParamDefinition var5; + if (var0 == ScriptOpcodes.NC_PARAM) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + var5 = ChatChannel.getParamDefinition(var4); + if (var5.isString()) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = WorldMapIcon_0.getNpcDefinition(var3).getStringParam(var4, var5.defaultStr); + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = WorldMapIcon_0.getNpcDefinition(var3).getIntParam(var4, var5.defaultInt); + } + + return 1; + } else if (var0 == ScriptOpcodes.LC_PARAM) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + var5 = ChatChannel.getParamDefinition(var4); + if (var5.isString()) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = WorldMapDecoration.getObjectDefinition(var3).getStringParam(var4, var5.defaultStr); + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = WorldMapDecoration.getObjectDefinition(var3).getIntParam(var4, var5.defaultInt); + } + + return 1; + } else if (var0 == ScriptOpcodes.OC_PARAM) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + var5 = ChatChannel.getParamDefinition(var4); + if (var5.isString()) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = SecureRandomCallable.ItemDefinition_get(var3).getStringParam(var4, var5.defaultStr); + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = SecureRandomCallable.ItemDefinition_get(var3).getIntParam(var4, var5.defaultInt); + } + + return 1; + } else if (var0 == ScriptOpcodes.STRUCT_PARAM) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + var5 = ChatChannel.getParamDefinition(var4); + if (var5.isString()) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = AbstractWorldMapIcon.StructDefinition_getStructDefinition(var3).getStringParam(var4, var5.defaultStr); + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = AbstractWorldMapIcon.StructDefinition_getStructDefinition(var3).getIntParam(var4, var5.defaultInt); + } + + return 1; + } else if (var0 == ScriptOpcodes.ON_MOBILE) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.onMobile ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.CLIENTTYPE) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.clientType & 3; + return 1; + } else if (var0 == 6520) { + return 1; + } else if (var0 == ScriptOpcodes.MOBILE_KEYBOARDHIDE) { + return 1; + } else if (var0 == 6522) { + --Interpreter.Interpreter_stringStackSize; + --VarcInt.Interpreter_intStackSize; + return 1; + } else if (var0 == 6523) { + --Interpreter.Interpreter_stringStackSize; + --VarcInt.Interpreter_intStackSize; + return 1; + } else if (var0 == ScriptOpcodes.BATTERYLEVEL) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + return 1; + } else if (var0 == ScriptOpcodes.BATTERYCHARGING) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 1; + return 1; + } else if (var0 == ScriptOpcodes.WIFIAVAILABLE) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 1; + return 1; + } else { + return 2; + } + } + } else { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (var3 >= 0 && var3 < World.World_count) { + var7 = World.World_worlds[var3]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var7.id; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var7.properties; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var7.activity; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var7.location; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var7.population; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var7.host; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + } + + return 1; } } - - class336.SpriteBuffer_xOffsets = null; // L: 126 - class225.SpriteBuffer_yOffsets = null; // L: 127 - class336.SpriteBuffer_spriteWidths = null; // L: 128 - class336.SpriteBuffer_spriteHeights = null; // L: 129 - WorldMapID.SpriteBuffer_spritePalette = null; // L: 130 - class13.SpriteBuffer_pixels = null; // L: 131 - return var5; // L: 135 } } - - @ObfuscatedName("gj") - @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "-874256905" - ) - static int method4876(int var0, int var1) { - int var2 = var1 - 334; // L: 5436 - if (var2 < 0) { // L: 5437 - var2 = 0; - } else if (var2 > 100) { // L: 5438 - var2 = 100; - } - - int var3 = (Client.zoomWidth - Client.zoomHeight) * var2 / 100 + Client.zoomHeight; // L: 5439 - return var0 * var3 / 256; // L: 5440 - } - - @ObfuscatedName("ie") - @ObfuscatedSignature( - descriptor = "(II)Ljava/lang/String;", - garbageValue = "1158098047" - ) - static final String method4880(int var0) { - return var0 < 999999999 ? Integer.toString(var0) : "*"; // L: 9990 9991 - } } diff --git a/runescape-client/src/main/java/Huffman.java b/runescape-client/src/main/java/Huffman.java index b8c39c1512..e9b4f58bcc 100644 --- a/runescape-client/src/main/java/Huffman.java +++ b/runescape-client/src/main/java/Huffman.java @@ -3,304 +3,360 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hi") +@ObfuscatedName("hu") @Implements("Huffman") public class Huffman { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("masks") int[] masks; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("bits") byte[] bits; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("keys") int[] keys; public Huffman(byte[] var1) { - int var2 = var1.length; // L: 9 - this.masks = new int[var2]; // L: 10 - this.bits = var1; // L: 11 - int[] var3 = new int[33]; // L: 12 - this.keys = new int[8]; // L: 13 - int var4 = 0; // L: 14 + int var2 = var1.length; + this.masks = new int[var2]; + this.bits = var1; + int[] var3 = new int[33]; + this.keys = new int[8]; + int var4 = 0; - for (int var5 = 0; var5 < var2; ++var5) { // L: 15 - byte var6 = var1[var5]; // L: 16 - if (var6 != 0) { // L: 17 - int var7 = 1 << 32 - var6; // L: 18 - int var8 = var3[var6]; // L: 19 - this.masks[var5] = var8; // L: 20 + for (int var5 = 0; var5 < var2; ++var5) { + byte var6 = var1[var5]; + if (var6 != 0) { + int var7 = 1 << 32 - var6; + int var8 = var3[var6]; + this.masks[var5] = var8; int var9; int var10; int var11; int var12; - if ((var8 & var7) != 0) { // L: 22 + if ((var8 & var7) != 0) { var9 = var3[var6 - 1]; } else { - var9 = var8 | var7; // L: 24 + var9 = var8 | var7; - for (var10 = var6 - 1; var10 >= 1; --var10) { // L: 25 - var11 = var3[var10]; // L: 26 - if (var11 != var8) { // L: 27 + for (var10 = var6 - 1; var10 >= 1; --var10) { + var11 = var3[var10]; + if (var11 != var8) { break; } - var12 = 1 << 32 - var10; // L: 28 - if ((var11 & var12) != 0) { // L: 29 - var3[var10] = var3[var10 - 1]; // L: 30 + var12 = 1 << 32 - var10; + if ((var11 & var12) != 0) { + var3[var10] = var3[var10 - 1]; break; } - var3[var10] = var11 | var12; // L: 33 + var3[var10] = var11 | var12; } } - var3[var6] = var9; // L: 38 + var3[var6] = var9; - for (var10 = var6 + 1; var10 <= 32; ++var10) { // L: 39 - if (var8 == var3[var10]) { // L: 40 + for (var10 = var6 + 1; var10 <= 32; ++var10) { + if (var8 == var3[var10]) { var3[var10] = var9; } } - var10 = 0; // L: 42 + var10 = 0; - for (var11 = 0; var11 < var6; ++var11) { // L: 43 - var12 = Integer.MIN_VALUE >>> var11; // L: 44 - if ((var8 & var12) != 0) { // L: 45 - if (this.keys[var10] == 0) { // L: 46 + for (var11 = 0; var11 < var6; ++var11) { + var12 = Integer.MIN_VALUE >>> var11; + if ((var8 & var12) != 0) { + if (this.keys[var10] == 0) { this.keys[var10] = var4; } - var10 = this.keys[var10]; // L: 47 + var10 = this.keys[var10]; } else { - ++var10; // L: 49 + ++var10; } - if (var10 >= this.keys.length) { // L: 50 - int[] var13 = new int[this.keys.length * 2]; // L: 51 + if (var10 >= this.keys.length) { + int[] var13 = new int[this.keys.length * 2]; - for (int var14 = 0; var14 < this.keys.length; ++var14) { // L: 52 + for (int var14 = 0; var14 < this.keys.length; ++var14) { var13[var14] = this.keys[var14]; } - this.keys = var13; // L: 53 + this.keys = var13; } - var12 >>>= 1; // L: 55 + var12 >>>= 1; } - this.keys[var10] = ~var5; // L: 57 - if (var10 >= var4) { // L: 58 + this.keys[var10] = ~var5; + if (var10 >= var4) { var4 = var10 + 1; } } } - } // L: 60 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "([BII[BII)I", - garbageValue = "-1847376111" + garbageValue = "2127333577" ) @Export("compress") int compress(byte[] var1, int var2, int var3, byte[] var4, int var5) { - int var6 = 0; // L: 63 - int var7 = var5 << 3; // L: 64 + int var6 = 0; + int var7 = var5 << 3; - for (var3 += var2; var2 < var3; ++var2) { // L: 65 66 - int var8 = var1[var2] & 255; // L: 67 - int var9 = this.masks[var8]; // L: 68 - byte var10 = this.bits[var8]; // L: 69 - if (var10 == 0) { // L: 70 + for (var3 += var2; var2 < var3; ++var2) { + int var8 = var1[var2] & 255; + int var9 = this.masks[var8]; + byte var10 = this.bits[var8]; + if (var10 == 0) { throw new RuntimeException("" + var8); } - int var11 = var7 >> 3; // L: 71 - int var12 = var7 & 7; // L: 72 - var6 &= -var12 >> 31; // L: 73 - int var13 = (var10 + var12 - 1 >> 3) + var11; // L: 74 - var12 += 24; // L: 76 - var4[var11] = (byte)(var6 |= var9 >>> var12); // L: 77 - if (var11 < var13) { // L: 78 - ++var11; // L: 79 - var12 -= 8; // L: 80 - var4[var11] = (byte)(var6 = var9 >>> var12); // L: 81 - if (var11 < var13) { // L: 82 - ++var11; // L: 83 - var12 -= 8; // L: 84 - var4[var11] = (byte)(var6 = var9 >>> var12); // L: 85 - if (var11 < var13) { // L: 86 - ++var11; // L: 87 - var12 -= 8; // L: 88 - var4[var11] = (byte)(var6 = var9 >>> var12); // L: 89 - if (var11 < var13) { // L: 90 - ++var11; // L: 91 - var12 -= 8; // L: 92 - var4[var11] = (byte)(var6 = var9 << -var12); // L: 93 + int var11 = var7 >> 3; + int var12 = var7 & 7; + var6 &= -var12 >> 31; + int var13 = (var10 + var12 - 1 >> 3) + var11; + var12 += 24; + var4[var11] = (byte)(var6 |= var9 >>> var12); + if (var11 < var13) { + ++var11; + var12 -= 8; + var4[var11] = (byte)(var6 = var9 >>> var12); + if (var11 < var13) { + ++var11; + var12 -= 8; + var4[var11] = (byte)(var6 = var9 >>> var12); + if (var11 < var13) { + ++var11; + var12 -= 8; + var4[var11] = (byte)(var6 = var9 >>> var12); + if (var11 < var13) { + ++var11; + var12 -= 8; + var4[var11] = (byte)(var6 = var9 << -var12); } } } } - var7 += var10; // L: 95 + var7 += var10; } - return (var7 + 7 >> 3) - var5; // L: 97 + return (var7 + 7 >> 3) - var5; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "([BI[BIII)I", - garbageValue = "-1101500142" + garbageValue = "-556309350" ) @Export("decompress") int decompress(byte[] var1, int var2, byte[] var3, int var4, int var5) { - if (var5 == 0) { // L: 101 + if (var5 == 0) { return 0; } else { - int var6 = 0; // L: 102 - var5 += var4; // L: 103 + int var6 = 0; + var5 += var4; int var7 = var2; while (true) { - byte var8 = var1[var7]; // L: 106 - if (var8 < 0) { // L: 108 + byte var8 = var1[var7]; + if (var8 < 0) { var6 = this.keys[var6]; } else { - ++var6; // L: 109 + ++var6; } int var9; - if ((var9 = this.keys[var6]) < 0) { // L: 110 - var3[var4++] = (byte)(~var9); // L: 111 - if (var4 >= var5) { // L: 112 + if ((var9 = this.keys[var6]) < 0) { + var3[var4++] = (byte)(~var9); + if (var4 >= var5) { break; } - var6 = 0; // L: 113 + var6 = 0; } - if ((var8 & 64) != 0) { // L: 115 + if ((var8 & 64) != 0) { var6 = this.keys[var6]; } else { - ++var6; // L: 116 + ++var6; } - if ((var9 = this.keys[var6]) < 0) { // L: 117 - var3[var4++] = (byte)(~var9); // L: 118 - if (var4 >= var5) { // L: 119 + if ((var9 = this.keys[var6]) < 0) { + var3[var4++] = (byte)(~var9); + if (var4 >= var5) { break; } - var6 = 0; // L: 120 + var6 = 0; } - if ((var8 & 32) != 0) { // L: 122 + if ((var8 & 32) != 0) { var6 = this.keys[var6]; } else { - ++var6; // L: 123 + ++var6; } - if ((var9 = this.keys[var6]) < 0) { // L: 124 - var3[var4++] = (byte)(~var9); // L: 125 - if (var4 >= var5) { // L: 126 + if ((var9 = this.keys[var6]) < 0) { + var3[var4++] = (byte)(~var9); + if (var4 >= var5) { break; } - var6 = 0; // L: 127 + var6 = 0; } - if ((var8 & 16) != 0) { // L: 129 + if ((var8 & 16) != 0) { var6 = this.keys[var6]; } else { - ++var6; // L: 130 + ++var6; } - if ((var9 = this.keys[var6]) < 0) { // L: 131 - var3[var4++] = (byte)(~var9); // L: 132 - if (var4 >= var5) { // L: 133 + if ((var9 = this.keys[var6]) < 0) { + var3[var4++] = (byte)(~var9); + if (var4 >= var5) { break; } - var6 = 0; // L: 134 + var6 = 0; } - if ((var8 & 8) != 0) { // L: 136 + if ((var8 & 8) != 0) { var6 = this.keys[var6]; } else { - ++var6; // L: 137 + ++var6; } - if ((var9 = this.keys[var6]) < 0) { // L: 138 - var3[var4++] = (byte)(~var9); // L: 139 - if (var4 >= var5) { // L: 140 + if ((var9 = this.keys[var6]) < 0) { + var3[var4++] = (byte)(~var9); + if (var4 >= var5) { break; } - var6 = 0; // L: 141 + var6 = 0; } - if ((var8 & 4) != 0) { // L: 143 + if ((var8 & 4) != 0) { var6 = this.keys[var6]; } else { - ++var6; // L: 144 + ++var6; } - if ((var9 = this.keys[var6]) < 0) { // L: 145 - var3[var4++] = (byte)(~var9); // L: 146 - if (var4 >= var5) { // L: 147 + if ((var9 = this.keys[var6]) < 0) { + var3[var4++] = (byte)(~var9); + if (var4 >= var5) { break; } - var6 = 0; // L: 148 + var6 = 0; } - if ((var8 & 2) != 0) { // L: 150 + if ((var8 & 2) != 0) { var6 = this.keys[var6]; } else { - ++var6; // L: 151 + ++var6; } - if ((var9 = this.keys[var6]) < 0) { // L: 152 - var3[var4++] = (byte)(~var9); // L: 153 - if (var4 >= var5) { // L: 154 + if ((var9 = this.keys[var6]) < 0) { + var3[var4++] = (byte)(~var9); + if (var4 >= var5) { break; } - var6 = 0; // L: 155 + var6 = 0; } if ((var8 & 1) != 0) { - var6 = this.keys[var6]; // L: 157 + var6 = this.keys[var6]; } else { - ++var6; // L: 158 + ++var6; } - if ((var9 = this.keys[var6]) < 0) { // L: 159 - var3[var4++] = (byte)(~var9); // L: 160 - if (var4 >= var5) { // L: 161 + if ((var9 = this.keys[var6]) < 0) { + var3[var4++] = (byte)(~var9); + if (var4 >= var5) { break; } - var6 = 0; // L: 162 + var6 = 0; } - ++var7; // L: 105 + ++var7; } - return var7 + 1 - var2; // L: 165 + return var7 + 1 - var2; } } - @ObfuscatedName("iy") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "-1189529622" + descriptor = "(Lkj;IIIIIII)V", + garbageValue = "109073521" ) - @Export("setTapToDrop") - static void setTapToDrop(boolean var0) { - Client.tapToDrop = var0; // L: 10334 - } // L: 10335 + @Export("loadTerrain") + static final void loadTerrain(Buffer var0, int var1, int var2, int var3, int var4, int var5, int var6) { + int var7; + if (var2 >= 0 && var2 < 104 && var3 >= 0 && var3 < 104) { + Tiles.Tiles_renderFlags[var1][var2][var3] = 0; + + while (true) { + var7 = var0.readUnsignedByte(); + if (var7 == 0) { + if (var1 == 0) { + Tiles.Tiles_heights[0][var2][var3] = -PcmPlayer.method2544(932731 + var2 + var4, var3 + 556238 + var5) * 8; + } else { + Tiles.Tiles_heights[var1][var2][var3] = Tiles.Tiles_heights[var1 - 1][var2][var3] - 240; + } + break; + } + + if (var7 == 1) { + int var8 = var0.readUnsignedByte(); + if (var8 == 1) { + var8 = 0; + } + + if (var1 == 0) { + Tiles.Tiles_heights[0][var2][var3] = -var8 * 8; + } else { + Tiles.Tiles_heights[var1][var2][var3] = Tiles.Tiles_heights[var1 - 1][var2][var3] - var8 * 8; + } + break; + } + + if (var7 <= 49) { + Tiles.field508[var1][var2][var3] = var0.readByte(); + class9.field40[var1][var2][var3] = (byte)((var7 - 2) / 4); + Username.field3663[var1][var2][var3] = (byte)(var7 - 2 + var6 & 3); + } else if (var7 <= 81) { + Tiles.Tiles_renderFlags[var1][var2][var3] = (byte)(var7 - 49); + } else { + Tiles.field514[var1][var2][var3] = (byte)(var7 - 81); + } + } + } else { + while (true) { + var7 = var0.readUnsignedByte(); + if (var7 == 0) { + break; + } + + if (var7 == 1) { + var0.readUnsignedByte(); + break; + } + + if (var7 <= 49) { + var0.readUnsignedByte(); + } + } + } + + } } diff --git a/runescape-client/src/main/java/IgnoreList.java b/runescape-client/src/main/java/IgnoreList.java index 4319c887b0..46c6cadc6c 100644 --- a/runescape-client/src/main/java/IgnoreList.java +++ b/runescape-client/src/main/java/IgnoreList.java @@ -1,90 +1,133 @@ 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("ke") +@ObfuscatedName("kf") @Implements("IgnoreList") public class IgnoreList extends UserList { - @ObfuscatedName("l") + @ObfuscatedName("o") + @ObfuscatedGetter( + intValue = -1712737799 + ) + @Export("canvasWidth") + public static int canvasWidth; + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lmc;" + descriptor = "Lmu;" ) @Export("loginType") final LoginType loginType; @ObfuscatedSignature( - descriptor = "(Lmc;)V" + descriptor = "(Lmu;)V" ) public IgnoreList(LoginType var1) { - super(400); // L: 12 - this.loginType = var1; // L: 13 - } // L: 14 + super(400); + this.loginType = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)Ljh;", - garbageValue = "-1664145399" + descriptor = "(B)Lju;", + garbageValue = "-99" ) @Export("newInstance") User newInstance() { - return new Ignored(); // L: 17 + return new Ignored(); } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IB)[Ljh;", - garbageValue = "-35" + descriptor = "(II)[Lju;", + garbageValue = "-1524839332" ) @Export("newTypedArray") User[] newTypedArray(int var1) { - return new Ignored[var1]; // L: 21 + return new Ignored[var1]; } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkb;IB)V", - garbageValue = "0" + descriptor = "(Lkj;II)V", + garbageValue = "1401176897" ) @Export("read") public void read(Buffer var1, int var2) { while (true) { - if (var1.offset < var2) { // L: 25 - int var3 = var1.readUnsignedByte(); // L: 26 - boolean var4 = (var3 & 1) == 1; // L: 27 - Username var5 = new Username(var1.readStringCp1252NullTerminated(), this.loginType); // L: 28 - Username var6 = new Username(var1.readStringCp1252NullTerminated(), this.loginType); // L: 29 - var1.readStringCp1252NullTerminated(); // L: 30 - if (var5 != null && var5.hasCleanName()) { // L: 31 - Ignored var7 = (Ignored)this.getByCurrentUsername(var5); // L: 32 - if (var4) { // L: 33 - Ignored var8 = (Ignored)this.getByCurrentUsername(var6); // L: 34 - if (var8 != null && var8 != var7) { // L: 35 - if (var7 != null) { // L: 36 - this.remove(var8); // L: 37 + if (var1.offset < var2) { + int var3 = var1.readUnsignedByte(); + boolean var4 = (var3 & 1) == 1; + Username var5 = new Username(var1.readStringCp1252NullTerminated(), this.loginType); + Username var6 = new Username(var1.readStringCp1252NullTerminated(), this.loginType); + var1.readStringCp1252NullTerminated(); + if (var5 != null && var5.hasCleanName()) { + Ignored var7 = (Ignored)this.getByCurrentUsername(var5); + if (var4) { + Ignored var8 = (Ignored)this.getByCurrentUsername(var6); + if (var8 != null && var8 != var7) { + if (var7 != null) { + this.remove(var8); } else { - var7 = var8; // L: 40 + var7 = var8; } } } - if (var7 != null) { // L: 44 - this.changeName(var7, var5, var6); // L: 45 + if (var7 != null) { + this.changeName(var7, var5, var6); continue; } - if (this.getSize() < 400) { // L: 47 - int var9 = this.getSize(); // L: 48 - var7 = (Ignored)this.addLast(var5, var6); // L: 49 - var7.id = var9; // L: 50 + if (this.getSize() < 400) { + int var9 = this.getSize(); + var7 = (Ignored)this.addLast(var5, var6); + var7.id = var9; } continue; } - throw new IllegalStateException(); // L: 53 + throw new IllegalStateException(); } - return; // L: 54 + return; } } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(IS)I", + garbageValue = "-18749" + ) + @Export("iLog") + public static int iLog(int var0) { + int var1 = 0; + if (var0 < 0 || var0 >= 65536) { + var0 >>>= 16; + var1 += 16; + } + + if (var0 >= 256) { + var0 >>>= 8; + var1 += 8; + } + + if (var0 >= 16) { + var0 >>>= 4; + var1 += 4; + } + + if (var0 >= 4) { + var0 >>>= 2; + var1 += 2; + } + + if (var0 >= 1) { + var0 >>>= 1; + ++var1; + } + + return var0 + var1; + } } diff --git a/runescape-client/src/main/java/Ignored.java b/runescape-client/src/main/java/Ignored.java index e87a28bb7c..ea457fe700 100644 --- a/runescape-client/src/main/java/Ignored.java +++ b/runescape-client/src/main/java/Ignored.java @@ -4,45 +4,40 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kt") +@ObfuscatedName("ks") @Implements("Ignored") public class Ignored extends User { - @ObfuscatedName("z") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = -235599993 - ) - static int field3637; - @ObfuscatedName("f") - @ObfuscatedGetter( - intValue = 421043005 + intValue = 1108684561 ) @Export("id") int id; Ignored() { - } // L: 6 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkt;I)I", - garbageValue = "1931682757" + descriptor = "(Lks;I)I", + garbageValue = "-204847170" ) @Export("compareTo_ignored") int compareTo_ignored(Ignored var1) { - return this.id - var1.id; // L: 9 + return this.id - var1.id; } - @ObfuscatedName("av") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Ljh;B)I", - garbageValue = "69" + descriptor = "(Lju;I)I", + garbageValue = "-1545516578" ) @Export("compareTo_user") public int compareTo_user(User var1) { - return this.compareTo_ignored((Ignored)var1); // L: 13 + return this.compareTo_ignored((Ignored)var1); } public int compareTo(Object var1) { - return this.compareTo_ignored((Ignored)var1); // L: 17 + return this.compareTo_ignored((Ignored)var1); } } diff --git a/runescape-client/src/main/java/IndexedSprite.java b/runescape-client/src/main/java/IndexedSprite.java index 3a8ee249bc..14fe16bf6a 100644 --- a/runescape-client/src/main/java/IndexedSprite.java +++ b/runescape-client/src/main/java/IndexedSprite.java @@ -2,276 +2,273 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("le") +@ObfuscatedName("lo") @Implements("IndexedSprite") public final class IndexedSprite extends Rasterizer2D { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("pixels") public byte[] pixels; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("palette") public int[] palette; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("subWidth") public int subWidth; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("subHeight") public int subHeight; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("xOffset") public int xOffset; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("yOffset") public int yOffset; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("width") public int width; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("height") public int height; - IndexedSprite() { - } // L: 15 - - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("normalize") public void normalize() { - if (this.subWidth != this.width || this.subHeight != this.height) { // L: 18 - byte[] var1 = new byte[this.width * this.height]; // L: 19 - int var2 = 0; // L: 20 + if (this.subWidth != this.width || this.subHeight != this.height) { + byte[] var1 = new byte[this.width * this.height]; + int var2 = 0; - for (int var3 = 0; var3 < this.subHeight; ++var3) { // L: 21 - for (int var4 = 0; var4 < this.subWidth; ++var4) { // L: 22 - var1[var4 + (var3 + this.yOffset) * this.width + this.xOffset] = this.pixels[var2++]; // L: 23 + for (int var3 = 0; var3 < this.subHeight; ++var3) { + for (int var4 = 0; var4 < this.subWidth; ++var4) { + var1[var4 + (var3 + this.yOffset) * this.width + this.xOffset] = this.pixels[var2++]; } } - this.pixels = var1; // L: 26 - this.subWidth = this.width; // L: 27 - this.subHeight = this.height; // L: 28 - this.xOffset = 0; // L: 29 - this.yOffset = 0; // L: 30 + this.pixels = var1; + this.subWidth = this.width; + this.subHeight = this.height; + this.xOffset = 0; + this.yOffset = 0; } - } // L: 31 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("shiftColors") public void shiftColors(int var1, int var2, int var3) { - for (int var4 = 0; var4 < this.palette.length; ++var4) { // L: 34 - int var5 = this.palette[var4] >> 16 & 255; // L: 35 - var5 += var1; // L: 36 - if (var5 < 0) { // L: 37 + for (int var4 = 0; var4 < this.palette.length; ++var4) { + int var5 = this.palette[var4] >> 16 & 255; + var5 += var1; + if (var5 < 0) { var5 = 0; - } else if (var5 > 255) { // L: 38 + } else if (var5 > 255) { var5 = 255; } - int var6 = this.palette[var4] >> 8 & 255; // L: 39 - var6 += var2; // L: 40 - if (var6 < 0) { // L: 41 + int var6 = this.palette[var4] >> 8 & 255; + var6 += var2; + if (var6 < 0) { var6 = 0; - } else if (var6 > 255) { // L: 42 + } else if (var6 > 255) { var6 = 255; } - int var7 = this.palette[var4] & 255; // L: 43 - var7 += var3; // L: 44 - if (var7 < 0) { // L: 45 + int var7 = this.palette[var4] & 255; + var7 += var3; + if (var7 < 0) { var7 = 0; - } else if (var7 > 255) { // L: 46 + } else if (var7 > 255) { var7 = 255; } - this.palette[var4] = var7 + (var6 << 8) + (var5 << 16); // L: 47 + this.palette[var4] = var7 + (var6 << 8) + (var5 << 16); } - } // L: 49 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("drawAt") public void drawAt(int var1, int var2) { - var1 += this.xOffset; // L: 52 - var2 += this.yOffset; // L: 53 - int var3 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; // L: 54 - int var4 = 0; // L: 55 - int var5 = this.subHeight; // L: 56 - int var6 = this.subWidth; // L: 57 - int var7 = Rasterizer2D.Rasterizer2D_width - var6; // L: 58 - int var8 = 0; // L: 59 + var1 += this.xOffset; + var2 += this.yOffset; + int var3 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; + int var4 = 0; + int var5 = this.subHeight; + int var6 = this.subWidth; + int var7 = Rasterizer2D.Rasterizer2D_width - var6; + int var8 = 0; int var9; - if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { // L: 60 - var9 = Rasterizer2D.Rasterizer2D_yClipStart - var2; // L: 61 - var5 -= var9; // L: 62 - var2 = Rasterizer2D.Rasterizer2D_yClipStart; // L: 63 - var4 += var9 * var6; // L: 64 - var3 += var9 * Rasterizer2D.Rasterizer2D_width; // L: 65 + if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { + var9 = Rasterizer2D.Rasterizer2D_yClipStart - var2; + var5 -= var9; + var2 = Rasterizer2D.Rasterizer2D_yClipStart; + var4 += var9 * var6; + var3 += var9 * Rasterizer2D.Rasterizer2D_width; } - if (var5 + var2 > Rasterizer2D.Rasterizer2D_yClipEnd) { // L: 67 + if (var5 + var2 > Rasterizer2D.Rasterizer2D_yClipEnd) { var5 -= var5 + var2 - Rasterizer2D.Rasterizer2D_yClipEnd; } - if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { // L: 68 - var9 = Rasterizer2D.Rasterizer2D_xClipStart - var1; // L: 69 - var6 -= var9; // L: 70 - var1 = Rasterizer2D.Rasterizer2D_xClipStart; // L: 71 - var4 += var9; // L: 72 - var3 += var9; // L: 73 - var8 += var9; // L: 74 - var7 += var9; // L: 75 + if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { + var9 = Rasterizer2D.Rasterizer2D_xClipStart - var1; + var6 -= var9; + var1 = Rasterizer2D.Rasterizer2D_xClipStart; + var4 += var9; + var3 += var9; + var8 += var9; + var7 += var9; } - if (var6 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 77 - var9 = var6 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; // L: 78 - var6 -= var9; // L: 79 - var8 += var9; // L: 80 - var7 += var9; // L: 81 + if (var6 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { + var9 = var6 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; + var6 -= var9; + var8 += var9; + var7 += var9; } - if (var6 > 0 && var5 > 0) { // L: 83 - IndexedSprite_two(Rasterizer2D.Rasterizer2D_pixels, this.pixels, this.palette, var4, var3, var6, var5, var7, var8); // L: 84 + if (var6 > 0 && var5 > 0) { + IndexedSprite_two(Rasterizer2D.Rasterizer2D_pixels, this.pixels, this.palette, var4, var3, var6, var5, var7, var8); } - } // L: 85 + } - @ObfuscatedName("z") - public void method6247(int var1, int var2, int var3, int var4) { - int var5 = this.subWidth; // L: 116 - int var6 = this.subHeight; // L: 117 - int var7 = 0; // L: 118 - int var8 = 0; // L: 119 - int var9 = this.width; // L: 120 - int var10 = this.height; // L: 121 - int var11 = (var9 << 16) / var3; // L: 122 - int var12 = (var10 << 16) / var4; // L: 123 + @ObfuscatedName("t") + public void method6141(int var1, int var2, int var3, int var4) { + int var5 = this.subWidth; + int var6 = this.subHeight; + int var7 = 0; + int var8 = 0; + int var9 = this.width; + int var10 = this.height; + int var11 = (var9 << 16) / var3; + int var12 = (var10 << 16) / var4; int var13; - if (this.xOffset > 0) { // L: 124 - var13 = (var11 + (this.xOffset << 16) - 1) / var11; // L: 125 - var1 += var13; // L: 126 - var7 += var13 * var11 - (this.xOffset << 16); // L: 127 + if (this.xOffset > 0) { + var13 = (var11 + (this.xOffset << 16) - 1) / var11; + var1 += var13; + var7 += var13 * var11 - (this.xOffset << 16); } - if (this.yOffset > 0) { // L: 129 - var13 = (var12 + (this.yOffset << 16) - 1) / var12; // L: 130 - var2 += var13; // L: 131 - var8 += var13 * var12 - (this.yOffset << 16); // L: 132 + if (this.yOffset > 0) { + var13 = (var12 + (this.yOffset << 16) - 1) / var12; + var2 += var13; + var8 += var13 * var12 - (this.yOffset << 16); } - if (var5 < var9) { // L: 134 + if (var5 < var9) { var3 = (var11 + ((var5 << 16) - var7) - 1) / var11; } - if (var6 < var10) { // L: 135 + if (var6 < var10) { var4 = (var12 + ((var6 << 16) - var8) - 1) / var12; } - var13 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; // L: 136 - int var14 = Rasterizer2D.Rasterizer2D_width - var3; // L: 137 - if (var2 + var4 > Rasterizer2D.Rasterizer2D_yClipEnd) { // L: 138 + var13 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; + int var14 = Rasterizer2D.Rasterizer2D_width - var3; + if (var2 + var4 > Rasterizer2D.Rasterizer2D_yClipEnd) { var4 -= var2 + var4 - Rasterizer2D.Rasterizer2D_yClipEnd; } int var15; - if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { // L: 139 - var15 = Rasterizer2D.Rasterizer2D_yClipStart - var2; // L: 140 - var4 -= var15; // L: 141 - var13 += var15 * Rasterizer2D.Rasterizer2D_width; // L: 142 - var8 += var12 * var15; // L: 143 + if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { + var15 = Rasterizer2D.Rasterizer2D_yClipStart - var2; + var4 -= var15; + var13 += var15 * Rasterizer2D.Rasterizer2D_width; + var8 += var12 * var15; } - if (var3 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 145 - var15 = var3 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; // L: 146 - var3 -= var15; // L: 147 - var14 += var15; // L: 148 + if (var3 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { + var15 = var3 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; + var3 -= var15; + var14 += var15; } - if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { // L: 150 - var15 = Rasterizer2D.Rasterizer2D_xClipStart - var1; // L: 151 - var3 -= var15; // L: 152 - var13 += var15; // L: 153 - var7 += var11 * var15; // L: 154 - var14 += var15; // L: 155 + if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { + var15 = Rasterizer2D.Rasterizer2D_xClipStart - var1; + var3 -= var15; + var13 += var15; + var7 += var11 * var15; + var14 += var15; } - IndexedSprite_something(Rasterizer2D.Rasterizer2D_pixels, this.pixels, this.palette, var7, var8, var13, var14, var3, var4, var11, var12, var5); // L: 157 - } // L: 158 + IndexedSprite_something(Rasterizer2D.Rasterizer2D_pixels, this.pixels, this.palette, var7, var8, var13, var14, var3, var4, var11, var12, var5); + } - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("IndexedSprite_two") static void IndexedSprite_two(int[] var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8) { - int var9 = -(var5 >> 2); // L: 88 - var5 = -(var5 & 3); // L: 89 + int var9 = -(var5 >> 2); + var5 = -(var5 & 3); - for (int var10 = -var6; var10 < 0; ++var10) { // L: 90 + for (int var10 = -var6; var10 < 0; ++var10) { int var11; byte var12; - for (var11 = var9; var11 < 0; ++var11) { // L: 91 - var12 = var1[var3++]; // L: 92 + for (var11 = var9; var11 < 0; ++var11) { + var12 = var1[var3++]; if (var12 != 0) { - var0[var4++] = var2[var12 & 255]; // L: 93 - } else { - ++var4; // L: 94 - } - - var12 = var1[var3++]; // L: 95 - if (var12 != 0) { // L: 96 var0[var4++] = var2[var12 & 255]; } else { - ++var4; // L: 97 + ++var4; } - var12 = var1[var3++]; // L: 98 - if (var12 != 0) { // L: 99 + var12 = var1[var3++]; + if (var12 != 0) { var0[var4++] = var2[var12 & 255]; } else { - ++var4; // L: 100 + ++var4; } - var12 = var1[var3++]; // L: 101 - if (var12 != 0) { // L: 102 + var12 = var1[var3++]; + if (var12 != 0) { var0[var4++] = var2[var12 & 255]; } else { - ++var4; // L: 103 + ++var4; + } + + var12 = var1[var3++]; + if (var12 != 0) { + var0[var4++] = var2[var12 & 255]; + } else { + ++var4; } } - for (var11 = var5; var11 < 0; ++var11) { // L: 105 - var12 = var1[var3++]; // L: 106 - if (var12 != 0) { // L: 107 + for (var11 = var5; var11 < 0; ++var11) { + var12 = var1[var3++]; + if (var12 != 0) { var0[var4++] = var2[var12 & 255]; } else { - ++var4; // L: 108 + ++var4; } } - var4 += var7; // L: 110 - var3 += var8; // L: 111 + var4 += var7; + var3 += var8; } - } // L: 113 + } - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("IndexedSprite_something") static void IndexedSprite_something(int[] var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11) { - int var12 = var3; // L: 161 + int var12 = var3; - for (int var13 = -var8; var13 < 0; ++var13) { // L: 162 - int var14 = var11 * (var4 >> 16); // L: 163 + for (int var13 = -var8; var13 < 0; ++var13) { + int var14 = var11 * (var4 >> 16); - for (int var15 = -var7; var15 < 0; ++var15) { // L: 164 - byte var16 = var1[(var3 >> 16) + var14]; // L: 165 - if (var16 != 0) { // L: 166 + for (int var15 = -var7; var15 < 0; ++var15) { + byte var16 = var1[(var3 >> 16) + var14]; + if (var16 != 0) { var0[var5++] = var2[var16 & 255]; } else { - ++var5; // L: 167 + ++var5; } - var3 += var9; // L: 168 + var3 += var9; } - var4 += var10; // L: 170 - var3 = var12; // L: 171 - var5 += var6; // L: 172 + var4 += var10; + var3 = var12; + var5 += var6; } - } // L: 174 + } } diff --git a/runescape-client/src/main/java/Instrument.java b/runescape-client/src/main/java/Instrument.java index f077ce6c37..ccf0b835a5 100644 --- a/runescape-client/src/main/java/Instrument.java +++ b/runescape-client/src/main/java/Instrument.java @@ -4,186 +4,186 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dk") +@ObfuscatedName("dc") @Implements("Instrument") public class Instrument { - @ObfuscatedName("s") + @ObfuscatedName("b") @Export("Instrument_samples") static int[] Instrument_samples; - @ObfuscatedName("j") + @ObfuscatedName("y") @Export("Instrument_noise") static int[] Instrument_noise; - @ObfuscatedName("w") + @ObfuscatedName("r") @Export("Instrument_sine") static int[] Instrument_sine; - @ObfuscatedName("d") + @ObfuscatedName("g") @Export("Instrument_phases") static int[] Instrument_phases; - @ObfuscatedName("a") + @ObfuscatedName("s") @Export("Instrument_delays") static int[] Instrument_delays; - @ObfuscatedName("g") + @ObfuscatedName("o") @Export("Instrument_volumeSteps") static int[] Instrument_volumeSteps; - @ObfuscatedName("h") + @ObfuscatedName("k") @Export("Instrument_pitchSteps") static int[] Instrument_pitchSteps; - @ObfuscatedName("i") + @ObfuscatedName("d") @Export("Instrument_pitchBaseSteps") static int[] Instrument_pitchBaseSteps; - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lda;" + descriptor = "Ldr;" ) @Export("pitch") SoundEnvelope pitch; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lda;" + descriptor = "Ldr;" ) @Export("volume") SoundEnvelope volume; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lda;" + descriptor = "Ldr;" ) @Export("pitchModifier") SoundEnvelope pitchModifier; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lda;" + descriptor = "Ldr;" ) @Export("pitchModifierAmplitude") SoundEnvelope pitchModifierAmplitude; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lda;" + descriptor = "Ldr;" ) @Export("volumeMultiplier") SoundEnvelope volumeMultiplier; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lda;" + descriptor = "Ldr;" ) @Export("volumeMultiplierAmplitude") SoundEnvelope volumeMultiplierAmplitude; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Lda;" + descriptor = "Ldr;" ) @Export("release") SoundEnvelope release; + @ObfuscatedName("p") + @ObfuscatedSignature( + descriptor = "Ldr;" + ) + @Export("attack") + SoundEnvelope attack; + @ObfuscatedName("l") + @Export("oscillatorVolume") + int[] oscillatorVolume; + @ObfuscatedName("z") + @Export("oscillatorPitch") + int[] oscillatorPitch; + @ObfuscatedName("u") + @Export("oscillatorDelays") + int[] oscillatorDelays; + @ObfuscatedName("e") + @Export("delayTime") + int delayTime; + @ObfuscatedName("m") + @Export("delayDecay") + int delayDecay; @ObfuscatedName("c") @ObfuscatedSignature( descriptor = "Lda;" ) - @Export("attack") - SoundEnvelope attack; - @ObfuscatedName("u") - @Export("oscillatorVolume") - int[] oscillatorVolume; - @ObfuscatedName("t") - @Export("oscillatorPitch") - int[] oscillatorPitch; - @ObfuscatedName("e") - @Export("oscillatorDelays") - int[] oscillatorDelays; - @ObfuscatedName("o") - @Export("delayTime") - int delayTime; - @ObfuscatedName("n") - @Export("delayDecay") - int delayDecay; - @ObfuscatedName("x") - @ObfuscatedSignature( - descriptor = "Ldt;" - ) @Export("filter") AudioFilter filter; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedSignature( - descriptor = "Lda;" + descriptor = "Ldr;" ) @Export("filterEnvelope") SoundEnvelope filterEnvelope; - @ObfuscatedName("r") + @ObfuscatedName("f") @Export("duration") int duration; - @ObfuscatedName("y") + @ObfuscatedName("a") @Export("offset") int offset; static { - Instrument_noise = new int[32768]; // L: 31 - Random var0 = new Random(0L); // L: 32 + Instrument_noise = new int[32768]; + Random var0 = new Random(0L); int var1; - for (var1 = 0; var1 < 32768; ++var1) { // L: 33 - Instrument_noise[var1] = (var0.nextInt() & 2) - 1; // L: 34 + for (var1 = 0; var1 < 32768; ++var1) { + Instrument_noise[var1] = (var0.nextInt() & 2) - 1; } - Instrument_sine = new int[32768]; // L: 36 + Instrument_sine = new int[32768]; - for (var1 = 0; var1 < 32768; ++var1) { // L: 37 - Instrument_sine[var1] = (int)(Math.sin((double)var1 / 5215.1903D) * 16384.0D); // L: 38 + for (var1 = 0; var1 < 32768; ++var1) { + Instrument_sine[var1] = (int)(Math.sin((double)var1 / 5215.1903D) * 16384.0D); } - Instrument_samples = new int[220500]; // L: 40 - Instrument_phases = new int[5]; // L: 44 - Instrument_delays = new int[5]; // L: 45 - Instrument_volumeSteps = new int[5]; // L: 46 - Instrument_pitchSteps = new int[5]; // L: 47 - Instrument_pitchBaseSteps = new int[5]; // L: 48 + Instrument_samples = new int[220500]; + Instrument_phases = new int[5]; + Instrument_delays = new int[5]; + Instrument_volumeSteps = new int[5]; + Instrument_pitchSteps = new int[5]; + Instrument_pitchBaseSteps = new int[5]; } Instrument() { - this.oscillatorVolume = new int[]{0, 0, 0, 0, 0}; // L: 17 - this.oscillatorPitch = new int[]{0, 0, 0, 0, 0}; // L: 18 - this.oscillatorDelays = new int[]{0, 0, 0, 0, 0}; // L: 19 - this.delayTime = 0; // L: 20 - this.delayDecay = 100; // L: 21 - this.duration = 500; // L: 24 - this.offset = 0; // L: 25 - } // L: 50 + this.oscillatorVolume = new int[]{0, 0, 0, 0, 0}; + this.oscillatorPitch = new int[]{0, 0, 0, 0, 0}; + this.oscillatorDelays = new int[]{0, 0, 0, 0, 0}; + this.delayTime = 0; + this.delayDecay = 100; + this.duration = 500; + this.offset = 0; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("synthesize") final int[] synthesize(int var1, int var2) { - class311.clearIntArray(Instrument_samples, 0, var1); // L: 53 - if (var2 < 10) { // L: 54 + class311.clearIntArray(Instrument_samples, 0, var1); + if (var2 < 10) { return Instrument_samples; } else { - double var3 = (double)var1 / ((double)var2 + 0.0D); // L: 55 - this.pitch.reset(); // L: 56 - this.volume.reset(); // L: 57 - int var5 = 0; // L: 58 - int var6 = 0; // L: 59 - int var7 = 0; // L: 60 - if (this.pitchModifier != null) { // L: 61 - this.pitchModifier.reset(); // L: 62 - this.pitchModifierAmplitude.reset(); // L: 63 - var5 = (int)((double)(this.pitchModifier.end - this.pitchModifier.start) * 32.768D / var3); // L: 64 - var6 = (int)((double)this.pitchModifier.start * 32.768D / var3); // L: 65 + double var3 = (double)var1 / ((double)var2 + 0.0D); + this.pitch.reset(); + this.volume.reset(); + int var5 = 0; + int var6 = 0; + int var7 = 0; + if (this.pitchModifier != null) { + this.pitchModifier.reset(); + this.pitchModifierAmplitude.reset(); + var5 = (int)((double)(this.pitchModifier.end - this.pitchModifier.start) * 32.768D / var3); + var6 = (int)((double)this.pitchModifier.start * 32.768D / var3); } - int var8 = 0; // L: 67 - int var9 = 0; // L: 68 - int var10 = 0; // L: 69 - if (this.volumeMultiplier != null) { // L: 70 - this.volumeMultiplier.reset(); // L: 71 - this.volumeMultiplierAmplitude.reset(); // L: 72 - var8 = (int)((double)(this.volumeMultiplier.end - this.volumeMultiplier.start) * 32.768D / var3); // L: 73 - var9 = (int)((double)this.volumeMultiplier.start * 32.768D / var3); // L: 74 + int var8 = 0; + int var9 = 0; + int var10 = 0; + if (this.volumeMultiplier != null) { + this.volumeMultiplier.reset(); + this.volumeMultiplierAmplitude.reset(); + var8 = (int)((double)(this.volumeMultiplier.end - this.volumeMultiplier.start) * 32.768D / var3); + var9 = (int)((double)this.volumeMultiplier.start * 32.768D / var3); } int var11; - for (var11 = 0; var11 < 5; ++var11) { // L: 76 - if (this.oscillatorVolume[var11] != 0) { // L: 77 - Instrument_phases[var11] = 0; // L: 78 - Instrument_delays[var11] = (int)((double)this.oscillatorDelays[var11] * var3); // L: 79 - Instrument_volumeSteps[var11] = (this.oscillatorVolume[var11] << 14) / 100; // L: 80 - Instrument_pitchSteps[var11] = (int)((double)(this.pitch.end - this.pitch.start) * 32.768D * Math.pow(1.0057929410678534D, (double)this.oscillatorPitch[var11]) / var3); // L: 81 - Instrument_pitchBaseSteps[var11] = (int)((double)this.pitch.start * 32.768D / var3); // L: 82 + for (var11 = 0; var11 < 5; ++var11) { + if (this.oscillatorVolume[var11] != 0) { + Instrument_phases[var11] = 0; + Instrument_delays[var11] = (int)((double)this.oscillatorDelays[var11] * var3); + Instrument_volumeSteps[var11] = (this.oscillatorVolume[var11] << 14) / 100; + Instrument_pitchSteps[var11] = (int)((double)(this.pitch.end - this.pitch.start) * 32.768D * Math.pow(1.0057929410678534D, (double)this.oscillatorPitch[var11]) / var3); + Instrument_pitchBaseSteps[var11] = (int)((double)this.pitch.start * 32.768D / var3); } } @@ -192,30 +192,30 @@ public class Instrument { int var14; int var15; int[] var10000; - for (var11 = 0; var11 < var1; ++var11) { // L: 84 - var12 = this.pitch.doStep(var1); // L: 85 - var13 = this.volume.doStep(var1); // L: 86 - if (this.pitchModifier != null) { // L: 87 - var14 = this.pitchModifier.doStep(var1); // L: 88 - var15 = this.pitchModifierAmplitude.doStep(var1); // L: 89 - var12 += this.evaluateWave(var7, var15, this.pitchModifier.form) >> 1; // L: 90 - var7 = var7 + var6 + (var14 * var5 >> 16); // L: 91 + for (var11 = 0; var11 < var1; ++var11) { + var12 = this.pitch.doStep(var1); + var13 = this.volume.doStep(var1); + if (this.pitchModifier != null) { + var14 = this.pitchModifier.doStep(var1); + var15 = this.pitchModifierAmplitude.doStep(var1); + var12 += this.evaluateWave(var7, var15, this.pitchModifier.form) >> 1; + var7 = var7 + var6 + (var14 * var5 >> 16); } - if (this.volumeMultiplier != null) { // L: 93 - var14 = this.volumeMultiplier.doStep(var1); // L: 94 - var15 = this.volumeMultiplierAmplitude.doStep(var1); // L: 95 - var13 = var13 * ((this.evaluateWave(var10, var15, this.volumeMultiplier.form) >> 1) + 32768) >> 15; // L: 96 - var10 = var10 + var9 + (var14 * var8 >> 16); // L: 97 + if (this.volumeMultiplier != null) { + var14 = this.volumeMultiplier.doStep(var1); + var15 = this.volumeMultiplierAmplitude.doStep(var1); + var13 = var13 * ((this.evaluateWave(var10, var15, this.volumeMultiplier.form) >> 1) + 32768) >> 15; + var10 = var10 + var9 + (var14 * var8 >> 16); } - for (var14 = 0; var14 < 5; ++var14) { // L: 99 - if (this.oscillatorVolume[var14] != 0) { // L: 100 - var15 = Instrument_delays[var14] + var11; // L: 101 - if (var15 < var1) { // L: 102 - var10000 = Instrument_samples; // L: 103 + for (var14 = 0; var14 < 5; ++var14) { + if (this.oscillatorVolume[var14] != 0) { + var15 = Instrument_delays[var14] + var11; + if (var15 < var1) { + var10000 = Instrument_samples; var10000[var15] += this.evaluateWave(Instrument_phases[var14], var13 * Instrument_volumeSteps[var14] >> 15, this.pitch.form); - var10000 = Instrument_phases; // L: 104 + var10000 = Instrument_phases; var10000[var14] += (var12 * Instrument_pitchSteps[var14] >> 16) + Instrument_pitchBaseSteps[var14]; } } @@ -223,204 +223,204 @@ public class Instrument { } int var16; - if (this.release != null) { // L: 108 - this.release.reset(); // L: 109 - this.attack.reset(); // L: 110 - var11 = 0; // L: 111 - boolean var19 = false; // L: 112 - boolean var20 = true; // L: 113 + if (this.release != null) { + this.release.reset(); + this.attack.reset(); + var11 = 0; + boolean var19 = false; + boolean var20 = true; - for (var14 = 0; var14 < var1; ++var14) { // L: 114 - var15 = this.release.doStep(var1); // L: 115 - var16 = this.attack.doStep(var1); // L: 116 - if (var20) { // L: 117 + for (var14 = 0; var14 < var1; ++var14) { + var15 = this.release.doStep(var1); + var16 = this.attack.doStep(var1); + if (var20) { var12 = (var15 * (this.release.end - this.release.start) >> 8) + this.release.start; } else { - var12 = (var16 * (this.release.end - this.release.start) >> 8) + this.release.start; // L: 118 + var12 = (var16 * (this.release.end - this.release.start) >> 8) + this.release.start; } - var11 += 256; // L: 119 + var11 += 256; if (var11 >= var12) { - var11 = 0; // L: 120 - var20 = !var20; // L: 121 + var11 = 0; + var20 = !var20; } - if (var20) { // L: 123 + if (var20) { Instrument_samples[var14] = 0; } } } - if (this.delayTime > 0 && this.delayDecay > 0) { // L: 126 - var11 = (int)((double)this.delayTime * var3); // L: 127 + if (this.delayTime > 0 && this.delayDecay > 0) { + var11 = (int)((double)this.delayTime * var3); - for (var12 = var11; var12 < var1; ++var12) { // L: 128 + for (var12 = var11; var12 < var1; ++var12) { var10000 = Instrument_samples; var10000[var12] += Instrument_samples[var12 - var11] * this.delayDecay / 100; } } - if (this.filter.pairs[0] > 0 || this.filter.pairs[1] > 0) { // L: 130 - this.filterEnvelope.reset(); // L: 131 - var11 = this.filterEnvelope.doStep(var1 + 1); // L: 132 - var12 = this.filter.compute(0, (float)var11 / 65536.0F); // L: 133 - var13 = this.filter.compute(1, (float)var11 / 65536.0F); // L: 134 - if (var1 >= var12 + var13) { // L: 135 - var14 = 0; // L: 136 - var15 = var13; // L: 137 - if (var13 > var1 - var12) { // L: 138 + if (this.filter.pairs[0] > 0 || this.filter.pairs[1] > 0) { + this.filterEnvelope.reset(); + var11 = this.filterEnvelope.doStep(var1 + 1); + var12 = this.filter.compute(0, (float)var11 / 65536.0F); + var13 = this.filter.compute(1, (float)var11 / 65536.0F); + if (var1 >= var12 + var13) { + var14 = 0; + var15 = var13; + if (var13 > var1 - var12) { var15 = var1 - var12; } int var17; while (var14 < var15) { - var16 = (int)((long)Instrument_samples[var14 + var12] * (long)AudioFilter.forwardMultiplier >> 16); // L: 140 + var16 = (int)((long)Instrument_samples[var14 + var12] * (long)AudioFilter.forwardMultiplier >> 16); - for (var17 = 0; var17 < var12; ++var17) { // L: 141 + for (var17 = 0; var17 < var12; ++var17) { var16 += (int)((long)Instrument_samples[var14 + var12 - 1 - var17] * (long)AudioFilter.coefficients[0][var17] >> 16); } - for (var17 = 0; var17 < var14; ++var17) { // L: 142 + for (var17 = 0; var17 < var14; ++var17) { var16 -= (int)((long)Instrument_samples[var14 - 1 - var17] * (long)AudioFilter.coefficients[1][var17] >> 16); } - Instrument_samples[var14] = var16; // L: 143 - var11 = this.filterEnvelope.doStep(var1 + 1); // L: 144 - ++var14; // L: 139 + Instrument_samples[var14] = var16; + var11 = this.filterEnvelope.doStep(var1 + 1); + ++var14; } - var15 = 128; // L: 147 + var15 = 128; while (true) { - if (var15 > var1 - var12) { // L: 149 + if (var15 > var1 - var12) { var15 = var1 - var12; } int var18; while (var14 < var15) { - var17 = (int)((long)Instrument_samples[var14 + var12] * (long)AudioFilter.forwardMultiplier >> 16); // L: 151 + var17 = (int)((long)Instrument_samples[var14 + var12] * (long)AudioFilter.forwardMultiplier >> 16); - for (var18 = 0; var18 < var12; ++var18) { // L: 152 + for (var18 = 0; var18 < var12; ++var18) { var17 += (int)((long)Instrument_samples[var14 + var12 - 1 - var18] * (long)AudioFilter.coefficients[0][var18] >> 16); } - for (var18 = 0; var18 < var13; ++var18) { // L: 153 + for (var18 = 0; var18 < var13; ++var18) { var17 -= (int)((long)Instrument_samples[var14 - 1 - var18] * (long)AudioFilter.coefficients[1][var18] >> 16); } - Instrument_samples[var14] = var17; // L: 154 - var11 = this.filterEnvelope.doStep(var1 + 1); // L: 155 - ++var14; // L: 150 + Instrument_samples[var14] = var17; + var11 = this.filterEnvelope.doStep(var1 + 1); + ++var14; } - if (var14 >= var1 - var12) { // L: 157 + if (var14 >= var1 - var12) { while (var14 < var1) { - var17 = 0; // L: 163 + var17 = 0; - for (var18 = var14 + var12 - var1; var18 < var12; ++var18) { // L: 164 + for (var18 = var14 + var12 - var1; var18 < var12; ++var18) { var17 += (int)((long)Instrument_samples[var14 + var12 - 1 - var18] * (long)AudioFilter.coefficients[0][var18] >> 16); } - for (var18 = 0; var18 < var13; ++var18) { // L: 165 + for (var18 = 0; var18 < var13; ++var18) { var17 -= (int)((long)Instrument_samples[var14 - 1 - var18] * (long)AudioFilter.coefficients[1][var18] >> 16); } - Instrument_samples[var14] = var17; // L: 166 - this.filterEnvelope.doStep(var1 + 1); // L: 167 - ++var14; // L: 162 + Instrument_samples[var14] = var17; + this.filterEnvelope.doStep(var1 + 1); + ++var14; } break; } - var12 = this.filter.compute(0, (float)var11 / 65536.0F); // L: 158 - var13 = this.filter.compute(1, (float)var11 / 65536.0F); // L: 159 - var15 += 128; // L: 160 + var12 = this.filter.compute(0, (float)var11 / 65536.0F); + var13 = this.filter.compute(1, (float)var11 / 65536.0F); + var15 += 128; } } } - for (var11 = 0; var11 < var1; ++var11) { // L: 171 - if (Instrument_samples[var11] < -32768) { // L: 172 + for (var11 = 0; var11 < var1; ++var11) { + if (Instrument_samples[var11] < -32768) { Instrument_samples[var11] = -32768; } - if (Instrument_samples[var11] > 32767) { // L: 173 + if (Instrument_samples[var11] > 32767) { Instrument_samples[var11] = 32767; } } - return Instrument_samples; // L: 175 + return Instrument_samples; } } - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("evaluateWave") final int evaluateWave(int var1, int var2, int var3) { - if (var3 == 1) { // L: 179 - return (var1 & 32767) < 16384 ? var2 : -var2; // L: 180 181 - } else if (var3 == 2) { // L: 183 + if (var3 == 1) { + return (var1 & 32767) < 16384 ? var2 : -var2; + } else if (var3 == 2) { return Instrument_sine[var1 & 32767] * var2 >> 14; - } else if (var3 == 3) { // L: 184 + } else if (var3 == 3) { return (var2 * (var1 & 32767) >> 14) - var2; } else { - return var3 == 4 ? var2 * Instrument_noise[var1 / 2607 & 32767] : 0; // L: 185 186 + return var3 == 4 ? var2 * Instrument_noise[var1 / 2607 & 32767] : 0; } } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkb;)V" + descriptor = "(Lkj;)V" ) @Export("decode") final void decode(Buffer var1) { - this.pitch = new SoundEnvelope(); // L: 190 - this.pitch.decode(var1); // L: 191 - this.volume = new SoundEnvelope(); // L: 192 - this.volume.decode(var1); // L: 193 - int var2 = var1.readUnsignedByte(); // L: 194 - if (var2 != 0) { // L: 195 - --var1.offset; // L: 196 - this.pitchModifier = new SoundEnvelope(); // L: 197 - this.pitchModifier.decode(var1); // L: 198 - this.pitchModifierAmplitude = new SoundEnvelope(); // L: 199 - this.pitchModifierAmplitude.decode(var1); // L: 200 + this.pitch = new SoundEnvelope(); + this.pitch.decode(var1); + this.volume = new SoundEnvelope(); + this.volume.decode(var1); + int var2 = var1.readUnsignedByte(); + if (var2 != 0) { + --var1.offset; + this.pitchModifier = new SoundEnvelope(); + this.pitchModifier.decode(var1); + this.pitchModifierAmplitude = new SoundEnvelope(); + this.pitchModifierAmplitude.decode(var1); } - var2 = var1.readUnsignedByte(); // L: 202 - if (var2 != 0) { // L: 203 - --var1.offset; // L: 204 - this.volumeMultiplier = new SoundEnvelope(); // L: 205 - this.volumeMultiplier.decode(var1); // L: 206 - this.volumeMultiplierAmplitude = new SoundEnvelope(); // L: 207 - this.volumeMultiplierAmplitude.decode(var1); // L: 208 + var2 = var1.readUnsignedByte(); + if (var2 != 0) { + --var1.offset; + this.volumeMultiplier = new SoundEnvelope(); + this.volumeMultiplier.decode(var1); + this.volumeMultiplierAmplitude = new SoundEnvelope(); + this.volumeMultiplierAmplitude.decode(var1); } - var2 = var1.readUnsignedByte(); // L: 210 - if (var2 != 0) { // L: 211 - --var1.offset; // L: 212 - this.release = new SoundEnvelope(); // L: 213 - this.release.decode(var1); // L: 214 - this.attack = new SoundEnvelope(); // L: 215 - this.attack.decode(var1); // L: 216 + var2 = var1.readUnsignedByte(); + if (var2 != 0) { + --var1.offset; + this.release = new SoundEnvelope(); + this.release.decode(var1); + this.attack = new SoundEnvelope(); + this.attack.decode(var1); } - for (int var3 = 0; var3 < 10; ++var3) { // L: 218 - int var4 = var1.readUShortSmart(); // L: 219 - if (var4 == 0) { // L: 220 + for (int var3 = 0; var3 < 10; ++var3) { + int var4 = var1.readUShortSmart(); + if (var4 == 0) { break; } - this.oscillatorVolume[var3] = var4; // L: 221 - this.oscillatorPitch[var3] = var1.readShortSmart(); // L: 222 - this.oscillatorDelays[var3] = var1.readUShortSmart(); // L: 223 + this.oscillatorVolume[var3] = var4; + this.oscillatorPitch[var3] = var1.readShortSmart(); + this.oscillatorDelays[var3] = var1.readUShortSmart(); } - this.delayTime = var1.readUShortSmart(); // L: 225 - this.delayDecay = var1.readUShortSmart(); // L: 226 - this.duration = var1.readUnsignedShort(); // L: 227 - this.offset = var1.readUnsignedShort(); // L: 228 - this.filter = new AudioFilter(); // L: 229 - this.filterEnvelope = new SoundEnvelope(); // L: 230 - this.filter.method2844(var1, this.filterEnvelope); // L: 231 - } // L: 232 + this.delayTime = var1.readUShortSmart(); + this.delayDecay = var1.readUShortSmart(); + this.duration = var1.readUnsignedShort(); + this.offset = var1.readUnsignedShort(); + this.filter = new AudioFilter(); + this.filterEnvelope = new SoundEnvelope(); + this.filter.method2772(var1, this.filterEnvelope); + } } diff --git a/runescape-client/src/main/java/IntHashTable.java b/runescape-client/src/main/java/IntHashTable.java index 4bdd1f27d0..ecd947f409 100644 --- a/runescape-client/src/main/java/IntHashTable.java +++ b/runescape-client/src/main/java/IntHashTable.java @@ -3,56 +3,56 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mj") +@ObfuscatedName("mb") @Implements("IntHashTable") public class IntHashTable { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("array") int[] array; public IntHashTable(int[] var1) { int var2; - for (var2 = 1; var2 <= (var1.length >> 1) + var1.length; var2 <<= 1) { // L: 7 8 + for (var2 = 1; var2 <= (var1.length >> 1) + var1.length; var2 <<= 1) { } - this.array = new int[var2 + var2]; // L: 9 + this.array = new int[var2 + var2]; int var3; - for (var3 = 0; var3 < var2 + var2; ++var3) { // L: 10 + for (var3 = 0; var3 < var2 + var2; ++var3) { this.array[var3] = -1; } int var4; - for (var3 = 0; var3 < var1.length; this.array[var4 + var4 + 1] = var3++) { // L: 11 15 - for (var4 = var1[var3] & var2 - 1; this.array[var4 + var4 + 1] != -1; var4 = var4 + 1 & var2 - 1) { // L: 12 13 + for (var3 = 0; var3 < var1.length; this.array[var4 + var4 + 1] = var3++) { + for (var4 = var1[var3] & var2 - 1; this.array[var4 + var4 + 1] != -1; var4 = var4 + 1 & var2 - 1) { } - this.array[var4 + var4] = var1[var3]; // L: 14 + this.array[var4 + var4] = var1[var3]; } - } // L: 17 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(II)I", - garbageValue = "1541928585" + garbageValue = "-1610554828" ) @Export("get") public int get(int var1) { - int var2 = (this.array.length >> 1) - 1; // L: 20 - int var3 = var1 & var2; // L: 21 + int var2 = (this.array.length >> 1) - 1; + int var3 = var1 & var2; while (true) { - int var4 = this.array[var3 + var3 + 1]; // L: 23 - if (var4 == -1) { // L: 24 + int var4 = this.array[var3 + var3 + 1]; + if (var4 == -1) { return -1; } - if (this.array[var3 + var3] == var1) { // L: 25 + if (this.array[var3 + var3] == var1) { return var4; } - var3 = var3 + 1 & var2; // L: 26 + var3 = var3 + 1 & var2; } } } diff --git a/runescape-client/src/main/java/IntegerNode.java b/runescape-client/src/main/java/IntegerNode.java index bac7ab13a7..b57b8254ae 100644 --- a/runescape-client/src/main/java/IntegerNode.java +++ b/runescape-client/src/main/java/IntegerNode.java @@ -5,11 +5,11 @@ import net.runelite.mapping.ObfuscatedName; @ObfuscatedName("gh") @Implements("IntegerNode") public class IntegerNode extends Node { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("integer") public int integer; public IntegerNode(int var1) { - this.integer = var1; // L: 7 - } // L: 8 + this.integer = var1; + } } diff --git a/runescape-client/src/main/java/InterfaceParent.java b/runescape-client/src/main/java/InterfaceParent.java index c0227a9c9f..67aed79204 100644 --- a/runescape-client/src/main/java/InterfaceParent.java +++ b/runescape-client/src/main/java/InterfaceParent.java @@ -1,307 +1,46 @@ +import java.util.concurrent.ScheduledExecutorService; 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("bs") +@ObfuscatedName("bt") @Implements("InterfaceParent") public class InterfaceParent extends Node { - @ObfuscatedName("qm") + @ObfuscatedName("t") + @Export("Interpreter_intLocals") + static int[] Interpreter_intLocals; + @ObfuscatedName("p") + @Export("soundSystemExecutor") + static ScheduledExecutorService soundSystemExecutor; + @ObfuscatedName("fq") @ObfuscatedSignature( - descriptor = "Llc;" + descriptor = "Llr;" ) - @Export("sceneMinimapSprite") - static Sprite sceneMinimapSprite; - @ObfuscatedName("o") + static AbstractSocket field562; + @ObfuscatedName("hy") @ObfuscatedSignature( - descriptor = "Lhj;" + descriptor = "[Llo;" ) - @Export("musicTrack") - public static MusicTrack musicTrack; - @ObfuscatedName("f") + @Export("scrollBarSprites") + static IndexedSprite[] scrollBarSprites; + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 1986621351 + intValue = -820173359 ) @Export("group") int group; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -41526563 + intValue = 1426286051 ) @Export("type") int type; - @ObfuscatedName("l") - boolean field596; + @ObfuscatedName("x") + boolean field559; InterfaceParent() { - this.field596 = false; // L: 8 - } // L: 10 - - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "(IIIIIII)I", - garbageValue = "-2067928817" - ) - public static int method1272(int var0, int var1, int var2, int var3, int var4, int var5) { - if ((var5 & 1) == 1) { // L: 38 - int var6 = var3; // L: 39 - var3 = var4; // L: 40 - var4 = var6; // L: 41 - } - - var2 &= 3; // L: 43 - if (var2 == 0) { // L: 44 - return var1; - } else if (var2 == 1) { // L: 45 - return 7 - var0 - (var3 - 1); - } else { - return var2 == 2 ? 7 - var1 - (var4 - 1) : var0; // L: 46 - } - } - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1980231219" - ) - public static void method1270() { - try { - JagexCache.JagexCache_dat2File.close(); // L: 338 - - for (int var0 = 0; var0 < class297.idxCount; ++var0) { // L: 339 - JagexCache.JagexCache_idxFiles[var0].close(); - } - - JagexCache.JagexCache_idx255File.close(); // L: 340 - JagexCache.JagexCache_randomDat.close(); // L: 341 - } catch (Exception var2) { // L: 343 - } - - } // L: 344 - - @ObfuscatedName("ax") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "-425142787" - ) - static int method1271(int var0) { - return (int)((Math.log((double)var0) / Interpreter.field1129 - 7.0D) * 256.0D); // L: 3197 - } - - @ObfuscatedName("fz") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-271325074" - ) - static final void method1269() { - int var0; - int var1; - int var2; - int var3; - int var4; - int var5; - if (Client.oculusOrbState == 0) { // L: 3775 - var0 = PlayerType.localPlayer.x; // L: 3776 - var1 = PlayerType.localPlayer.y; // L: 3777 - if (TileItem.oculusOrbFocalPointX - var0 < -500 || TileItem.oculusOrbFocalPointX - var0 > 500 || Interpreter.oculusOrbFocalPointY - var1 < -500 || Interpreter.oculusOrbFocalPointY - var1 > 500) { // L: 3778 - TileItem.oculusOrbFocalPointX = var0; // L: 3779 - Interpreter.oculusOrbFocalPointY = var1; // L: 3780 - } - - if (var0 != TileItem.oculusOrbFocalPointX) { // L: 3782 - TileItem.oculusOrbFocalPointX += (var0 - TileItem.oculusOrbFocalPointX) / 16; - } - - if (var1 != Interpreter.oculusOrbFocalPointY) { // L: 3783 - Interpreter.oculusOrbFocalPointY += (var1 - Interpreter.oculusOrbFocalPointY) / 16; - } - - var2 = TileItem.oculusOrbFocalPointX >> 7; // L: 3784 - var3 = Interpreter.oculusOrbFocalPointY >> 7; // L: 3785 - var4 = GrandExchangeOfferWorldComparator.getTileHeight(TileItem.oculusOrbFocalPointX, Interpreter.oculusOrbFocalPointY, GrandExchangeOfferUnitPriceComparator.Client_plane); // L: 3786 - var5 = 0; // L: 3787 - int var6; - if (var2 > 3 && var3 > 3 && var2 < 100 && var3 < 100) { // L: 3788 - for (var6 = var2 - 4; var6 <= var2 + 4; ++var6) { // L: 3789 - for (int var7 = var3 - 4; var7 <= var3 + 4; ++var7) { // L: 3790 - int var8 = GrandExchangeOfferUnitPriceComparator.Client_plane; // L: 3791 - if (var8 < 3 && (Tiles.Tiles_renderFlags[1][var6][var7] & 2) == 2) { // L: 3792 - ++var8; - } - - int var9 = var4 - Tiles.Tiles_heights[var8][var6][var7]; // L: 3793 - if (var9 > var5) { // L: 3794 - var5 = var9; - } - } - } - } - - var6 = var5 * 192; // L: 3798 - if (var6 > 98048) { // L: 3799 - var6 = 98048; - } - - if (var6 < 32768) { // L: 3800 - var6 = 32768; - } - - if (var6 > Client.field810) { // L: 3801 - Client.field810 += (var6 - Client.field810) / 24; - } else if (var6 < Client.field810) { // L: 3802 - Client.field810 += (var6 - Client.field810) / 80; - } - - Tiles.field542 = GrandExchangeOfferWorldComparator.getTileHeight(PlayerType.localPlayer.x, PlayerType.localPlayer.y, GrandExchangeOfferUnitPriceComparator.Client_plane) - Client.camFollowHeight; // L: 3803 - } else if (Client.oculusOrbState == 1) { // L: 3805 - if (Client.field725 && PlayerType.localPlayer != null) { // L: 3807 - var0 = PlayerType.localPlayer.pathX[0]; // L: 3808 - var1 = PlayerType.localPlayer.pathY[0]; // L: 3809 - if (var0 >= 0 && var1 >= 0 && var0 < 104 && var1 < 104) { // L: 3810 - TileItem.oculusOrbFocalPointX = PlayerType.localPlayer.x; // L: 3811 - var2 = GrandExchangeOfferWorldComparator.getTileHeight(PlayerType.localPlayer.x, PlayerType.localPlayer.y, GrandExchangeOfferUnitPriceComparator.Client_plane) - Client.camFollowHeight; // L: 3812 - if (var2 < Tiles.field542) { // L: 3813 - Tiles.field542 = var2; - } - - Interpreter.oculusOrbFocalPointY = PlayerType.localPlayer.y; // L: 3814 - Client.field725 = false; // L: 3815 - } - } - - short var10 = -1; // L: 3818 - if (KeyHandler.KeyHandler_pressedKeys[33]) { // L: 3819 - var10 = 0; - } else if (KeyHandler.KeyHandler_pressedKeys[49]) { // L: 3820 - var10 = 1024; - } - - if (KeyHandler.KeyHandler_pressedKeys[48]) { // L: 3821 - if (var10 == 0) { // L: 3822 - var10 = 1792; - } else if (var10 == 1024) { // L: 3823 - var10 = 1280; - } else { - var10 = 1536; // L: 3824 - } - } else if (KeyHandler.KeyHandler_pressedKeys[50]) { // L: 3826 - if (var10 == 0) { // L: 3827 - var10 = 256; - } else if (var10 == 1024) { // L: 3828 - var10 = 768; - } else { - var10 = 512; // L: 3829 - } - } - - byte var11 = 0; // L: 3831 - if (KeyHandler.KeyHandler_pressedKeys[35]) { // L: 3832 - var11 = -1; - } else if (KeyHandler.KeyHandler_pressedKeys[51]) { // L: 3833 - var11 = 1; - } - - var2 = 0; // L: 3834 - if (var10 >= 0 || var11 != 0) { // L: 3835 - var2 = KeyHandler.KeyHandler_pressedKeys[81] ? Client.oculusOrbSlowedSpeed * -285231223 * 1077669561 : Client.oculusOrbNormalSpeed * -1776720113 * 588425199; // L: 3836 - var2 *= 16; // L: 3837 - Client.field759 = var10; // L: 3838 - Client.field760 = var11; // L: 3839 - } - - if (Client.field692 < var2) { // L: 3841 - Client.field692 += var2 / 8; // L: 3842 - if (Client.field692 > var2) { // L: 3843 - Client.field692 = var2; - } - } else if (Client.field692 > var2) { // L: 3845 - Client.field692 = Client.field692 * 9 / 10; - } - - if (Client.field692 > 0) { // L: 3846 - var3 = Client.field692 / 16; // L: 3847 - if (Client.field759 >= 0) { // L: 3848 - var0 = Client.field759 - ViewportMouse.cameraYaw & 2047; // L: 3849 - var4 = Rasterizer3D.Rasterizer3D_sine[var0]; // L: 3850 - var5 = Rasterizer3D.Rasterizer3D_cosine[var0]; // L: 3851 - TileItem.oculusOrbFocalPointX += var4 * var3 / 65536; // L: 3852 - Interpreter.oculusOrbFocalPointY += var5 * var3 / 65536; // L: 3853 - } - - if (Client.field760 != 0) { // L: 3855 - Tiles.field542 += var3 * Client.field760; // L: 3856 - if (Tiles.field542 > 0) { // L: 3857 - Tiles.field542 = 0; - } - } - } else { - Client.field759 = -1; // L: 3861 - Client.field760 = -1; // L: 3862 - } - - if (KeyHandler.KeyHandler_pressedKeys[13]) { // L: 3864 - LoginScreenAnimation.method1945(); // L: 3865 - } - } - - if (MouseHandler.MouseHandler_currentButton == 4 && MusicPatchNode.mouseCam) { // L: 3868 - var0 = MouseHandler.MouseHandler_y - Client.mouseCamClickedY; // L: 3869 - Client.camAngleDX = var0 * 2; // L: 3870 - Client.mouseCamClickedY = var0 != -1 && var0 != 1 ? (Client.mouseCamClickedY + MouseHandler.MouseHandler_y) / 2 : MouseHandler.MouseHandler_y * 990882725 * -581221331; // L: 3871 - var1 = Client.mouseCamClickedX - MouseHandler.MouseHandler_x; // L: 3872 - Client.camAngleDY = var1 * 2; // L: 3873 - Client.mouseCamClickedX = var1 != -1 && var1 != 1 ? (MouseHandler.MouseHandler_x + Client.mouseCamClickedX) / 2 : MouseHandler.MouseHandler_x * -2115208813 * 219319451; // L: 3874 - } else { - if (KeyHandler.KeyHandler_pressedKeys[96]) { // L: 3877 - Client.camAngleDY += (-24 - Client.camAngleDY) / 2; - } else if (KeyHandler.KeyHandler_pressedKeys[97]) { // L: 3878 - Client.camAngleDY += (24 - Client.camAngleDY) / 2; - } else { - Client.camAngleDY /= 2; // L: 3879 - } - - if (KeyHandler.KeyHandler_pressedKeys[98]) { // L: 3880 - Client.camAngleDX += (12 - Client.camAngleDX) / 2; - } else if (KeyHandler.KeyHandler_pressedKeys[99]) { // L: 3881 - Client.camAngleDX += (-12 - Client.camAngleDX) / 2; - } else { - Client.camAngleDX /= 2; // L: 3882 - } - - Client.mouseCamClickedY = MouseHandler.MouseHandler_y; // L: 3883 - Client.mouseCamClickedX = MouseHandler.MouseHandler_x; // L: 3884 - } - - Client.camAngleY = Client.camAngleDY / 2 + Client.camAngleY & 2047; // L: 3886 - Client.camAngleX += Client.camAngleDX / 2; // L: 3887 - if (Client.camAngleX < 128) { // L: 3888 - Client.camAngleX = 128; - } - - if (Client.camAngleX > 383) { // L: 3889 - Client.camAngleX = 383; - } - - } // L: 3890 - - @ObfuscatedName("iw") - @ObfuscatedSignature( - descriptor = "(II)Ljava/lang/String;", - garbageValue = "218474433" - ) - @Export("formatItemStacks") - static final String formatItemStacks(int var0) { - String var1 = Integer.toString(var0); // L: 9845 - - for (int var2 = var1.length() - 3; var2 > 0; var2 -= 3) { // L: 9846 - var1 = var1.substring(0, var2) + "," + var1.substring(var2); // L: 9847 - } - - if (var1.length() > 9) { // L: 9849 - return " " + Client.colorStartTag(65408) + var1.substring(0, var1.length() - 8) + "M" + " " + " (" + var1 + ")" + ""; - } else { - return var1.length() > 6 ? " " + Client.colorStartTag(16777215) + var1.substring(0, var1.length() - 4) + "K" + " " + " (" + var1 + ")" + "" : " " + Client.colorStartTag(16776960) + var1 + ""; // L: 9850 9851 - } + this.field559 = false; } } diff --git a/runescape-client/src/main/java/Interpreter.java b/runescape-client/src/main/java/Interpreter.java index 8827fab131..1e387493a6 100644 --- a/runescape-client/src/main/java/Interpreter.java +++ b/runescape-client/src/main/java/Interpreter.java @@ -4,22 +4,16 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ci") +@ObfuscatedName("cc") @Implements("Interpreter") public class Interpreter { - @ObfuscatedName("l") - @Export("Interpreter_intLocals") - static int[] Interpreter_intLocals; - @ObfuscatedName("m") - @Export("Interpreter_stringLocals") - static String[] Interpreter_stringLocals; - @ObfuscatedName("z") + @ObfuscatedName("n") @Export("Interpreter_arrayLengths") static int[] Interpreter_arrayLengths; - @ObfuscatedName("q") + @ObfuscatedName("p") @Export("Interpreter_arrays") static int[][] Interpreter_arrays; - @ObfuscatedName("k") + @ObfuscatedName("l") @Export("Interpreter_intStack") static int[] Interpreter_intStack; @ObfuscatedName("u") @@ -27,132 +21,112 @@ public class Interpreter { static String[] Interpreter_stringStack; @ObfuscatedName("e") @ObfuscatedGetter( - intValue = 1142529175 + intValue = 1712020733 + ) + @Export("Interpreter_stringStackSize") + static int Interpreter_stringStackSize; + @ObfuscatedName("m") + @ObfuscatedGetter( + intValue = 1415753819 ) @Export("Interpreter_frameDepth") static int Interpreter_frameDepth; - @ObfuscatedName("o") + @ObfuscatedName("c") @ObfuscatedSignature( - descriptor = "[Lbm;" + descriptor = "[Lbk;" ) @Export("Interpreter_frames") static ScriptFrame[] Interpreter_frames; - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "Lht;" - ) - static Widget field1122; - @ObfuscatedName("p") + @ObfuscatedName("a") @Export("Interpreter_calendar") static java.util.Calendar Interpreter_calendar; - @ObfuscatedName("r") + @ObfuscatedName("b") @Export("Interpreter_MONTHS") static final String[] Interpreter_MONTHS; - @ObfuscatedName("s") - static boolean field1130; - @ObfuscatedName("j") - static boolean field1128; - @ObfuscatedName("w") - @ObfuscatedGetter( - intValue = -356581693 - ) - static int field1119; + @ObfuscatedName("r") + static boolean field1104; + @ObfuscatedName("q") + static boolean field1103; @ObfuscatedName("g") - static final double field1129; - @ObfuscatedName("ih") @ObfuscatedGetter( - intValue = -44620435 + intValue = -1923352627 ) - @Export("oculusOrbFocalPointY") - static int oculusOrbFocalPointY; + static int field1097; + @ObfuscatedName("d") + static final double field1093; static { - Interpreter_arrayLengths = new int[5]; // L: 68 - Interpreter_arrays = new int[5][5000]; // L: 69 - Interpreter_intStack = new int[1000]; // L: 70 - Interpreter_stringStack = new String[1000]; // L: 72 - Interpreter_frameDepth = 0; // L: 74 - Interpreter_frames = new ScriptFrame[50]; // L: 75 - Interpreter_calendar = java.util.Calendar.getInstance(); // L: 78 - Interpreter_MONTHS = new String[]{"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; // L: 81 - field1130 = false; // L: 84 - field1128 = false; // L: 85 - field1119 = 0; // L: 86 - field1129 = Math.log(2.0D); // L: 90 + Interpreter_arrayLengths = new int[5]; + Interpreter_arrays = new int[5][5000]; + Interpreter_intStack = new int[1000]; + Interpreter_stringStack = new String[1000]; + Interpreter_frameDepth = 0; + Interpreter_frames = new ScriptFrame[50]; + Interpreter_calendar = java.util.Calendar.getInstance(); + Interpreter_MONTHS = new String[]{"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; + field1104 = false; + field1103 = false; + field1097 = 0; + field1093 = Math.log(2.0D); } - @ObfuscatedName("z") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;II[BII)I", - garbageValue = "-1431393393" + descriptor = "(Lib;IIIZI)V", + garbageValue = "781493841" ) - @Export("encodeStringCp1252") - public static int encodeStringCp1252(CharSequence var0, int var1, int var2, byte[] var3, int var4) { - int var5 = var2 - var1; // L: 106 + public static void method2082(AbstractArchive var0, int var1, int var2, int var3, boolean var4) { + class206.musicPlayerStatus = 1; + Varps.musicTrackArchive = var0; + HealthBarUpdate.musicTrackGroupId = var1; + class206.musicTrackFileId = var2; + GrandExchangeEvent.musicTrackVolume = var3; + class231.musicTrackBoolean = var4; + WorldMapSection1.pcmSampleLength = 10000; + } - for (int var6 = 0; var6 < var5; ++var6) { // L: 107 - char var7 = var0.charAt(var6 + var1); // L: 108 - if (var7 > 0 && var7 < 128 || var7 >= 160 && var7 <= 255) { // L: 109 - var3[var6 + var4] = (byte)var7; - } else if (var7 == 8364) { // L: 110 - var3[var6 + var4] = -128; - } else if (var7 == 8218) { // L: 111 - var3[var6 + var4] = -126; - } else if (var7 == 402) { // L: 112 - var3[var6 + var4] = -125; - } else if (var7 == 8222) { // L: 113 - var3[var6 + var4] = -124; - } else if (var7 == 8230) { // L: 114 - var3[var6 + var4] = -123; - } else if (var7 == 8224) { // L: 115 - var3[var6 + var4] = -122; - } else if (var7 == 8225) { // L: 116 - var3[var6 + var4] = -121; - } else if (var7 == 710) { - var3[var6 + var4] = -120; // L: 117 - } else if (var7 == 8240) { // L: 118 - var3[var6 + var4] = -119; - } else if (var7 == 352) { // L: 119 - var3[var6 + var4] = -118; - } else if (var7 == 8249) { // L: 120 - var3[var6 + var4] = -117; - } else if (var7 == 338) { // L: 121 - var3[var6 + var4] = -116; - } else if (var7 == 381) { // L: 122 - var3[var6 + var4] = -114; - } else if (var7 == 8216) { // L: 123 - var3[var6 + var4] = -111; - } else if (var7 == 8217) { // L: 124 - var3[var6 + var4] = -110; - } else if (var7 == 8220) { // L: 125 - var3[var6 + var4] = -109; - } else if (var7 == 8221) { // L: 126 - var3[var6 + var4] = -108; - } else if (var7 == 8226) { // L: 127 - var3[var6 + var4] = -107; - } else if (var7 == 8211) { // L: 128 - var3[var6 + var4] = -106; - } else if (var7 == 8212) { - var3[var6 + var4] = -105; // L: 129 - } else if (var7 == 732) { // L: 130 - var3[var6 + var4] = -104; - } else if (var7 == 8482) { // L: 131 - var3[var6 + var4] = -103; - } else if (var7 == 353) { // L: 132 - var3[var6 + var4] = -102; - } else if (var7 == 8250) { // L: 133 - var3[var6 + var4] = -101; - } else if (var7 == 339) { // L: 134 - var3[var6 + var4] = -100; - } else if (var7 == 382) { // L: 135 - var3[var6 + var4] = -98; - } else if (var7 == 376) { // L: 136 - var3[var6 + var4] = -97; - } else { - var3[var6 + var4] = 63; // L: 137 + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "(CI)Z", + garbageValue = "636889033" + ) + static boolean method1995(char var0) { + return "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"£$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".indexOf(var0) != -1; + } + + @ObfuscatedName("jn") + @ObfuscatedSignature( + descriptor = "([Lhe;IIIZI)V", + garbageValue = "-182742727" + ) + @Export("resizeInterface") + static void resizeInterface(Widget[] var0, int var1, int var2, int var3, boolean var4) { + for (int var5 = 0; var5 < var0.length; ++var5) { + Widget var6 = var0[var5]; + if (var6 != null && var6.parentId == var1) { + TileItem.alignWidgetSize(var6, var2, var3, var4); + class7.alignWidgetPosition(var6, var2, var3); + if (var6.scrollX > var6.scrollWidth - var6.width) { + var6.scrollX = var6.scrollWidth - var6.width; + } + + if (var6.scrollX < 0) { + var6.scrollX = 0; + } + + if (var6.scrollY > var6.scrollHeight - var6.height) { + var6.scrollY = var6.scrollHeight - var6.height; + } + + if (var6.scrollY < 0) { + var6.scrollY = 0; + } + + if (var6.type == 0) { + PendingSpawn.revalidateWidgetScroll(var0, var6, var4); + } } } - return var5; // L: 139 } } diff --git a/runescape-client/src/main/java/InvDefinition.java b/runescape-client/src/main/java/InvDefinition.java index f111c260e1..9ba1337d14 100644 --- a/runescape-client/src/main/java/InvDefinition.java +++ b/runescape-client/src/main/java/InvDefinition.java @@ -4,99 +4,280 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("it") +@ObfuscatedName("ix") @Implements("InvDefinition") public class InvDefinition extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("InvDefinition_archive") - static AbstractArchive InvDefinition_archive; - @ObfuscatedName("b") + public static AbstractArchive InvDefinition_archive; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("InvDefinition_cached") static EvictingDualNodeHashTable InvDefinition_cached; - @ObfuscatedName("me") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 1335589657 - ) - @Export("selectedItemSlot") - static int selectedItemSlot; - @ObfuscatedName("l") - @ObfuscatedGetter( - intValue = -2004662257 + intValue = -449980577 ) @Export("size") public int size; static { - InvDefinition_cached = new EvictingDualNodeHashTable(64); // L: 11 + InvDefinition_cached = new EvictingDualNodeHashTable(64); } InvDefinition() { - this.size = 0; // L: 12 - } // L: 14 + this.size = 0; + } - @ObfuscatedName("l") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "1021098633" + descriptor = "(Lkj;I)V", + garbageValue = "1553227533" ) @Export("decode") void decode(Buffer var1) { while (true) { - int var2 = var1.readUnsignedByte(); // L: 32 - if (var2 == 0) { // L: 33 - return; // L: 36 + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; } - this.decodeNext(var1, var2); // L: 34 + this.decodeNext(var1, var2); } } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkb;IS)V", - garbageValue = "-6183" + descriptor = "(Lkj;IB)V", + garbageValue = "127" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { - if (var2 == 2) { // L: 39 + if (var2 == 2) { this.size = var1.readUnsignedShort(); } - } // L: 41 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkb;Lll;I)Lll;", - garbageValue = "-1253554841" + descriptor = "(I)[Lgs;", + garbageValue = "-1827555647" ) - @Export("readStringIntParameters") - static final IterableNodeHashTable readStringIntParameters(Buffer var0, IterableNodeHashTable var1) { - int var2 = var0.readUnsignedByte(); // L: 16 - int var3; - if (var1 == null) { // L: 17 - var3 = WorldMapData_0.method266(var2); // L: 18 - var1 = new IterableNodeHashTable(var3); // L: 19 + public static class194[] method4371() { + return new class194[]{class194.field2348, class194.field2342, class194.field2344, class194.field2350, class194.field2346, class194.field2345, class194.field2343, class194.field2349, class194.field2347, class194.field2351}; + } + + @ObfuscatedName("iv") + @ObfuscatedSignature( + descriptor = "(IIIII)V", + garbageValue = "-982024968" + ) + @Export("addSceneMenuOptions") + static final void addSceneMenuOptions(int var0, int var1, int var2, int var3) { + if (Client.isItemSelected == 0 && !Client.isSpellSelected) { + WorldMapRegion.insertMenuItemNoShift("Walk here", "", 23, 0, var0 - var2, var1 - var3); } - for (var3 = 0; var3 < var2; ++var3) { // L: 21 - boolean var4 = var0.readUnsignedByte() == 1; // L: 22 - int var5 = var0.readMedium(); // L: 23 - Object var6; - if (var4) { // L: 25 - var6 = new ObjectNode(var0.readStringCp1252NullTerminated()); - } else { - var6 = new IntegerNode(var0.readInt()); // L: 26 + long var4 = -1L; + long var6 = -1L; + int var8 = 0; + + while (true) { + int var10 = ViewportMouse.ViewportMouse_entityCount; + if (var8 >= var10) { + if (var4 != -1L) { + var8 = ClientPacket.method3671(var4); + int var9 = (int)(var4 >>> 7 & 127L); + Player var11 = Client.players[Client.combatTargetPlayerIndex]; + FloorDecoration.addPlayerToMenu(var11, Client.combatTargetPlayerIndex, var8, var9); + } + + return; } - var1.put((Node)var6, (long)var5); // L: 27 - } + long var27 = ViewportMouse.ViewportMouse_entityTags[var8]; + if (var27 != var6) { + label336: { + var6 = var27; + int var15 = LoginScreenAnimation.method1904(var8); + int var16 = Tiles.method1170(var8); + int var17 = Widget.Entity_unpackSceneX(ViewportMouse.ViewportMouse_entityTags[var8]); + int var19 = Occluder.Entity_unpackID(ViewportMouse.ViewportMouse_entityTags[var8]); + int var20 = var19; + if (var17 == 2 && ArchiveLoader.scene.getObjectFlags(GameObject.Client_plane, var15, var16, var27) >= 0) { + ObjectDefinition var21 = WorldMapDecoration.getObjectDefinition(var19); + if (var21.transforms != null) { + var21 = var21.transform(); + } - return var1; // L: 29 + if (var21 == null) { + break label336; + } + + if (Client.isItemSelected == 1) { + WorldMapRegion.insertMenuItemNoShift("Use", Client.selectedItemName + " " + "->" + " " + class23.colorStartTag(65535) + var21.name, 1, var19, var15, var16); + } else if (Client.isSpellSelected) { + if ((Player.selectedSpellFlags & 4) == 4) { + WorldMapRegion.insertMenuItemNoShift(Client.selectedSpellActionName, Client.selectedSpellName + " " + "->" + " " + class23.colorStartTag(65535) + var21.name, 2, var19, var15, var16); + } + } else { + String[] var22 = var21.actions; + if (var22 != null) { + for (int var23 = 4; var23 >= 0; --var23) { + if (var22[var23] != null) { + short var24 = 0; + if (var23 == 0) { + var24 = 3; + } + + if (var23 == 1) { + var24 = 4; + } + + if (var23 == 2) { + var24 = 5; + } + + if (var23 == 3) { + var24 = 6; + } + + if (var23 == 4) { + var24 = 1001; + } + + WorldMapRegion.insertMenuItemNoShift(var22[var23], class23.colorStartTag(65535) + var21.name, var24, var20, var15, var16); + } + } + } + + WorldMapRegion.insertMenuItemNoShift("Examine", class23.colorStartTag(65535) + var21.name, 1002, var21.id, var15, var16); + } + } + + Player var25; + int var29; + NPC var30; + int var37; + int[] var38; + if (var17 == 1) { + NPC var33 = Client.npcs[var20]; + if (var33 == null) { + break label336; + } + + if (var33.definition.size == 1 && (var33.x & 127) == 64 && (var33.y & 127) == 64) { + for (var29 = 0; var29 < Client.npcCount; ++var29) { + var30 = Client.npcs[Client.npcIndices[var29]]; + if (var30 != null && var30 != var33 && var30.definition.size == 1 && var33.x == var30.x && var33.y == var30.y) { + TileItem.addNpcToMenu(var30.definition, Client.npcIndices[var29], var15, var16); + } + } + + var29 = Players.Players_count; + var38 = Players.Players_indices; + + for (var37 = 0; var37 < var29; ++var37) { + var25 = Client.players[var38[var37]]; + if (var25 != null && var33.x == var25.x && var25.y == var33.y) { + FloorDecoration.addPlayerToMenu(var25, var38[var37], var15, var16); + } + } + } + + TileItem.addNpcToMenu(var33.definition, var20, var15, var16); + } + + if (var17 == 0) { + Player var34 = Client.players[var20]; + if (var34 == null) { + break label336; + } + + if ((var34.x & 127) == 64 && (var34.y & 127) == 64) { + for (var29 = 0; var29 < Client.npcCount; ++var29) { + var30 = Client.npcs[Client.npcIndices[var29]]; + if (var30 != null && var30.definition.size == 1 && var30.x == var34.x && var34.y == var30.y) { + TileItem.addNpcToMenu(var30.definition, Client.npcIndices[var29], var15, var16); + } + } + + var29 = Players.Players_count; + var38 = Players.Players_indices; + + for (var37 = 0; var37 < var29; ++var37) { + var25 = Client.players[var38[var37]]; + if (var25 != null && var34 != var25 && var34.x == var25.x && var34.y == var25.y) { + FloorDecoration.addPlayerToMenu(var25, var38[var37], var15, var16); + } + } + } + + if (var20 != Client.combatTargetPlayerIndex) { + FloorDecoration.addPlayerToMenu(var34, var20, var15, var16); + } else { + var4 = var27; + } + } + + if (var17 == 3) { + NodeDeque var36 = Client.groundItems[GameObject.Client_plane][var15][var16]; + if (var36 != null) { + for (TileItem var35 = (TileItem)var36.first(); var35 != null; var35 = (TileItem)var36.next()) { + ItemDefinition var39 = SecureRandomCallable.ItemDefinition_get(var35.id); + if (Client.isItemSelected == 1) { + WorldMapRegion.insertMenuItemNoShift("Use", Client.selectedItemName + " " + "->" + " " + class23.colorStartTag(16748608) + var39.name, 16, var35.id, var15, var16); + } else if (Client.isSpellSelected) { + if ((Player.selectedSpellFlags & 1) == 1) { + WorldMapRegion.insertMenuItemNoShift(Client.selectedSpellActionName, Client.selectedSpellName + " " + "->" + " " + class23.colorStartTag(16748608) + var39.name, 17, var35.id, var15, var16); + } + } else { + String[] var31 = var39.groundActions; + + for (int var32 = 4; var32 >= 0; --var32) { + if (var31 != null && var31[var32] != null) { + byte var26 = 0; + if (var32 == 0) { + var26 = 18; + } + + if (var32 == 1) { + var26 = 19; + } + + if (var32 == 2) { + var26 = 20; + } + + if (var32 == 3) { + var26 = 21; + } + + if (var32 == 4) { + var26 = 22; + } + + WorldMapRegion.insertMenuItemNoShift(var31[var32], class23.colorStartTag(16748608) + var39.name, var26, var35.id, var15, var16); + } else if (var32 == 2) { + WorldMapRegion.insertMenuItemNoShift("Take", class23.colorStartTag(16748608) + var39.name, 20, var35.id, var15, var16); + } + } + + WorldMapRegion.insertMenuItemNoShift("Examine", class23.colorStartTag(16748608) + var39.name, 1004, var35.id, var15, var16); + } + } + } + } + } + } + + ++var8; + } } } diff --git a/runescape-client/src/main/java/IsaacCipher.java b/runescape-client/src/main/java/IsaacCipher.java index d31bcdc3ea..a6c5d136f5 100644 --- a/runescape-client/src/main/java/IsaacCipher.java +++ b/runescape-client/src/main/java/IsaacCipher.java @@ -4,241 +4,241 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mh") +@ObfuscatedName("md") @Implements("IsaacCipher") public final class IsaacCipher { - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -2050447103 + intValue = -201313701 ) @Export("valuesRemaining") int valuesRemaining; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("results") int[] results; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("mm") int[] mm; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -48330509 + intValue = 1404092857 ) @Export("aa") int aa; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 2064502829 + intValue = -1680439763 ) @Export("bb") int bb; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = -2077653301 + intValue = -162342365 ) @Export("cc") int cc; public IsaacCipher(int[] var1) { - this.mm = new int[256]; // L: 15 - this.results = new int[256]; // L: 16 + this.mm = new int[256]; + this.results = new int[256]; - for (int var2 = 0; var2 < var1.length; ++var2) { // L: 17 - this.results[var2] = var1[var2]; // L: 18 + for (int var2 = 0; var2 < var1.length; ++var2) { + this.results[var2] = var1[var2]; } - this.method6413(); // L: 20 - } // L: 21 + this.method6309(); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1820691051" + garbageValue = "1023281998" ) @Export("nextInt") public final int nextInt() { - if (this.valuesRemaining == 0) { // L: 24 - this.generateMoreResults(); // L: 25 - this.valuesRemaining = 256; // L: 26 + if (this.valuesRemaining == 0) { + this.generateMoreResults(); + this.valuesRemaining = 256; } - return this.results[--this.valuesRemaining]; // L: 28 + return this.results[--this.valuesRemaining]; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "112186522" + garbageValue = "1809615981" ) - public final int method6417() { - if (this.valuesRemaining == 0) { // L: 32 - this.generateMoreResults(); // L: 33 - this.valuesRemaining = 256; // L: 34 + public final int method6307() { + if (this.valuesRemaining == 0) { + this.generateMoreResults(); + this.valuesRemaining = 256; } - return this.results[this.valuesRemaining - 1]; // L: 36 + return this.results[this.valuesRemaining - 1]; } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "89" + descriptor = "(I)V", + garbageValue = "-127327099" ) @Export("generateMoreResults") final void generateMoreResults() { - this.bb += ++this.cc; // L: 43 + this.bb += ++this.cc; - for (int var1 = 0; var1 < 256; ++var1) { // L: 44 - int var2 = this.mm[var1]; // L: 45 - if ((var1 & 2) == 0) { // L: 46 - if ((var1 & 1) == 0) { // L: 47 + for (int var1 = 0; var1 < 256; ++var1) { + int var2 = this.mm[var1]; + if ((var1 & 2) == 0) { + if ((var1 & 1) == 0) { this.aa ^= this.aa << 13; } else { - this.aa ^= this.aa >>> 6; // L: 48 + this.aa ^= this.aa >>> 6; } - } else if ((var1 & 1) == 0) { // L: 51 + } else if ((var1 & 1) == 0) { this.aa ^= this.aa << 2; } else { - this.aa ^= this.aa >>> 16; // L: 52 + this.aa ^= this.aa >>> 16; } - this.aa += this.mm[128 + var1 & 255]; // L: 54 + this.aa += this.mm[var1 + 128 & 255]; int var3; - this.mm[var1] = var3 = this.mm[(var2 & 1020) >> 2] + this.aa + this.bb; // L: 55 - this.results[var1] = this.bb = this.mm[(var3 >> 8 & 1020) >> 2] + var2; // L: 56 + this.mm[var1] = var3 = this.mm[(var2 & 1020) >> 2] + this.aa + this.bb; + this.results[var1] = this.bb = this.mm[(var3 >> 8 & 1020) >> 2] + var2; } - } // L: 58 + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-2058123781" + garbageValue = "1669913589" ) - final void method6413() { - int var9 = -1640531527; // L: 70 - int var8 = -1640531527; // L: 71 - int var7 = -1640531527; // L: 72 - int var6 = -1640531527; // L: 73 - int var5 = -1640531527; // L: 74 - int var4 = -1640531527; // L: 75 - int var3 = -1640531527; // L: 76 - int var2 = -1640531527; // L: 77 + final void method6309() { + int var9 = -1640531527; + int var8 = -1640531527; + int var7 = -1640531527; + int var6 = -1640531527; + int var5 = -1640531527; + int var4 = -1640531527; + int var3 = -1640531527; + int var2 = -1640531527; int var1; - for (var1 = 0; var1 < 4; ++var1) { // L: 78 - var2 ^= var3 << 11; // L: 79 - var5 += var2; // L: 80 - var3 += var4; // L: 81 - var3 ^= var4 >>> 2; // L: 82 - var6 += var3; // L: 83 - var4 += var5; // L: 84 - var4 ^= var5 << 8; // L: 85 - var7 += var4; // L: 86 - var5 += var6; // L: 87 - var5 ^= var6 >>> 16; // L: 88 - var8 += var5; // L: 89 - var6 += var7; // L: 90 - var6 ^= var7 << 10; // L: 91 - var9 += var6; // L: 92 - var7 += var8; // L: 93 - var7 ^= var8 >>> 4; // L: 94 - var2 += var7; // L: 95 - var8 += var9; // L: 96 - var8 ^= var9 << 8; // L: 97 - var3 += var8; // L: 98 - var9 += var2; // L: 99 - var9 ^= var2 >>> 9; // L: 100 - var4 += var9; // L: 101 - var2 += var3; // L: 102 + for (var1 = 0; var1 < 4; ++var1) { + var2 ^= var3 << 11; + var5 += var2; + var3 += var4; + var3 ^= var4 >>> 2; + var6 += var3; + var4 += var5; + var4 ^= var5 << 8; + var7 += var4; + var5 += var6; + var5 ^= var6 >>> 16; + var8 += var5; + var6 += var7; + var6 ^= var7 << 10; + var9 += var6; + var7 += var8; + var7 ^= var8 >>> 4; + var2 += var7; + var8 += var9; + var8 ^= var9 << 8; + var3 += var8; + var9 += var2; + var9 ^= var2 >>> 9; + var4 += var9; + var2 += var3; } - for (var1 = 0; var1 < 256; var1 += 8) { // L: 104 - var2 += this.results[var1]; // L: 105 - var3 += this.results[var1 + 1]; // L: 106 - var4 += this.results[var1 + 2]; // L: 107 - var5 += this.results[var1 + 3]; // L: 108 - var6 += this.results[var1 + 4]; // L: 109 - var7 += this.results[var1 + 5]; // L: 110 - var8 += this.results[var1 + 6]; // L: 111 - var9 += this.results[var1 + 7]; // L: 112 - var2 ^= var3 << 11; // L: 113 - var5 += var2; // L: 114 - var3 += var4; // L: 115 - var3 ^= var4 >>> 2; // L: 116 - var6 += var3; // L: 117 - var4 += var5; // L: 118 - var4 ^= var5 << 8; // L: 119 - var7 += var4; // L: 120 - var5 += var6; // L: 121 - var5 ^= var6 >>> 16; // L: 122 - var8 += var5; // L: 123 - var6 += var7; // L: 124 - var6 ^= var7 << 10; // L: 125 - var9 += var6; // L: 126 - var7 += var8; // L: 127 - var7 ^= var8 >>> 4; // L: 128 - var2 += var7; // L: 129 - var8 += var9; // L: 130 - var8 ^= var9 << 8; // L: 131 - var3 += var8; // L: 132 - var9 += var2; // L: 133 - var9 ^= var2 >>> 9; // L: 134 - var4 += var9; // L: 135 - var2 += var3; // L: 136 - this.mm[var1] = var2; // L: 137 - this.mm[var1 + 1] = var3; // L: 138 - this.mm[var1 + 2] = var4; // L: 139 - this.mm[var1 + 3] = var5; // L: 140 - this.mm[var1 + 4] = var6; // L: 141 - this.mm[var1 + 5] = var7; // L: 142 - this.mm[var1 + 6] = var8; // L: 143 - this.mm[var1 + 7] = var9; // L: 144 + for (var1 = 0; var1 < 256; var1 += 8) { + var2 += this.results[var1]; + var3 += this.results[var1 + 1]; + var4 += this.results[var1 + 2]; + var5 += this.results[var1 + 3]; + var6 += this.results[var1 + 4]; + var7 += this.results[var1 + 5]; + var8 += this.results[var1 + 6]; + var9 += this.results[var1 + 7]; + var2 ^= var3 << 11; + var5 += var2; + var3 += var4; + var3 ^= var4 >>> 2; + var6 += var3; + var4 += var5; + var4 ^= var5 << 8; + var7 += var4; + var5 += var6; + var5 ^= var6 >>> 16; + var8 += var5; + var6 += var7; + var6 ^= var7 << 10; + var9 += var6; + var7 += var8; + var7 ^= var8 >>> 4; + var2 += var7; + var8 += var9; + var8 ^= var9 << 8; + var3 += var8; + var9 += var2; + var9 ^= var2 >>> 9; + var4 += var9; + var2 += var3; + this.mm[var1] = var2; + this.mm[var1 + 1] = var3; + this.mm[var1 + 2] = var4; + this.mm[var1 + 3] = var5; + this.mm[var1 + 4] = var6; + this.mm[var1 + 5] = var7; + this.mm[var1 + 6] = var8; + this.mm[var1 + 7] = var9; } - for (var1 = 0; var1 < 256; var1 += 8) { // L: 146 - var2 += this.mm[var1]; // L: 147 - var3 += this.mm[var1 + 1]; // L: 148 - var4 += this.mm[var1 + 2]; // L: 149 - var5 += this.mm[var1 + 3]; // L: 150 - var6 += this.mm[var1 + 4]; // L: 151 - var7 += this.mm[var1 + 5]; // L: 152 - var8 += this.mm[var1 + 6]; // L: 153 - var9 += this.mm[var1 + 7]; // L: 154 - var2 ^= var3 << 11; // L: 155 - var5 += var2; // L: 156 - var3 += var4; // L: 157 - var3 ^= var4 >>> 2; // L: 158 - var6 += var3; // L: 159 - var4 += var5; // L: 160 - var4 ^= var5 << 8; // L: 161 - var7 += var4; // L: 162 - var5 += var6; // L: 163 - var5 ^= var6 >>> 16; // L: 164 - var8 += var5; // L: 165 - var6 += var7; // L: 166 - var6 ^= var7 << 10; // L: 167 - var9 += var6; // L: 168 - var7 += var8; // L: 169 - var7 ^= var8 >>> 4; // L: 170 - var2 += var7; // L: 171 - var8 += var9; // L: 172 - var8 ^= var9 << 8; // L: 173 - var3 += var8; // L: 174 - var9 += var2; // L: 175 - var9 ^= var2 >>> 9; // L: 176 - var4 += var9; // L: 177 - var2 += var3; // L: 178 - this.mm[var1] = var2; // L: 179 - this.mm[var1 + 1] = var3; // L: 180 - this.mm[var1 + 2] = var4; // L: 181 - this.mm[var1 + 3] = var5; // L: 182 - this.mm[var1 + 4] = var6; // L: 183 - this.mm[var1 + 5] = var7; // L: 184 - this.mm[var1 + 6] = var8; // L: 185 - this.mm[var1 + 7] = var9; // L: 186 + for (var1 = 0; var1 < 256; var1 += 8) { + var2 += this.mm[var1]; + var3 += this.mm[var1 + 1]; + var4 += this.mm[var1 + 2]; + var5 += this.mm[var1 + 3]; + var6 += this.mm[var1 + 4]; + var7 += this.mm[var1 + 5]; + var8 += this.mm[var1 + 6]; + var9 += this.mm[var1 + 7]; + var2 ^= var3 << 11; + var5 += var2; + var3 += var4; + var3 ^= var4 >>> 2; + var6 += var3; + var4 += var5; + var4 ^= var5 << 8; + var7 += var4; + var5 += var6; + var5 ^= var6 >>> 16; + var8 += var5; + var6 += var7; + var6 ^= var7 << 10; + var9 += var6; + var7 += var8; + var7 ^= var8 >>> 4; + var2 += var7; + var8 += var9; + var8 ^= var9 << 8; + var3 += var8; + var9 += var2; + var9 ^= var2 >>> 9; + var4 += var9; + var2 += var3; + this.mm[var1] = var2; + this.mm[var1 + 1] = var3; + this.mm[var1 + 2] = var4; + this.mm[var1 + 3] = var5; + this.mm[var1 + 4] = var6; + this.mm[var1 + 5] = var7; + this.mm[var1 + 6] = var8; + this.mm[var1 + 7] = var9; } - this.generateMoreResults(); // L: 188 - this.valuesRemaining = 256; // L: 189 - } // L: 190 + this.generateMoreResults(); + this.valuesRemaining = 256; + } } diff --git a/runescape-client/src/main/java/ItemContainer.java b/runescape-client/src/main/java/ItemContainer.java index 1f77039141..bfd7f1b55b 100644 --- a/runescape-client/src/main/java/ItemContainer.java +++ b/runescape-client/src/main/java/ItemContainer.java @@ -1,497 +1,252 @@ 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("bv") +@ObfuscatedName("bj") @Implements("ItemContainer") public class ItemContainer extends Node { - @ObfuscatedName("nn") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "[Lht;" - ) - static Widget[] field572; - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "Llp;" + descriptor = "Lls;" ) @Export("itemContainers") static NodeHashTable itemContainers; - @ObfuscatedName("o") - @ObfuscatedGetter( - intValue = -1891201755 + @ObfuscatedName("m") + @ObfuscatedSignature( + descriptor = "Llo;" ) - static int field570; - @ObfuscatedName("g") - @ObfuscatedGetter( - intValue = -390637403 + @Export("options_buttons_2Sprite") + static IndexedSprite options_buttons_2Sprite; + @ObfuscatedName("dg") + @ObfuscatedSignature( + descriptor = "Lil;" ) - @Export("canvasWidth") - public static int canvasWidth; - @ObfuscatedName("hu") - @ObfuscatedGetter( - intValue = -966847555 - ) - @Export("cameraX") - static int cameraX; - @ObfuscatedName("b") + @Export("archive11") + static Archive archive11; + @ObfuscatedName("v") @Export("ids") int[] ids; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("quantities") int[] quantities; static { - itemContainers = new NodeHashTable(32); // L: 7 + itemContainers = new NodeHashTable(32); } ItemContainer() { - this.ids = new int[]{-1}; // L: 8 - this.quantities = new int[]{0}; // L: 9 - } // L: 11 + this.ids = new int[]{-1}; + this.quantities = new int[]{0}; + } - @ObfuscatedName("l") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(III)Lht;", - garbageValue = "-398427140" + descriptor = "(Lgb;Lmd;B)Lgv;", + garbageValue = "1" ) - @Export("getWidgetChild") - public static Widget getWidgetChild(int var0, int var1) { - Widget var2 = UserComparator4.getWidget(var0); // L: 205 - if (var1 == -1) { // L: 206 - return var2; + @Export("getPacketBufferNode") + public static PacketBufferNode getPacketBufferNode(ClientPacket var0, IsaacCipher var1) { + PacketBufferNode var2; + if (PacketBufferNode.PacketBufferNode_packetBufferNodeCount == 0) { + var2 = new PacketBufferNode(); } else { - return var2 != null && var2.children != null && var1 < var2.children.length ? var2.children[var1] : null; // L: 207 208 + var2 = PacketBufferNode.PacketBufferNode_packetBufferNodes[--PacketBufferNode.PacketBufferNode_packetBufferNodeCount]; + } + + var2.clientPacket = var0; + var2.clientPacketLength = var0.length; + if (var2.clientPacketLength == -1) { + var2.packetBuffer = new PacketBuffer(260); + } else if (var2.clientPacketLength == -2) { + var2.packetBuffer = new PacketBuffer(10000); + } else if (var2.clientPacketLength <= 18) { + var2.packetBuffer = new PacketBuffer(20); + } else if (var2.clientPacketLength <= 98) { + var2.packetBuffer = new PacketBuffer(100); + } else { + var2.packetBuffer = new PacketBuffer(260); + } + + var2.packetBuffer.setIsaacCipher(var1); + var2.packetBuffer.writeByteIsaac(var2.clientPacket.id); + var2.index = 0; + return var2; + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Lp;I)Lm;", + garbageValue = "1684033530" + ) + public static class12 method1250(class7 var0) { + switch(var0.field26) { + case 0: + return new class5(); + default: + throw new IllegalArgumentException(); } } - @ObfuscatedName("gs") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "535558525" + descriptor = "(Lhe;I[B[BI)V", + garbageValue = "-21779272" ) - @Export("drawEntities") - static final void drawEntities(int var0, int var1, int var2, int var3) { - ++Client.viewportDrawCount; // L: 4450 - class200.method3804(); // L: 4451 - if (Client.renderSelf) { // L: 4453 - ArchiveLoader.addPlayerToScene(PlayerType.localPlayer, false); // L: 4454 + @Export("Widget_setKey") + static final void Widget_setKey(Widget var0, int var1, byte[] var2, byte[] var3) { + if (var0.field2649 == null) { + if (var2 == null) { + return; + } + + var0.field2649 = new byte[11][]; + var0.field2637 = new byte[11][]; + var0.field2679 = new int[11]; + var0.field2664 = new int[11]; } - Projectile.method2226(); // L: 4457 - GrandExchangeOfferNameComparator.addNpcsToScene(true); // L: 4458 - MusicPatchNode.method3973(); // L: 4459 - GrandExchangeOfferNameComparator.addNpcsToScene(false); // L: 4460 - Login.method2200(); // L: 4461 - MouseRecorder.method1285(); // L: 4462 - Coord.setViewportShape(var0, var1, var2, var3, true); // L: 4463 - var0 = Client.viewportOffsetX; // L: 4464 - var1 = Client.viewportOffsetY; // L: 4465 - var2 = Client.viewportWidth; // L: 4466 - var3 = Client.viewportHeight; // L: 4467 - Rasterizer2D.Rasterizer2D_setClip(var0, var1, var0 + var2, var3 + var1); // L: 4468 - Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D(); // L: 4469 + var0.field2649[var1] = var2; + if (var2 != null) { + var0.field2590 = true; + } else { + var0.field2590 = false; + + for (int var4 = 0; var4 < var0.field2649.length; ++var4) { + if (var0.field2649[var4] != null) { + var0.field2590 = true; + break; + } + } + } + + var0.field2637[var1] = var3; + } + + @ObfuscatedName("hs") + @ObfuscatedSignature( + descriptor = "(ZLky;I)V", + garbageValue = "191589163" + ) + @Export("loadRegions") + static final void loadRegions(boolean var0, PacketBuffer var1) { + Client.isInInstance = var0; + int var2; int var4; int var5; - if (!Client.isCameraLocked) { // L: 4470 - var4 = Client.camAngleX; // L: 4471 - if (Client.field810 / 256 > var4) { // L: 4472 - var4 = Client.field810 / 256; - } - - if (Client.field926[4] && Client.field928[4] + 128 > var4) { // L: 4473 - var4 = Client.field928[4] + 128; - } - - var5 = Client.camAngleY & 2047; // L: 4474 - class7.method112(TileItem.oculusOrbFocalPointX, Tiles.field542, Interpreter.oculusOrbFocalPointY, var4, var5, MilliClock.method3587(var4), var3); // L: 4475 - } - int var6; int var7; int var8; - int var9; - int var10; - int var11; - int var12; - int var13; - int var14; - if (!Client.isCameraLocked) { // L: 4478 - if (GrandExchangeOfferAgeComparator.clientPreferences.roofsHidden) { // L: 4481 - var5 = GrandExchangeOfferUnitPriceComparator.Client_plane; // L: 4482 - } else { - label544: { - var6 = 3; // L: 4485 - if (World.cameraPitch < 310) { // L: 4486 - if (Client.oculusOrbState == 1) { // L: 4489 - var7 = TileItem.oculusOrbFocalPointX >> 7; // L: 4490 - var8 = Interpreter.oculusOrbFocalPointY >> 7; // L: 4491 + if (!Client.isInInstance) { + var2 = var1.readUnsignedShort(); + int var3 = var1.method5539(); + var4 = var1.readUnsignedShort(); + class227.xteaKeys = new int[var4][4]; + + for (var5 = 0; var5 < var4; ++var5) { + for (var6 = 0; var6 < 4; ++var6) { + class227.xteaKeys[var5][var6] = var1.readInt(); + } + } + + FileSystem.regions = new int[var4]; + class41.regionMapArchiveIds = new int[var4]; + GrandExchangeOfferTotalQuantityComparator.regionLandArchiveIds = new int[var4]; + WorldMapIcon_0.regionLandArchives = new byte[var4][]; + MouseRecorder.regionMapArchives = new byte[var4][]; + boolean var16 = false; + if ((var2 / 8 == 48 || var2 / 8 == 49) && var3 / 8 == 48) { + var16 = true; + } + + if (var2 / 8 == 48 && var3 / 8 == 148) { + var16 = true; + } + + var4 = 0; + + for (var6 = (var2 - 6) / 8; var6 <= (var2 + 6) / 8; ++var6) { + for (var7 = (var3 - 6) / 8; var7 <= (var3 + 6) / 8; ++var7) { + var8 = var7 + (var6 << 8); + if (!var16 || var7 != 49 && var7 != 149 && var7 != 147 && var6 != 50 && (var6 != 49 || var7 != 47)) { + FileSystem.regions[var4] = var8; + class41.regionMapArchiveIds[var4] = GameShell.archive5.getGroupId("m" + var6 + "_" + var7); + GrandExchangeOfferTotalQuantityComparator.regionLandArchiveIds[var4] = GameShell.archive5.getGroupId("l" + var6 + "_" + var7); + ++var4; + } + } + } + + VarcInt.method4428(var2, var3, true); + } else { + var2 = var1.readUnsignedShort(); + boolean var15 = var1.method5573() == 1; + var4 = var1.method5580(); + var5 = var1.readUnsignedShort(); + var1.importIndex(); + + int var9; + for (var6 = 0; var6 < 4; ++var6) { + for (var7 = 0; var7 < 13; ++var7) { + for (var8 = 0; var8 < 13; ++var8) { + var9 = var1.readBits(1); + if (var9 == 1) { + Client.instanceChunkTemplates[var6][var7][var8] = var1.readBits(26); } else { - var7 = PlayerType.localPlayer.x >> 7; // L: 4494 - var8 = PlayerType.localPlayer.y >> 7; // L: 4495 + Client.instanceChunkTemplates[var6][var7][var8] = -1; } + } + } + } - var9 = cameraX >> 7; // L: 4497 - var10 = WorldMapManager.cameraZ >> 7; // L: 4498 - if (var9 < 0 || var10 < 0 || var9 >= 104 || var10 >= 104) { // L: 4499 - var5 = GrandExchangeOfferUnitPriceComparator.Client_plane; // L: 4500 - break label544; // L: 4501 - } + var1.exportIndex(); + class227.xteaKeys = new int[var5][4]; - if (var7 < 0 || var8 < 0 || var7 >= 104 || var8 >= 104) { // L: 4503 - var5 = GrandExchangeOfferUnitPriceComparator.Client_plane; // L: 4504 - break label544; // L: 4505 - } + for (var6 = 0; var6 < var5; ++var6) { + for (var7 = 0; var7 < 4; ++var7) { + class227.xteaKeys[var6][var7] = var1.readInt(); + } + } - if ((Tiles.Tiles_renderFlags[GrandExchangeOfferUnitPriceComparator.Client_plane][var9][var10] & 4) != 0) { // L: 4507 - var6 = GrandExchangeOfferUnitPriceComparator.Client_plane; - } + FileSystem.regions = new int[var5]; + class41.regionMapArchiveIds = new int[var5]; + GrandExchangeOfferTotalQuantityComparator.regionLandArchiveIds = new int[var5]; + WorldMapIcon_0.regionLandArchives = new byte[var5][]; + MouseRecorder.regionMapArchives = new byte[var5][]; + var5 = 0; - if (var7 > var9) { // L: 4509 - var11 = var7 - var9; - } else { - var11 = var9 - var7; // L: 4510 - } + for (var6 = 0; var6 < 4; ++var6) { + for (var7 = 0; var7 < 13; ++var7) { + for (var8 = 0; var8 < 13; ++var8) { + var9 = Client.instanceChunkTemplates[var6][var7][var8]; + if (var9 != -1) { + int var10 = var9 >> 14 & 1023; + int var11 = var9 >> 3 & 2047; + int var12 = (var10 / 8 << 8) + var11 / 8; - if (var8 > var10) { // L: 4512 - var12 = var8 - var10; - } else { - var12 = var10 - var8; // L: 4513 - } - - if (var11 > var12) { // L: 4514 - var13 = var12 * 65536 / var11; // L: 4515 - var14 = 32768; // L: 4516 - - while (var7 != var9) { // L: 4517 - if (var9 < var7) { // L: 4518 - ++var9; - } else if (var9 > var7) { // L: 4519 - --var9; - } - - if ((Tiles.Tiles_renderFlags[GrandExchangeOfferUnitPriceComparator.Client_plane][var9][var10] & 4) != 0) { // L: 4520 - var6 = GrandExchangeOfferUnitPriceComparator.Client_plane; - } - - var14 += var13; // L: 4521 - if (var14 >= 65536) { // L: 4522 - var14 -= 65536; // L: 4523 - if (var10 < var8) { // L: 4524 - ++var10; - } else if (var10 > var8) { // L: 4525 - --var10; - } - - if ((Tiles.Tiles_renderFlags[GrandExchangeOfferUnitPriceComparator.Client_plane][var9][var10] & 4) != 0) { // L: 4526 - var6 = GrandExchangeOfferUnitPriceComparator.Client_plane; - } + int var13; + for (var13 = 0; var13 < var5; ++var13) { + if (FileSystem.regions[var13] == var12) { + var12 = -1; + break; } } - } else if (var12 > 0) { // L: 4530 - var13 = var11 * 65536 / var12; // L: 4531 - var14 = 32768; // L: 4532 - while (var8 != var10) { // L: 4533 - if (var10 < var8) { // L: 4534 - ++var10; - } else if (var10 > var8) { // L: 4535 - --var10; - } - - if ((Tiles.Tiles_renderFlags[GrandExchangeOfferUnitPriceComparator.Client_plane][var9][var10] & 4) != 0) { // L: 4536 - var6 = GrandExchangeOfferUnitPriceComparator.Client_plane; - } - - var14 += var13; // L: 4537 - if (var14 >= 65536) { // L: 4538 - var14 -= 65536; // L: 4539 - if (var9 < var7) { // L: 4540 - ++var9; - } else if (var9 > var7) { // L: 4541 - --var9; - } - - if ((Tiles.Tiles_renderFlags[GrandExchangeOfferUnitPriceComparator.Client_plane][var9][var10] & 4) != 0) { // L: 4542 - var6 = GrandExchangeOfferUnitPriceComparator.Client_plane; - } - } + if (var12 != -1) { + FileSystem.regions[var5] = var12; + var13 = var12 >> 8 & 255; + int var14 = var12 & 255; + class41.regionMapArchiveIds[var5] = GameShell.archive5.getGroupId("m" + var13 + "_" + var14); + GrandExchangeOfferTotalQuantityComparator.regionLandArchiveIds[var5] = GameShell.archive5.getGroupId("l" + var13 + "_" + var14); + ++var5; } } } - - if (PlayerType.localPlayer.x >= 0 && PlayerType.localPlayer.y >= 0 && PlayerType.localPlayer.x < 13312 && PlayerType.localPlayer.y < 13312) { // L: 4547 - if ((Tiles.Tiles_renderFlags[GrandExchangeOfferUnitPriceComparator.Client_plane][PlayerType.localPlayer.x >> 7][PlayerType.localPlayer.y >> 7] & 4) != 0) { // L: 4551 - var6 = GrandExchangeOfferUnitPriceComparator.Client_plane; - } - - var5 = var6; // L: 4552 - } else { - var5 = GrandExchangeOfferUnitPriceComparator.Client_plane; // L: 4548 - } } } - var4 = var5; // L: 4554 - } else { - if (GrandExchangeOfferAgeComparator.clientPreferences.roofsHidden) { // L: 4559 - var5 = GrandExchangeOfferUnitPriceComparator.Client_plane; // L: 4560 - } else { - var6 = GrandExchangeOfferWorldComparator.getTileHeight(cameraX, WorldMapManager.cameraZ, GrandExchangeOfferUnitPriceComparator.Client_plane); // L: 4563 - if (var6 - ChatChannel.cameraY < 800 && (Tiles.Tiles_renderFlags[GrandExchangeOfferUnitPriceComparator.Client_plane][cameraX >> 7][WorldMapManager.cameraZ >> 7] & 4) != 0) { // L: 4564 - var5 = GrandExchangeOfferUnitPriceComparator.Client_plane; // L: 4565 - } else { - var5 = 3; // L: 4568 - } - } - - var4 = var5; // L: 4570 + VarcInt.method4428(var4, var2, !var15); } - var5 = cameraX; // L: 4572 - var6 = ChatChannel.cameraY; // L: 4573 - var7 = WorldMapManager.cameraZ; // L: 4574 - var8 = World.cameraPitch; // L: 4575 - var9 = ViewportMouse.cameraYaw; // L: 4576 - - for (var10 = 0; var10 < 5; ++var10) { // L: 4577 - if (Client.field926[var10]) { // L: 4578 - var11 = (int)(Math.random() * (double)(Client.field927[var10] * 2 + 1) - (double)Client.field927[var10] + Math.sin((double)Client.field918[var10] * ((double)Client.field898[var10] / 100.0D)) * (double)Client.field928[var10]); // L: 4579 - if (var10 == 0) { // L: 4580 - cameraX += var11; - } - - if (var10 == 1) { // L: 4581 - ChatChannel.cameraY += var11; - } - - if (var10 == 2) { // L: 4582 - WorldMapManager.cameraZ += var11; - } - - if (var10 == 3) { // L: 4583 - ViewportMouse.cameraYaw = var11 + ViewportMouse.cameraYaw & 2047; - } - - if (var10 == 4) { // L: 4584 - World.cameraPitch += var11; // L: 4585 - if (World.cameraPitch < 128) { // L: 4586 - World.cameraPitch = 128; - } - - if (World.cameraPitch > 383) { // L: 4587 - World.cameraPitch = 383; - } - } - } - } - - var10 = MouseHandler.MouseHandler_x; // L: 4591 - var11 = MouseHandler.MouseHandler_y; // L: 4592 - if (MouseHandler.MouseHandler_lastButton != 0) { // L: 4593 - var10 = MouseHandler.MouseHandler_lastPressedX; // L: 4594 - var11 = MouseHandler.MouseHandler_lastPressedY; // L: 4595 - } - - if (var10 >= var0 && var10 < var0 + var2 && var11 >= var1 && var11 < var3 + var1) { // L: 4597 - var12 = var10 - var0; // L: 4598 - var13 = var11 - var1; // L: 4599 - ViewportMouse.ViewportMouse_x = var12; // L: 4601 - ViewportMouse.ViewportMouse_y = var13; // L: 4602 - ViewportMouse.ViewportMouse_isInViewport = true; // L: 4603 - ViewportMouse.ViewportMouse_entityCount = 0; // L: 4604 - ViewportMouse.ViewportMouse_false0 = false; // L: 4605 - } else { - class23.method252(); // L: 4609 - } - - FriendSystem.playPcmPlayers(); // L: 4611 - Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var2, var3, 0); // L: 4612 - FriendSystem.playPcmPlayers(); // L: 4613 - var12 = Rasterizer3D.Rasterizer3D_zoom; // L: 4614 - Rasterizer3D.Rasterizer3D_zoom = Client.viewportZoom; // L: 4615 - ModeWhere.scene.draw(cameraX, ChatChannel.cameraY, WorldMapManager.cameraZ, World.cameraPitch, ViewportMouse.cameraYaw, var4); // L: 4616 - Rasterizer3D.Rasterizer3D_zoom = var12; // L: 4617 - FriendSystem.playPcmPlayers(); // L: 4618 - ModeWhere.scene.clearTempGameObjects(); // L: 4619 - Client.overheadTextCount = 0; // L: 4621 - boolean var30 = false; // L: 4622 - var14 = -1; // L: 4623 - int var15 = -1; // L: 4624 - int var16 = Players.Players_count; // L: 4625 - int[] var17 = Players.Players_indices; // L: 4626 - - int var18; - for (var18 = 0; var18 < var16 + Client.npcCount; ++var18) { // L: 4627 - Object var29; - if (var18 < var16) { // L: 4629 - var29 = Client.players[var17[var18]]; // L: 4630 - if (var17[var18] == Client.combatTargetPlayerIndex) { // L: 4631 - var30 = true; // L: 4632 - var14 = var18; // L: 4633 - continue; - } - - if (var29 == PlayerType.localPlayer) { // L: 4636 - var15 = var18; // L: 4637 - continue; // L: 4638 - } - } else { - var29 = Client.npcs[Client.npcIndices[var18 - var16]]; // L: 4641 - } - - class1.drawActor2d((Actor)var29, var18, var0, var1, var2, var3); // L: 4642 - } - - if (Client.renderSelf && var15 != -1) { // L: 4644 - class1.drawActor2d(PlayerType.localPlayer, var15, var0, var1, var2, var3); // L: 4645 - } - - if (var30) { // L: 4647 - class1.drawActor2d(Client.players[Client.combatTargetPlayerIndex], var14, var0, var1, var2, var3); // L: 4648 - } - - for (var18 = 0; var18 < Client.overheadTextCount; ++var18) { // L: 4650 - int var19 = Client.overheadTextXs[var18]; // L: 4651 - int var20 = Client.overheadTextYs[var18]; // L: 4652 - int var21 = Client.overheadTextXOffsets[var18]; // L: 4653 - int var22 = Client.overheadTextAscents[var18]; // L: 4654 - boolean var23 = true; // L: 4655 - - while (var23) { - var23 = false; // L: 4657 - - for (int var28 = 0; var28 < var18; ++var28) { // L: 4658 - if (var20 + 2 > Client.overheadTextYs[var28] - Client.overheadTextAscents[var28] && var20 - var22 < Client.overheadTextYs[var28] + 2 && var19 - var21 < Client.overheadTextXOffsets[var28] + Client.overheadTextXs[var28] && var19 + var21 > Client.overheadTextXs[var28] - Client.overheadTextXOffsets[var28] && Client.overheadTextYs[var28] - Client.overheadTextAscents[var28] < var20) { // L: 4659 4660 - var20 = Client.overheadTextYs[var28] - Client.overheadTextAscents[var28]; // L: 4661 - var23 = true; // L: 4662 - } - } - } - - Client.viewportTempX = Client.overheadTextXs[var18]; // L: 4667 - Client.viewportTempY = Client.overheadTextYs[var18] = var20; // L: 4668 - String var24 = Client.overheadText[var18]; // L: 4669 - if (Client.chatEffects == 0) { // L: 4670 - int var25 = 16776960; // L: 4671 - if (Client.overheadTextColors[var18] < 6) { // L: 4672 - var25 = Client.field896[Client.overheadTextColors[var18]]; - } - - if (Client.overheadTextColors[var18] == 6) { // L: 4673 - var25 = Client.viewportDrawCount % 20 < 10 ? 16711680 : 16776960; - } - - if (Client.overheadTextColors[var18] == 7) { // L: 4674 - var25 = Client.viewportDrawCount % 20 < 10 ? 255 : '\uffff'; - } - - if (Client.overheadTextColors[var18] == 8) { // L: 4675 - var25 = Client.viewportDrawCount % 20 < 10 ? '뀀' : 8454016; - } - - int var26; - if (Client.overheadTextColors[var18] == 9) { // L: 4676 - var26 = 150 - Client.overheadTextCyclesRemaining[var18]; // L: 4677 - if (var26 < 50) { // L: 4678 - var25 = var26 * 1280 + 16711680; - } else if (var26 < 100) { // L: 4679 - var25 = 16776960 - (var26 - 50) * 327680; - } else if (var26 < 150) { // L: 4680 - var25 = (var26 - 100) * 5 + 65280; - } - } - - if (Client.overheadTextColors[var18] == 10) { // L: 4682 - var26 = 150 - Client.overheadTextCyclesRemaining[var18]; // L: 4683 - if (var26 < 50) { // L: 4684 - var25 = var26 * 5 + 16711680; - } else if (var26 < 100) { // L: 4685 - var25 = 16711935 - (var26 - 50) * 327680; - } else if (var26 < 150) { // L: 4686 - var25 = (var26 - 100) * 327680 + 255 - (var26 - 100) * 5; - } - } - - if (Client.overheadTextColors[var18] == 11) { // L: 4688 - var26 = 150 - Client.overheadTextCyclesRemaining[var18]; // L: 4689 - if (var26 < 50) { // L: 4690 - var25 = 16777215 - var26 * 327685; - } else if (var26 < 100) { // L: 4691 - var25 = (var26 - 50) * 327685 + 65280; - } else if (var26 < 150) { // L: 4692 - var25 = 16777215 - (var26 - 100) * 327680; - } - } - - if (Client.overheadTextEffects[var18] == 0) { // L: 4694 - ReflectionCheck.fontBold12.drawCentered(var24, var0 + Client.viewportTempX, Client.viewportTempY + var1, var25, 0); - } - - if (Client.overheadTextEffects[var18] == 1) { // L: 4695 - ReflectionCheck.fontBold12.drawCenteredWave(var24, var0 + Client.viewportTempX, Client.viewportTempY + var1, var25, 0, Client.viewportDrawCount); - } - - if (Client.overheadTextEffects[var18] == 2) { // L: 4696 - ReflectionCheck.fontBold12.drawCenteredWave2(var24, var0 + Client.viewportTempX, Client.viewportTempY + var1, var25, 0, Client.viewportDrawCount); - } - - if (Client.overheadTextEffects[var18] == 3) { // L: 4697 - ReflectionCheck.fontBold12.drawCenteredShake(var24, var0 + Client.viewportTempX, Client.viewportTempY + var1, var25, 0, Client.viewportDrawCount, 150 - Client.overheadTextCyclesRemaining[var18]); - } - - if (Client.overheadTextEffects[var18] == 4) { // L: 4698 - var26 = (150 - Client.overheadTextCyclesRemaining[var18]) * (ReflectionCheck.fontBold12.stringWidth(var24) + 100) / 150; // L: 4699 - Rasterizer2D.Rasterizer2D_expandClip(var0 + Client.viewportTempX - 50, var1, var0 + Client.viewportTempX + 50, var3 + var1); // L: 4700 - ReflectionCheck.fontBold12.draw(var24, var0 + Client.viewportTempX + 50 - var26, Client.viewportTempY + var1, var25, 0); // L: 4701 - Rasterizer2D.Rasterizer2D_setClip(var0, var1, var0 + var2, var3 + var1); // L: 4702 - } - - if (Client.overheadTextEffects[var18] == 5) { // L: 4704 - var26 = 150 - Client.overheadTextCyclesRemaining[var18]; // L: 4705 - int var27 = 0; // L: 4706 - if (var26 < 25) { // L: 4707 - var27 = var26 - 25; - } else if (var26 > 125) { // L: 4708 - var27 = var26 - 125; - } - - Rasterizer2D.Rasterizer2D_expandClip(var0, Client.viewportTempY + var1 - ReflectionCheck.fontBold12.ascent - 1, var0 + var2, Client.viewportTempY + var1 + 5); // L: 4709 - ReflectionCheck.fontBold12.drawCentered(var24, var0 + Client.viewportTempX, var27 + Client.viewportTempY + var1, var25, 0); // L: 4710 - Rasterizer2D.Rasterizer2D_setClip(var0, var1, var0 + var2, var3 + var1); // L: 4711 - } - } else { - ReflectionCheck.fontBold12.drawCentered(var24, var0 + Client.viewportTempX, Client.viewportTempY + var1, 16776960, 0); // L: 4715 - } - } - - if (Client.hintArrowType == 2) { // L: 4720 - class13.worldToScreen((Client.hintArrowX - FloorDecoration.baseX << 7) + Client.hintArrowSubX, (Client.hintArrowY - WorldMapData_0.baseY << 7) + Client.hintArrowSubY, Client.hintArrowHeight * 2); // L: 4721 - if (Client.viewportTempX > -1 && Client.cycle % 20 < 10) { // L: 4722 - class337.headIconHintSprites[0].drawTransBgAt(var0 + Client.viewportTempX - 12, Client.viewportTempY + var1 - 28); - } - } - - ((TextureProvider)Rasterizer3D.Rasterizer3D_textureLoader).animate(Client.field743); // L: 4724 - WorldMapScaleHandler.method864(var0, var1, var2, var3); // L: 4725 - cameraX = var5; // L: 4726 - ChatChannel.cameraY = var6; // L: 4727 - WorldMapManager.cameraZ = var7; // L: 4728 - World.cameraPitch = var8; // L: 4729 - ViewportMouse.cameraYaw = var9; // L: 4730 - if (Client.isLoading) { // L: 4731 - byte var31 = 0; // L: 4734 - var14 = var31 + NetCache.NetCache_pendingPriorityWritesCount + NetCache.NetCache_pendingPriorityResponsesCount; // L: 4735 - if (var14 == 0) { // L: 4739 - Client.isLoading = false; - } - } - - if (Client.isLoading) { // L: 4741 - Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var2, var3, 0); // L: 4742 - AbstractWorldMapData.drawLoadingMessage("Loading - please wait.", false); // L: 4743 - } - - } // L: 4745 + } } diff --git a/runescape-client/src/main/java/ItemDefinition.java b/runescape-client/src/main/java/ItemDefinition.java index 0ce19bd94f..63f77413b7 100644 --- a/runescape-client/src/main/java/ItemDefinition.java +++ b/runescape-client/src/main/java/ItemDefinition.java @@ -4,942 +4,926 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jk") +@ObfuscatedName("jq") @Implements("ItemDefinition") public class ItemDefinition extends DualNode { - @ObfuscatedName("q") + @ObfuscatedName("p") + @Export("ItemDefinition_inMembersWorld") + static boolean ItemDefinition_inMembersWorld; + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "Liw;" - ) - @Export("ItemDefinition_archive") - public static AbstractArchive ItemDefinition_archive; - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("ItemDefinition_cached") static EvictingDualNodeHashTable ItemDefinition_cached; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("ItemDefinition_cachedModels") static EvictingDualNodeHashTable ItemDefinition_cachedModels; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("ItemDefinition_cachedSprites") public static EvictingDualNodeHashTable ItemDefinition_cachedSprites; - @ObfuscatedName("x") + @ObfuscatedName("m") + @ObfuscatedSignature( + descriptor = "Lku;" + ) + @Export("ItemDefinition_fontPlain11") + static Font ItemDefinition_fontPlain11; + @ObfuscatedName("c") @ObfuscatedGetter( - intValue = 205656235 + intValue = 1664014825 ) @Export("id") public int id; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedGetter( - intValue = -1548040607 + intValue = -1542603925 ) @Export("model") int model; - @ObfuscatedName("r") + @ObfuscatedName("f") @Export("name") public String name; - @ObfuscatedName("y") + @ObfuscatedName("a") @Export("recolorFrom") short[] recolorFrom; - @ObfuscatedName("s") + @ObfuscatedName("b") @Export("recolorTo") short[] recolorTo; - @ObfuscatedName("j") + @ObfuscatedName("y") @Export("retextureFrom") short[] retextureFrom; - @ObfuscatedName("w") + @ObfuscatedName("r") @Export("retextureTo") short[] retextureTo; - @ObfuscatedName("v") + @ObfuscatedName("q") @ObfuscatedGetter( - intValue = 1017963797 + intValue = -1249863743 ) @Export("zoom2d") public int zoom2d; - @ObfuscatedName("d") + @ObfuscatedName("g") @ObfuscatedGetter( - intValue = 1308967773 + intValue = 378039335 ) @Export("xan2d") public int xan2d; - @ObfuscatedName("a") + @ObfuscatedName("s") @ObfuscatedGetter( - intValue = -938843677 + intValue = -1811336517 ) @Export("yan2d") public int yan2d; - @ObfuscatedName("g") + @ObfuscatedName("o") @ObfuscatedGetter( - intValue = -1690291033 + intValue = 1318527433 ) @Export("zan2d") public int zan2d; - @ObfuscatedName("h") + @ObfuscatedName("k") @ObfuscatedGetter( - intValue = 452833685 + intValue = 283491883 ) @Export("offsetX2d") public int offsetX2d; - @ObfuscatedName("i") + @ObfuscatedName("d") @ObfuscatedGetter( - intValue = 1321777207 + intValue = -2031030215 ) @Export("offsetY2d") public int offsetY2d; - @ObfuscatedName("ab") + @ObfuscatedName("an") @ObfuscatedGetter( - intValue = -743597029 + intValue = 1485594721 ) @Export("isStackable") public int isStackable; - @ObfuscatedName("ac") + @ObfuscatedName("aj") @ObfuscatedGetter( - intValue = -1842645075 + intValue = -1502595169 ) @Export("price") public int price; - @ObfuscatedName("ao") + @ObfuscatedName("ax") @Export("isMembersOnly") public boolean isMembersOnly; - @ObfuscatedName("af") + @ObfuscatedName("ag") @Export("groundActions") public String[] groundActions; - @ObfuscatedName("av") + @ObfuscatedName("au") @Export("inventoryActions") public String[] inventoryActions; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @ObfuscatedGetter( - intValue = 2047863769 + intValue = -38561917 ) @Export("shiftClickIndex") int shiftClickIndex; - @ObfuscatedName("ah") + @ObfuscatedName("ac") @ObfuscatedGetter( - intValue = -2147145769 + intValue = -1077212297 ) @Export("maleModel") int maleModel; - @ObfuscatedName("az") + @ObfuscatedName("ak") @ObfuscatedGetter( - intValue = 35198089 + intValue = -2036756411 ) @Export("maleModel1") int maleModel1; - @ObfuscatedName("ak") + @ObfuscatedName("av") @ObfuscatedGetter( - intValue = -40962547 + intValue = -68521997 ) @Export("maleOffset") int maleOffset; - @ObfuscatedName("au") + @ObfuscatedName("aq") @ObfuscatedGetter( - intValue = 357069235 + intValue = -1318898035 ) @Export("femaleModel") int femaleModel; - @ObfuscatedName("ai") + @ObfuscatedName("ah") @ObfuscatedGetter( - intValue = 1851359943 + intValue = -77073097 ) @Export("femaleModel1") int femaleModel1; - @ObfuscatedName("ax") + @ObfuscatedName("am") @ObfuscatedGetter( - intValue = -293226181 + intValue = 1101903295 ) @Export("femaleOffset") int femaleOffset; - @ObfuscatedName("ag") + @ObfuscatedName("aa") @ObfuscatedGetter( - intValue = -1259301301 + intValue = 1577350627 ) @Export("maleModel2") int maleModel2; - @ObfuscatedName("aq") + @ObfuscatedName("ao") @ObfuscatedGetter( - intValue = -450828565 + intValue = -888895899 ) @Export("femaleModel2") int femaleModel2; - @ObfuscatedName("aw") + @ObfuscatedName("ab") @ObfuscatedGetter( - intValue = -1669818449 + intValue = -461468775 ) @Export("maleHeadModel") int maleHeadModel; - @ObfuscatedName("an") + @ObfuscatedName("aw") @ObfuscatedGetter( - intValue = -11483635 + intValue = -327288721 ) @Export("maleHeadModel2") int maleHeadModel2; - @ObfuscatedName("am") + @ObfuscatedName("ap") @ObfuscatedGetter( - intValue = 71110901 + intValue = 1741123647 ) @Export("femaleHeadModel") int femaleHeadModel; - @ObfuscatedName("aa") + @ObfuscatedName("ad") @ObfuscatedGetter( - intValue = -1829168075 + intValue = -1501910565 ) @Export("femaleHeadModel2") int femaleHeadModel2; - @ObfuscatedName("at") + @ObfuscatedName("ai") @Export("countobj") int[] countobj; - @ObfuscatedName("as") + @ObfuscatedName("al") @Export("countco") int[] countco; - @ObfuscatedName("aj") + @ObfuscatedName("ay") @ObfuscatedGetter( - intValue = 293896329 + intValue = -1267846609 ) @Export("note") public int note; - @ObfuscatedName("ae") + @ObfuscatedName("af") @ObfuscatedGetter( - intValue = -154349243 + intValue = -582464211 ) @Export("noteTemplate") public int noteTemplate; - @ObfuscatedName("al") + @ObfuscatedName("ar") @ObfuscatedGetter( - intValue = 1856530467 + intValue = -142471915 ) @Export("resizeX") int resizeX; - @ObfuscatedName("ap") + @ObfuscatedName("az") @ObfuscatedGetter( - intValue = -1750294835 + intValue = 1969283265 ) @Export("resizeY") int resizeY; - @ObfuscatedName("ad") + @ObfuscatedName("at") @ObfuscatedGetter( - intValue = 1174964603 + intValue = -840638399 ) @Export("resizeZ") int resizeZ; - @ObfuscatedName("bb") + @ObfuscatedName("bh") @ObfuscatedGetter( - intValue = -1557535821 + intValue = -774071987 ) @Export("ambient") public int ambient; - @ObfuscatedName("bf") + @ObfuscatedName("by") @ObfuscatedGetter( - intValue = 1535796637 + intValue = 1805763539 ) @Export("contrast") public int contrast; - @ObfuscatedName("bp") + @ObfuscatedName("bs") @ObfuscatedGetter( - intValue = 386256383 + intValue = -296565947 ) @Export("team") public int team; - @ObfuscatedName("bg") + @ObfuscatedName("br") @ObfuscatedSignature( - descriptor = "Lll;" + descriptor = "Lla;" ) @Export("params") IterableNodeHashTable params; - @ObfuscatedName("bc") + @ObfuscatedName("bl") @Export("isTradable") public boolean isTradable; - @ObfuscatedName("bj") + @ObfuscatedName("bx") @ObfuscatedGetter( - intValue = -1196685039 + intValue = -1768279497 ) @Export("unnotedId") int unnotedId; - @ObfuscatedName("bl") + @ObfuscatedName("bf") @ObfuscatedGetter( - intValue = -1548503311 + intValue = -1788707457 ) @Export("notedId") int notedId; - @ObfuscatedName("bn") + @ObfuscatedName("bz") @ObfuscatedGetter( - intValue = 1444215613 + intValue = 1260522137 ) @Export("placeholder") public int placeholder; - @ObfuscatedName("bo") + @ObfuscatedName("bm") @ObfuscatedGetter( - intValue = 1795160485 + intValue = 483984813 ) @Export("placeholderTemplate") public int placeholderTemplate; static { - ItemDefinition_cached = new EvictingDualNodeHashTable(64); // L: 28 - ItemDefinition_cachedModels = new EvictingDualNodeHashTable(50); // L: 29 - ItemDefinition_cachedSprites = new EvictingDualNodeHashTable(200); // L: 30 + ItemDefinition_cached = new EvictingDualNodeHashTable(64); + ItemDefinition_cachedModels = new EvictingDualNodeHashTable(50); + ItemDefinition_cachedSprites = new EvictingDualNodeHashTable(200); } ItemDefinition() { - this.name = "null"; // L: 34 - this.zoom2d = 2000; // L: 39 - this.xan2d = 0; // L: 40 - this.yan2d = 0; // L: 41 - this.zan2d = 0; // L: 42 - this.offsetX2d = 0; // L: 43 - this.offsetY2d = 0; // L: 44 - this.isStackable = 0; // L: 45 - this.price = 1; // L: 46 - this.isMembersOnly = false; // L: 47 - this.groundActions = new String[]{null, null, "Take", null, null}; // L: 48 - this.inventoryActions = new String[]{null, null, null, null, "Drop"}; // L: 49 - this.shiftClickIndex = -2; // L: 51 - this.maleModel = -1; // L: 52 - this.maleModel1 = -1; // L: 53 - this.maleOffset = 0; // L: 54 - this.femaleModel = -1; // L: 55 - this.femaleModel1 = -1; // L: 56 - this.femaleOffset = 0; // L: 57 - this.maleModel2 = -1; // L: 58 - this.femaleModel2 = -1; // L: 59 - this.maleHeadModel = -1; // L: 60 - this.maleHeadModel2 = -1; // L: 61 - this.femaleHeadModel = -1; // L: 62 - this.femaleHeadModel2 = -1; // L: 63 - this.note = -1; // L: 66 - this.noteTemplate = -1; // L: 67 - this.resizeX = 128; // L: 68 - this.resizeY = 128; // L: 69 - this.resizeZ = 128; // L: 70 - this.ambient = 0; // L: 71 - this.contrast = 0; // L: 72 - this.team = 0; // L: 73 - this.isTradable = false; // L: 75 - this.unnotedId = -1; // L: 76 - this.notedId = -1; // L: 77 - this.placeholder = -1; // L: 78 - this.placeholderTemplate = -1; // L: 79 - } // L: 81 + this.name = "null"; + this.zoom2d = 2000; + this.xan2d = 0; + this.yan2d = 0; + this.zan2d = 0; + this.offsetX2d = 0; + this.offsetY2d = 0; + this.isStackable = 0; + this.price = 1; + this.isMembersOnly = false; + this.groundActions = new String[]{null, null, "Take", null, null}; + this.inventoryActions = new String[]{null, null, null, null, "Drop"}; + this.shiftClickIndex = -2; + this.maleModel = -1; + this.maleModel1 = -1; + this.maleOffset = 0; + this.femaleModel = -1; + this.femaleModel1 = -1; + this.femaleOffset = 0; + this.maleModel2 = -1; + this.femaleModel2 = -1; + this.maleHeadModel = -1; + this.maleHeadModel2 = -1; + this.femaleHeadModel = -1; + this.femaleHeadModel2 = -1; + this.note = -1; + this.noteTemplate = -1; + this.resizeX = 128; + this.resizeY = 128; + this.resizeZ = 128; + this.ambient = 0; + this.contrast = 0; + this.team = 0; + this.isTradable = false; + this.unnotedId = -1; + this.notedId = -1; + this.placeholder = -1; + this.placeholderTemplate = -1; + } - @ObfuscatedName("b") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-27945294" + garbageValue = "-617836008" ) @Export("post") void post() { - } // L: 115 + } - @ObfuscatedName("l") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lkb;B)V", - garbageValue = "8" + descriptor = "(Lkj;I)V", + garbageValue = "2011141659" ) @Export("decode") void decode(Buffer var1) { while (true) { - int var2 = var1.readUnsignedByte(); // L: 119 - if (var2 == 0) { // L: 120 - return; // L: 123 + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; } - this.decodeNext(var1, var2); // L: 121 - } - } - - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "(Lkb;IB)V", - garbageValue = "1" - ) - @Export("decodeNext") - void decodeNext(Buffer var1, int var2) { - if (var2 == 1) { // L: 126 - this.model = var1.readUnsignedShort(); - } else if (var2 == 2) { // L: 127 - this.name = var1.readStringCp1252NullTerminated(); - } else if (var2 == 4) { // L: 128 - this.zoom2d = var1.readUnsignedShort(); - } else if (var2 == 5) { // L: 129 - this.xan2d = var1.readUnsignedShort(); - } else if (var2 == 6) { // L: 130 - this.yan2d = var1.readUnsignedShort(); - } else if (var2 == 7) { // L: 131 - this.offsetX2d = var1.readUnsignedShort(); // L: 132 - if (this.offsetX2d > 32767) { // L: 133 - this.offsetX2d -= 65536; - } - } else if (var2 == 8) { // L: 135 - this.offsetY2d = var1.readUnsignedShort(); // L: 136 - if (this.offsetY2d > 32767) { // L: 137 - this.offsetY2d -= 65536; - } - } else if (var2 == 11) { // L: 139 - this.isStackable = 1; - } else if (var2 == 12) { // L: 140 - this.price = var1.readInt(); - } else if (var2 == 16) { // L: 141 - this.isMembersOnly = true; - } else if (var2 == 23) { // L: 142 - this.maleModel = var1.readUnsignedShort(); // L: 143 - this.maleOffset = var1.readUnsignedByte(); // L: 144 - } else if (var2 == 24) { // L: 146 - this.maleModel1 = var1.readUnsignedShort(); - } else if (var2 == 25) { // L: 147 - this.femaleModel = var1.readUnsignedShort(); // L: 148 - this.femaleOffset = var1.readUnsignedByte(); // L: 149 - } else if (var2 == 26) { // L: 151 - this.femaleModel1 = var1.readUnsignedShort(); - } else if (var2 >= 30 && var2 < 35) { // L: 152 - this.groundActions[var2 - 30] = var1.readStringCp1252NullTerminated(); // L: 153 - if (this.groundActions[var2 - 30].equalsIgnoreCase("Hidden")) { // L: 154 - this.groundActions[var2 - 30] = null; - } - } else if (var2 >= 35 && var2 < 40) { // L: 156 - this.inventoryActions[var2 - 35] = var1.readStringCp1252NullTerminated(); - } else { - int var3; - int var4; - if (var2 == 40) { // L: 157 - var3 = var1.readUnsignedByte(); // L: 158 - this.recolorFrom = new short[var3]; // L: 159 - this.recolorTo = new short[var3]; // L: 160 - - for (var4 = 0; var4 < var3; ++var4) { // L: 161 - this.recolorFrom[var4] = (short)var1.readUnsignedShort(); // L: 162 - this.recolorTo[var4] = (short)var1.readUnsignedShort(); // L: 163 - } - } else if (var2 == 41) { // L: 166 - var3 = var1.readUnsignedByte(); // L: 167 - this.retextureFrom = new short[var3]; // L: 168 - this.retextureTo = new short[var3]; // L: 169 - - for (var4 = 0; var4 < var3; ++var4) { // L: 170 - this.retextureFrom[var4] = (short)var1.readUnsignedShort(); // L: 171 - this.retextureTo[var4] = (short)var1.readUnsignedShort(); // L: 172 - } - } else if (var2 == 42) { // L: 175 - this.shiftClickIndex = var1.readByte(); // L: 176 - } else if (var2 == 65) { // L: 178 - this.isTradable = true; - } else if (var2 == 78) { // L: 179 - this.maleModel2 = var1.readUnsignedShort(); - } else if (var2 == 79) { // L: 180 - this.femaleModel2 = var1.readUnsignedShort(); - } else if (var2 == 90) { // L: 181 - this.maleHeadModel = var1.readUnsignedShort(); - } else if (var2 == 91) { // L: 182 - this.femaleHeadModel = var1.readUnsignedShort(); - } else if (var2 == 92) { // L: 183 - this.maleHeadModel2 = var1.readUnsignedShort(); - } else if (var2 == 93) { // L: 184 - this.femaleHeadModel2 = var1.readUnsignedShort(); - } else if (var2 == 95) { // L: 185 - this.zan2d = var1.readUnsignedShort(); - } else if (var2 == 97) { // L: 186 - this.note = var1.readUnsignedShort(); - } else if (var2 == 98) { // L: 187 - this.noteTemplate = var1.readUnsignedShort(); - } else if (var2 >= 100 && var2 < 110) { // L: 188 - if (this.countobj == null) { // L: 189 - this.countobj = new int[10]; // L: 190 - this.countco = new int[10]; // L: 191 - } - - this.countobj[var2 - 100] = var1.readUnsignedShort(); // L: 193 - this.countco[var2 - 100] = var1.readUnsignedShort(); // L: 194 - } else if (var2 == 110) { // L: 196 - this.resizeX = var1.readUnsignedShort(); - } else if (var2 == 111) { // L: 197 - this.resizeY = var1.readUnsignedShort(); - } else if (var2 == 112) { // L: 198 - this.resizeZ = var1.readUnsignedShort(); - } else if (var2 == 113) { // L: 199 - this.ambient = var1.readByte(); - } else if (var2 == 114) { // L: 200 - this.contrast = var1.readByte() * 5; - } else if (var2 == 115) { // L: 201 - this.team = var1.readUnsignedByte(); - } else if (var2 == 139) { // L: 202 - this.unnotedId = var1.readUnsignedShort(); - } else if (var2 == 140) { // L: 203 - this.notedId = var1.readUnsignedShort(); - } else if (var2 == 148) { // L: 204 - this.placeholder = var1.readUnsignedShort(); - } else if (var2 == 149) { // L: 205 - this.placeholderTemplate = var1.readUnsignedShort(); - } else if (var2 == 249) { // L: 206 - this.params = InvDefinition.readStringIntParameters(var1, this.params); - } - } - - } // L: 208 - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(Ljk;Ljk;S)V", - garbageValue = "-24107" - ) - @Export("genCert") - void genCert(ItemDefinition var1, ItemDefinition var2) { - this.model = var1.model; // L: 211 - this.zoom2d = var1.zoom2d; // L: 212 - this.xan2d = var1.xan2d; // L: 213 - this.yan2d = var1.yan2d; // L: 214 - this.zan2d = var1.zan2d; // L: 215 - this.offsetX2d = var1.offsetX2d; // L: 216 - this.offsetY2d = var1.offsetY2d; // L: 217 - this.recolorFrom = var1.recolorFrom; // L: 218 - this.recolorTo = var1.recolorTo; // L: 219 - this.retextureFrom = var1.retextureFrom; // L: 220 - this.retextureTo = var1.retextureTo; // L: 221 - this.name = var2.name; // L: 222 - this.isMembersOnly = var2.isMembersOnly; // L: 223 - this.price = var2.price; // L: 224 - this.isStackable = 1; // L: 225 - } // L: 226 - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(Ljk;Ljk;I)V", - garbageValue = "-1330736230" - ) - @Export("genBought") - void genBought(ItemDefinition var1, ItemDefinition var2) { - this.model = var1.model; // L: 229 - this.zoom2d = var1.zoom2d; // L: 230 - this.xan2d = var1.xan2d; // L: 231 - this.yan2d = var1.yan2d; // L: 232 - this.zan2d = var1.zan2d; // L: 233 - this.offsetX2d = var1.offsetX2d; // L: 234 - this.offsetY2d = var1.offsetY2d; // L: 235 - this.recolorFrom = var2.recolorFrom; // L: 236 - this.recolorTo = var2.recolorTo; // L: 237 - this.retextureFrom = var2.retextureFrom; // L: 238 - this.retextureTo = var2.retextureTo; // L: 239 - this.name = var2.name; // L: 240 - this.isMembersOnly = var2.isMembersOnly; // L: 241 - this.isStackable = var2.isStackable; // L: 242 - this.maleModel = var2.maleModel; // L: 243 - this.maleModel1 = var2.maleModel1; // L: 244 - this.maleModel2 = var2.maleModel2; // L: 245 - this.femaleModel = var2.femaleModel; // L: 246 - this.femaleModel1 = var2.femaleModel1; // L: 247 - this.femaleModel2 = var2.femaleModel2; // L: 248 - this.maleHeadModel = var2.maleHeadModel; // L: 249 - this.maleHeadModel2 = var2.maleHeadModel2; // L: 250 - this.femaleHeadModel = var2.femaleHeadModel; // L: 251 - this.femaleHeadModel2 = var2.femaleHeadModel2; // L: 252 - this.team = var2.team; // L: 253 - this.groundActions = var2.groundActions; // L: 254 - this.inventoryActions = new String[5]; // L: 255 - if (var2.inventoryActions != null) { // L: 256 - for (int var3 = 0; var3 < 4; ++var3) { - this.inventoryActions[var3] = var2.inventoryActions[var3]; - } - } - - this.inventoryActions[4] = "Discard"; // L: 257 - this.price = 0; // L: 258 - } // L: 259 - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(Ljk;Ljk;B)V", - garbageValue = "67" - ) - @Export("genPlaceholder") - void genPlaceholder(ItemDefinition var1, ItemDefinition var2) { - this.model = var1.model; // L: 262 - this.zoom2d = var1.zoom2d; // L: 263 - this.xan2d = var1.xan2d; // L: 264 - this.yan2d = var1.yan2d; // L: 265 - this.zan2d = var1.zan2d; // L: 266 - this.offsetX2d = var1.offsetX2d; // L: 267 - this.offsetY2d = var1.offsetY2d; // L: 268 - this.recolorFrom = var1.recolorFrom; // L: 269 - this.recolorTo = var1.recolorTo; // L: 270 - this.retextureFrom = var1.retextureFrom; // L: 271 - this.retextureTo = var1.retextureTo; // L: 272 - this.isStackable = var1.isStackable; // L: 273 - this.name = var2.name; // L: 274 - this.price = 0; // L: 275 - this.isMembersOnly = false; // L: 276 - this.isTradable = false; // L: 277 - } // L: 278 - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(II)Len;", - garbageValue = "-1204595324" - ) - @Export("getModelData") - public final ModelData getModelData(int var1) { - int var3; - if (this.countobj != null && var1 > 1) { // L: 281 - int var2 = -1; // L: 282 - - for (var3 = 0; var3 < 10; ++var3) { // L: 283 - if (var1 >= this.countco[var3] && this.countco[var3] != 0) { // L: 284 - var2 = this.countobj[var3]; - } - } - - if (var2 != -1) { // L: 286 - return AbstractWorldMapData.ItemDefinition_get(var2).getModelData(1); - } - } - - ModelData var4 = ModelData.ModelData_get(UserComparator9.ItemDefinition_modelArchive, this.model, 0); // L: 288 - if (var4 == null) { // L: 289 - return null; - } else { - if (this.resizeX != 128 || this.resizeY != 128 || this.resizeZ != 128) { // L: 290 - var4.resize(this.resizeX, this.resizeY, this.resizeZ); - } - - if (this.recolorFrom != null) { // L: 291 - for (var3 = 0; var3 < this.recolorFrom.length; ++var3) { // L: 292 - var4.recolor(this.recolorFrom[var3], this.recolorTo[var3]); // L: 293 - } - } - - if (this.retextureFrom != null) { // L: 296 - for (var3 = 0; var3 < this.retextureFrom.length; ++var3) { // L: 297 - var4.retexture(this.retextureFrom[var3], this.retextureTo[var3]); // L: 298 - } - } - - return var4; // L: 301 - } - } - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(II)Leh;", - garbageValue = "1180812329" - ) - @Export("getModel") - public final Model getModel(int var1) { - if (this.countobj != null && var1 > 1) { // L: 305 - int var2 = -1; // L: 306 - - for (int var3 = 0; var3 < 10; ++var3) { // L: 307 - if (var1 >= this.countco[var3] && this.countco[var3] != 0) { // L: 308 - var2 = this.countobj[var3]; - } - } - - if (var2 != -1) { // L: 310 - return AbstractWorldMapData.ItemDefinition_get(var2).getModel(1); - } - } - - Model var5 = (Model)ItemDefinition_cachedModels.get((long)this.id); // L: 312 - if (var5 != null) { // L: 313 - return var5; - } else { - ModelData var6 = ModelData.ModelData_get(UserComparator9.ItemDefinition_modelArchive, this.model, 0); // L: 314 - if (var6 == null) { // L: 315 - return null; - } else { - if (this.resizeX != 128 || this.resizeY != 128 || this.resizeZ != 128) { // L: 316 - var6.resize(this.resizeX, this.resizeY, this.resizeZ); - } - - int var4; - if (this.recolorFrom != null) { // L: 317 - for (var4 = 0; var4 < this.recolorFrom.length; ++var4) { // L: 318 - var6.recolor(this.recolorFrom[var4], this.recolorTo[var4]); // L: 319 - } - } - - if (this.retextureFrom != null) { // L: 322 - for (var4 = 0; var4 < this.retextureFrom.length; ++var4) { // L: 323 - var6.retexture(this.retextureFrom[var4], this.retextureTo[var4]); // L: 324 - } - } - - var5 = var6.toModel(this.ambient + 64, this.contrast + 768, -50, -10, -50); // L: 327 - var5.isSingleTile = true; // L: 328 - ItemDefinition_cachedModels.put(var5, (long)this.id); // L: 329 - return var5; // L: 330 - } + this.decodeNext(var1, var2); } } @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(IB)Ljk;", - garbageValue = "-89" + descriptor = "(Lkj;II)V", + garbageValue = "1800832423" ) - @Export("getCountObj") - public ItemDefinition getCountObj(int var1) { - if (this.countobj != null && var1 > 1) { // L: 334 - int var2 = -1; // L: 335 - - for (int var3 = 0; var3 < 10; ++var3) { // L: 336 - if (var1 >= this.countco[var3] && this.countco[var3] != 0) { // L: 337 - var2 = this.countobj[var3]; - } + @Export("decodeNext") + void decodeNext(Buffer var1, int var2) { + if (var2 == 1) { + this.model = var1.readUnsignedShort(); + } else if (var2 == 2) { + this.name = var1.readStringCp1252NullTerminated(); + } else if (var2 == 4) { + this.zoom2d = var1.readUnsignedShort(); + } else if (var2 == 5) { + this.xan2d = var1.readUnsignedShort(); + } else if (var2 == 6) { + this.yan2d = var1.readUnsignedShort(); + } else if (var2 == 7) { + this.offsetX2d = var1.readUnsignedShort(); + if (this.offsetX2d > 32767) { + this.offsetX2d -= 65536; } + } else if (var2 == 8) { + this.offsetY2d = var1.readUnsignedShort(); + if (this.offsetY2d > 32767) { + this.offsetY2d -= 65536; + } + } else if (var2 == 11) { + this.isStackable = 1; + } else if (var2 == 12) { + this.price = var1.readInt(); + } else if (var2 == 16) { + this.isMembersOnly = true; + } else if (var2 == 23) { + this.maleModel = var1.readUnsignedShort(); + this.maleOffset = var1.readUnsignedByte(); + } else if (var2 == 24) { + this.maleModel1 = var1.readUnsignedShort(); + } else if (var2 == 25) { + this.femaleModel = var1.readUnsignedShort(); + this.femaleOffset = var1.readUnsignedByte(); + } else if (var2 == 26) { + this.femaleModel1 = var1.readUnsignedShort(); + } else if (var2 >= 30 && var2 < 35) { + this.groundActions[var2 - 30] = var1.readStringCp1252NullTerminated(); + if (this.groundActions[var2 - 30].equalsIgnoreCase("Hidden")) { + this.groundActions[var2 - 30] = null; + } + } else if (var2 >= 35 && var2 < 40) { + this.inventoryActions[var2 - 35] = var1.readStringCp1252NullTerminated(); + } else { + int var3; + int var4; + if (var2 == 40) { + var3 = var1.readUnsignedByte(); + this.recolorFrom = new short[var3]; + this.recolorTo = new short[var3]; - if (var2 != -1) { // L: 339 - return AbstractWorldMapData.ItemDefinition_get(var2); + for (var4 = 0; var4 < var3; ++var4) { + this.recolorFrom[var4] = (short)var1.readUnsignedShort(); + this.recolorTo[var4] = (short)var1.readUnsignedShort(); + } + } else if (var2 == 41) { + var3 = var1.readUnsignedByte(); + this.retextureFrom = new short[var3]; + this.retextureTo = new short[var3]; + + for (var4 = 0; var4 < var3; ++var4) { + this.retextureFrom[var4] = (short)var1.readUnsignedShort(); + this.retextureTo[var4] = (short)var1.readUnsignedShort(); + } + } else if (var2 == 42) { + this.shiftClickIndex = var1.readByte(); + } else if (var2 == 65) { + this.isTradable = true; + } else if (var2 == 78) { + this.maleModel2 = var1.readUnsignedShort(); + } else if (var2 == 79) { + this.femaleModel2 = var1.readUnsignedShort(); + } else if (var2 == 90) { + this.maleHeadModel = var1.readUnsignedShort(); + } else if (var2 == 91) { + this.femaleHeadModel = var1.readUnsignedShort(); + } else if (var2 == 92) { + this.maleHeadModel2 = var1.readUnsignedShort(); + } else if (var2 == 93) { + this.femaleHeadModel2 = var1.readUnsignedShort(); + } else if (var2 == 95) { + this.zan2d = var1.readUnsignedShort(); + } else if (var2 == 97) { + this.note = var1.readUnsignedShort(); + } else if (var2 == 98) { + this.noteTemplate = var1.readUnsignedShort(); + } else if (var2 >= 100 && var2 < 110) { + if (this.countobj == null) { + this.countobj = new int[10]; + this.countco = new int[10]; + } + + this.countobj[var2 - 100] = var1.readUnsignedShort(); + this.countco[var2 - 100] = var1.readUnsignedShort(); + } else if (var2 == 110) { + this.resizeX = var1.readUnsignedShort(); + } else if (var2 == 111) { + this.resizeY = var1.readUnsignedShort(); + } else if (var2 == 112) { + this.resizeZ = var1.readUnsignedShort(); + } else if (var2 == 113) { + this.ambient = var1.readByte(); + } else if (var2 == 114) { + this.contrast = var1.readByte() * 5; + } else if (var2 == 115) { + this.team = var1.readUnsignedByte(); + } else if (var2 == 139) { + this.unnotedId = var1.readUnsignedShort(); + } else if (var2 == 140) { + this.notedId = var1.readUnsignedShort(); + } else if (var2 == 148) { + this.placeholder = var1.readUnsignedShort(); + } else if (var2 == 149) { + this.placeholderTemplate = var1.readUnsignedShort(); + } else if (var2 == 249) { + this.params = NetSocket.readStringIntParameters(var1, this.params); } } - return this; // L: 341 + } + + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "(Ljq;Ljq;I)V", + garbageValue = "1371211432" + ) + @Export("genCert") + void genCert(ItemDefinition var1, ItemDefinition var2) { + this.model = var1.model; + this.zoom2d = var1.zoom2d; + this.xan2d = var1.xan2d; + this.yan2d = var1.yan2d; + this.zan2d = var1.zan2d; + this.offsetX2d = var1.offsetX2d; + this.offsetY2d = var1.offsetY2d; + this.recolorFrom = var1.recolorFrom; + this.recolorTo = var1.recolorTo; + this.retextureFrom = var1.retextureFrom; + this.retextureTo = var1.retextureTo; + this.name = var2.name; + this.isMembersOnly = var2.isMembersOnly; + this.price = var2.price; + this.isStackable = 1; } @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(ZI)Z", - garbageValue = "1324759771" + descriptor = "(Ljq;Ljq;I)V", + garbageValue = "-1959177502" ) - @Export("hasNoValidModel") - public final boolean hasNoValidModel(boolean var1) { - int var2 = this.maleModel; // L: 419 - int var3 = this.maleModel1; // L: 420 - int var4 = this.maleModel2; // L: 421 - if (var1) { // L: 422 - var2 = this.femaleModel; // L: 423 - var3 = this.femaleModel1; // L: 424 - var4 = this.femaleModel2; // L: 425 + @Export("genBought") + void genBought(ItemDefinition var1, ItemDefinition var2) { + this.model = var1.model; + this.zoom2d = var1.zoom2d; + this.xan2d = var1.xan2d; + this.yan2d = var1.yan2d; + this.zan2d = var1.zan2d; + this.offsetX2d = var1.offsetX2d; + this.offsetY2d = var1.offsetY2d; + this.recolorFrom = var2.recolorFrom; + this.recolorTo = var2.recolorTo; + this.retextureFrom = var2.retextureFrom; + this.retextureTo = var2.retextureTo; + this.name = var2.name; + this.isMembersOnly = var2.isMembersOnly; + this.isStackable = var2.isStackable; + this.maleModel = var2.maleModel; + this.maleModel1 = var2.maleModel1; + this.maleModel2 = var2.maleModel2; + this.femaleModel = var2.femaleModel; + this.femaleModel1 = var2.femaleModel1; + this.femaleModel2 = var2.femaleModel2; + this.maleHeadModel = var2.maleHeadModel; + this.maleHeadModel2 = var2.maleHeadModel2; + this.femaleHeadModel = var2.femaleHeadModel; + this.femaleHeadModel2 = var2.femaleHeadModel2; + this.team = var2.team; + this.groundActions = var2.groundActions; + this.inventoryActions = new String[5]; + if (var2.inventoryActions != null) { + for (int var3 = 0; var3 < 4; ++var3) { + this.inventoryActions[var3] = var2.inventoryActions[var3]; + } } - if (var2 == -1) { // L: 427 - return true; - } else { - boolean var5 = true; // L: 428 - if (!UserComparator9.ItemDefinition_modelArchive.tryLoadFile(var2, 0)) { // L: 429 - var5 = false; - } - - if (var3 != -1 && !UserComparator9.ItemDefinition_modelArchive.tryLoadFile(var3, 0)) { // L: 430 - var5 = false; - } - - if (var4 != -1 && !UserComparator9.ItemDefinition_modelArchive.tryLoadFile(var4, 0)) { // L: 431 - var5 = false; - } - - return var5; // L: 432 - } - } - - @ObfuscatedName("x") - @ObfuscatedSignature( - descriptor = "(ZI)Len;", - garbageValue = "-1992916020" - ) - public final ModelData method4820(boolean var1) { - int var2 = this.maleModel; // L: 436 - int var3 = this.maleModel1; // L: 437 - int var4 = this.maleModel2; // L: 438 - if (var1) { // L: 439 - var2 = this.femaleModel; // L: 440 - var3 = this.femaleModel1; // L: 441 - var4 = this.femaleModel2; // L: 442 - } - - if (var2 == -1) { // L: 444 - return null; - } else { - ModelData var5 = ModelData.ModelData_get(UserComparator9.ItemDefinition_modelArchive, var2, 0); // L: 445 - if (var3 != -1) { // L: 446 - ModelData var6 = ModelData.ModelData_get(UserComparator9.ItemDefinition_modelArchive, var3, 0); // L: 447 - if (var4 != -1) { // L: 448 - ModelData var7 = ModelData.ModelData_get(UserComparator9.ItemDefinition_modelArchive, var4, 0); // L: 449 - ModelData[] var8 = new ModelData[]{var5, var6, var7}; // L: 450 - var5 = new ModelData(var8, 3); // L: 451 - } else { - ModelData[] var10 = new ModelData[]{var5, var6}; // L: 454 - var5 = new ModelData(var10, 2); // L: 455 - } - } - - if (!var1 && this.maleOffset != 0) { // L: 458 - var5.changeOffset(0, this.maleOffset, 0); - } - - if (var1 && this.femaleOffset != 0) { // L: 459 - var5.changeOffset(0, this.femaleOffset, 0); - } - - int var9; - if (this.recolorFrom != null) { // L: 460 - for (var9 = 0; var9 < this.recolorFrom.length; ++var9) { // L: 461 - var5.recolor(this.recolorFrom[var9], this.recolorTo[var9]); // L: 462 - } - } - - if (this.retextureFrom != null) { // L: 465 - for (var9 = 0; var9 < this.retextureFrom.length; ++var9) { // L: 466 - var5.retexture(this.retextureFrom[var9], this.retextureTo[var9]); // L: 467 - } - } - - return var5; // L: 470 - } + this.inventoryActions[4] = "Discard"; + this.price = 0; } @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "(ZB)Z", - garbageValue = "26" + descriptor = "(Ljq;Ljq;I)V", + garbageValue = "312275833" ) - public final boolean method4809(boolean var1) { - int var2 = this.maleHeadModel; // L: 474 - int var3 = this.maleHeadModel2; // L: 475 - if (var1) { // L: 476 - var2 = this.femaleHeadModel; // L: 477 - var3 = this.femaleHeadModel2; // L: 478 + @Export("genPlaceholder") + void genPlaceholder(ItemDefinition var1, ItemDefinition var2) { + this.model = var1.model; + this.zoom2d = var1.zoom2d; + this.xan2d = var1.xan2d; + this.yan2d = var1.yan2d; + this.zan2d = var1.zan2d; + this.offsetX2d = var1.offsetX2d; + this.offsetY2d = var1.offsetY2d; + this.recolorFrom = var1.recolorFrom; + this.recolorTo = var1.recolorTo; + this.retextureFrom = var1.retextureFrom; + this.retextureTo = var1.retextureTo; + this.isStackable = var1.isStackable; + this.name = var2.name; + this.price = 0; + this.isMembersOnly = false; + this.isTradable = false; + } + + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "(II)Les;", + garbageValue = "928211522" + ) + @Export("getModelData") + public final ModelData getModelData(int var1) { + int var3; + if (this.countobj != null && var1 > 1) { + int var2 = -1; + + for (var3 = 0; var3 < 10; ++var3) { + if (var1 >= this.countco[var3] && this.countco[var3] != 0) { + var2 = this.countobj[var3]; + } + } + + if (var2 != -1) { + return SecureRandomCallable.ItemDefinition_get(var2).getModelData(1); + } } - if (var2 == -1) { // L: 480 - return true; + ModelData var4 = ModelData.ModelData_get(VertexNormal.ItemDefinition_modelArchive, this.model, 0); + if (var4 == null) { + return null; } else { - boolean var4 = true; // L: 481 - if (!UserComparator9.ItemDefinition_modelArchive.tryLoadFile(var2, 0)) { // L: 482 - var4 = false; + if (this.resizeX != 128 || this.resizeY != 128 || this.resizeZ != 128) { + var4.resize(this.resizeX, this.resizeY, this.resizeZ); } - if (var3 != -1 && !UserComparator9.ItemDefinition_modelArchive.tryLoadFile(var3, 0)) { // L: 483 - var4 = false; + if (this.recolorFrom != null) { + for (var3 = 0; var3 < this.recolorFrom.length; ++var3) { + var4.recolor(this.recolorFrom[var3], this.recolorTo[var3]); + } } - return var4; // L: 484 + if (this.retextureFrom != null) { + for (var3 = 0; var3 < this.retextureFrom.length; ++var3) { + var4.retexture(this.retextureFrom[var3], this.retextureTo[var3]); + } + } + + return var4; } } - @ObfuscatedName("r") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "(ZB)Len;", - garbageValue = "0" + descriptor = "(II)Leh;", + garbageValue = "893521551" ) - public final ModelData method4822(boolean var1) { - int var2 = this.maleHeadModel; // L: 488 - int var3 = this.maleHeadModel2; // L: 489 - if (var1) { // L: 490 - var2 = this.femaleHeadModel; // L: 491 - var3 = this.femaleHeadModel2; // L: 492 + @Export("getModel") + public final Model getModel(int var1) { + if (this.countobj != null && var1 > 1) { + int var2 = -1; + + for (int var3 = 0; var3 < 10; ++var3) { + if (var1 >= this.countco[var3] && this.countco[var3] != 0) { + var2 = this.countobj[var3]; + } + } + + if (var2 != -1) { + return SecureRandomCallable.ItemDefinition_get(var2).getModel(1); + } } - if (var2 == -1) { // L: 494 + Model var5 = (Model)ItemDefinition_cachedModels.get((long)this.id); + if (var5 != null) { + return var5; + } else { + ModelData var6 = ModelData.ModelData_get(VertexNormal.ItemDefinition_modelArchive, this.model, 0); + if (var6 == null) { + return null; + } else { + if (this.resizeX != 128 || this.resizeY != 128 || this.resizeZ != 128) { + var6.resize(this.resizeX, this.resizeY, this.resizeZ); + } + + int var4; + if (this.recolorFrom != null) { + for (var4 = 0; var4 < this.recolorFrom.length; ++var4) { + var6.recolor(this.recolorFrom[var4], this.recolorTo[var4]); + } + } + + if (this.retextureFrom != null) { + for (var4 = 0; var4 < this.retextureFrom.length; ++var4) { + var6.retexture(this.retextureFrom[var4], this.retextureTo[var4]); + } + } + + var5 = var6.toModel(this.ambient + 64, this.contrast + 768, -50, -10, -50); + var5.isSingleTile = true; + ItemDefinition_cachedModels.put(var5, (long)this.id); + return var5; + } + } + } + + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "(II)Ljq;", + garbageValue = "-1807857103" + ) + @Export("getCountObj") + public ItemDefinition getCountObj(int var1) { + if (this.countobj != null && var1 > 1) { + int var2 = -1; + + for (int var3 = 0; var3 < 10; ++var3) { + if (var1 >= this.countco[var3] && this.countco[var3] != 0) { + var2 = this.countobj[var3]; + } + } + + if (var2 != -1) { + return SecureRandomCallable.ItemDefinition_get(var2); + } + } + + return this; + } + + @ObfuscatedName("c") + @ObfuscatedSignature( + descriptor = "(ZS)Z", + garbageValue = "30323" + ) + @Export("hasNoValidModel") + public final boolean hasNoValidModel(boolean var1) { + int var2 = this.maleModel; + int var3 = this.maleModel1; + int var4 = this.maleModel2; + if (var1) { + var2 = this.femaleModel; + var3 = this.femaleModel1; + var4 = this.femaleModel2; + } + + if (var2 == -1) { + return true; + } else { + boolean var5 = true; + if (!VertexNormal.ItemDefinition_modelArchive.tryLoadFile(var2, 0)) { + var5 = false; + } + + if (var3 != -1 && !VertexNormal.ItemDefinition_modelArchive.tryLoadFile(var3, 0)) { + var5 = false; + } + + if (var4 != -1 && !VertexNormal.ItemDefinition_modelArchive.tryLoadFile(var4, 0)) { + var5 = false; + } + + return var5; + } + } + + @ObfuscatedName("i") + @ObfuscatedSignature( + descriptor = "(ZI)Les;", + garbageValue = "-496299107" + ) + public final ModelData method4669(boolean var1) { + int var2 = this.maleModel; + int var3 = this.maleModel1; + int var4 = this.maleModel2; + if (var1) { + var2 = this.femaleModel; + var3 = this.femaleModel1; + var4 = this.femaleModel2; + } + + if (var2 == -1) { return null; } else { - ModelData var4 = ModelData.ModelData_get(UserComparator9.ItemDefinition_modelArchive, var2, 0); // L: 495 - if (var3 != -1) { // L: 496 - ModelData var5 = ModelData.ModelData_get(UserComparator9.ItemDefinition_modelArchive, var3, 0); // L: 497 - ModelData[] var6 = new ModelData[]{var4, var5}; // L: 498 - var4 = new ModelData(var6, 2); // L: 499 - } - - int var7; - if (this.recolorFrom != null) { // L: 501 - for (var7 = 0; var7 < this.recolorFrom.length; ++var7) { // L: 502 - var4.recolor(this.recolorFrom[var7], this.recolorTo[var7]); // L: 503 + ModelData var5 = ModelData.ModelData_get(VertexNormal.ItemDefinition_modelArchive, var2, 0); + if (var3 != -1) { + ModelData var6 = ModelData.ModelData_get(VertexNormal.ItemDefinition_modelArchive, var3, 0); + if (var4 != -1) { + ModelData var7 = ModelData.ModelData_get(VertexNormal.ItemDefinition_modelArchive, var4, 0); + ModelData[] var8 = new ModelData[]{var5, var6, var7}; + var5 = new ModelData(var8, 3); + } else { + ModelData[] var10 = new ModelData[]{var5, var6}; + var5 = new ModelData(var10, 2); } } - if (this.retextureFrom != null) { // L: 506 - for (var7 = 0; var7 < this.retextureFrom.length; ++var7) { // L: 507 - var4.retexture(this.retextureFrom[var7], this.retextureTo[var7]); // L: 508 + if (!var1 && this.maleOffset != 0) { + var5.changeOffset(0, this.maleOffset, 0); + } + + if (var1 && this.femaleOffset != 0) { + var5.changeOffset(0, this.femaleOffset, 0); + } + + int var9; + if (this.recolorFrom != null) { + for (var9 = 0; var9 < this.recolorFrom.length; ++var9) { + var5.recolor(this.recolorFrom[var9], this.recolorTo[var9]); } } - return var4; // L: 511 + if (this.retextureFrom != null) { + for (var9 = 0; var9 < this.retextureFrom.length; ++var9) { + var5.retexture(this.retextureFrom[var9], this.retextureTo[var9]); + } + } + + return var5; + } + } + + @ObfuscatedName("f") + @ObfuscatedSignature( + descriptor = "(ZB)Z", + garbageValue = "-128" + ) + public final boolean method4660(boolean var1) { + int var2 = this.maleHeadModel; + int var3 = this.maleHeadModel2; + if (var1) { + var2 = this.femaleHeadModel; + var3 = this.femaleHeadModel2; + } + + if (var2 == -1) { + return true; + } else { + boolean var4 = true; + if (!VertexNormal.ItemDefinition_modelArchive.tryLoadFile(var2, 0)) { + var4 = false; + } + + if (var3 != -1 && !VertexNormal.ItemDefinition_modelArchive.tryLoadFile(var3, 0)) { + var4 = false; + } + + return var4; } } @ObfuscatedName("y") @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "2072202585" + descriptor = "(ZI)Les;", + garbageValue = "1268940833" + ) + public final ModelData method4671(boolean var1) { + int var2 = this.maleHeadModel; + int var3 = this.maleHeadModel2; + if (var1) { + var2 = this.femaleHeadModel; + var3 = this.femaleHeadModel2; + } + + if (var2 == -1) { + return null; + } else { + ModelData var4 = ModelData.ModelData_get(VertexNormal.ItemDefinition_modelArchive, var2, 0); + if (var3 != -1) { + ModelData var5 = ModelData.ModelData_get(VertexNormal.ItemDefinition_modelArchive, var3, 0); + ModelData[] var6 = new ModelData[]{var4, var5}; + var4 = new ModelData(var6, 2); + } + + int var7; + if (this.recolorFrom != null) { + for (var7 = 0; var7 < this.recolorFrom.length; ++var7) { + var4.recolor(this.recolorFrom[var7], this.recolorTo[var7]); + } + } + + if (this.retextureFrom != null) { + for (var7 = 0; var7 < this.retextureFrom.length; ++var7) { + var4.retexture(this.retextureFrom[var7], this.retextureTo[var7]); + } + } + + return var4; + } + } + + @ObfuscatedName("r") + @ObfuscatedSignature( + descriptor = "(IIB)I", + garbageValue = "-79" ) @Export("getIntParam") public int getIntParam(int var1, int var2) { - IterableNodeHashTable var4 = this.params; // L: 516 + IterableNodeHashTable var4 = this.params; int var3; - if (var4 == null) { // L: 518 - var3 = var2; // L: 519 + if (var4 == null) { + var3 = var2; } else { - IntegerNode var5 = (IntegerNode)var4.get((long)var1); // L: 522 - if (var5 == null) { // L: 523 - var3 = var2; // L: 524 + IntegerNode var5 = (IntegerNode)var4.get((long)var1); + if (var5 == null) { + var3 = var2; } else { - var3 = var5.integer; // L: 527 + var3 = var5.integer; } } - return var3; // L: 529 + return var3; } - @ObfuscatedName("s") + @ObfuscatedName("q") @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;I)Ljava/lang/String;", - garbageValue = "1152059267" + descriptor = "(ILjava/lang/String;B)Ljava/lang/String;", + garbageValue = "37" ) @Export("getStringParam") public String getStringParam(int var1, String var2) { - return WorldMapSection0.method307(this.params, var1, var2); // L: 533 + IterableNodeHashTable var4 = this.params; + String var3; + if (var4 == null) { + var3 = var2; + } else { + ObjectNode var5 = (ObjectNode)var4.get((long)var1); + if (var5 == null) { + var3 = var2; + } else { + var3 = (String)var5.obj; + } + } + + return var3; } - @ObfuscatedName("j") + @ObfuscatedName("g") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "102" + descriptor = "(S)I", + garbageValue = "32767" ) @Export("getShiftClickIndex") public int getShiftClickIndex() { - if (this.shiftClickIndex != -1 && this.inventoryActions != null) { // L: 537 - if (this.shiftClickIndex >= 0) { // L: 538 - return this.inventoryActions[this.shiftClickIndex] != null ? this.shiftClickIndex * 2047863769 * -1595677591 : -1; + if (this.shiftClickIndex != -1 && this.inventoryActions != null) { + if (this.shiftClickIndex >= 0) { + return this.inventoryActions[this.shiftClickIndex] != null ? this.shiftClickIndex : -1; } else { - return "Drop".equalsIgnoreCase(this.inventoryActions[4]) ? 4 : -1; // L: 539 + return "Drop".equalsIgnoreCase(this.inventoryActions[4]) ? 4 : -1; } } else { return -1; } } - - @ObfuscatedName("jv") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1917575667" - ) - static void method4874() { - for (InterfaceParent var0 = (InterfaceParent)Client.interfaceParents.first(); var0 != null; var0 = (InterfaceParent)Client.interfaceParents.next()) { // L: 11035 - int var1 = var0.group; // L: 11036 - if (ScriptFrame.loadInterface(var1)) { // L: 11037 - boolean var2 = true; // L: 11038 - Widget[] var3 = Widget.Widget_interfaceComponents[var1]; // L: 11039 - - int var4; - for (var4 = 0; var4 < var3.length; ++var4) { // L: 11040 - if (var3[var4] != null) { // L: 11041 - var2 = var3[var4].isIf3; // L: 11042 - break; - } - } - - if (!var2) { // L: 11046 - var4 = (int)var0.key; // L: 11047 - Widget var5 = UserComparator4.getWidget(var4); // L: 11048 - if (var5 != null) { // L: 11049 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var5); - } - } - } - } - - } // L: 11053 } diff --git a/runescape-client/src/main/java/IterableDualNodeQueue.java b/runescape-client/src/main/java/IterableDualNodeQueue.java index 120bed609b..e8a635ee4e 100644 --- a/runescape-client/src/main/java/IterableDualNodeQueue.java +++ b/runescape-client/src/main/java/IterableDualNodeQueue.java @@ -4,132 +4,132 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jt") +@ObfuscatedName("jf") @Implements("IterableDualNodeQueue") public class IterableDualNodeQueue implements Iterable { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lgp;" + descriptor = "Lgj;" ) @Export("sentinel") public DualNode sentinel; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lgp;" + descriptor = "Lgj;" ) @Export("head") DualNode head; public IterableDualNodeQueue() { - this.sentinel = new DualNode(); // L: 7 - this.sentinel.previousDual = this.sentinel; // L: 11 - this.sentinel.nextDual = this.sentinel; // L: 12 - } // L: 13 + this.sentinel = new DualNode(); + this.sentinel.previousDual = this.sentinel; + this.sentinel.nextDual = this.sentinel; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("clear") public void clear() { - while (this.sentinel.previousDual != this.sentinel) { // L: 16 - this.sentinel.previousDual.removeDual(); // L: 17 + while (this.sentinel.previousDual != this.sentinel) { + this.sentinel.previousDual.removeDual(); } - } // L: 19 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lgp;)V" + descriptor = "(Lgj;)V" ) @Export("add") public void add(DualNode var1) { - if (var1.nextDual != null) { // L: 22 + if (var1.nextDual != null) { var1.removeDual(); } - var1.nextDual = this.sentinel.nextDual; // L: 23 - var1.previousDual = this.sentinel; // L: 24 - var1.nextDual.previousDual = var1; // L: 25 - var1.previousDual.nextDual = var1; // L: 26 - } // L: 27 + var1.nextDual = this.sentinel.nextDual; + var1.previousDual = this.sentinel; + var1.nextDual.previousDual = var1; + var1.previousDual.nextDual = var1; + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "()Lgp;" + descriptor = "()Lgj;" ) @Export("removeLast") public DualNode removeLast() { - DualNode var1 = this.sentinel.previousDual; // L: 38 + DualNode var1 = this.sentinel.previousDual; if (var1 == this.sentinel) { - return null; // L: 39 + return null; } else { - var1.removeDual(); // L: 40 - return var1; // L: 41 + var1.removeDual(); + return var1; } } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "()Lgp;" + descriptor = "()Lgj;" ) @Export("last") public DualNode last() { - return this.previousOrLast((DualNode)null); // L: 45 + return this.previousOrLast((DualNode)null); } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(Lgp;)Lgp;" + descriptor = "(Lgj;)Lgj;" ) @Export("previousOrLast") DualNode previousOrLast(DualNode var1) { DualNode var2; - if (var1 == null) { // L: 50 + if (var1 == null) { var2 = this.sentinel.previousDual; } else { - var2 = var1; // L: 51 + var2 = var1; } - if (var2 == this.sentinel) { // L: 52 - this.head = null; // L: 53 - return null; // L: 54 + if (var2 == this.sentinel) { + this.head = null; + return null; } else { - this.head = var2.previousDual; // L: 56 - return var2; // L: 57 + this.head = var2.previousDual; + return var2; } } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "()Lgp;" + descriptor = "()Lgj;" ) @Export("previous") public DualNode previous() { - DualNode var1 = this.head; // L: 61 - if (var1 == this.sentinel) { // L: 62 - this.head = null; // L: 63 - return null; // L: 64 + DualNode var1 = this.head; + if (var1 == this.sentinel) { + this.head = null; + return null; } else { - this.head = var1.previousDual; // L: 66 - return var1; // L: 67 + this.head = var1.previousDual; + return var1; } } public Iterator iterator() { - return new IterableDualNodeQueueIterator(this); // L: 71 + return new IterableDualNodeQueueIterator(this); } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lgp;Lgp;)V" + descriptor = "(Lgj;Lgj;)V" ) @Export("DualNodeDeque_addBefore") public static void DualNodeDeque_addBefore(DualNode var0, DualNode var1) { - if (var0.nextDual != null) { // L: 30 + if (var0.nextDual != null) { var0.removeDual(); } - var0.nextDual = var1; // L: 31 - var0.previousDual = var1.previousDual; // L: 32 - var0.nextDual.previousDual = var0; // L: 33 - var0.previousDual.nextDual = var0; // L: 34 - } // L: 35 + var0.nextDual = var1; + var0.previousDual = var1.previousDual; + var0.nextDual.previousDual = var0; + var0.previousDual.nextDual = var0; + } } diff --git a/runescape-client/src/main/java/IterableDualNodeQueueIterator.java b/runescape-client/src/main/java/IterableDualNodeQueueIterator.java index 4a4c987280..31a7f26ce6 100644 --- a/runescape-client/src/main/java/IterableDualNodeQueueIterator.java +++ b/runescape-client/src/main/java/IterableDualNodeQueueIterator.java @@ -4,61 +4,61 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jb") +@ObfuscatedName("jw") @Implements("IterableDualNodeQueueIterator") public class IterableDualNodeQueueIterator implements Iterator { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Ljt;" + descriptor = "Ljf;" ) @Export("queue") IterableDualNodeQueue queue; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lgp;" + descriptor = "Lgj;" ) @Export("head") DualNode head; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lgp;" + descriptor = "Lgj;" ) @Export("last") DualNode last; @ObfuscatedSignature( - descriptor = "(Ljt;)V" + descriptor = "(Ljf;)V" ) IterableDualNodeQueueIterator(IterableDualNodeQueue var1) { - this.last = null; // L: 9 - this.queue = var1; // L: 12 - this.head = this.queue.sentinel.previousDual; // L: 13 - this.last = null; // L: 14 - } // L: 15 - - public Object next() { - DualNode var1 = this.head; // L: 18 - if (var1 == this.queue.sentinel) { // L: 19 - var1 = null; // L: 20 - this.head = null; // L: 21 - } else { - this.head = var1.previousDual; // L: 23 - } - - this.last = var1; // L: 24 - return var1; // L: 25 - } - - public boolean hasNext() { - return this.queue.sentinel != this.head; // L: 29 + this.last = null; + this.queue = var1; + this.head = this.queue.sentinel.previousDual; + this.last = null; } public void remove() { - if (this.last == null) { // L: 33 + if (this.last == null) { throw new IllegalStateException(); } else { - this.last.removeDual(); // L: 34 - this.last = null; // L: 35 + this.last.removeDual(); + this.last = null; } - } // L: 36 + } + + public Object next() { + DualNode var1 = this.head; + if (var1 == this.queue.sentinel) { + var1 = null; + this.head = null; + } else { + this.head = var1.previousDual; + } + + this.last = var1; + return var1; + } + + public boolean hasNext() { + return this.queue.sentinel != this.head; + } } diff --git a/runescape-client/src/main/java/IterableNodeDeque.java b/runescape-client/src/main/java/IterableNodeDeque.java index da0c2fd853..67f1dbbd3f 100644 --- a/runescape-client/src/main/java/IterableNodeDeque.java +++ b/runescape-client/src/main/java/IterableNodeDeque.java @@ -5,233 +5,233 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("js") +@ObfuscatedName("jn") @Implements("IterableNodeDeque") public class IterableNodeDeque implements Iterable, Collection { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lgn;" + descriptor = "Lgu;" ) @Export("sentinel") Node sentinel; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lgn;" + descriptor = "Lgu;" ) - Node field3555; + Node field3567; public IterableNodeDeque() { - this.sentinel = new Node(); // L: 7 - this.sentinel.previous = this.sentinel; // L: 11 - this.sentinel.next = this.sentinel; // L: 12 - } // L: 13 + this.sentinel = new Node(); + this.sentinel.previous = this.sentinel; + this.sentinel.next = this.sentinel; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("rsClear") public void rsClear() { - while (this.sentinel.previous != this.sentinel) { // L: 16 - this.sentinel.previous.remove(); // L: 17 + while (this.sentinel.previous != this.sentinel) { + this.sentinel.previous.remove(); } - } // L: 19 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lgn;)V" + descriptor = "(Lgu;)V" ) @Export("addFirst") public void addFirst(Node var1) { - if (var1.next != null) { // L: 22 + if (var1.next != null) { var1.remove(); } - var1.next = this.sentinel.next; // L: 23 - var1.previous = this.sentinel; // L: 24 - var1.next.previous = var1; // L: 25 - var1.previous.next = var1; // L: 26 - } // L: 27 + var1.next = this.sentinel.next; + var1.previous = this.sentinel; + var1.next.previous = var1; + var1.previous.next = var1; + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lgn;)V" + descriptor = "(Lgu;)V" ) @Export("addLast") public void addLast(Node var1) { - if (var1.next != null) { // L: 30 + if (var1.next != null) { var1.remove(); } - var1.next = this.sentinel; // L: 31 - var1.previous = this.sentinel.previous; // L: 32 - var1.next.previous = var1; // L: 33 - var1.previous.next = var1; // L: 34 - } // L: 35 - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "()Lgn;" - ) - @Export("last") - public Node last() { - return this.method5006((Node)null); // L: 46 - } - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(Lgn;)Lgn;" - ) - Node method5006(Node var1) { - Node var2; - if (var1 == null) { // L: 51 - var2 = this.sentinel.previous; - } else { - var2 = var1; // L: 52 - } - - if (var2 == this.sentinel) { // L: 53 - this.field3555 = null; // L: 54 - return null; // L: 55 - } else { - this.field3555 = var2.previous; // L: 57 - return var2; // L: 58 - } - } - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "()Lgn;" - ) - @Export("previous") - public Node previous() { - Node var1 = this.field3555; // L: 62 - if (var1 == this.sentinel) { // L: 63 - this.field3555 = null; // L: 64 - return null; // L: 65 - } else { - this.field3555 = var1.previous; // L: 67 - return var1; // L: 68 - } - } - - @ObfuscatedName("c") - int method4989() { - int var1 = 0; // L: 72 - - for (Node var2 = this.sentinel.previous; var2 != this.sentinel; var2 = var2.previous) { // L: 73 74 76 - ++var1; // L: 75 - } - - return var1; // L: 78 - } - - @ObfuscatedName("u") - public boolean method4990() { - return this.sentinel.previous == this.sentinel; // L: 82 + var1.next = this.sentinel; + var1.previous = this.sentinel.previous; + var1.next.previous = var1; + var1.previous.next = var1; } @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "()[Lgn;" + descriptor = "()Lgu;" ) - Node[] method4991() { - Node[] var1 = new Node[this.method4989()]; // L: 86 - int var2 = 0; // L: 87 - - for (Node var3 = this.sentinel.previous; var3 != this.sentinel; var3 = var3.previous) { // L: 88 89 91 - var1[var2++] = var3; // L: 90 - } - - return var1; // L: 93 + @Export("last") + public Node last() { + return this.method4837((Node)null); } - @ObfuscatedName("e") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(Lgn;)Z" + descriptor = "(Lgu;)Lgu;" ) - boolean method4987(Node var1) { - this.addFirst(var1); // L: 127 - return true; // L: 128 - } - - public boolean removeAll(Collection var1) { - throw new RuntimeException(); // L: 144 - } - - public Iterator iterator() { - return new IterableNodeDequeDescendingIterator(this); // L: 97 - } - - public boolean contains(Object var1) { - throw new RuntimeException(); // L: 109 - } - - public Object[] toArray() { - return this.method4991(); // L: 113 - } - - public Object[] toArray(Object[] var1) { - int var2 = 0; // L: 117 - - for (Node var3 = this.sentinel.previous; var3 != this.sentinel; var3 = var3.previous) { // L: 118 119 121 - var1[var2++] = var3; // L: 120 + Node method4837(Node var1) { + Node var2; + if (var1 == null) { + var2 = this.sentinel.previous; + } else { + var2 = var1; } - return var1; // L: 123 + if (var2 == this.sentinel) { + this.field3567 = null; + return null; + } else { + this.field3567 = var2.previous; + return var2; + } } - public boolean remove(Object var1) { - throw new RuntimeException(); // L: 132 + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "()Lgu;" + ) + @Export("previous") + public Node previous() { + Node var1 = this.field3567; + if (var1 == this.sentinel) { + this.field3567 = null; + return null; + } else { + this.field3567 = var1.previous; + return var1; + } } - public boolean addAll(Collection var1) { - throw new RuntimeException(); // L: 140 + @ObfuscatedName("p") + int method4853() { + int var1 = 0; + + for (Node var2 = this.sentinel.previous; var2 != this.sentinel; var2 = var2.previous) { + ++var1; + } + + return var1; } - public void clear() { - this.rsClear(); // L: 152 - } // L: 153 - - public int size() { - return this.method4989(); // L: 101 + @ObfuscatedName("l") + public boolean method4840() { + return this.sentinel.previous == this.sentinel; } - public int hashCode() { - return super.hashCode(); // L: 164 + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "()[Lgu;" + ) + Node[] method4841() { + Node[] var1 = new Node[this.method4853()]; + int var2 = 0; + + for (Node var3 = this.sentinel.previous; var3 != this.sentinel; var3 = var3.previous) { + var1[var2++] = var3; + } + + return var1; + } + + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "(Lgu;)Z" + ) + boolean method4832(Node var1) { + this.addFirst(var1); + return true; } public boolean equals(Object var1) { - return super.equals(var1); // L: 160 + return super.equals(var1); } - public boolean containsAll(Collection var1) { - throw new RuntimeException(); // L: 136 - } - - public boolean add(Object var1) { - return this.method4987((Node)var1); // L: 156 - } - - public boolean retainAll(Collection var1) { - throw new RuntimeException(); // L: 148 + public int size() { + return this.method4853(); } public boolean isEmpty() { - return this.method4990(); // L: 105 + return this.method4840(); } - @ObfuscatedName("m") + public boolean contains(Object var1) { + throw new RuntimeException(); + } + + public Object[] toArray() { + return this.method4841(); + } + + public Object[] toArray(Object[] var1) { + int var2 = 0; + + for (Node var3 = this.sentinel.previous; var3 != this.sentinel; var3 = var3.previous) { + var1[var2++] = var3; + } + + return var1; + } + + public boolean addAll(Collection var1) { + throw new RuntimeException(); + } + + public boolean removeAll(Collection var1) { + throw new RuntimeException(); + } + + public void clear() { + this.rsClear(); + } + + public boolean add(Object var1) { + return this.method4832((Node)var1); + } + + public boolean remove(Object var1) { + throw new RuntimeException(); + } + + public Iterator iterator() { + return new IterableNodeDequeDescendingIterator(this); + } + + public boolean retainAll(Collection var1) { + throw new RuntimeException(); + } + + public int hashCode() { + return super.hashCode(); + } + + public boolean containsAll(Collection var1) { + throw new RuntimeException(); + } + + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lgn;Lgn;)V" + descriptor = "(Lgu;Lgu;)V" ) @Export("IterableNodeDeque_addBefore") public static void IterableNodeDeque_addBefore(Node var0, Node var1) { - if (var0.next != null) { // L: 38 + if (var0.next != null) { var0.remove(); } - var0.next = var1; // L: 39 - var0.previous = var1.previous; // L: 40 - var0.next.previous = var0; // L: 41 - var0.previous.next = var0; // L: 42 - } // L: 43 + var0.next = var1; + var0.previous = var1.previous; + var0.next.previous = var0; + var0.previous.next = var0; + } } diff --git a/runescape-client/src/main/java/IterableNodeDequeDescendingIterator.java b/runescape-client/src/main/java/IterableNodeDequeDescendingIterator.java index e842a8b5f6..27b1366bc6 100644 --- a/runescape-client/src/main/java/IterableNodeDequeDescendingIterator.java +++ b/runescape-client/src/main/java/IterableNodeDequeDescendingIterator.java @@ -4,75 +4,75 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jc") +@ObfuscatedName("js") @Implements("IterableNodeDequeDescendingIterator") public class IterableNodeDequeDescendingIterator implements Iterator { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Ljs;" + descriptor = "Ljn;" ) @Export("deque") IterableNodeDeque deque; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lgn;" + descriptor = "Lgu;" ) - Node field3563; - @ObfuscatedName("l") + Node field3575; + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lgn;" + descriptor = "Lgu;" ) @Export("last") Node last; @ObfuscatedSignature( - descriptor = "(Ljs;)V" + descriptor = "(Ljn;)V" ) IterableNodeDequeDescendingIterator(IterableNodeDeque var1) { - this.last = null; // L: 9 - this.setDeque(var1); // L: 12 - } // L: 13 + this.last = null; + this.setDeque(var1); + } - @ObfuscatedName("e") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "(Ljs;)V" + descriptor = "(Ljn;)V" ) @Export("setDeque") void setDeque(IterableNodeDeque var1) { - this.deque = var1; // L: 16 - this.start(); // L: 17 - } // L: 18 + this.deque = var1; + this.start(); + } - @ObfuscatedName("o") + @ObfuscatedName("u") @Export("start") void start() { - this.field3563 = this.deque != null ? this.deque.sentinel.previous : null; // L: 21 - this.last = null; // L: 22 - } // L: 23 + this.field3575 = this.deque != null ? this.deque.sentinel.previous : null; + this.last = null; + } - public boolean hasNext() { - return this.deque.sentinel != this.field3563; // L: 37 + public Object next() { + Node var1 = this.field3575; + if (var1 == this.deque.sentinel) { + var1 = null; + this.field3575 = null; + } else { + this.field3575 = var1.previous; + } + + this.last = var1; + return var1; } public void remove() { - if (this.last == null) { // L: 41 + if (this.last == null) { throw new IllegalStateException(); } else { - this.last.remove(); // L: 42 - this.last = null; // L: 43 + this.last.remove(); + this.last = null; } - } // L: 44 + } - public Object next() { - Node var1 = this.field3563; // L: 26 - if (var1 == this.deque.sentinel) { // L: 27 - var1 = null; // L: 28 - this.field3563 = null; // L: 29 - } else { - this.field3563 = var1.previous; // L: 31 - } - - this.last = var1; // L: 32 - return var1; // L: 33 + public boolean hasNext() { + return this.deque.sentinel != this.field3575; } } diff --git a/runescape-client/src/main/java/IterableNodeHashTable.java b/runescape-client/src/main/java/IterableNodeHashTable.java index 573e38c3bd..5091f54a20 100644 --- a/runescape-client/src/main/java/IterableNodeHashTable.java +++ b/runescape-client/src/main/java/IterableNodeHashTable.java @@ -4,141 +4,141 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ll") +@ObfuscatedName("la") @Implements("IterableNodeHashTable") public final class IterableNodeHashTable implements Iterable { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("size") int size; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "[Lgn;" + descriptor = "[Lgu;" ) @Export("buckets") Node[] buckets; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lgn;" + descriptor = "Lgu;" ) @Export("currentGet") Node currentGet; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lgn;" + descriptor = "Lgu;" ) @Export("current") Node current; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("index") int index; public IterableNodeHashTable(int var1) { - this.index = 0; // L: 11 - this.size = var1; // L: 14 - this.buckets = new Node[var1]; // L: 15 + this.index = 0; + this.size = var1; + this.buckets = new Node[var1]; - for (int var2 = 0; var2 < var1; ++var2) { // L: 16 - Node var3 = this.buckets[var2] = new Node(); // L: 17 - var3.previous = var3; // L: 18 - var3.next = var3; // L: 19 + for (int var2 = 0; var2 < var1; ++var2) { + Node var3 = this.buckets[var2] = new Node(); + var3.previous = var3; + var3.next = var3; } - } // L: 21 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(J)Lgn;" + descriptor = "(J)Lgu;" ) @Export("get") public Node get(long var1) { - Node var3 = this.buckets[(int)(var1 & (long)(this.size - 1))]; // L: 24 + Node var3 = this.buckets[(int)(var1 & (long)(this.size - 1))]; - for (this.currentGet = var3.previous; var3 != this.currentGet; this.currentGet = this.currentGet.previous) { // L: 25 26 32 - if (this.currentGet.key == var1) { // L: 27 - Node var4 = this.currentGet; // L: 28 - this.currentGet = this.currentGet.previous; // L: 29 - return var4; // L: 30 + for (this.currentGet = var3.previous; var3 != this.currentGet; this.currentGet = this.currentGet.previous) { + if (this.currentGet.key == var1) { + Node var4 = this.currentGet; + this.currentGet = this.currentGet.previous; + return var4; } } - this.currentGet = null; // L: 34 - return null; // L: 35 + this.currentGet = null; + return null; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lgn;J)V" + descriptor = "(Lgu;J)V" ) @Export("put") public void put(Node var1, long var2) { - if (var1.next != null) { // L: 39 + if (var1.next != null) { var1.remove(); } - Node var4 = this.buckets[(int)(var2 & (long)(this.size - 1))]; // L: 40 - var1.next = var4.next; // L: 41 - var1.previous = var4; // L: 42 - var1.next.previous = var1; // L: 43 - var1.previous.next = var1; // L: 44 - var1.key = var2; // L: 45 - } // L: 46 + Node var4 = this.buckets[(int)(var2 & (long)(this.size - 1))]; + var1.next = var4.next; + var1.previous = var4; + var1.next.previous = var1; + var1.previous.next = var1; + var1.key = var2; + } - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("clear") public void clear() { - for (int var1 = 0; var1 < this.size; ++var1) { // L: 49 - Node var2 = this.buckets[var1]; // L: 50 + for (int var1 = 0; var1 < this.size; ++var1) { + Node var2 = this.buckets[var1]; while (true) { - Node var3 = var2.previous; // L: 52 - if (var3 == var2) { // L: 53 + Node var3 = var2.previous; + if (var3 == var2) { break; } - var3.remove(); // L: 54 + var3.remove(); } } - this.currentGet = null; // L: 57 - this.current = null; // L: 58 - } // L: 59 + this.currentGet = null; + this.current = null; + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "()Lgn;" + descriptor = "()Lgu;" ) @Export("first") public Node first() { - this.index = 0; // L: 62 - return this.next(); // L: 63 + this.index = 0; + return this.next(); } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "()Lgn;" + descriptor = "()Lgu;" ) @Export("next") public Node next() { Node var1; - if (this.index > 0 && this.buckets[this.index - 1] != this.current) { // L: 67 - var1 = this.current; // L: 68 - this.current = var1.previous; // L: 69 - return var1; // L: 70 + if (this.index > 0 && this.buckets[this.index - 1] != this.current) { + var1 = this.current; + this.current = var1.previous; + return var1; } else { do { - if (this.index >= this.size) { // L: 72 - return null; // L: 79 + if (this.index >= this.size) { + return null; } - var1 = this.buckets[this.index++].previous; // L: 73 - } while(var1 == this.buckets[this.index - 1]); // L: 74 + var1 = this.buckets[this.index++].previous; + } while(var1 == this.buckets[this.index - 1]); - this.current = var1.previous; // L: 75 - return var1; // L: 76 + this.current = var1.previous; + return var1; } } public Iterator iterator() { - return new IterableNodeHashTableIterator(this); // L: 83 + return new IterableNodeHashTableIterator(this); } } diff --git a/runescape-client/src/main/java/IterableNodeHashTableIterator.java b/runescape-client/src/main/java/IterableNodeHashTableIterator.java index c6161722b8..0f56b45de5 100644 --- a/runescape-client/src/main/java/IterableNodeHashTableIterator.java +++ b/runescape-client/src/main/java/IterableNodeHashTableIterator.java @@ -4,93 +4,89 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ls") +@ObfuscatedName("lb") @Implements("IterableNodeHashTableIterator") public class IterableNodeHashTableIterator implements Iterator { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lll;" + descriptor = "Lla;" ) @Export("hashTable") IterableNodeHashTable hashTable; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lgn;" + descriptor = "Lgu;" ) @Export("head") Node head; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("index") int index; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lgn;" + descriptor = "Lgu;" ) @Export("last") Node last; @ObfuscatedSignature( - descriptor = "(Lll;)V" + descriptor = "(Lla;)V" ) IterableNodeHashTableIterator(IterableNodeHashTable var1) { - this.last = null; // L: 10 - this.hashTable = var1; // L: 13 - this.start(); // L: 14 - } // L: 15 + this.last = null; + this.hashTable = var1; + this.start(); + } - @ObfuscatedName("e") + @ObfuscatedName("z") @Export("start") void start() { - this.head = this.hashTable.buckets[0].previous; // L: 18 - this.index = 1; // L: 19 - this.last = null; // L: 20 - } // L: 21 + this.head = this.hashTable.buckets[0].previous; + this.index = 1; + this.last = null; + } public Object next() { Node var1; - if (this.hashTable.buckets[this.index - 1] != this.head) { // L: 24 - var1 = this.head; // L: 25 - this.head = var1.previous; // L: 26 - this.last = var1; // L: 27 - return var1; // L: 28 + if (this.hashTable.buckets[this.index - 1] != this.head) { + var1 = this.head; + this.head = var1.previous; + this.last = var1; + return var1; } else { do { - if (this.index >= this.hashTable.size) { // L: 30 - return null; // L: 38 + if (this.index >= this.hashTable.size) { + return null; } - var1 = this.hashTable.buckets[this.index++].previous; // L: 31 - } while(var1 == this.hashTable.buckets[this.index - 1]); // L: 32 + var1 = this.hashTable.buckets[this.index++].previous; + } while(var1 == this.hashTable.buckets[this.index - 1]); - this.head = var1.previous; // L: 33 - this.last = var1; // L: 34 - return var1; // L: 35 - } - } - - public boolean hasNext() { - if (this.hashTable.buckets[this.index - 1] != this.head) { // L: 42 - return true; - } else { - while (this.index < this.hashTable.size) { // L: 43 - if (this.hashTable.buckets[this.index++].previous != this.hashTable.buckets[this.index - 1]) { // L: 44 - this.head = this.hashTable.buckets[this.index - 1].previous; // L: 45 - return true; // L: 46 - } - - this.head = this.hashTable.buckets[this.index - 1]; // L: 49 - } - - return false; // L: 52 + this.head = var1.previous; + this.last = var1; + return var1; } } public void remove() { - if (this.last == null) { // L: 56 - throw new IllegalStateException(); + this.last.remove(); + this.last = null; + } + + public boolean hasNext() { + if (this.hashTable.buckets[this.index - 1] != this.head) { + return true; } else { - this.last.remove(); // L: 57 - this.last = null; // L: 58 + while (this.index < this.hashTable.size) { + if (this.hashTable.buckets[this.index++].previous != this.hashTable.buckets[this.index - 1]) { + this.head = this.hashTable.buckets[this.index - 1].previous; + return true; + } + + this.head = this.hashTable.buckets[this.index - 1]; + } + + return false; } - } // L: 59 + } } diff --git a/runescape-client/src/main/java/JagexCache.java b/runescape-client/src/main/java/JagexCache.java index 8a61d5ac9d..ace241535f 100644 --- a/runescape-client/src/main/java/JagexCache.java +++ b/runescape-client/src/main/java/JagexCache.java @@ -5,129 +5,72 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fp") +@ObfuscatedName("fu") @Implements("JagexCache") public class JagexCache { - @ObfuscatedName("l") - @ObfuscatedGetter( - longValue = 8604224012951228081L - ) - public static long field2081; - @ObfuscatedName("z") + @ObfuscatedName("w") + @Export("JagexCache_locationFile") + static File JagexCache_locationFile; + @ObfuscatedName("t") @Export("cacheDir") - static File cacheDir; - @ObfuscatedName("o") + public static File cacheDir; + @ObfuscatedName("p") + @Export("ByteArrayPool_altSizeArrayCounts") + public static int[] ByteArrayPool_altSizeArrayCounts; + @ObfuscatedName("e") @ObfuscatedSignature( descriptor = "Lmz;" ) @Export("JagexCache_randomDat") - static BufferedFile JagexCache_randomDat; - @ObfuscatedName("n") + public static BufferedFile JagexCache_randomDat; + @ObfuscatedName("m") @ObfuscatedSignature( descriptor = "Lmz;" ) @Export("JagexCache_dat2File") public static BufferedFile JagexCache_dat2File; - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedSignature( descriptor = "Lmz;" ) @Export("JagexCache_idx255File") public static BufferedFile JagexCache_idx255File; - @ObfuscatedName("p") - @ObfuscatedSignature( - descriptor = "[Lmz;" + @ObfuscatedName("f") + @ObfuscatedGetter( + intValue = -622132541 ) - @Export("JagexCache_idxFiles") - public static BufferedFile[] JagexCache_idxFiles; + @Export("cacheGamebuild") + public static int cacheGamebuild; static { - JagexCache_randomDat = null; // L: 22 - JagexCache_dat2File = null; // L: 23 - JagexCache_idx255File = null; // L: 24 + JagexCache_randomDat = null; + JagexCache_dat2File = null; + JagexCache_idx255File = null; } - @ObfuscatedName("b") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "2128303847" + descriptor = "(Ljava/lang/CharSequence;B)I", + garbageValue = "-6" ) - @Export("Widget_unpackTargetMask") - public static int Widget_unpackTargetMask(int var0) { - return var0 >> 11 & 63; // L: 13 + @Export("hashString") + public static int hashString(CharSequence var0) { + int var1 = var0.length(); + int var2 = 0; + + for (int var3 = 0; var3 < var1; ++var3) { + var2 = (var2 << 5) - var2 + Varps.charToByteCp1252(var0.charAt(var3)); + } + + return var2; } - @ObfuscatedName("m") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "-50" + descriptor = "(B)Z", + garbageValue = "3" ) - @Export("iLog") - public static int iLog(int var0) { - int var1 = 0; // L: 59 - if (var0 < 0 || var0 >= 65536) { // L: 60 - var0 >>>= 16; // L: 61 - var1 += 16; // L: 62 - } - - if (var0 >= 256) { // L: 64 - var0 >>>= 8; // L: 65 - var1 += 8; // L: 66 - } - - if (var0 >= 16) { // L: 68 - var0 >>>= 4; // L: 69 - var1 += 4; // L: 70 - } - - if (var0 >= 4) { // L: 72 - var0 >>>= 2; // L: 73 - var1 += 2; // L: 74 - } - - if (var0 >= 1) { // L: 76 - var0 >>>= 1; // L: 77 - ++var1; // L: 78 - } - - return var0 + var1; // L: 80 + public static boolean method3566() { + return class206.musicPlayerStatus != 0 ? true : class206.midiPcmStream.isReady(); } - - @ObfuscatedName("hk") - @ObfuscatedSignature( - descriptor = "(Lbz;B)V", - garbageValue = "101" - ) - static final void method3619(PendingSpawn var0) { - long var1 = 0L; // L: 7170 - int var3 = -1; // L: 7171 - int var4 = 0; // L: 7172 - int var5 = 0; // L: 7173 - if (var0.type == 0) { // L: 7174 - var1 = ModeWhere.scene.getBoundaryObjectTag(var0.plane, var0.x, var0.y); - } - - if (var0.type == 1) { // L: 7175 - var1 = ModeWhere.scene.getWallDecorationTag(var0.plane, var0.x, var0.y); - } - - if (var0.type == 2) { // L: 7176 - var1 = ModeWhere.scene.getGameObjectTag(var0.plane, var0.x, var0.y); - } - - if (var0.type == 3) { - var1 = ModeWhere.scene.getFloorDecorationTag(var0.plane, var0.x, var0.y); // L: 7177 - } - - if (var1 != 0L) { // L: 7178 - int var6 = ModeWhere.scene.getObjectFlags(var0.plane, var0.x, var0.y, var1); // L: 7179 - var3 = ObjectSound.Entity_unpackID(var1); // L: 7180 - var4 = var6 & 31; // L: 7181 - var5 = var6 >> 6 & 3; // L: 7182 - } - - var0.objectId = var3; // L: 7184 - var0.field959 = var4; // L: 7185 - var0.field963 = var5; // L: 7186 - } // L: 7187 } diff --git a/runescape-client/src/main/java/KeyHandler.java b/runescape-client/src/main/java/KeyHandler.java index 00ec45cf72..cb6109d1a2 100644 --- a/runescape-client/src/main/java/KeyHandler.java +++ b/runescape-client/src/main/java/KeyHandler.java @@ -7,661 +7,229 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("bp") +@ObfuscatedName("bs") @Implements("KeyHandler") public final class KeyHandler implements KeyListener, FocusListener { - @ObfuscatedName("sg") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lmi;" - ) - @Export("worldMap") - static WorldMap worldMap; - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "Lbp;" + descriptor = "Lbs;" ) @Export("KeyHandler_instance") - public static KeyHandler KeyHandler_instance; - @ObfuscatedName("cx") + static KeyHandler KeyHandler_instance; + @ObfuscatedName("cb") @Export("KeyHandler_pressedKeys") public static boolean[] KeyHandler_pressedKeys; - @ObfuscatedName("cw") - static int[] field435; - @ObfuscatedName("cu") - @ObfuscatedGetter( - intValue = -975081949 - ) - static int field422; + @ObfuscatedName("ch") + static int[] field408; @ObfuscatedName("cq") @ObfuscatedGetter( - intValue = 854592381 + intValue = -1299680861 ) - static int field423; - @ObfuscatedName("cd") - static char[] field424; - @ObfuscatedName("cj") - static int[] field425; - @ObfuscatedName("cm") - public static int[] field430; - @ObfuscatedName("cb") + static int field401; + @ObfuscatedName("cl") @ObfuscatedGetter( - intValue = 99767687 + intValue = -556224925 ) - public static int field427; + static int field410; + @ObfuscatedName("cw") + static char[] field409; + @ObfuscatedName("cp") + static int[] field412; + @ObfuscatedName("cu") + public static int[] field413; @ObfuscatedName("ct") @ObfuscatedGetter( - intValue = 1166391639 + intValue = -753956463 + ) + public static int field414; + @ObfuscatedName("ck") + @ObfuscatedGetter( + intValue = 56497991 ) static int field415; + @ObfuscatedName("cy") + @ObfuscatedGetter( + intValue = -688605193 + ) + static int field419; + @ObfuscatedName("cg") + @ObfuscatedGetter( + intValue = 1389632297 + ) + static int field417; @ObfuscatedName("cv") @ObfuscatedGetter( - intValue = -440762137 - ) - static int field413; - @ObfuscatedName("cz") - @ObfuscatedGetter( - intValue = 1638279281 - ) - static int field428; - @ObfuscatedName("ch") - @ObfuscatedGetter( - intValue = 49570399 + intValue = 1798762127 ) @Export("KeyHandler_idleCycles") static volatile int KeyHandler_idleCycles; - @ObfuscatedName("co") + @ObfuscatedName("cs") @Export("KeyHandler_keyCodes") static int[] KeyHandler_keyCodes; - @ObfuscatedName("do") - @ObfuscatedSignature( - descriptor = "Llv;" - ) - @Export("js5Socket") - static AbstractSocket js5Socket; - @ObfuscatedName("ld") + @ObfuscatedName("hf") @ObfuscatedGetter( - intValue = 1074315087 + intValue = -25501975 ) - @Export("menuWidth") - static int menuWidth; + @Export("cameraY") + static int cameraY; static { - KeyHandler_instance = new KeyHandler(); // L: 13 - KeyHandler_pressedKeys = new boolean[112]; // L: 100 - field435 = new int[128]; // L: 103 - field422 = 0; // L: 104 - field423 = 0; // L: 105 - field424 = new char[128]; // L: 106 - field425 = new int[128]; // L: 107 - field430 = new int[128]; // L: 108 - field427 = 0; // L: 109 - field415 = 0; // L: 110 - field413 = 0; // L: 111 - field428 = 0; // L: 112 - KeyHandler_idleCycles = 0; // L: 113 - KeyHandler_keyCodes = new int[]{-1, -1, -1, -1, -1, -1, -1, -1, 85, 80, 84, -1, 91, -1, -1, -1, 81, 82, 86, -1, -1, -1, -1, -1, -1, -1, -1, 13, -1, -1, -1, -1, 83, 104, 105, 103, 102, 96, 98, 97, 99, -1, -1, -1, -1, -1, -1, -1, 25, 16, 17, 18, 19, 20, 21, 22, 23, 24, -1, -1, -1, -1, -1, -1, -1, 48, 68, 66, 50, 34, 51, 52, 53, 39, 54, 55, 56, 70, 69, 40, 41, 32, 35, 49, 36, 38, 67, 33, 65, 37, 64, -1, -1, -1, -1, -1, 228, 231, 227, 233, 224, 219, 225, 230, 226, 232, 89, 87, -1, 88, 229, 90, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}; // L: 114 + KeyHandler_instance = new KeyHandler(); + KeyHandler_pressedKeys = new boolean[112]; + field408 = new int[128]; + field401 = 0; + field410 = 0; + field409 = new char[128]; + field412 = new int[128]; + field413 = new int[128]; + field414 = 0; + field415 = 0; + field419 = 0; + field417 = 0; + KeyHandler_idleCycles = 0; + KeyHandler_keyCodes = new int[]{-1, -1, -1, -1, -1, -1, -1, -1, 85, 80, 84, -1, 91, -1, -1, -1, 81, 82, 86, -1, -1, -1, -1, -1, -1, -1, -1, 13, -1, -1, -1, -1, 83, 104, 105, 103, 102, 96, 98, 97, 99, -1, -1, -1, -1, -1, -1, -1, 25, 16, 17, 18, 19, 20, 21, 22, 23, 24, -1, -1, -1, -1, -1, -1, -1, 48, 68, 66, 50, 34, 51, 52, 53, 39, 54, 55, 56, 70, 69, 40, 41, 32, 35, 49, 36, 38, 67, 33, 65, 37, 64, -1, -1, -1, -1, -1, 228, 231, 227, 233, 224, 219, 225, 230, 226, 232, 89, 87, -1, 88, 229, 90, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}; } KeyHandler() { - } // L: 116 + } public final synchronized void keyPressed(KeyEvent var1) { - if (KeyHandler_instance != null) { // L: 197 - int var2 = var1.getKeyCode(); // L: 198 - if (var2 >= 0 && var2 < KeyHandler_keyCodes.length) { // L: 199 - var2 = KeyHandler_keyCodes[var2]; // L: 200 - if ((var2 & 128) != 0) { // L: 201 + if (KeyHandler_instance != null) { + int var2 = var1.getKeyCode(); + if (var2 >= 0 && var2 < KeyHandler_keyCodes.length) { + var2 = KeyHandler_keyCodes[var2]; + if ((var2 & 128) != 0) { var2 = -1; } } else { - var2 = -1; // L: 203 + var2 = -1; } - if (field423 >= 0 && var2 >= 0) { // L: 204 - field435[field423] = var2; // L: 205 - field423 = field423 + 1 & 127; // L: 206 - if (field422 == field423) { // L: 207 - field423 = -1; + if (field410 >= 0 && var2 >= 0) { + field408[field410] = var2; + field410 = field410 + 1 & 127; + if (field401 == field410) { + field410 = -1; } } int var3; - if (var2 >= 0) { // L: 209 - var3 = field413 + 1 & 127; // L: 210 - if (var3 != field415) { // L: 211 - field425[field413] = var2; // L: 212 - field424[field413] = 0; // L: 213 - field413 = var3; // L: 214 + if (var2 >= 0) { + var3 = field419 + 1 & 127; + if (var3 != field415) { + field412[field419] = var2; + field409[field419] = 0; + field419 = var3; } } - var3 = var1.getModifiers(); // L: 217 - if ((var3 & 10) != 0 || var2 == 85 || var2 == 10) { // L: 218 - var1.consume(); // L: 219 + var3 = var1.getModifiers(); + if ((var3 & 10) != 0 || var2 == 85 || var2 == 10) { + var1.consume(); } } - } // L: 222 - - public final synchronized void keyReleased(KeyEvent var1) { - if (KeyHandler_instance != null) { // L: 225 - int var2 = var1.getKeyCode(); // L: 226 - if (var2 >= 0 && var2 < KeyHandler_keyCodes.length) { // L: 227 - var2 = KeyHandler_keyCodes[var2] & -129; - } else { - var2 = -1; // L: 228 - } - - if (field423 >= 0 && var2 >= 0) { // L: 229 - field435[field423] = ~var2; // L: 230 - field423 = field423 + 1 & 127; // L: 231 - if (field422 == field423) { // L: 232 - field423 = -1; - } - } - } - - var1.consume(); // L: 235 - } // L: 236 - - public final void keyTyped(KeyEvent var1) { - if (KeyHandler_instance != null) { // L: 239 - char var2 = var1.getKeyChar(); // L: 240 - if (var2 != 0 && var2 != '\uffff') { // L: 241 - boolean var3; - if ((var2 <= 0 || var2 >= 128) && (var2 < 160 || var2 > 255)) { // L: 244 - label53: { - if (var2 != 0) { // L: 248 - char[] var4 = class298.cp1252AsciiExtension; // L: 250 - - for (int var5 = 0; var5 < var4.length; ++var5) { // L: 251 - char var6 = var4[var5]; // L: 252 - if (var2 == var6) { // L: 254 - var3 = true; // L: 255 - break label53; // L: 256 - } - } - } - - var3 = false; // L: 262 - } - } else { - var3 = true; // L: 245 - } - - if (var3) { // L: 264 - int var7 = field413 + 1 & 127; // L: 265 - if (var7 != field415) { // L: 266 - field425[field413] = -1; // L: 267 - field424[field413] = var2; // L: 268 - field413 = var7; // L: 269 - } - } - } - } - - var1.consume(); // L: 274 - } // L: 275 - - public final synchronized void focusLost(FocusEvent var1) { - if (KeyHandler_instance != null) { // L: 280 - field423 = -1; // L: 281 - } - - } // L: 283 + } public final void focusGained(FocusEvent var1) { - } // L: 277 - - @ObfuscatedName("m") - @Export("Entity_unpackSceneX") - public static int Entity_unpackSceneX(long var0) { - return (int)(var0 >>> 14 & 3L); // L: 56 } - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(ILco;ZB)I", - garbageValue = "3" - ) - static int method934(int var0, Script var1, boolean var2) { - int var4 = -1; // L: 548 - Widget var3; - if (var0 >= 2000) { // L: 549 - var0 -= 1000; // L: 550 - var4 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 551 - var3 = UserComparator4.getWidget(var4); // L: 552 - } else { - var3 = var2 ? MouseRecorder.field621 : Interpreter.field1122; // L: 554 + public final synchronized void focusLost(FocusEvent var1) { + if (KeyHandler_instance != null) { + field410 = -1; } - if (var0 == ScriptOpcodes.CC_SETSCROLLPOS) { // L: 555 - MilliClock.Interpreter_intStackSize -= 2; // L: 556 - var3.scrollX = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 557 - if (var3.scrollX > var3.scrollWidth - var3.width) { // L: 558 - var3.scrollX = var3.scrollWidth - var3.width; - } + } - if (var3.scrollX < 0) { // L: 559 - var3.scrollX = 0; - } - - var3.scrollY = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 560 - if (var3.scrollY > var3.scrollHeight - var3.height) { // L: 561 - var3.scrollY = var3.scrollHeight - var3.height; - } - - if (var3.scrollY < 0) { // L: 562 - var3.scrollY = 0; - } - - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 563 - return 1; // L: 564 - } else if (var0 == ScriptOpcodes.CC_SETCOLOUR) { // L: 566 - var3.color = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 567 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 568 - return 1; // L: 569 - } else if (var0 == ScriptOpcodes.CC_SETFILL) { // L: 571 - var3.fill = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 572 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 573 - return 1; // L: 574 - } else if (var0 == ScriptOpcodes.CC_SETTRANS) { // L: 576 - var3.transparencyTop = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 577 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 578 - return 1; // L: 579 - } else if (var0 == ScriptOpcodes.CC_SETLINEWID) { // L: 581 - var3.lineWid = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 582 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 583 - return 1; // L: 584 - } else if (var0 == ScriptOpcodes.CC_SETGRAPHIC) { // L: 586 - var3.spriteId2 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 587 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 588 - return 1; // L: 589 - } else if (var0 == ScriptOpcodes.CC_SET2DANGLE) { // L: 591 - var3.spriteAngle = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 592 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 593 - return 1; // L: 594 - } else if (var0 == ScriptOpcodes.CC_SETTILING) { // L: 596 - var3.spriteTiling = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 597 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 598 - return 1; // L: 599 - } else if (var0 == ScriptOpcodes.CC_SETMODEL) { // L: 601 - var3.modelType = 1; // L: 602 - var3.modelId = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 603 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 604 - return 1; // L: 605 - } else if (var0 == ScriptOpcodes.CC_SETMODELANGLE) { // L: 607 - MilliClock.Interpreter_intStackSize -= 6; // L: 608 - var3.modelOffsetX = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 609 - var3.modelOffsetY = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 610 - var3.modelAngleX = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 2]; // L: 611 - var3.modelAngleY = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 3]; // L: 612 - var3.modelAngleZ = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 4]; // L: 613 - var3.modelZoom = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 5]; // L: 614 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 615 - return 1; // L: 616 - } else { - int var8; - if (var0 == ScriptOpcodes.CC_SETMODELANIM) { // L: 618 - var8 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 619 - if (var8 != var3.sequenceId) { // L: 620 - var3.sequenceId = var8; // L: 621 - var3.modelFrame = 0; // L: 622 - var3.modelFrameCycle = 0; // L: 623 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 624 - } - - return 1; // L: 626 - } else if (var0 == ScriptOpcodes.CC_SETMODELORTHOG) { // L: 628 - var3.modelOrthog = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 629 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 630 - return 1; // L: 631 - } else if (var0 == ScriptOpcodes.CC_SETTEXT) { // L: 633 - String var7 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 634 - if (!var7.equals(var3.text)) { // L: 635 - var3.text = var7; // L: 636 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 637 - } - - return 1; // L: 639 - } else if (var0 == ScriptOpcodes.CC_SETTEXTFONT) { // L: 641 - var3.fontId = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 642 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 643 - return 1; // L: 644 - } else if (var0 == ScriptOpcodes.CC_SETTEXTALIGN) { // L: 646 - MilliClock.Interpreter_intStackSize -= 3; // L: 647 - var3.textXAlignment = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 648 - var3.textYAlignment = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 649 - var3.textLineHeight = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 2]; // L: 650 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 651 - return 1; // L: 652 - } else if (var0 == ScriptOpcodes.CC_SETTEXTSHADOW) { // L: 654 - var3.textShadowed = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 655 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 656 - return 1; // L: 657 - } else if (var0 == ScriptOpcodes.CC_SETOUTLINE) { // L: 659 - var3.outline = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 660 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 661 - return 1; // L: 662 - } else if (var0 == ScriptOpcodes.CC_SETGRAPHICSHADOW) { // L: 664 - var3.spriteShadow = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 665 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 666 - return 1; // L: 667 - } else if (var0 == ScriptOpcodes.CC_SETVFLIP) { // L: 669 - var3.spriteFlipV = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 670 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 671 - return 1; // L: 672 - } else if (var0 == ScriptOpcodes.CC_SETHFLIP) { // L: 674 - var3.spriteFlipH = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 675 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 676 - return 1; // L: 677 - } else if (var0 == ScriptOpcodes.CC_SETSCROLLSIZE) { // L: 679 - MilliClock.Interpreter_intStackSize -= 2; // L: 680 - var3.scrollWidth = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 681 - var3.scrollHeight = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 682 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 683 - if (var4 != -1 && var3.type == 0) { // L: 684 - UserComparator9.revalidateWidgetScroll(Widget.Widget_interfaceComponents[var4 >> 16], var3, false); - } - - return 1; // L: 685 - } else if (var0 == ScriptOpcodes.CC_RESUME_PAUSEBUTTON) { // L: 687 - class171.resumePauseWidget(var3.id, var3.childIndex); // L: 688 - Client.meslayerContinueWidget = var3; // L: 689 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 690 - return 1; // L: 691 - } else if (var0 == 1122) { // L: 693 - var3.spriteId = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 694 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 695 - return 1; // L: 696 - } else if (var0 == ScriptOpcodes.CC_SETFILLCOLOUR) { // L: 698 - var3.color2 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 699 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 700 - return 1; // L: 701 - } else if (var0 == 1124) { // L: 703 - var3.transparencyBot = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 704 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 705 - return 1; // L: 706 - } else if (var0 == ScriptOpcodes.CC_SETFILLMODE) { // L: 708 - var8 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 709 - FillMode var6 = (FillMode)class195.findEnumerated(PacketWriter.FillMode_values(), var8); // L: 710 - if (var6 != null) { // L: 711 - var3.fillMode = var6; // L: 712 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 713 - } - - return 1; // L: 715 + public final synchronized void keyReleased(KeyEvent var1) { + if (KeyHandler_instance != null) { + int var2 = var1.getKeyCode(); + if (var2 >= 0 && var2 < KeyHandler_keyCodes.length) { + var2 = KeyHandler_keyCodes[var2] & -129; } else { - boolean var5; - if (var0 == ScriptOpcodes.CC_SETLINEDIRECTION) { // L: 717 - var5 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 718 - var3.field2627 = var5; // L: 719 - return 1; // L: 720 - } else if (var0 == ScriptOpcodes.CC_SETMODELTRANSPARENT) { // L: 722 - var5 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 723 - var3.modelTransparency = var5; // L: 724 - return 1; // L: 725 - } else { - return 2; // L: 727 + var2 = -1; + } + + if (field410 >= 0 && var2 >= 0) { + field408[field410] = ~var2; + field410 = field410 + 1 & 127; + if (field410 == field401) { + field410 = -1; } } } + + var1.consume(); + } + + public final void keyTyped(KeyEvent var1) { + if (KeyHandler_instance != null) { + char var2 = var1.getKeyChar(); + if (var2 != 0 && var2 != '\uffff' && WorldMapData_0.method247(var2)) { + int var3 = field419 + 1 & 127; + if (var3 != field415) { + field412[field419] = -1; + field409[field419] = var2; + field419 = var3; + } + } + } + + var1.consume(); + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(I[BLlx;I)V", + garbageValue = "-1114556828" + ) + static void method872(int var0, byte[] var1, ArchiveDisk var2) { + ArchiveDiskAction var3 = new ArchiveDiskAction(); + var3.type = 0; + var3.key = (long)var0; + var3.data = var1; + var3.archiveDisk = var2; + synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue) { + ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.addFirst(var3); + } + + synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_lock) { + if (ArchiveDiskActionHandler.field3178 == 0) { + SecureRandomFuture.ArchiveDiskActionHandler_thread = new Thread(new ArchiveDiskActionHandler()); + SecureRandomFuture.ArchiveDiskActionHandler_thread.setDaemon(true); + SecureRandomFuture.ArchiveDiskActionHandler_thread.start(); + SecureRandomFuture.ArchiveDiskActionHandler_thread.setPriority(5); + } + + ArchiveDiskActionHandler.field3178 = 600; + } } - @ObfuscatedName("gk") + @ObfuscatedName("jx") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1840062887" + descriptor = "(IIIIIIIIB)V", + garbageValue = "1" ) - static final void method931() { - Client.field795 = 0; // L: 5380 - int var0 = (PlayerType.localPlayer.x >> 7) + FloorDecoration.baseX; // L: 5381 - int var1 = (PlayerType.localPlayer.y >> 7) + WorldMapData_0.baseY; // L: 5382 - if (var0 >= 3053 && var0 <= 3156 && var1 >= 3056 && var1 <= 3136) { // L: 5383 - Client.field795 = 1; - } - - if (var0 >= 3072 && var0 <= 3118 && var1 >= 9492 && var1 <= 9535) { // L: 5384 - Client.field795 = 1; - } - - if (Client.field795 == 1 && var0 >= 3139 && var0 <= 3199 && var1 >= 3008 && var1 <= 3062) { // L: 5385 - Client.field795 = 0; - } - - } // L: 5386 - - @ObfuscatedName("is") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/String;IIIIZI)V", - garbageValue = "-1824225693" - ) - @Export("insertMenuItem") - static final void insertMenuItem(String var0, String var1, int var2, int var3, int var4, int var5, boolean var6) { - if (!Client.isMenuOpen) { // L: 8938 - if (Client.menuOptionsCount < 500) { // L: 8939 - Client.menuActions[Client.menuOptionsCount] = var0; // L: 8940 - Client.menuTargets[Client.menuOptionsCount] = var1; // L: 8941 - Client.menuOpcodes[Client.menuOptionsCount] = var2; // L: 8942 - Client.menuIdentifiers[Client.menuOptionsCount] = var3; // L: 8943 - Client.menuArguments1[Client.menuOptionsCount] = var4; // L: 8944 - Client.menuArguments2[Client.menuOptionsCount] = var5; // L: 8945 - Client.menuShiftClick[Client.menuOptionsCount] = var6; // L: 8946 - ++Client.menuOptionsCount; // L: 8947 + @Export("drawWidgets") + static final void drawWidgets(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { + if (class41.loadInterface(var0)) { + class200.field2390 = null; + FontName.drawInterface(class9.Widget_interfaceComponents[var0], -1, var1, var2, var3, var4, var5, var6, var7); + if (class200.field2390 != null) { + FontName.drawInterface(class200.field2390, -1412584499, var1, var2, var3, var4, Client.field923, Entity.field1893, var7); + class200.field2390 = null; } - } - } // L: 8949 - - @ObfuscatedName("im") - @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "82006207" - ) - @Export("addSceneMenuOptions") - static final void addSceneMenuOptions(int var0, int var1, int var2, int var3) { - if (Client.isItemSelected == 0 && !Client.isSpellSelected) { // L: 8960 - ModelData0.insertMenuItemNoShift("Walk here", "", 23, 0, var0 - var2, var1 - var3); // L: 8961 - } - - long var4 = -1L; // L: 8964 - long var6 = -1L; // L: 8965 - int var8 = 0; - - while (true) { - int var10 = ViewportMouse.ViewportMouse_entityCount; // L: 8970 - if (var8 >= var10) { // L: 8972 - if (var4 != -1L) { // L: 9114 - var8 = ScriptFrame.method1228(var4); // L: 9115 - int var9 = (int)(var4 >>> 7 & 127L); // L: 9118 - Player var11 = Client.players[Client.combatTargetPlayerIndex]; // L: 9121 - UserComparator3.addPlayerToMenu(var11, Client.combatTargetPlayerIndex, var8, var9); // L: 9122 - } - - return; // L: 9124 - } - - long var28 = ViewportMouse.ViewportMouse_entityTags[var8]; // L: 8975 - if (var28 != var6) { // L: 8978 - label333: { - var6 = var28; // L: 8979 - int var15 = ScriptFrame.method1228(ViewportMouse.ViewportMouse_entityTags[var8]); // L: 8982 - int var16 = var15; // L: 8984 - long var19 = ViewportMouse.ViewportMouse_entityTags[var8]; // L: 8988 - int var18 = (int)(var19 >>> 7 & 127L); // L: 8990 - var18 = var18; // L: 8994 - int var30 = Entity_unpackSceneX(ViewportMouse.ViewportMouse_entityTags[var8]); // L: 8997 - int var21 = StructDefinition.getEntityIdUnderMouse(var8); // L: 9000 - if (var30 == 2 && ModeWhere.scene.getObjectFlags(GrandExchangeOfferUnitPriceComparator.Client_plane, var15, var18, var28) >= 0) { // L: 9001 9002 - ObjectDefinition var22 = ScriptEvent.getObjectDefinition(var21); // L: 9003 - if (var22.transforms != null) { // L: 9004 - var22 = var22.transform(); - } - - if (var22 == null) { // L: 9005 - break label333; - } - - if (Client.isItemSelected == 1) { // L: 9006 - ModelData0.insertMenuItemNoShift("Use", Client.selectedItemName + " " + "->" + " " + Client.colorStartTag(65535) + var22.name, 1, var21, var15, var18); // L: 9007 - } else if (Client.isSpellSelected) { // L: 9010 - if ((class105.selectedSpellFlags & 4) == 4) { // L: 9011 - ModelData0.insertMenuItemNoShift(Client.selectedSpellActionName, Client.selectedSpellName + " " + "->" + " " + Client.colorStartTag(65535) + var22.name, 2, var21, var15, var18); // L: 9012 - } - } else { - String[] var23 = var22.actions; // L: 9017 - if (var23 != null) { // L: 9018 - for (int var24 = 4; var24 >= 0; --var24) { // L: 9019 - if (var23[var24] != null) { // L: 9020 - short var25 = 0; // L: 9021 - if (var24 == 0) { // L: 9022 - var25 = 3; - } - - if (var24 == 1) { // L: 9023 - var25 = 4; - } - - if (var24 == 2) { // L: 9024 - var25 = 5; - } - - if (var24 == 3) { // L: 9025 - var25 = 6; - } - - if (var24 == 4) { // L: 9026 - var25 = 1001; - } - - ModelData0.insertMenuItemNoShift(var23[var24], Client.colorStartTag(65535) + var22.name, var25, var21, var16, var18); // L: 9027 - } - } - } - - ModelData0.insertMenuItemNoShift("Examine", Client.colorStartTag(65535) + var22.name, 1002, var22.id, var16, var18); // L: 9032 - } - } - - Player var26; - int var31; - NPC var32; - int var39; - int[] var40; - if (var30 == 1) { // L: 9037 - NPC var35 = Client.npcs[var21]; // L: 9038 - if (var35 == null) { // L: 9039 - break label333; - } - - if (var35.definition.size == 1 && (var35.x & 127) == 64 && (var35.y & 127) == 64) { // L: 9040 - for (var31 = 0; var31 < Client.npcCount; ++var31) { // L: 9041 - var32 = Client.npcs[Client.npcIndices[var31]]; // L: 9042 - if (var32 != null && var35 != var32 && var32.definition.size == 1 && var32.x == var35.x && var35.y == var32.y) { // L: 9043 - class25.addNpcToMenu(var32.definition, Client.npcIndices[var31], var16, var18); - } - } - - var31 = Players.Players_count; // L: 9045 - var40 = Players.Players_indices; // L: 9046 - - for (var39 = 0; var39 < var31; ++var39) { // L: 9047 - var26 = Client.players[var40[var39]]; // L: 9048 - if (var26 != null && var35.x == var26.x && var26.y == var35.y) { // L: 9049 - UserComparator3.addPlayerToMenu(var26, var40[var39], var16, var18); - } - } - } - - class25.addNpcToMenu(var35.definition, var21, var16, var18); // L: 9052 - } - - if (var30 == 0) { // L: 9054 - Player var36 = Client.players[var21]; // L: 9055 - if (var36 == null) { // L: 9056 - break label333; - } - - if ((var36.x & 127) == 64 && (var36.y & 127) == 64) { // L: 9057 - for (var31 = 0; var31 < Client.npcCount; ++var31) { // L: 9058 - var32 = Client.npcs[Client.npcIndices[var31]]; // L: 9059 - if (var32 != null && var32.definition.size == 1 && var36.x == var32.x && var36.y == var32.y) { // L: 9060 - class25.addNpcToMenu(var32.definition, Client.npcIndices[var31], var16, var18); - } - } - - var31 = Players.Players_count; // L: 9062 - var40 = Players.Players_indices; // L: 9063 - - for (var39 = 0; var39 < var31; ++var39) { // L: 9064 - var26 = Client.players[var40[var39]]; // L: 9065 - if (var26 != null && var26 != var36 && var36.x == var26.x && var36.y == var26.y) { // L: 9066 - UserComparator3.addPlayerToMenu(var26, var40[var39], var16, var18); - } - } - } - - if (var21 != Client.combatTargetPlayerIndex) { // L: 9069 - UserComparator3.addPlayerToMenu(var36, var21, var16, var18); - } else { - var4 = var28; // L: 9070 - } - } - - if (var30 == 3) { // L: 9072 - NodeDeque var38 = Client.groundItems[GrandExchangeOfferUnitPriceComparator.Client_plane][var16][var18]; // L: 9073 - if (var38 != null) { // L: 9074 - for (TileItem var37 = (TileItem)var38.first(); var37 != null; var37 = (TileItem)var38.next()) { // L: 9075 9076 9109 - ItemDefinition var41 = AbstractWorldMapData.ItemDefinition_get(var37.id); // L: 9077 - if (Client.isItemSelected == 1) { // L: 9078 - ModelData0.insertMenuItemNoShift("Use", Client.selectedItemName + " " + "->" + " " + Client.colorStartTag(16748608) + var41.name, 16, var37.id, var16, var18); // L: 9079 - } else if (Client.isSpellSelected) { // L: 9082 - if ((class105.selectedSpellFlags & 1) == 1) { // L: 9083 - ModelData0.insertMenuItemNoShift(Client.selectedSpellActionName, Client.selectedSpellName + " " + "->" + " " + Client.colorStartTag(16748608) + var41.name, 17, var37.id, var16, var18); // L: 9084 - } - } else { - String[] var33 = var41.groundActions; // L: 9089 - - for (int var34 = 4; var34 >= 0; --var34) { // L: 9090 - if (var33 != null && var33[var34] != null) { // L: 9091 - byte var27 = 0; // L: 9092 - if (var34 == 0) { // L: 9093 - var27 = 18; - } - - if (var34 == 1) { // L: 9094 - var27 = 19; - } - - if (var34 == 2) { // L: 9095 - var27 = 20; - } - - if (var34 == 3) { // L: 9096 - var27 = 21; - } - - if (var34 == 4) { // L: 9097 - var27 = 22; - } - - ModelData0.insertMenuItemNoShift(var33[var34], Client.colorStartTag(16748608) + var41.name, var27, var37.id, var16, var18); // L: 9098 - } else if (var34 == 2) { // L: 9101 - ModelData0.insertMenuItemNoShift("Take", Client.colorStartTag(16748608) + var41.name, 20, var37.id, var16, var18); // L: 9102 - } - } - - ModelData0.insertMenuItemNoShift("Examine", Client.colorStartTag(16748608) + var41.name, 1004, var37.id, var16, var18); // L: 9106 - } - } - } - } + } else { + if (var7 != -1) { + Client.field901[var7] = true; + } else { + for (int var8 = 0; var8 < 100; ++var8) { + Client.field901[var8] = true; } } - ++var8; // L: 8966 } } } diff --git a/runescape-client/src/main/java/KitDefinition.java b/runescape-client/src/main/java/KitDefinition.java index 6ee49a7827..f7113f1899 100644 --- a/runescape-client/src/main/java/KitDefinition.java +++ b/runescape-client/src/main/java/KitDefinition.java @@ -4,318 +4,276 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ii") +@ObfuscatedName("if") @Implements("KitDefinition") public class KitDefinition extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("oz") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lfi;" + ) + @Export("mouseWheel") + static MouseWheel mouseWheel; + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "Lib;" ) @Export("KitDefinition_archive") - static AbstractArchive KitDefinition_archive; - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "Liw;" - ) - @Export("KitDefinition_modelsArchive") - static AbstractArchive KitDefinition_modelsArchive; - @ObfuscatedName("l") + public static AbstractArchive KitDefinition_archive; + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -609176759 + intValue = 1665100339 ) @Export("KitDefinition_fileCount") public static int KitDefinition_fileCount; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("KitDefinition_cached") - public static EvictingDualNodeHashTable KitDefinition_cached; - @ObfuscatedName("ed") + static EvictingDualNodeHashTable KitDefinition_cached; + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 1533008419 - ) - static int field3297; - @ObfuscatedName("z") - @ObfuscatedGetter( - intValue = 1729249671 + intValue = 240118187 ) @Export("bodypartID") public int bodypartID; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("models2") int[] models2; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("recolorFrom") short[] recolorFrom; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("recolorTo") short[] recolorTo; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("retextureFrom") short[] retextureFrom; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("retextureTo") short[] retextureTo; - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("models") int[] models; - @ObfuscatedName("o") + @ObfuscatedName("e") @Export("nonSelectable") public boolean nonSelectable; static { - KitDefinition_cached = new EvictingDualNodeHashTable(64); // L: 14 + KitDefinition_cached = new EvictingDualNodeHashTable(64); } KitDefinition() { - this.bodypartID = -1; // L: 15 - this.models = new int[]{-1, -1, -1, -1, -1}; // L: 21 - this.nonSelectable = false; // L: 22 - } // L: 24 + this.bodypartID = -1; + this.models = new int[]{-1, -1, -1, -1, -1}; + this.nonSelectable = false; + } - @ObfuscatedName("l") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-902223111" + descriptor = "(Lkj;S)V", + garbageValue = "24464" ) @Export("decode") void decode(Buffer var1) { while (true) { - int var2 = var1.readUnsignedByte(); // L: 44 - if (var2 == 0) { // L: 45 - return; // L: 48 + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; } - this.decodeNext(var1, var2); // L: 46 + this.decodeNext(var1, var2); } } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkb;IB)V", - garbageValue = "101" + descriptor = "(Lkj;IB)V", + garbageValue = "-62" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { - if (var2 == 1) { // L: 51 + if (var2 == 1) { this.bodypartID = var1.readUnsignedByte(); } else { int var3; int var4; - if (var2 == 2) { // L: 52 - var3 = var1.readUnsignedByte(); // L: 53 - this.models2 = new int[var3]; // L: 54 + if (var2 == 2) { + var3 = var1.readUnsignedByte(); + this.models2 = new int[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 55 + for (var4 = 0; var4 < var3; ++var4) { this.models2[var4] = var1.readUnsignedShort(); } - } else if (var2 == 3) { // L: 57 + } else if (var2 == 3) { this.nonSelectable = true; - } else if (var2 == 40) { // L: 58 - var3 = var1.readUnsignedByte(); // L: 59 - this.recolorFrom = new short[var3]; // L: 60 - this.recolorTo = new short[var3]; // L: 61 + } else if (var2 == 40) { + var3 = var1.readUnsignedByte(); + this.recolorFrom = new short[var3]; + this.recolorTo = new short[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 62 - this.recolorFrom[var4] = (short)var1.readUnsignedShort(); // L: 63 - this.recolorTo[var4] = (short)var1.readUnsignedShort(); // L: 64 + for (var4 = 0; var4 < var3; ++var4) { + this.recolorFrom[var4] = (short)var1.readUnsignedShort(); + this.recolorTo[var4] = (short)var1.readUnsignedShort(); } - } else if (var2 == 41) { // L: 67 - var3 = var1.readUnsignedByte(); // L: 68 - this.retextureFrom = new short[var3]; // L: 69 - this.retextureTo = new short[var3]; // L: 70 + } else if (var2 == 41) { + var3 = var1.readUnsignedByte(); + this.retextureFrom = new short[var3]; + this.retextureTo = new short[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 71 - this.retextureFrom[var4] = (short)var1.readUnsignedShort(); // L: 72 - this.retextureTo[var4] = (short)var1.readUnsignedShort(); // L: 73 + for (var4 = 0; var4 < var3; ++var4) { + this.retextureFrom[var4] = (short)var1.readUnsignedShort(); + this.retextureTo[var4] = (short)var1.readUnsignedShort(); } - } else if (var2 >= 60 && var2 < 70) { // L: 76 + } else if (var2 >= 60 && var2 < 70) { this.models[var2 - 60] = var1.readUnsignedShort(); } } - } // L: 78 + } - @ObfuscatedName("z") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "1495290745" + garbageValue = "-1129169926" ) @Export("ready") public boolean ready() { - if (this.models2 == null) { // L: 81 + if (this.models2 == null) { return true; } else { - boolean var1 = true; // L: 82 + boolean var1 = true; - for (int var2 = 0; var2 < this.models2.length; ++var2) { // L: 83 - if (!KitDefinition_modelsArchive.tryLoadFile(this.models2[var2], 0)) { + for (int var2 = 0; var2 < this.models2.length; ++var2) { + if (!class227.KitDefinition_modelsArchive.tryLoadFile(this.models2[var2], 0)) { var1 = false; } } - return var1; // L: 84 + return var1; } } - @ObfuscatedName("q") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(B)Len;", - garbageValue = "-99" + descriptor = "(I)Les;", + garbageValue = "-1617446869" ) @Export("getModelData") public ModelData getModelData() { - if (this.models2 == null) { // L: 88 + if (this.models2 == null) { return null; } else { - ModelData[] var1 = new ModelData[this.models2.length]; // L: 89 + ModelData[] var1 = new ModelData[this.models2.length]; - for (int var2 = 0; var2 < this.models2.length; ++var2) { // L: 90 - var1[var2] = ModelData.ModelData_get(KitDefinition_modelsArchive, this.models2[var2], 0); + for (int var2 = 0; var2 < this.models2.length; ++var2) { + var1[var2] = ModelData.ModelData_get(class227.KitDefinition_modelsArchive, this.models2[var2], 0); } ModelData var4; - if (var1.length == 1) { // L: 92 + if (var1.length == 1) { var4 = var1[0]; } else { - var4 = new ModelData(var1, var1.length); // L: 93 + var4 = new ModelData(var1, var1.length); } int var3; - if (this.recolorFrom != null) { // L: 94 - for (var3 = 0; var3 < this.recolorFrom.length; ++var3) { // L: 95 - var4.recolor(this.recolorFrom[var3], this.recolorTo[var3]); // L: 96 + if (this.recolorFrom != null) { + for (var3 = 0; var3 < this.recolorFrom.length; ++var3) { + var4.recolor(this.recolorFrom[var3], this.recolorTo[var3]); } } - if (this.retextureFrom != null) { // L: 99 - for (var3 = 0; var3 < this.retextureFrom.length; ++var3) { // L: 100 - var4.retexture(this.retextureFrom[var3], this.retextureTo[var3]); // L: 101 + if (this.retextureFrom != null) { + for (var3 = 0; var3 < this.retextureFrom.length; ++var3) { + var4.retexture(this.retextureFrom[var3], this.retextureTo[var3]); } } - return var4; // L: 104 + return var4; } } - @ObfuscatedName("k") + @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-1549480832" + garbageValue = "-734430766" ) - public boolean method4620() { - boolean var1 = true; // L: 108 + public boolean method4488() { + boolean var1 = true; - for (int var2 = 0; var2 < 5; ++var2) { // L: 109 - if (this.models[var2] != -1 && !KitDefinition_modelsArchive.tryLoadFile(this.models[var2], 0)) { // L: 110 + for (int var2 = 0; var2 < 5; ++var2) { + if (this.models[var2] != -1 && !class227.KitDefinition_modelsArchive.tryLoadFile(this.models[var2], 0)) { var1 = false; } } - return var1; // L: 112 + return var1; } - @ObfuscatedName("c") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(I)Len;", - garbageValue = "1284292663" + descriptor = "(I)Les;", + garbageValue = "148590883" ) @Export("getKitDefinitionModels") public ModelData getKitDefinitionModels() { - ModelData[] var1 = new ModelData[5]; // L: 116 - int var2 = 0; // L: 117 + ModelData[] var1 = new ModelData[5]; + int var2 = 0; - for (int var3 = 0; var3 < 5; ++var3) { // L: 118 - if (this.models[var3] != -1) { // L: 119 - var1[var2++] = ModelData.ModelData_get(KitDefinition_modelsArchive, this.models[var3], 0); + for (int var3 = 0; var3 < 5; ++var3) { + if (this.models[var3] != -1) { + var1[var2++] = ModelData.ModelData_get(class227.KitDefinition_modelsArchive, this.models[var3], 0); } } - ModelData var5 = new ModelData(var1, var2); // L: 121 + ModelData var5 = new ModelData(var1, var2); int var4; - if (this.recolorFrom != null) { // L: 122 - for (var4 = 0; var4 < this.recolorFrom.length; ++var4) { // L: 123 - var5.recolor(this.recolorFrom[var4], this.recolorTo[var4]); // L: 124 + if (this.recolorFrom != null) { + for (var4 = 0; var4 < this.recolorFrom.length; ++var4) { + var5.recolor(this.recolorFrom[var4], this.recolorTo[var4]); } } - if (this.retextureFrom != null) { // L: 127 - for (var4 = 0; var4 < this.retextureFrom.length; ++var4) { // L: 128 - var5.retexture(this.retextureFrom[var4], this.retextureTo[var4]); // L: 129 + if (this.retextureFrom != null) { + for (var4 = 0; var4 < this.retextureFrom.length; ++var4) { + var5.retexture(this.retextureFrom[var4], this.retextureTo[var4]); } } - return var5; // L: 132 + return var5; } - @ObfuscatedName("fo") - @ObfuscatedSignature( - descriptor = "(IIII)V", - garbageValue = "2143746786" - ) - @Export("queueSoundEffect") - static void queueSoundEffect(int var0, int var1, int var2) { - if (Client.soundEffectVolume != 0 && var1 != 0 && Client.soundEffectCount < 50) { // L: 3574 - Client.soundEffectIds[Client.soundEffectCount] = var0; // L: 3575 - Client.queuedSoundEffectLoops[Client.soundEffectCount] = var1; // L: 3576 - Client.queuedSoundEffectDelays[Client.soundEffectCount] = var2; // L: 3577 - Client.soundEffects[Client.soundEffectCount] = null; // L: 3578 - Client.soundLocations[Client.soundEffectCount] = 0; // L: 3579 - ++Client.soundEffectCount; // L: 3580 - } - - } // L: 3582 - - @ObfuscatedName("hx") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "1433287432" + garbageValue = "-1929348115" ) - static void method4634(int var0, int var1) { - int var2 = ReflectionCheck.fontBold12.stringWidth("Choose Option"); // L: 7895 - - int var3; - for (var3 = 0; var3 < Client.menuOptionsCount; ++var3) { // L: 7896 - Font var7 = ReflectionCheck.fontBold12; // L: 7897 - String var8; - if (var3 < 0) { // L: 7900 - var8 = ""; // L: 7901 - } else if (Client.menuTargets[var3].length() > 0) { // L: 7904 - var8 = Client.menuActions[var3] + " " + Client.menuTargets[var3]; - } else { - var8 = Client.menuActions[var3]; // L: 7905 + public static void method4491(int var0, int var1) { + VarbitDefinition var3 = (VarbitDefinition)VarbitDefinition.VarbitDefinition_cached.get((long)var0); + VarbitDefinition var2; + if (var3 != null) { + var2 = var3; + } else { + byte[] var4 = VarbitDefinition.VarbitDefinition_archive.takeFile(14, var0); + var3 = new VarbitDefinition(); + if (var4 != null) { + var3.decode(new Buffer(var4)); } - int var6 = var7.stringWidth(var8); // L: 7907 - if (var6 > var2) { // L: 7908 - var2 = var6; - } + VarbitDefinition.VarbitDefinition_cached.put(var3, (long)var0); + var2 = var3; } - var2 += 8; // L: 7910 - var3 = Client.menuOptionsCount * 15 + 22; // L: 7911 - int var4 = var0 - var2 / 2; // L: 7912 - if (var4 + var2 > ItemContainer.canvasWidth) { // L: 7913 - var4 = ItemContainer.canvasWidth - var2; + int var8 = var2.baseVar; + int var5 = var2.startBit; + int var6 = var2.endBit; + int var7 = Varps.Varps_masks[var6 - var5]; + if (var1 < 0 || var1 > var7) { + var1 = 0; } - if (var4 < 0) { // L: 7914 - var4 = 0; - } - - int var5 = var1; // L: 7915 - if (var1 + var3 > HealthBar.canvasHeight) { // L: 7916 - var5 = HealthBar.canvasHeight - var3; - } - - if (var5 < 0) { // L: 7917 - var5 = 0; - } - - Coord.menuX = var4; // L: 7918 - WorldMapArea.menuY = var5; // L: 7919 - KeyHandler.menuWidth = var2; // L: 7920 - ServerPacket.menuHeight = Client.menuOptionsCount * 15 + 22; // L: 7921 - } // L: 7922 + var7 <<= var5; + Varps.Varps_main[var8] = Varps.Varps_main[var8] & ~var7 | var1 << var5 & var7; + } } diff --git a/runescape-client/src/main/java/Language.java b/runescape-client/src/main/java/Language.java index a2c3d10457..d605721315 100644 --- a/runescape-client/src/main/java/Language.java +++ b/runescape-client/src/main/java/Language.java @@ -6,306 +6,299 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("gb") +@ObfuscatedName("gi") @Implements("Language") public class Language implements Enumerated { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lgb;" + descriptor = "Lgi;" ) @Export("Language_EN") public static final Language Language_EN; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lgb;" + descriptor = "Lgi;" ) @Export("Language_DE") static final Language Language_DE; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lgb;" + descriptor = "Lgi;" ) @Export("Language_FR") public static final Language Language_FR; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lgb;" + descriptor = "Lgi;" ) @Export("Language_PT") static final Language Language_PT; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lgb;" + descriptor = "Lgi;" ) @Export("Language_NL") static final Language Language_NL; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lgb;" + descriptor = "Lgi;" ) @Export("Language_ES") public static final Language Language_ES; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Lgb;" + descriptor = "Lgi;" ) @Export("Language_ES_MX") static final Language Language_ES_MX; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "[Lgb;" + descriptor = "[Lgi;" ) @Export("Language_valuesOrdered") static final Language[] Language_valuesOrdered; - @ObfuscatedName("c") - final String field2386; - @ObfuscatedName("u") + @ObfuscatedName("p") + final String field2380; + @ObfuscatedName("l") @Export("language") final String language; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = 311704961 + intValue = 1680963867 ) @Export("id") final int id; static { - Language_EN = new Language("EN", "en", "English", ModeWhere.field2400, 0, "GB"); // L: 10 - Language_DE = new Language("DE", "de", "German", ModeWhere.field2400, 1, "DE"); // L: 11 - Language_FR = new Language("FR", "fr", "French", ModeWhere.field2400, 2, "FR"); // L: 12 - Language_PT = new Language("PT", "pt", "Portuguese", ModeWhere.field2400, 3, "BR"); // L: 13 - Language_NL = new Language("NL", "nl", "Dutch", ModeWhere.field2398, 4, "NL"); // L: 14 - Language_ES = new Language("ES", "es", "Spanish", ModeWhere.field2398, 5, "ES"); // L: 15 - Language_ES_MX = new Language("ES_MX", "es-mx", "Spanish (Latin American)", ModeWhere.field2400, 6, "MX"); // L: 16 - Language[] var0 = new Language[]{Language_ES_MX, Language_PT, Language_FR, Language_EN, Language_NL, Language_ES, Language_DE}; // L: 25 - Language_valuesOrdered = new Language[var0.length]; // L: 28 - Language[] var2 = var0; // L: 30 + Language_EN = new Language("EN", "en", "English", ModeWhere.field2402, 0, "GB"); + Language_DE = new Language("DE", "de", "German", ModeWhere.field2402, 1, "DE"); + Language_FR = new Language("FR", "fr", "French", ModeWhere.field2402, 2, "FR"); + Language_PT = new Language("PT", "pt", "Portuguese", ModeWhere.field2402, 3, "BR"); + Language_NL = new Language("NL", "nl", "Dutch", ModeWhere.field2397, 4, "NL"); + Language_ES = new Language("ES", "es", "Spanish", ModeWhere.field2397, 5, "ES"); + Language_ES_MX = new Language("ES_MX", "es-mx", "Spanish (Latin American)", ModeWhere.field2402, 6, "MX"); + Language[] var0 = method3708(); + Language_valuesOrdered = new Language[var0.length]; + Language[] var1 = var0; - for (int var3 = 0; var3 < var2.length; ++var3) { // L: 31 - Language var4 = var2[var3]; // L: 32 - if (Language_valuesOrdered[var4.id] != null) { // L: 34 - throw new IllegalStateException(); // L: 35 + for (int var2 = 0; var2 < var1.length; ++var2) { + Language var3 = var1[var2]; + if (Language_valuesOrdered[var3.id] != null) { + throw new IllegalStateException(); } - Language_valuesOrdered[var4.id] = var4; // L: 37 + Language_valuesOrdered[var3.id] = var3; } - } // L: 41 + } @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lgc;ILjava/lang/String;)V" + descriptor = "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lge;ILjava/lang/String;)V" ) Language(String var1, String var2, String var3, ModeWhere var4, int var5, String var6) { - this.field2386 = var1; // L: 44 - this.language = var2; // L: 45 - this.id = var5; // L: 46 - if (var6 != null) { // L: 47 - new Locale(var2.substring(0, 2), var6); // L: 48 + this.field2380 = var1; + this.language = var2; + this.id = var5; + if (var6 != null) { + new Locale(var2.substring(0, 2), var6); } else { - new Locale(var2.substring(0, 2)); // L: 51 + new Locale(var2.substring(0, 2)); } - } // L: 53 + } - @ObfuscatedName("f") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(I)Ljava/lang/String;", - garbageValue = "-1347438678" + garbageValue = "379304040" ) @Export("getLanguage") String getLanguage() { - return this.language; // L: 56 + return this.language; } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "23" + descriptor = "(I)I", + garbageValue = "-275768542" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.id; // L: 60 + return this.id; } public String toString() { - return this.getLanguage().toLowerCase(Locale.ENGLISH); // L: 69 + return this.getLanguage().toLowerCase(Locale.ENGLISH); } - @ObfuscatedName("b") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(IB)Lgb;", - garbageValue = "1" + descriptor = "(I)[Lgi;", + garbageValue = "-1061791428" ) - public static Language method3800(int var0) { - return var0 >= 0 && var0 < Language_valuesOrdered.length ? Language_valuesOrdered[var0] : null; // L: 64 65 + static Language[] method3708() { + return new Language[]{Language_PT, Language_NL, Language_ES, Language_DE, Language_EN, Language_FR, Language_ES_MX}; } - @ObfuscatedName("o") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "2079407888" + descriptor = "(IB)Lgi;", + garbageValue = "-1" ) - static int method3802(int var0, Script var1, boolean var2) { - Widget var3; - if (var0 >= 2000) { // L: 945 - var0 -= 1000; // L: 946 - var3 = UserComparator4.getWidget(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 947 - } else { - var3 = var2 ? MouseRecorder.field621 : Interpreter.field1122; // L: 949 + public static Language method3701(int var0) { + return var0 >= 0 && var0 < Language_valuesOrdered.length ? Language_valuesOrdered[var0] : null; + } + + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "684258970" + ) + @Export("clearItemContainer") + static void clearItemContainer(int var0) { + ItemContainer var1 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); + if (var1 != null) { + for (int var2 = 0; var2 < var1.ids.length; ++var2) { + var1.ids[var2] = -1; + var1.quantities[var2] = 0; + } + } + } - String var4 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 950 - int[] var5 = null; // L: 951 - if (var4.length() > 0 && var4.charAt(var4.length() - 1) == 'Y') { // L: 952 - int var6 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 953 - if (var6 > 0) { // L: 954 - for (var5 = new int[var6]; var6-- > 0; var5[var6] = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]) { // L: 955 956 + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "(ILcs;ZB)I", + garbageValue = "59" + ) + static int method3709(int var0, Script var1, boolean var2) { + if (var0 == ScriptOpcodes.CLIENTCLOCK) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.cycle; + return 1; + } else { + int var3; + int var4; + if (var0 == ScriptOpcodes.INV_GETOBJ) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = class60.method942(var3, var4); + return 1; + } else if (var0 == ScriptOpcodes.INV_GETNUM) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = class8.ItemContainer_getCount(var3, var4); + return 1; + } else if (var0 == ScriptOpcodes.INV_TOTAL) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Frames.method3356(var3, var4); + return 1; + } else if (var0 == ScriptOpcodes.INV_SIZE) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = LoginScreenAnimation.getInvDefinition(var3).size; + return 1; + } else if (var0 == ScriptOpcodes.STAT) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.currentLevels[var3]; + return 1; + } else if (var0 == ScriptOpcodes.STAT_BASE) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.levels[var3]; + return 1; + } else if (var0 == ScriptOpcodes.STAT_XP) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.experience[var3]; + return 1; + } else { + int var5; + if (var0 == ScriptOpcodes.COORD) { + var3 = GameObject.Client_plane; + var4 = NetFileRequest.baseX * 64 + (PlayerAppearance.localPlayer.x >> 7); + var5 = class41.baseY * 64 + (PlayerAppearance.localPlayer.y >> 7); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = (var4 << 14) + var5 + (var3 << 28); + return 1; + } else if (var0 == ScriptOpcodes.COORDX) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3 >> 14 & 16383; + return 1; + } else if (var0 == ScriptOpcodes.COORDZ) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3 >> 28; + return 1; + } else if (var0 == ScriptOpcodes.COORDY) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3 & 16383; + return 1; + } else if (var0 == ScriptOpcodes.MAP_MEMBERS) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.isMembersWorld ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.INVOTHER_GETOBJ) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize] + 32768; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = class60.method942(var3, var4); + return 1; + } else if (var0 == ScriptOpcodes.INVOTHER_GETNUM) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize] + 32768; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = class8.ItemContainer_getCount(var3, var4); + return 1; + } else if (var0 == ScriptOpcodes.INVOTHER_TOTAL) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize] + 32768; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Frames.method3356(var3, var4); + return 1; + } else if (var0 == ScriptOpcodes.STAFFMODLEVEL) { + if (Client.staffModLevel >= 2) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.staffModLevel; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == ScriptOpcodes.REBOOTTIMER) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.rebootTimer; + return 1; + } else if (var0 == ScriptOpcodes.MAP_WORLD) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.worldId; + return 1; + } else if (var0 == ScriptOpcodes.RUNENERGY_VISIBLE) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.runEnergy; + return 1; + } else if (var0 == ScriptOpcodes.RUNWEIGHT_VISIBLE) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.weight; + return 1; + } else if (var0 == ScriptOpcodes.PLAYERMOD) { + if (Client.playerMod) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == ScriptOpcodes.WORLDFLAGS) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.worldProperties; + return 1; + } else if (var0 == ScriptOpcodes.MOVECOORD) { + VarcInt.Interpreter_intStackSize -= 4; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + var5 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 2]; + int var6 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 3]; + var3 += var4 << 14; + var3 += var5 << 28; + var3 += var6; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3; + return 1; + } else { + return 2; } } - - var4 = var4.substring(0, var4.length() - 1); // L: 958 } - - Object[] var8 = new Object[var4.length() + 1]; // L: 960 - - int var7; - for (var7 = var8.length - 1; var7 >= 1; --var7) { // L: 961 - if (var4.charAt(var7 - 1) == 's') { // L: 962 - var8[var7] = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; - } else { - var8[var7] = new Integer(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 963 - } - } - - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 965 - if (var7 != -1) { // L: 966 - var8[0] = new Integer(var7); - } else { - var8 = null; // L: 967 - } - - if (var0 == ScriptOpcodes.CC_SETONCLICK) { - var3.onClick = var8; // L: 968 - } else if (var0 == ScriptOpcodes.CC_SETONHOLD) { // L: 969 - var3.onHold = var8; - } else if (var0 == ScriptOpcodes.CC_SETONRELEASE) { // L: 970 - var3.onRelease = var8; - } else if (var0 == ScriptOpcodes.CC_SETONMOUSEOVER) { // L: 971 - var3.onMouseOver = var8; - } else if (var0 == ScriptOpcodes.CC_SETONMOUSELEAVE) { // L: 972 - var3.onMouseLeave = var8; - } else if (var0 == ScriptOpcodes.CC_SETONDRAG) { // L: 973 - var3.onDrag = var8; - } else if (var0 == ScriptOpcodes.CC_SETONTARGETLEAVE) { // L: 974 - var3.onTargetLeave = var8; - } else if (var0 == ScriptOpcodes.CC_SETONVARTRANSMIT) { // L: 975 - var3.onVarTransmit = var8; // L: 976 - var3.varTransmitTriggers = var5; // L: 977 - } else if (var0 == ScriptOpcodes.CC_SETONTIMER) { // L: 979 - var3.onTimer = var8; - } else if (var0 == ScriptOpcodes.CC_SETONOP) { // L: 980 - var3.onOp = var8; - } else if (var0 == ScriptOpcodes.CC_SETONDRAGCOMPLETE) { // L: 981 - var3.onDragComplete = var8; - } else if (var0 == ScriptOpcodes.CC_SETONCLICKREPEAT) { // L: 982 - var3.onClickRepeat = var8; - } else if (var0 == ScriptOpcodes.CC_SETONMOUSEREPEAT) { // L: 983 - var3.onMouseRepeat = var8; - } else if (var0 == ScriptOpcodes.CC_SETONINVTRANSMIT) { // L: 984 - var3.onInvTransmit = var8; // L: 985 - var3.invTransmitTriggers = var5; // L: 986 - } else if (var0 == ScriptOpcodes.CC_SETONSTATTRANSMIT) { // L: 988 - var3.onStatTransmit = var8; // L: 989 - var3.statTransmitTriggers = var5; // L: 990 - } else if (var0 == ScriptOpcodes.CC_SETONTARGETENTER) { - var3.onTargetEnter = var8; // L: 992 - } else if (var0 == ScriptOpcodes.CC_SETONSCROLLWHEEL) { // L: 993 - var3.onScroll = var8; - } else if (var0 == ScriptOpcodes.CC_SETONCHATTRANSMIT) { // L: 994 - var3.onChatTransmit = var8; - } else if (var0 == ScriptOpcodes.CC_SETONKEY) { // L: 995 - var3.onKey = var8; - } else if (var0 == ScriptOpcodes.CC_SETONFRIENDTRANSMIT) { // L: 996 - var3.onFriendTransmit = var8; - } else if (var0 == ScriptOpcodes.CC_SETONCLANTRANSMIT) { // L: 997 - var3.onClanTransmit = var8; - } else if (var0 == ScriptOpcodes.CC_SETONMISCTRANSMIT) { // L: 998 - var3.onMiscTransmit = var8; - } else if (var0 == ScriptOpcodes.CC_SETONDIALOGABORT) { // L: 999 - var3.onDialogAbort = var8; - } else if (var0 == ScriptOpcodes.CC_SETONSUBCHANGE) { // L: 1000 - var3.onSubChange = var8; - } else if (var0 == ScriptOpcodes.CC_SETONSTOCKTRANSMIT) { // L: 1001 - var3.onStockTransmit = var8; - } else if (var0 == 1426) { // L: 1002 - var3.field2669 = var8; - } else { - if (var0 != ScriptOpcodes.CC_SETONRESIZE) { // L: 1003 - return 2; // L: 1004 - } - - var3.onResize = var8; - } - - var3.hasListener = true; // L: 1005 - return 1; // L: 1006 } - - @ObfuscatedName("el") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-581351950" - ) - static void method3791() { - Client.packetWriter.clearBuffer(); // L: 2840 - Client.packetWriter.packetBuffer.offset = 0; // L: 2841 - Client.packetWriter.serverPacket = null; // L: 2842 - Client.packetWriter.field1348 = null; // L: 2843 - Client.packetWriter.field1339 = null; // L: 2844 - Client.packetWriter.field1350 = null; // L: 2845 - Client.packetWriter.serverPacketLength = 0; // L: 2846 - Client.packetWriter.field1337 = 0; // L: 2847 - Client.rebootTimer = 0; // L: 2848 - AbstractWorldMapData.method375(); // L: 2849 - Client.minimapState = 0; // L: 2850 - Client.destinationX = 0; // L: 2851 - - int var0; - for (var0 = 0; var0 < 2048; ++var0) { // L: 2852 - Client.players[var0] = null; - } - - PlayerType.localPlayer = null; // L: 2853 - - for (var0 = 0; var0 < Client.npcs.length; ++var0) { // L: 2854 - NPC var1 = Client.npcs[var0]; // L: 2855 - if (var1 != null) { // L: 2856 - var1.targetIndex = -1; // L: 2857 - var1.false0 = false; // L: 2858 - } - } - - ItemContainer.itemContainers = new NodeHashTable(32); // L: 2862 - BuddyRankComparator.updateGameState(30); // L: 2864 - - for (var0 = 0; var0 < 100; ++var0) { // L: 2865 - Client.field834[var0] = true; - } - - Actor.method1855(); // L: 2866 - } // L: 2867 - - @ObfuscatedName("kx") - @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-450810364" - ) - static void method3801(Buffer var0) { - if (Client.randomDatData != null) { // L: 11633 - var0.writeBytes(Client.randomDatData, 0, Client.randomDatData.length); // L: 11634 - } else { - byte[] var1 = class92.method2172(); // L: 11637 - var0.writeBytes(var1, 0, var1.length); // L: 11638 - } - } // L: 11635 11639 } diff --git a/runescape-client/src/main/java/Link.java b/runescape-client/src/main/java/Link.java index 2b97cd07af..622fd4b3e7 100644 --- a/runescape-client/src/main/java/Link.java +++ b/runescape-client/src/main/java/Link.java @@ -3,30 +3,30 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gq") +@ObfuscatedName("gm") @Implements("Link") public class Link { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lgq;" + descriptor = "Lgm;" ) @Export("previous") public Link previous; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lgq;" + descriptor = "Lgm;" ) @Export("next") public Link next; - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("remove") public void remove() { - if (this.next != null) { // L: 8 - this.next.previous = this.previous; // L: 9 - this.previous.next = this.next; // L: 10 - this.previous = null; // L: 11 - this.next = null; // L: 12 + if (this.next != null) { + this.next.previous = this.previous; + this.previous.next = this.next; + this.previous = null; + this.next = null; } - } // L: 13 + } } diff --git a/runescape-client/src/main/java/LinkDeque.java b/runescape-client/src/main/java/LinkDeque.java index 079d13a1b2..3c14fe8663 100644 --- a/runescape-client/src/main/java/LinkDeque.java +++ b/runescape-client/src/main/java/LinkDeque.java @@ -6,70 +6,70 @@ import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("jj") @Implements("LinkDeque") public class LinkDeque { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lgq;" + descriptor = "Lgm;" ) @Export("sentinel") Link sentinel; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lgq;" + descriptor = "Lgm;" ) @Export("current") Link current; public LinkDeque() { - this.sentinel = new Link(); // L: 6 - this.sentinel.previous = this.sentinel; // L: 10 - this.sentinel.next = this.sentinel; // L: 11 - } // L: 12 + this.sentinel = new Link(); + this.sentinel.previous = this.sentinel; + this.sentinel.next = this.sentinel; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lgq;)V" + descriptor = "(Lgm;)V" ) @Export("addFirst") public void addFirst(Link var1) { - if (var1.next != null) { // L: 15 + if (var1.next != null) { var1.remove(); } - var1.next = this.sentinel.next; // L: 16 - var1.previous = this.sentinel; // L: 17 - var1.next.previous = var1; // L: 18 - var1.previous.next = var1; // L: 19 - } // L: 20 + var1.next = this.sentinel.next; + var1.previous = this.sentinel; + var1.next.previous = var1; + var1.previous.next = var1; + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "()Lgq;" + descriptor = "()Lgm;" ) @Export("last") public Link last() { - Link var1 = this.sentinel.previous; // L: 23 - if (var1 == this.sentinel) { // L: 24 - this.current = null; // L: 25 - return null; // L: 26 + Link var1 = this.sentinel.previous; + if (var1 == this.sentinel) { + this.current = null; + return null; } else { - this.current = var1.previous; // L: 28 - return var1; // L: 29 + this.current = var1.previous; + return var1; } } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "()Lgq;" + descriptor = "()Lgm;" ) @Export("previous") public Link previous() { - Link var1 = this.current; // L: 33 - if (var1 == this.sentinel) { // L: 34 - this.current = null; // L: 35 - return null; // L: 36 + Link var1 = this.current; + if (var1 == this.sentinel) { + this.current = null; + return null; } else { - this.current = var1.previous; // L: 38 - return var1; // L: 39 + this.current = var1.previous; + return var1; } } } diff --git a/runescape-client/src/main/java/Login.java b/runescape-client/src/main/java/Login.java index a0669bd4e6..4f1ae5ea82 100644 --- a/runescape-client/src/main/java/Login.java +++ b/runescape-client/src/main/java/Login.java @@ -5,266 +5,163 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cj") +@ObfuscatedName("cp") @Implements("Login") public class Login { - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("clearLoginScreen") static boolean clearLoginScreen; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 1744707789 + intValue = -1016567537 ) @Export("xPadding") static int xPadding; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llo;" ) @Export("titlebuttonSprite") static IndexedSprite titlebuttonSprite; - @ObfuscatedName("k") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "Llc;" + descriptor = "[Llo;" ) - @Export("leftTitleSprite") - static Sprite leftTitleSprite; - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "Llc;" - ) - @Export("rightTitleSprite") - static Sprite rightTitleSprite; - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "Lle;" - ) - @Export("options_buttons_0Sprite") - static IndexedSprite options_buttons_0Sprite; - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "Lle;" - ) - @Export("options_buttons_2Sprite") - static IndexedSprite options_buttons_2Sprite; - @ObfuscatedName("p") - @ObfuscatedSignature( - descriptor = "Lcg;" - ) - @Export("loginScreenRunesAnimation") - static LoginScreenAnimation loginScreenRunesAnimation; - @ObfuscatedName("w") + @Export("title_muteSprite") + static IndexedSprite[] title_muteSprite; + @ObfuscatedName("r") @ObfuscatedGetter( - intValue = -1076468107 + intValue = -1536172433 ) @Export("loginBoxX") static int loginBoxX; - @ObfuscatedName("d") + @ObfuscatedName("q") @ObfuscatedGetter( - intValue = -1330731251 + intValue = 998116607 + ) + @Export("loginBoxCenter") + static int loginBoxCenter; + @ObfuscatedName("g") + @ObfuscatedGetter( + intValue = 306504333 ) @Export("Login_loadingPercent") static int Login_loadingPercent; - @ObfuscatedName("a") + @ObfuscatedName("s") @Export("Login_loadingText") static String Login_loadingText; - @ObfuscatedName("af") + @ObfuscatedName("ag") @ObfuscatedGetter( - intValue = 1371548097 + intValue = -1412635043 ) - static int field1216; - @ObfuscatedName("ay") + static int field1199; + @ObfuscatedName("ae") @ObfuscatedGetter( - intValue = 402121111 + intValue = -2065092859 ) - static int field1217; - @ObfuscatedName("au") + static int field1190; + @ObfuscatedName("aq") @ObfuscatedGetter( - intValue = 1682315035 + intValue = 107403273 ) @Export("loginIndex") static int loginIndex; - @ObfuscatedName("ai") + @ObfuscatedName("ah") @Export("Login_response0") static String Login_response0; - @ObfuscatedName("ax") + @ObfuscatedName("am") @Export("Login_response1") static String Login_response1; - @ObfuscatedName("ag") + @ObfuscatedName("aa") @Export("Login_response2") static String Login_response2; - @ObfuscatedName("aq") + @ObfuscatedName("ao") @Export("Login_response3") static String Login_response3; - @ObfuscatedName("aw") + @ObfuscatedName("ab") @Export("Login_username") static String Login_username; - @ObfuscatedName("an") + @ObfuscatedName("aw") @Export("Login_password") static String Login_password; - @ObfuscatedName("al") - static boolean field1230; - @ObfuscatedName("ap") - static boolean field1229; - @ObfuscatedName("bf") - static boolean field1227; - @ObfuscatedName("bp") + @ObfuscatedName("ar") + static boolean field1192; + @ObfuscatedName("az") + static boolean field1180; + @ObfuscatedName("by") + static boolean field1200; + @ObfuscatedName("bs") @ObfuscatedGetter( - intValue = -1450671401 + intValue = 1147044109 ) @Export("currentLoginField") static int currentLoginField; - @ObfuscatedName("bl") + @ObfuscatedName("bf") @Export("worldSelectOpen") static boolean worldSelectOpen; - @ObfuscatedName("by") + @ObfuscatedName("bw") @ObfuscatedGetter( - intValue = -374959449 + intValue = 1824198351 ) @Export("hoveredWorldIndex") static int hoveredWorldIndex; - @ObfuscatedName("bq") + @ObfuscatedName("bo") @ObfuscatedGetter( - intValue = -1738897563 + intValue = -1471948757 ) @Export("worldSelectPage") static int worldSelectPage; - @ObfuscatedName("bv") + @ObfuscatedName("bj") @ObfuscatedGetter( - intValue = 1533348533 + intValue = 1925512311 ) @Export("worldSelectPagesCount") static int worldSelectPagesCount; - @ObfuscatedName("bs") + @ObfuscatedName("bt") @ObfuscatedGetter( - longValue = -8374739296205492955L + longValue = -8936390045791734837L ) - static long field1223; - @ObfuscatedName("bd") + static long field1208; + @ObfuscatedName("bb") @ObfuscatedGetter( - longValue = 3745631578629079475L + longValue = -247323236330071045L ) - static long field1241; + static long field1209; static { - xPadding = 0; // L: 38 - loginBoxX = xPadding + 202; // L: 55 + xPadding = 0; + loginBoxX = xPadding + 202; Login_loadingPercent = 10; Login_loadingText = ""; - field1216 = -1; // L: 65 - field1217 = 1; // L: 68 - loginIndex = 0; // L: 72 - Login_response0 = ""; // L: 73 - Login_response1 = ""; // L: 74 - Login_response2 = ""; // L: 75 - Login_response3 = ""; // L: 76 - Login_username = ""; // L: 77 - Login_password = ""; // L: 78 - field1230 = false; // L: 85 - field1229 = false; // L: 86 - field1227 = true; // L: 89 - currentLoginField = 0; // L: 90 - worldSelectOpen = false; // L: 94 - hoveredWorldIndex = -1; // L: 102 - worldSelectPage = 0; // L: 103 - worldSelectPagesCount = 0; // L: 104 - new DecimalFormat("##0.00"); // L: 107 + field1199 = -1; + field1190 = 1; + loginIndex = 0; + Login_response0 = ""; + Login_response1 = ""; + Login_response2 = ""; + Login_response3 = ""; + Login_username = ""; + Login_password = ""; + field1192 = false; + field1180 = false; + field1200 = true; + currentLoginField = 0; + worldSelectOpen = false; + hoveredWorldIndex = -1; + worldSelectPage = 0; + worldSelectPagesCount = 0; + new DecimalFormat("##0.00"); new class171(); - field1223 = -1L; // L: 115 - field1241 = -1L; // L: 116 + field1208 = -1L; + field1209 = -1L; } - @ObfuscatedName("b") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;I)Ljava/lang/String;", - garbageValue = "-1829542828" + descriptor = "(I)I", + garbageValue = "-1905829152" ) - public static String method2219(CharSequence var0) { - long var3 = 0L; // L: 44 - int var5 = var0.length(); // L: 45 - - for (int var6 = 0; var6 < var5; ++var6) { // L: 46 - var3 *= 37L; // L: 47 - char var7 = var0.charAt(var6); // L: 48 - if (var7 >= 'A' && var7 <= 'Z') { // L: 49 - var3 += (long)(var7 + 1 - 65); - } else if (var7 >= 'a' && var7 <= 'z') { // L: 50 - var3 += (long)(var7 + 1 - 97); - } else if (var7 >= '0' && var7 <= '9') { - var3 += (long)(var7 + 27 - 48); // L: 51 - } - - if (var3 >= 177917621779460413L) { // L: 52 - break; - } - } - - while (var3 % 37L == 0L && var3 != 0L) { // L: 54 - var3 /= 37L; - } - - String var8 = class69.base37DecodeLong(var3); - if (var8 == null) { - var8 = ""; - } - - return var8; + static int method2152() { + return ++Messages.Messages_count - 1; } - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/Throwable;Ljava/lang/String;)Lmp;" - ) - @Export("newRunException") - public static RunException newRunException(Throwable var0, String var1) { - RunException var2; - if (var0 instanceof RunException) { // L: 57 - var2 = (RunException)var0; // L: 58 - var2.message = var2.message + ' ' + var1; // L: 59 - } else { - var2 = new RunException(var0, var1); // L: 61 - } - - return var2; // L: 62 - } - - @ObfuscatedName("gn") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-560858239" - ) - static final void method2200() { - for (Projectile var0 = (Projectile)Client.projectiles.last(); var0 != null; var0 = (Projectile)Client.projectiles.previous()) { // L: 4878 4879 4896 - if (var0.plane == GrandExchangeOfferUnitPriceComparator.Client_plane && Client.cycle <= var0.cycleEnd) { // L: 4880 - if (Client.cycle >= var0.cycleStart) { // L: 4881 - if (var0.targetIndex > 0) { // L: 4882 - NPC var1 = Client.npcs[var0.targetIndex - 1]; // L: 4883 - if (var1 != null && var1.x >= 0 && var1.x < 13312 && var1.y >= 0 && var1.y < 13312) { // L: 4884 - var0.setDestination(var1.x, var1.y, GrandExchangeOfferWorldComparator.getTileHeight(var1.x, var1.y, var0.plane) - var0.endHeight, Client.cycle); - } - } - - if (var0.targetIndex < 0) { // L: 4886 - int var2 = -var0.targetIndex - 1; // L: 4888 - Player var3; - if (var2 == Client.localPlayerIndex) { // L: 4889 - var3 = PlayerType.localPlayer; - } else { - var3 = Client.players[var2]; // L: 4890 - } - - if (var3 != null && var3.x >= 0 && var3.x < 13312 && var3.y >= 0 && var3.y < 13312) { - var0.setDestination(var3.x, var3.y, GrandExchangeOfferWorldComparator.getTileHeight(var3.x, var3.y, var0.plane) - var0.endHeight, Client.cycle); // L: 4891 - } - } - - var0.advance(Client.field743); // L: 4893 - ModeWhere.scene.drawEntity(GrandExchangeOfferUnitPriceComparator.Client_plane, (int)var0.x, (int)var0.y, (int)var0.z, 60, var0, var0.yaw, -1L, false); // L: 4894 - } - } else { - var0.remove(); - } - } - - } // L: 4898 } diff --git a/runescape-client/src/main/java/LoginPacket.java b/runescape-client/src/main/java/LoginPacket.java index a5162376ac..71ef2cc870 100644 --- a/runescape-client/src/main/java/LoginPacket.java +++ b/runescape-client/src/main/java/LoginPacket.java @@ -4,111 +4,578 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gd") +@ObfuscatedName("gw") @Implements("LoginPacket") public class LoginPacket implements class190 { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lgd;" + descriptor = "Lgw;" ) - public static final LoginPacket field2340; - @ObfuscatedName("b") + public static final LoginPacket field2332; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lgd;" + descriptor = "Lgw;" ) - static final LoginPacket field2338; - @ObfuscatedName("l") + static final LoginPacket field2339; + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lgd;" + descriptor = "Lgw;" ) - public static final LoginPacket field2339; - @ObfuscatedName("m") + public static final LoginPacket field2334; + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lgd;" + descriptor = "Lgw;" ) - public static final LoginPacket field2341; - @ObfuscatedName("z") + public static final LoginPacket field2335; + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lgd;" + descriptor = "Lgw;" ) - public static final LoginPacket field2342; - @ObfuscatedName("q") + public static final LoginPacket field2336; + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lgd;" + descriptor = "Lgw;" ) - static final LoginPacket field2346; - @ObfuscatedName("c") + static final LoginPacket field2337; + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "[Lgd;" + descriptor = "[Lgw;" ) @Export("LoginPacket_indexedValues") static final LoginPacket[] LoginPacket_indexedValues; - @ObfuscatedName("k") + @ObfuscatedName("dr") @ObfuscatedGetter( - intValue = 1924738563 + longValue = 2303606948216471517L + ) + static long field2341; + @ObfuscatedName("n") + @ObfuscatedGetter( + intValue = 783182641 ) @Export("id") public final int id; static { - field2340 = new LoginPacket(14, 0); // L: 5 - field2338 = new LoginPacket(15, 4); // L: 6 - field2339 = new LoginPacket(16, -2); // L: 7 - field2341 = new LoginPacket(18, -2); // L: 8 - field2342 = new LoginPacket(19, -2); // L: 9 - field2346 = new LoginPacket(27, 0); // L: 10 - LoginPacket_indexedValues = new LoginPacket[32]; // L: 12 - LoginPacket[] var0 = WorldMapDecorationType.method4257(); // L: 15 + field2332 = new LoginPacket(14, 0); + field2339 = new LoginPacket(15, 4); + field2334 = new LoginPacket(16, -2); + field2335 = new LoginPacket(18, -2); + field2336 = new LoginPacket(19, -2); + field2337 = new LoginPacket(27, 0); + LoginPacket_indexedValues = new LoginPacket[32]; + LoginPacket[] var0 = ViewportMouse.method3062(); - for (int var1 = 0; var1 < var0.length; ++var1) { // L: 16 - LoginPacket_indexedValues[var0[var1].id] = var0[var1]; // L: 17 + for (int var1 = 0; var1 < var0.length; ++var1) { + LoginPacket_indexedValues[var0[var1].id] = var0[var1]; } - } // L: 19 + } @ObfuscatedSignature( descriptor = "(II)V", garbageValue = "0" ) LoginPacket(int var1, int var2) { - this.id = var1; // L: 26 - } // L: 27 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(IS)Z", - garbageValue = "24475" - ) - public static boolean method3751(int var0) { - return var0 >= WorldMapDecorationType.field2750.id && var0 <= WorldMapDecorationType.field2754.id || var0 == WorldMapDecorationType.field2751.id; // L: 42 + this.id = var1; } - @ObfuscatedName("t") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(II)Lex;", - garbageValue = "1232258990" + descriptor = "(I)Ljava/lang/String;", + garbageValue = "1922563005" ) - @Export("getFrames") - static Frames getFrames(int var0) { - Frames var1 = (Frames)SequenceDefinition.SequenceDefinition_cachedFrames.get((long)var0); // L: 181 - if (var1 != null) { // L: 182 - return var1; - } else { - var1 = class60.method984(SequenceDefinition.SequenceDefinition_animationsArchive, DefaultsGroup.SequenceDefinition_skeletonsArchive, var0, false); // L: 183 - if (var1 != null) { // L: 184 - SequenceDefinition.SequenceDefinition_cachedFrames.put(var1, (long)var0); + static String method3674() { + String var0; + if (Timer.clientPreferences.hideUsername) { + String var2 = Login.Login_username; + int var4 = var2.length(); + char[] var5 = new char[var4]; + + for (int var6 = 0; var6 < var4; ++var6) { + var5[var6] = '*'; } - return var1; // L: 185 + String var3 = new String(var5); + var0 = var3; + } else { + var0 = Login.Login_username; } + + return var0; } - @ObfuscatedName("n") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;I)Ljava/lang/String;", - garbageValue = "1962792028" + descriptor = "(Leo;[Lfo;I)V", + garbageValue = "1844671024" ) - public static String method3747(CharSequence var0) { - return class198.method3786('*', var0.length()); // L: 180 + static final void method3673(Scene var0, CollisionMap[] var1) { + int var2; + int var3; + int var4; + int var5; + for (var2 = 0; var2 < 4; ++var2) { + for (var3 = 0; var3 < 104; ++var3) { + for (var4 = 0; var4 < 104; ++var4) { + if ((Tiles.Tiles_renderFlags[var2][var3][var4] & 1) == 1) { + var5 = var2; + if ((Tiles.Tiles_renderFlags[1][var3][var4] & 2) == 2) { + var5 = var2 - 1; + } + + if (var5 >= 0) { + var1[var5].setBlockedByFloor(var3, var4); + } + } + } + } + } + + Tiles.field516 += (int)(Math.random() * 5.0D) - 2; + if (Tiles.field516 < -8) { + Tiles.field516 = -8; + } + + if (Tiles.field516 > 8) { + Tiles.field516 = 8; + } + + Tiles.field510 += (int)(Math.random() * 5.0D) - 2; + if (Tiles.field510 < -16) { + Tiles.field510 = -16; + } + + if (Tiles.field510 > 16) { + Tiles.field510 = 16; + } + + int var9; + int var10; + int var11; + int var12; + int var13; + int var14; + int var15; + int var16; + int[] var10000; + int var17; + int var18; + for (var2 = 0; var2 < 4; ++var2) { + byte[][] var42 = Tiles.field511[var2]; + var9 = (int)Math.sqrt(5100.0D); + var10 = var9 * 768 >> 8; + + int var19; + int var20; + for (var11 = 1; var11 < 103; ++var11) { + for (var12 = 1; var12 < 103; ++var12) { + var13 = Tiles.Tiles_heights[var2][var12 + 1][var11] - Tiles.Tiles_heights[var2][var12 - 1][var11]; + var14 = Tiles.Tiles_heights[var2][var12][var11 + 1] - Tiles.Tiles_heights[var2][var12][var11 - 1]; + var15 = (int)Math.sqrt((double)(var14 * var14 + var13 * var13 + 65536)); + var16 = (var13 << 8) / var15; + var17 = 65536 / var15; + var18 = (var14 << 8) / var15; + var19 = (var18 * -50 + var16 * -50 + var17 * -10) / var10 + 96; + var20 = (var42[var12][var11 + 1] >> 3) + (var42[var12 - 1][var11] >> 2) + (var42[var12][var11 - 1] >> 2) + (var42[var12 + 1][var11] >> 3) + (var42[var12][var11] >> 1); + class92.field1173[var12][var11] = var19 - var20; + } + } + + for (var11 = 0; var11 < 104; ++var11) { + VarbitDefinition.Tiles_hue[var11] = 0; + ArchiveDiskActionHandler.Tiles_saturation[var11] = 0; + class92.Tiles_lightness[var11] = 0; + UserComparator7.Tiles_hueMultiplier[var11] = 0; + Varcs.field1283[var11] = 0; + } + + for (var11 = -5; var11 < 109; ++var11) { + for (var12 = 0; var12 < 104; ++var12) { + var13 = var11 + 5; + int var10002; + if (var13 >= 0 && var13 < 104) { + var14 = Tiles.field514[var2][var13][var12] & 255; + if (var14 > 0) { + FloorUnderlayDefinition var44 = WorldMapElement.method4405(var14 - 1); + var10000 = VarbitDefinition.Tiles_hue; + var10000[var12] += var44.hue; + var10000 = ArchiveDiskActionHandler.Tiles_saturation; + var10000[var12] += var44.saturation; + var10000 = class92.Tiles_lightness; + var10000[var12] += var44.lightness; + var10000 = UserComparator7.Tiles_hueMultiplier; + var10000[var12] += var44.hueMultiplier; + var10002 = Varcs.field1283[var12]++; + } + } + + var14 = var11 - 5; + if (var14 >= 0 && var14 < 104) { + var15 = Tiles.field514[var2][var14][var12] & 255; + if (var15 > 0) { + FloorUnderlayDefinition var45 = WorldMapElement.method4405(var15 - 1); + var10000 = VarbitDefinition.Tiles_hue; + var10000[var12] -= var45.hue; + var10000 = ArchiveDiskActionHandler.Tiles_saturation; + var10000[var12] -= var45.saturation; + var10000 = class92.Tiles_lightness; + var10000[var12] -= var45.lightness; + var10000 = UserComparator7.Tiles_hueMultiplier; + var10000[var12] -= var45.hueMultiplier; + var10002 = Varcs.field1283[var12]--; + } + } + } + + if (var11 >= 1 && var11 < 103) { + var12 = 0; + var13 = 0; + var14 = 0; + var15 = 0; + var16 = 0; + + for (var17 = -5; var17 < 109; ++var17) { + var18 = var17 + 5; + if (var18 >= 0 && var18 < 104) { + var12 += VarbitDefinition.Tiles_hue[var18]; + var13 += ArchiveDiskActionHandler.Tiles_saturation[var18]; + var14 += class92.Tiles_lightness[var18]; + var15 += UserComparator7.Tiles_hueMultiplier[var18]; + var16 += Varcs.field1283[var18]; + } + + var19 = var17 - 5; + if (var19 >= 0 && var19 < 104) { + var12 -= VarbitDefinition.Tiles_hue[var19]; + var13 -= ArchiveDiskActionHandler.Tiles_saturation[var19]; + var14 -= class92.Tiles_lightness[var19]; + var15 -= UserComparator7.Tiles_hueMultiplier[var19]; + var16 -= Varcs.field1283[var19]; + } + + if (var17 >= 1 && var17 < 103 && (!Client.isLowDetail || (Tiles.Tiles_renderFlags[0][var11][var17] & 2) != 0 || (Tiles.Tiles_renderFlags[var2][var11][var17] & 16) == 0)) { + if (var2 < Tiles.Tiles_minPlane) { + Tiles.Tiles_minPlane = var2; + } + + var20 = Tiles.field514[var2][var11][var17] & 255; + int var21 = Tiles.field508[var2][var11][var17] & 255; + if (var20 > 0 || var21 > 0) { + int var22 = Tiles.Tiles_heights[var2][var11][var17]; + int var23 = Tiles.Tiles_heights[var2][var11 + 1][var17]; + int var24 = Tiles.Tiles_heights[var2][var11 + 1][var17 + 1]; + int var25 = Tiles.Tiles_heights[var2][var11][var17 + 1]; + int var26 = class92.field1173[var11][var17]; + int var27 = class92.field1173[var11 + 1][var17]; + int var28 = class92.field1173[var11 + 1][var17 + 1]; + int var29 = class92.field1173[var11][var17 + 1]; + int var30 = -1; + int var31 = -1; + int var32; + int var33; + if (var20 > 0) { + var32 = var12 * 256 / var15; + var33 = var13 / var16; + int var34 = var14 / var16; + var30 = WorldMapLabelSize.hslToRgb(var32, var33, var34); + var32 = var32 + Tiles.field516 & 255; + var34 += Tiles.field510; + if (var34 < 0) { + var34 = 0; + } else if (var34 > 255) { + var34 = 255; + } + + var31 = WorldMapLabelSize.hslToRgb(var32, var33, var34); + } + + if (var2 > 0) { + boolean var47 = true; + if (var20 == 0 && class9.field40[var2][var11][var17] != 0) { + var47 = false; + } + + if (var21 > 0 && !RouteStrategy.method3648(var21 - 1).hideUnderlay) { + var47 = false; + } + + if (var47 && var23 == var22 && var22 == var24 && var25 == var22) { + var10000 = GrandExchangeOfferWorldComparator.field52[var2][var11]; + var10000[var17] |= 2340; + } + } + + var32 = 0; + if (var31 != -1) { + var32 = Rasterizer3D.Rasterizer3D_colorPalette[Tile.method2946(var31, 96)]; + } + + if (var21 == 0) { + var0.addTile(var2, var11, var17, 0, 0, -1, var22, var23, var24, var25, Tile.method2946(var30, var26), Tile.method2946(var30, var27), Tile.method2946(var30, var28), Tile.method2946(var30, var29), 0, 0, 0, 0, var32, 0); + } else { + var33 = class9.field40[var2][var11][var17] + 1; + byte var48 = Username.field3663[var2][var11][var17]; + FloorOverlayDefinition var35 = RouteStrategy.method3648(var21 - 1); + int var36 = var35.texture; + int var37; + int var38; + int var39; + int var40; + if (var36 >= 0) { + var38 = Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var36); + var37 = -1; + } else if (var35.primaryRgb == 16711935) { + var37 = -2; + var36 = -1; + var38 = -2; + } else { + var37 = WorldMapLabelSize.hslToRgb(var35.hue, var35.saturation, var35.lightness); + var39 = var35.hue + Tiles.field516 & 255; + var40 = var35.lightness + Tiles.field510; + if (var40 < 0) { + var40 = 0; + } else if (var40 > 255) { + var40 = 255; + } + + var38 = WorldMapLabelSize.hslToRgb(var39, var35.saturation, var40); + } + + var39 = 0; + if (var38 != -2) { + var39 = Rasterizer3D.Rasterizer3D_colorPalette[class9.method101(var38, 96)]; + } + + if (var35.secondaryRgb != -1) { + var40 = var35.secondaryHue + Tiles.field516 & 255; + int var41 = var35.secondaryLightness + Tiles.field510; + if (var41 < 0) { + var41 = 0; + } else if (var41 > 255) { + var41 = 255; + } + + var38 = WorldMapLabelSize.hslToRgb(var40, var35.secondarySaturation, var41); + var39 = Rasterizer3D.Rasterizer3D_colorPalette[class9.method101(var38, 96)]; + } + + var0.addTile(var2, var11, var17, var33, var48, var36, var22, var23, var24, var25, Tile.method2946(var30, var26), Tile.method2946(var30, var27), Tile.method2946(var30, var28), Tile.method2946(var30, var29), class9.method101(var37, var26), class9.method101(var37, var27), class9.method101(var37, var28), class9.method101(var37, var29), var32, var39); + } + } + } + } + } + } + + for (var11 = 1; var11 < 103; ++var11) { + for (var12 = 1; var12 < 103; ++var12) { + if ((Tiles.Tiles_renderFlags[var2][var12][var11] & 8) != 0) { + var17 = 0; + } else if (var2 > 0 && (Tiles.Tiles_renderFlags[1][var12][var11] & 2) != 0) { + var17 = var2 - 1; + } else { + var17 = var2; + } + + var0.setTileMinPlane(var2, var12, var11, var17); + } + } + + Tiles.field514[var2] = null; + Tiles.field508[var2] = null; + class9.field40[var2] = null; + Username.field3663[var2] = null; + Tiles.field511[var2] = null; + } + + var0.method3190(-50, -10, -50); + + for (var2 = 0; var2 < 104; ++var2) { + for (var3 = 0; var3 < 104; ++var3) { + if ((Tiles.Tiles_renderFlags[1][var2][var3] & 2) == 2) { + var0.setLinkBelow(var2, var3); + } + } + } + + var2 = 1; + var3 = 2; + var4 = 4; + + for (var5 = 0; var5 < 4; ++var5) { + if (var5 > 0) { + var2 <<= 3; + var3 <<= 3; + var4 <<= 3; + } + + for (int var6 = 0; var6 <= var5; ++var6) { + for (int var7 = 0; var7 <= 104; ++var7) { + for (int var8 = 0; var8 <= 104; ++var8) { + short var46; + if ((GrandExchangeOfferWorldComparator.field52[var6][var8][var7] & var2) != 0) { + var9 = var7; + var10 = var7; + var11 = var6; + + for (var12 = var6; var9 > 0 && (GrandExchangeOfferWorldComparator.field52[var6][var8][var9 - 1] & var2) != 0; --var9) { + } + + while (var10 < 104 && (GrandExchangeOfferWorldComparator.field52[var6][var8][var10 + 1] & var2) != 0) { + ++var10; + } + + label437: + while (var11 > 0) { + for (var13 = var9; var13 <= var10; ++var13) { + if ((GrandExchangeOfferWorldComparator.field52[var11 - 1][var8][var13] & var2) == 0) { + break label437; + } + } + + --var11; + } + + label426: + while (var12 < var5) { + for (var13 = var9; var13 <= var10; ++var13) { + if ((GrandExchangeOfferWorldComparator.field52[var12 + 1][var8][var13] & var2) == 0) { + break label426; + } + } + + ++var12; + } + + var13 = (var12 + 1 - var11) * (var10 - var9 + 1); + if (var13 >= 8) { + var46 = 240; + var15 = Tiles.Tiles_heights[var12][var8][var9] - var46; + var16 = Tiles.Tiles_heights[var11][var8][var9]; + Scene.Scene_addOccluder(var5, 1, var8 * 128, var8 * 128, var9 * 128, var10 * 128 + 128, var15, var16); + + for (var17 = var11; var17 <= var12; ++var17) { + for (var18 = var9; var18 <= var10; ++var18) { + var10000 = GrandExchangeOfferWorldComparator.field52[var17][var8]; + var10000[var18] &= ~var2; + } + } + } + } + + if ((GrandExchangeOfferWorldComparator.field52[var6][var8][var7] & var3) != 0) { + var9 = var8; + var10 = var8; + var11 = var6; + + for (var12 = var6; var9 > 0 && (GrandExchangeOfferWorldComparator.field52[var6][var9 - 1][var7] & var3) != 0; --var9) { + } + + while (var10 < 104 && (GrandExchangeOfferWorldComparator.field52[var6][var10 + 1][var7] & var3) != 0) { + ++var10; + } + + label490: + while (var11 > 0) { + for (var13 = var9; var13 <= var10; ++var13) { + if ((GrandExchangeOfferWorldComparator.field52[var11 - 1][var13][var7] & var3) == 0) { + break label490; + } + } + + --var11; + } + + label479: + while (var12 < var5) { + for (var13 = var9; var13 <= var10; ++var13) { + if ((GrandExchangeOfferWorldComparator.field52[var12 + 1][var13][var7] & var3) == 0) { + break label479; + } + } + + ++var12; + } + + var13 = (var10 - var9 + 1) * (var12 + 1 - var11); + if (var13 >= 8) { + var46 = 240; + var15 = Tiles.Tiles_heights[var12][var9][var7] - var46; + var16 = Tiles.Tiles_heights[var11][var9][var7]; + Scene.Scene_addOccluder(var5, 2, var9 * 128, var10 * 128 + 128, var7 * 128, var7 * 128, var15, var16); + + for (var17 = var11; var17 <= var12; ++var17) { + for (var18 = var9; var18 <= var10; ++var18) { + var10000 = GrandExchangeOfferWorldComparator.field52[var17][var18]; + var10000[var7] &= ~var3; + } + } + } + } + + if ((GrandExchangeOfferWorldComparator.field52[var6][var8][var7] & var4) != 0) { + var9 = var8; + var10 = var8; + var11 = var7; + + for (var12 = var7; var11 > 0 && (GrandExchangeOfferWorldComparator.field52[var6][var8][var11 - 1] & var4) != 0; --var11) { + } + + while (var12 < 104 && (GrandExchangeOfferWorldComparator.field52[var6][var8][var12 + 1] & var4) != 0) { + ++var12; + } + + label543: + while (var9 > 0) { + for (var13 = var11; var13 <= var12; ++var13) { + if ((GrandExchangeOfferWorldComparator.field52[var6][var9 - 1][var13] & var4) == 0) { + break label543; + } + } + + --var9; + } + + label532: + while (var10 < 104) { + for (var13 = var11; var13 <= var12; ++var13) { + if ((GrandExchangeOfferWorldComparator.field52[var6][var10 + 1][var13] & var4) == 0) { + break label532; + } + } + + ++var10; + } + + if ((var10 - var9 + 1) * (var12 - var11 + 1) >= 4) { + var13 = Tiles.Tiles_heights[var6][var9][var11]; + Scene.Scene_addOccluder(var5, 4, var9 * 128, var10 * 128 + 128, var11 * 128, var12 * 128 + 128, var13, var13); + + for (var14 = var9; var14 <= var10; ++var14) { + for (var15 = var11; var15 <= var12; ++var15) { + var10000 = GrandExchangeOfferWorldComparator.field52[var6][var14]; + var10000[var15] &= ~var4; + } + } + } + } + } + } + } + } + + } + + @ObfuscatedName("gg") + @ObfuscatedSignature( + descriptor = "(IIB)V", + garbageValue = "58" + ) + static void method3672(int var0, int var1) { + if (Timer.clientPreferences.musicVolume != 0 && var0 != -1) { + Interpreter.method2082(ItemContainer.archive11, var0, 0, Timer.clientPreferences.musicVolume, false); + Client.field883 = true; + } + } } diff --git a/runescape-client/src/main/java/LoginScreenAnimation.java b/runescape-client/src/main/java/LoginScreenAnimation.java index 938e53695e..d7a8729d60 100644 --- a/runescape-client/src/main/java/LoginScreenAnimation.java +++ b/runescape-client/src/main/java/LoginScreenAnimation.java @@ -4,480 +4,517 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cg") +@ObfuscatedName("ca") @Implements("LoginScreenAnimation") public class LoginScreenAnimation { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "[Lle;" + descriptor = "[Llo;" ) @Export("sprites") IndexedSprite[] sprites; - @ObfuscatedName("k") - int[] field1064; + @ObfuscatedName("n") + int[] field1033; + @ObfuscatedName("p") + @ObfuscatedGetter( + intValue = -1976548071 + ) + int field1034; + @ObfuscatedName("l") + int[] field1035; + @ObfuscatedName("z") + int[] field1036; + @ObfuscatedName("u") + int[] field1037; + @ObfuscatedName("e") + int[] field1028; + @ObfuscatedName("m") + @ObfuscatedGetter( + intValue = 1475345785 + ) + int field1040; @ObfuscatedName("c") @ObfuscatedGetter( - intValue = -221462457 + intValue = -432017653 ) - int field1080; - @ObfuscatedName("u") - int[] field1076; - @ObfuscatedName("t") - int[] field1067; - @ObfuscatedName("e") - int[] field1073; - @ObfuscatedName("o") - int[] field1069; - @ObfuscatedName("n") - @ObfuscatedGetter( - intValue = 393124217 - ) - int field1070; - @ObfuscatedName("x") - @ObfuscatedGetter( - intValue = 1553210135 - ) - int field1065; - @ObfuscatedName("p") - int[] field1072; - @ObfuscatedName("r") - int[] field1066; + int field1047; + @ObfuscatedName("i") + int[] field1041; + @ObfuscatedName("f") + int[] field1042; + @ObfuscatedName("a") + int[] field1043; + @ObfuscatedName("b") + int[] field1044; @ObfuscatedName("y") - int[] field1074; - @ObfuscatedName("s") - int[] field1075; - @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -1218395493 + intValue = 543060497 ) - int field1068; - @ObfuscatedName("w") + int field1045; + @ObfuscatedName("r") @ObfuscatedGetter( - intValue = 980301923 + intValue = -4471472 ) - int field1071; - @ObfuscatedName("v") + int field1046; + @ObfuscatedName("q") @ObfuscatedGetter( - intValue = 897555571 + intValue = 2113799519 ) - int field1077; + int field1032; @ObfuscatedSignature( - descriptor = "([Lle;)V" + descriptor = "([Llo;)V" ) LoginScreenAnimation(IndexedSprite[] var1) { - this.field1064 = new int[256]; // L: 13 - this.field1080 = 0; // L: 14 - this.field1070 = 0; // L: 19 - this.field1065 = 0; // L: 20 - this.field1068 = 0; // L: 25 - this.field1071 = 0; // L: 26 - this.field1077 = 0; // L: 27 - this.sprites = var1; // L: 30 - this.initColors(); // L: 31 - } // L: 32 + this.field1033 = new int[256]; + this.field1034 = 0; + this.field1040 = 0; + this.field1047 = 0; + this.field1045 = 0; + this.field1046 = 0; + this.field1032 = 0; + this.sprites = var1; + this.initColors(); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-24" + descriptor = "(I)V", + garbageValue = "-1184453059" ) @Export("initColors") void initColors() { - this.field1067 = new int[256]; // L: 35 + this.field1036 = new int[256]; int var1; - for (var1 = 0; var1 < 64; ++var1) { // L: 36 - this.field1067[var1] = var1 * 262144; + for (var1 = 0; var1 < 64; ++var1) { + this.field1036[var1] = var1 * 262144; } - for (var1 = 0; var1 < 64; ++var1) { // L: 37 - this.field1067[var1 + 64] = var1 * 1024 + 16711680; + for (var1 = 0; var1 < 64; ++var1) { + this.field1036[var1 + 64] = var1 * 1024 + 16711680; } - for (var1 = 0; var1 < 64; ++var1) { // L: 38 - this.field1067[var1 + 128] = var1 * 4 + 16776960; + for (var1 = 0; var1 < 64; ++var1) { + this.field1036[var1 + 128] = var1 * 4 + 16776960; } - for (var1 = 0; var1 < 64; ++var1) { // L: 39 - this.field1067[var1 + 192] = 16777215; + for (var1 = 0; var1 < 64; ++var1) { + this.field1036[var1 + 192] = 16777215; } - this.field1073 = new int[256]; // L: 40 + this.field1037 = new int[256]; - for (var1 = 0; var1 < 64; ++var1) { // L: 41 - this.field1073[var1] = var1 * 1024; + for (var1 = 0; var1 < 64; ++var1) { + this.field1037[var1] = var1 * 1024; } - for (var1 = 0; var1 < 64; ++var1) { // L: 42 - this.field1073[var1 + 64] = var1 * 4 + 65280; + for (var1 = 0; var1 < 64; ++var1) { + this.field1037[var1 + 64] = var1 * 4 + 65280; } - for (var1 = 0; var1 < 64; ++var1) { // L: 43 - this.field1073[var1 + 128] = var1 * 262144 + 65535; + for (var1 = 0; var1 < 64; ++var1) { + this.field1037[var1 + 128] = var1 * 262144 + 65535; } - for (var1 = 0; var1 < 64; ++var1) { // L: 44 - this.field1073[var1 + 192] = 16777215; + for (var1 = 0; var1 < 64; ++var1) { + this.field1037[var1 + 192] = 16777215; } - this.field1069 = new int[256]; // L: 45 + this.field1028 = new int[256]; - for (var1 = 0; var1 < 64; ++var1) { // L: 46 - this.field1069[var1] = var1 * 4; + for (var1 = 0; var1 < 64; ++var1) { + this.field1028[var1] = var1 * 4; } - for (var1 = 0; var1 < 64; ++var1) { // L: 47 - this.field1069[var1 + 64] = var1 * 262144 + 255; + for (var1 = 0; var1 < 64; ++var1) { + this.field1028[var1 + 64] = var1 * 262144 + 255; } - for (var1 = 0; var1 < 64; ++var1) { // L: 48 - this.field1069[var1 + 128] = var1 * 1024 + 16711935; + for (var1 = 0; var1 < 64; ++var1) { + this.field1028[var1 + 128] = var1 * 1024 + 16711935; } - for (var1 = 0; var1 < 64; ++var1) { // L: 49 - this.field1069[var1 + 192] = 16777215; + for (var1 = 0; var1 < 64; ++var1) { + this.field1028[var1 + 192] = 16777215; } - this.field1076 = new int[256]; // L: 50 - this.field1068 = 0; // L: 51 - this.field1074 = new int[32768]; // L: 52 - this.field1075 = new int[32768]; // L: 53 - this.method1924((IndexedSprite)null); // L: 54 - this.field1072 = new int[32768]; // L: 55 - this.field1066 = new int[32768]; // L: 56 - } // L: 57 + this.field1035 = new int[256]; + this.field1045 = 0; + this.field1043 = new int[32768]; + this.field1044 = new int[32768]; + this.method1901((IndexedSprite)null); + this.field1041 = new int[32768]; + this.field1042 = new int[32768]; + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "831434594" + garbageValue = "1726461364" ) - void method1917() { - this.field1067 = null; // L: 60 - this.field1073 = null; // L: 61 - this.field1069 = null; // L: 62 - this.field1076 = null; // L: 63 - this.field1074 = null; // L: 64 - this.field1075 = null; // L: 65 - this.field1072 = null; // L: 66 - this.field1066 = null; // L: 67 - this.field1068 = 0; // L: 68 - this.field1071 = 0; // L: 69 - } // L: 70 + void method1877() { + this.field1036 = null; + this.field1037 = null; + this.field1028 = null; + this.field1035 = null; + this.field1043 = null; + this.field1044 = null; + this.field1041 = null; + this.field1042 = null; + this.field1045 = 0; + this.field1046 = 0; + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "1501826850" + garbageValue = "-387686576" ) @Export("draw") void draw(int var1, int var2) { - if (this.field1072 == null) { // L: 73 - this.initColors(); // L: 74 + if (this.field1041 == null) { + this.initColors(); } - if (this.field1077 == 0) { // L: 76 - this.field1077 = var2; // L: 77 + if (this.field1032 == 0) { + this.field1032 = var2; } - int var3 = var2 - this.field1077; // L: 79 - if (var3 >= 256) { // L: 80 + int var3 = var2 - this.field1032; + if (var3 >= 256) { var3 = 0; } - this.field1077 = var2; // L: 81 - if (var3 > 0) { // L: 82 - this.method1929(var3); // L: 83 + this.field1032 = var2; + if (var3 > 0) { + this.method1879(var3); } - this.method1915(var1); // L: 85 - } // L: 86 + this.method1881(var1); + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(IS)V", - garbageValue = "128" + descriptor = "(II)V", + garbageValue = "-1542043970" ) - final void method1929(int var1) { - this.field1068 += var1 * 128; // L: 89 + final void method1879(int var1) { + this.field1045 += var1 * 128; int var2; - if (this.field1068 > this.field1074.length) { // L: 90 - this.field1068 -= this.field1074.length; // L: 91 - var2 = (int)(Math.random() * 12.0D); // L: 92 - this.method1924(this.sprites[var2]); // L: 93 + if (this.field1045 > this.field1043.length) { + this.field1045 -= this.field1043.length; + var2 = (int)(Math.random() * 12.0D); + this.method1901(this.sprites[var2]); } - var2 = 0; // L: 95 - int var3 = var1 * 128; // L: 96 - int var4 = (256 - var1) * 128; // L: 97 + var2 = 0; + int var3 = var1 * 128; + int var4 = (256 - var1) * 128; int var6; - for (int var5 = 0; var5 < var4; ++var5) { // L: 98 - var6 = this.field1072[var2 + var3] - this.field1074[var2 + this.field1068 & this.field1074.length - 1] * var1 / 6; // L: 99 - if (var6 < 0) { // L: 100 + for (int var5 = 0; var5 < var4; ++var5) { + var6 = this.field1041[var2 + var3] - this.field1043[var2 + this.field1045 & this.field1043.length - 1] * var1 / 6; + if (var6 < 0) { var6 = 0; } - this.field1072[var2++] = var6; // L: 101 + this.field1041[var2++] = var6; } - byte var15 = 10; // L: 103 - var6 = 128 - var15; // L: 104 + byte var15 = 10; + var6 = 128 - var15; int var7; int var10; - for (var7 = 256 - var1; var7 < 256; ++var7) { // L: 105 - int var8 = var7 * 128; // L: 106 + for (var7 = 256 - var1; var7 < 256; ++var7) { + int var8 = var7 * 128; - for (int var9 = 0; var9 < 128; ++var9) { // L: 107 - var10 = (int)(Math.random() * 100.0D); // L: 108 - if (var10 < 50 && var9 > var15 && var9 < var6) { // L: 109 - this.field1072[var9 + var8] = 255; + for (int var9 = 0; var9 < 128; ++var9) { + var10 = (int)(Math.random() * 100.0D); + if (var10 < 50 && var9 > var15 && var9 < var6) { + this.field1041[var9 + var8] = 255; } else { - this.field1072[var9 + var8] = 0; // L: 110 + this.field1041[var9 + var8] = 0; } } } - if (this.field1070 > 0) { // L: 113 - this.field1070 -= var1 * 4; + if (this.field1040 * 16 > 0) { + this.field1040 = this.field1040 * 16 - var1 * 4; } - if (this.field1065 > 0) { // L: 114 - this.field1065 -= var1 * 4; + if (this.field1047 * 16 > 0) { + this.field1047 = this.field1047 * 16 - var1 * 4; } - if (this.field1070 == 0 && this.field1065 == 0) { // L: 115 - var7 = (int)(Math.random() * (double)(2000 / var1)); // L: 116 - if (var7 == 0) { // L: 117 - this.field1070 = 1024; + if (this.field1040 * 16 == 0 && this.field1047 * 16 == 0) { + var7 = (int)(Math.random() * (double)(2000 / var1)); + if (var7 == 0) { + this.field1040 = 1024; } - if (var7 == 1) { // L: 118 - this.field1065 = 1024; + if (var7 == 1) { + this.field1047 = 1024; } } - for (var7 = 0; var7 < 256 - var1; ++var7) { // L: 120 - this.field1064[var7] = this.field1064[var7 + var1]; + for (var7 = 0; var7 < 256 - var1; ++var7) { + this.field1033[var7] = this.field1033[var7 + var1]; } - for (var7 = 256 - var1; var7 < 256; ++var7) { // L: 121 - this.field1064[var7] = (int)(Math.sin((double)this.field1080 / 14.0D) * 16.0D + Math.sin((double)this.field1080 / 15.0D) * 14.0D + Math.sin((double)this.field1080 / 16.0D) * 12.0D); // L: 122 - ++this.field1080; // L: 123 + for (var7 = 256 - var1; var7 < 256; ++var7) { + this.field1033[var7] = (int)(Math.sin((double)this.field1034 / 14.0D) * 16.0D + Math.sin((double)this.field1034 / 15.0D) * 14.0D + Math.sin((double)this.field1034 / 16.0D) * 12.0D); + ++this.field1034; } - this.field1071 += var1; // L: 125 - var7 = ((Client.cycle & 1) + var1) / 2; // L: 126 - if (var7 > 0) { // L: 127 - short var16 = 128; // L: 128 - byte var17 = 2; // L: 129 - var10 = 128 - var17 - var17; // L: 130 + this.field1046 = this.field1046 * 10000 + 10000 * var1; + var7 = ((Client.cycle & 1) + var1) / 2; + if (var7 > 0) { + short var16 = 128; + byte var17 = 2; + var10 = 128 - var17 - var17; int var11; int var12; int var13; - for (var11 = 0; var11 < this.field1071 * 100; ++var11) { // L: 131 - var12 = (int)(Math.random() * (double)var10) + var17; // L: 132 - var13 = (int)(Math.random() * (double)var16) + var16; // L: 133 - this.field1072[var12 + (var13 << 7)] = 192; // L: 134 + for (var11 = 0; var11 < this.field1046 * 100; ++var11) { + var12 = (int)(Math.random() * (double)var10) + var17; + var13 = (int)(Math.random() * (double)var16) + var16; + this.field1041[var12 + (var13 << 7)] = 192; } - this.field1071 = 0; // L: 136 + this.field1046 = 0; int var14; - for (var11 = 0; var11 < 256; ++var11) { // L: 137 - var12 = 0; // L: 138 - var13 = var11 * 128; // L: 139 + for (var11 = 0; var11 < 256; ++var11) { + var12 = 0; + var13 = var11 * 128; - for (var14 = -var7; var14 < 128; ++var14) { // L: 140 - if (var14 + var7 < 128) { // L: 141 - var12 += this.field1072[var14 + var13 + var7]; + for (var14 = -var7; var14 < 128; ++var14) { + if (var7 + var14 < 128) { + var12 += this.field1041[var7 + var14 + var13]; } - if (var14 - (var7 + 1) >= 0) { // L: 142 - var12 -= this.field1072[var13 + var14 - (var7 + 1)]; + if (var14 - (var7 + 1) >= 0) { + var12 -= this.field1041[var14 + var13 - (var7 + 1)]; } - if (var14 >= 0) { // L: 143 - this.field1066[var14 + var13] = var12 / (var7 * 2 + 1); + if (var14 >= 0) { + this.field1042[var13 + var14] = var12 / (var7 * 2 + 1); } } } - for (var11 = 0; var11 < 128; ++var11) { // L: 146 - var12 = 0; // L: 147 + for (var11 = 0; var11 < 128; ++var11) { + var12 = 0; - for (var13 = -var7; var13 < 256; ++var13) { // L: 148 - var14 = var13 * 128; // L: 149 - if (var13 + var7 < 256) { // L: 150 - var12 += this.field1066[var7 * 128 + var14 + var11]; + for (var13 = -var7; var13 < 256; ++var13) { + var14 = var13 * 128; + if (var7 + var13 < 256) { + var12 += this.field1042[var14 + var11 + var7 * 128]; } - if (var13 - (var7 + 1) >= 0) { // L: 151 - var12 -= this.field1066[var14 + var11 - (var7 + 1) * 128]; + if (var13 - (var7 + 1) >= 0) { + var12 -= this.field1042[var14 + var11 - (var7 + 1) * 128]; } - if (var13 >= 0) { // L: 152 - this.field1072[var11 + var14] = var12 / (var7 * 2 + 1); + if (var13 >= 0) { + this.field1041[var14 + var11] = var12 / (var7 * 2 + 1); } } } } - } // L: 156 - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(IIII)I", - garbageValue = "-1771546572" - ) - final int method1920(int var1, int var2, int var3) { - int var4 = 256 - var3; // L: 159 - return (var4 * (var1 & 65280) + var3 * (var2 & 65280) & 16711680) + (var3 * (var2 & 16711935) + var4 * (var1 & 16711935) & -16711936) >> 8; // L: 160 } - @ObfuscatedName("q") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(IS)V", - garbageValue = "152" + descriptor = "(IIIB)I", + garbageValue = "27" ) - final void method1915(int var1) { - int var2 = this.field1076.length; // L: 164 - if (this.field1070 > 0) { // L: 165 - this.method1922(this.field1070, this.field1073); // L: 166 - } else if (this.field1065 > 0) { // L: 168 - this.method1922(this.field1065, this.field1069); // L: 169 + final int method1880(int var1, int var2, int var3) { + int var4 = 256 - var3; + return (var4 * (var1 & 16711935) + var3 * (var2 & 16711935) & -16711936) + (var4 * (var1 & 65280) + var3 * (var2 & 65280) & 16711680) >> 8; + } + + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "(IB)V", + garbageValue = "19" + ) + final void method1881(int var1) { + int var2 = this.field1035.length; + if (this.field1040 * 16 > 0) { + this.method1905(this.field1040 * 16, this.field1037); + } else if (this.field1047 * 16 > 0) { + this.method1905(this.field1047 * 16, this.field1028); } else { - for (int var3 = 0; var3 < var2; ++var3) { // L: 172 - this.field1076[var3] = this.field1067[var3]; + for (int var3 = 0; var3 < var2; ++var3) { + this.field1035[var3] = this.field1036[var3]; } } - this.method1921(var1); // L: 174 - } // L: 175 + this.method1902(var1); + } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(I[II)V", - garbageValue = "1276738651" + descriptor = "(I[IB)V", + garbageValue = "60" ) - final void method1922(int var1, int[] var2) { - int var3 = this.field1076.length; // L: 178 + final void method1905(int var1, int[] var2) { + int var3 = this.field1035.length; - for (int var4 = 0; var4 < var3; ++var4) { // L: 179 - if (var1 > 768) { // L: 180 - this.field1076[var4] = this.method1920(this.field1067[var4], var2[var4], 1024 - var1); + for (int var4 = 0; var4 < var3; ++var4) { + if (var1 > 768) { + this.field1035[var4] = this.method1880(this.field1036[var4], var2[var4], 1024 - var1); } else if (var1 > 256) { - this.field1076[var4] = var2[var4]; // L: 181 + this.field1035[var4] = var2[var4]; } else { - this.field1076[var4] = this.method1920(var2[var4], this.field1067[var4], 256 - var1); // L: 182 + this.field1035[var4] = this.method1880(var2[var4], this.field1036[var4], 256 - var1); } } - } // L: 184 + } - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "943733056" + garbageValue = "1090951606" ) - final void method1921(int var1) { - int var2 = 0; // L: 187 + final void method1902(int var1) { + int var2 = 0; - for (int var3 = 1; var3 < 255; ++var3) { // L: 188 - int var4 = (256 - var3) * this.field1064[var3] / 256; // L: 189 - int var5 = var4 + var1; // L: 190 - int var6 = 0; // L: 191 - int var7 = 128; // L: 192 - if (var5 < 0) { // L: 193 - var6 = -var5; // L: 194 - var5 = 0; // L: 195 + for (int var3 = 1; var3 < 255; ++var3) { + int var4 = (256 - var3) * this.field1033[var3] / 256; + int var5 = var4 + var1; + int var6 = 0; + int var7 = 128; + if (var5 < 0) { + var6 = -var5; + var5 = 0; } - if (var5 + 128 >= class22.rasterProvider.width) { // L: 197 - var7 = class22.rasterProvider.width - var5; // L: 198 + if (var5 + 128 >= WorldMapIcon_0.rasterProvider.width) { + var7 = WorldMapIcon_0.rasterProvider.width - var5; } - int var8 = var5 + (var3 + 8) * class22.rasterProvider.width; // L: 200 - var2 += var6; // L: 201 + int var8 = var5 + (var3 + 8) * WorldMapIcon_0.rasterProvider.width; + var2 += var6; - for (int var9 = var6; var9 < var7; ++var9) { // L: 202 - int var10 = this.field1072[var2++]; // L: 203 - int var11 = var8 % Rasterizer2D.Rasterizer2D_width; // L: 204 - if (var10 != 0 && var11 >= Rasterizer2D.Rasterizer2D_xClipStart && var11 < Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 205 - int var12 = var10; // L: 206 - int var13 = 256 - var10; // L: 207 - var10 = this.field1076[var10]; // L: 208 - int var14 = class22.rasterProvider.pixels[var8]; // L: 209 - class22.rasterProvider.pixels[var8++] = -16777216 | (var12 * (var10 & 65280) + var13 * (var14 & 65280) & 16711680) + ((var14 & 16711935) * var13 + (var10 & 16711935) * var12 & -16711936) >> 8; // L: 210 + for (int var9 = var6; var9 < var7; ++var9) { + int var10 = this.field1041[var2++]; + int var11 = var8 % Rasterizer2D.Rasterizer2D_width; + if (var10 != 0 && var11 >= Rasterizer2D.Rasterizer2D_xClipStart && var11 < Rasterizer2D.Rasterizer2D_xClipEnd) { + int var12 = var10; + int var13 = 256 - var10; + var10 = this.field1035[var10]; + int var14 = WorldMapIcon_0.rasterProvider.pixels[var8]; + WorldMapIcon_0.rasterProvider.pixels[var8++] = -16777216 | ((var10 & 16711935) * var12 + (var14 & 16711935) * var13 & -16711936) + (var13 * (var14 & 65280) + var12 * (var10 & 65280) & 16711680) >> 8; } else { - ++var8; // L: 212 + ++var8; } } - var2 += 128 - var7; // L: 214 + var2 += 128 - var7; } - } // L: 216 + } - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "(Lle;I)V", - garbageValue = "1389216639" + descriptor = "(Llo;I)V", + garbageValue = "1524084760" ) - final void method1924(IndexedSprite var1) { + final void method1901(IndexedSprite var1) { int var2; - for (var2 = 0; var2 < this.field1074.length; ++var2) { // L: 219 - this.field1074[var2] = 0; + for (var2 = 0; var2 < this.field1043.length; ++var2) { + this.field1043[var2] = 0; } int var3; - for (var2 = 0; var2 < 5000; ++var2) { // L: 220 - var3 = (int)(Math.random() * 128.0D * 256.0D); // L: 221 - this.field1074[var3] = (int)(Math.random() * 256.0D); // L: 222 + for (var2 = 0; var2 < 5000; ++var2) { + var3 = (int)(Math.random() * 128.0D * 256.0D); + this.field1043[var3] = (int)(Math.random() * 256.0D); } int var4; int var5; - for (var2 = 0; var2 < 20; ++var2) { // L: 224 - for (var3 = 1; var3 < 255; ++var3) { // L: 225 - for (var4 = 1; var4 < 127; ++var4) { // L: 226 - var5 = var4 + (var3 << 7); // L: 227 - this.field1075[var5] = (this.field1074[var5 + 1] + this.field1074[var5 + 128] + this.field1074[var5 - 128] + this.field1074[var5 - 1]) / 4; // L: 228 + for (var2 = 0; var2 < 20; ++var2) { + for (var3 = 1; var3 < 255; ++var3) { + for (var4 = 1; var4 < 127; ++var4) { + var5 = var4 + (var3 << 7); + this.field1044[var5] = (this.field1043[var5 - 128] + this.field1043[var5 + 1] + this.field1043[var5 + 128] + this.field1043[var5 - 1]) / 4; } } - int[] var8 = this.field1074; // L: 231 - this.field1074 = this.field1075; // L: 232 - this.field1075 = var8; // L: 233 + int[] var8 = this.field1043; + this.field1043 = this.field1044; + this.field1044 = var8; } - if (var1 != null) { // L: 235 - var2 = 0; // L: 236 + if (var1 != null) { + var2 = 0; - for (var3 = 0; var3 < var1.subHeight; ++var3) { // L: 237 - for (var4 = 0; var4 < var1.subWidth; ++var4) { // L: 238 - if (var1.pixels[var2++] != 0) { // L: 239 - var5 = var4 + var1.xOffset + 16; // L: 240 - int var6 = var3 + var1.yOffset + 16; // L: 241 - int var7 = var5 + (var6 << 7); // L: 242 - this.field1074[var7] = 0; // L: 243 + for (var3 = 0; var3 < var1.subHeight; ++var3) { + for (var4 = 0; var4 < var1.subWidth; ++var4) { + if (var1.pixels[var2++] != 0) { + var5 = var4 + var1.xOffset + 16; + int var6 = var3 + var1.yOffset + 16; + int var7 = var5 + (var6 << 7); + this.field1043[var7] = 0; } } } } - } // L: 248 + } - @ObfuscatedName("ko") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-20" + descriptor = "(II)Lix;", + garbageValue = "-1374757475" ) - static void method1945() { - Client.packetWriter.addNode(class4.getPacketBufferNode(ClientPacket.field2320, Client.packetWriter.isaacCipher)); // L: 11664 - Client.oculusOrbState = 0; // L: 11665 - } // L: 11666 + @Export("getInvDefinition") + public static InvDefinition getInvDefinition(int var0) { + InvDefinition var1 = (InvDefinition)InvDefinition.InvDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = InvDefinition.InvDefinition_archive.takeFile(5, var0); + var1 = new InvDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); + } + + InvDefinition.InvDefinition_cached.put(var1, (long)var0); + return var1; + } + } + + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "(IB)I", + garbageValue = "-124" + ) + public static int method1904(int var0) { + return ClientPacket.method3671(ViewportMouse.ViewportMouse_entityTags[var0]); + } + + @ObfuscatedName("fc") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1359894700" + ) + static final void method1903() { + if (Client.logoutTimer > 0) { + WorldMapRectangle.logOut(); + } else { + Client.timer.method5018(); + WorldMapCacheName.updateGameState(40); + InterfaceParent.field562 = Client.packetWriter.getSocket(); + Client.packetWriter.removeSocket(); + } + } } diff --git a/runescape-client/src/main/java/LoginType.java b/runescape-client/src/main/java/LoginType.java index f21b2387db..efcf734f71 100644 --- a/runescape-client/src/main/java/LoginType.java +++ b/runescape-client/src/main/java/LoginType.java @@ -4,95 +4,89 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mc") +@ObfuscatedName("mu") @Implements("LoginType") public class LoginType { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lmc;" + descriptor = "Lmu;" ) @Export("oldscape") public static final LoginType oldscape; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lmc;" + descriptor = "Lmu;" ) - static final LoginType field4071; - @ObfuscatedName("l") + static final LoginType field4070; + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lmc;" - ) - static final LoginType field4063; - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "Lmc;" - ) - static final LoginType field4064; - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "Lmc;" - ) - static final LoginType field4065; - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "Lmc;" + descriptor = "Lmu;" ) static final LoginType field4066; - @ObfuscatedName("k") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lmc;" + descriptor = "Lmu;" ) - static final LoginType field4067; - @ObfuscatedName("c") + static final LoginType field4073; + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lmc;" + descriptor = "Lmu;" + ) + static final LoginType field4068; + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "Lmu;" ) static final LoginType field4069; - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "Lmc;" - ) - public static final LoginType field4061; @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Lds;" + descriptor = "Lmu;" ) - @Export("soundCache") - public static SoundCache soundCache; - @ObfuscatedName("t") + static final LoginType field4071; + @ObfuscatedName("p") + @ObfuscatedSignature( + descriptor = "Lmu;" + ) + static final LoginType field4064; + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "Lmu;" + ) + public static final LoginType field4072; + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = -1603045389 + intValue = -434232697 ) - final int field4070; - @ObfuscatedName("e") - final String field4068; + final int field4067; + @ObfuscatedName("u") + final String field4074; static { - oldscape = new LoginType(8, 0, "", ""); // L: 5 - field4071 = new LoginType(4, 1, "", ""); // L: 6 - field4063 = new LoginType(7, 2, "", ""); // L: 7 - field4064 = new LoginType(0, 3, "", ""); // L: 8 - field4065 = new LoginType(2, 4, "", ""); // L: 9 - field4066 = new LoginType(6, 5, "", ""); // L: 10 - field4067 = new LoginType(3, 6, "", ""); // L: 11 - field4069 = new LoginType(1, 7, "", ""); // L: 12 - field4061 = new LoginType(5, -1, "", "", true, new LoginType[]{oldscape, field4071, field4063, field4065, field4064}); // L: 13 + oldscape = new LoginType(0, 0, "", ""); + field4070 = new LoginType(3, 1, "", ""); + field4066 = new LoginType(1, 2, "", ""); + field4073 = new LoginType(7, 3, "", ""); + field4068 = new LoginType(6, 4, "", ""); + field4069 = new LoginType(2, 5, "", ""); + field4071 = new LoginType(4, 6, "", ""); + field4064 = new LoginType(5, 7, "", ""); + field4072 = new LoginType(8, -1, "", "", true, new LoginType[]{oldscape, field4070, field4066, field4068, field4073}); } LoginType(int var1, int var2, String var3, String var4) { - this.field4070 = var1; // L: 18 - this.field4068 = var4; // L: 19 - } // L: 20 + this.field4067 = var1; + this.field4074 = var4; + } @ObfuscatedSignature( - descriptor = "(IILjava/lang/String;Ljava/lang/String;Z[Lmc;)V" + descriptor = "(IILjava/lang/String;Ljava/lang/String;Z[Lmu;)V" ) LoginType(int var1, int var2, String var3, String var4, boolean var5, LoginType[] var6) { - this.field4070 = var1; // L: 23 - this.field4068 = var4; // L: 24 - } // L: 25 + this.field4067 = var1; + this.field4074 = var4; + } public String toString() { - return this.field4068; // L: 28 + return this.field4074; } } diff --git a/runescape-client/src/main/java/MenuAction.java b/runescape-client/src/main/java/MenuAction.java index 5e0f244b2f..ed31b89b0a 100644 --- a/runescape-client/src/main/java/MenuAction.java +++ b/runescape-client/src/main/java/MenuAction.java @@ -2,55 +2,38 @@ 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("cu") +@ObfuscatedName("cq") @Implements("MenuAction") public class MenuAction { - @ObfuscatedName("dz") - @ObfuscatedSignature( - descriptor = "Lid;" - ) - @Export("archive0") - static Archive archive0; - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 856343337 + intValue = -498360171 ) @Export("param0") int param0; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -1008037325 + intValue = 853980149 ) @Export("param1") int param1; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 967999089 + intValue = 1397689415 ) @Export("opcode") int opcode; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 1415709673 + intValue = 1633768997 ) @Export("identifier") int identifier; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("action") String action; MenuAction() { - } // L: 11733 - - @ObfuscatedName("p") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "3" - ) - static void method2171() { - Login.loginIndex = 24; // L: 1565 - GrandExchangeOfferNameComparator.setLoginResponseString("The game servers are currently being updated.", "Please wait a few minutes and try again.", ""); // L: 1566 - } // L: 1567 + } } diff --git a/runescape-client/src/main/java/Message.java b/runescape-client/src/main/java/Message.java index 8a9fa0252f..4d453c2ec3 100644 --- a/runescape-client/src/main/java/Message.java +++ b/runescape-client/src/main/java/Message.java @@ -1,210 +1,171 @@ -import java.util.LinkedHashMap; 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("bk") +@ObfuscatedName("bg") @Implements("Message") public class Message extends DualNode { - @ObfuscatedName("st") - @Export("foundItemIds") - static short[] foundItemIds; - @ObfuscatedName("f") + @ObfuscatedName("aa") + @Export("null_string") + protected static String null_string; + @ObfuscatedName("gf") + @ObfuscatedSignature( + descriptor = "[Llm;" + ) + @Export("headIconPkSprites") + static Sprite[] headIconPkSprites; + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 655345323 + intValue = -1661930895 ) @Export("count") int count; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -570932661 + intValue = -718562567 ) @Export("cycle") int cycle; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -186645555 + intValue = 1713352803 ) @Export("type") int type; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("sender") String sender; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lkm;" + descriptor = "Lki;" ) @Export("senderUsername") Username senderUsername; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lkz;" + descriptor = "Lkn;" ) @Export("isFromFriend0") TriBool isFromFriend0; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Lkz;" + descriptor = "Lkn;" ) @Export("isFromIgnored0") TriBool isFromIgnored0; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("prefix") String prefix; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("text") String text; Message(int var1, String var2, String var3, String var4) { - this.isFromFriend0 = TriBool.TriBool_unknown; // L: 13 - this.isFromIgnored0 = TriBool.TriBool_unknown; // L: 14 - this.set(var1, var2, var3, var4); // L: 19 - } // L: 20 + this.isFromFriend0 = TriBool.TriBool_unknown; + this.isFromIgnored0 = TriBool.TriBool_unknown; + this.set(var1, var2, var3, var4); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V", - garbageValue = "-136019615" + garbageValue = "914812055" ) @Export("set") void set(int var1, String var2, String var3, String var4) { - this.count = Buddy.method5322(); // L: 23 - this.cycle = Client.cycle; // L: 24 - this.type = var1; // L: 25 - this.sender = var2; // L: 26 - this.fillSenderUsername(); // L: 27 - this.prefix = var3; // L: 28 - this.text = var4; // L: 29 - this.clearIsFromFriend(); // L: 30 - this.clearIsFromIgnored(); // L: 31 - } // L: 32 + this.count = Login.method2152(); + this.cycle = Client.cycle; + this.type = var1; + this.sender = var2; + this.fillSenderUsername(); + this.prefix = var3; + this.text = var4; + this.clearIsFromFriend(); + this.clearIsFromIgnored(); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "406070188" + descriptor = "(B)V", + garbageValue = "4" ) @Export("clearIsFromFriend") void clearIsFromFriend() { - this.isFromFriend0 = TriBool.TriBool_unknown; // L: 35 - } // L: 36 + this.isFromFriend0 = TriBool.TriBool_unknown; + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "722132951" + garbageValue = "2060086850" ) @Export("isFromFriend") final boolean isFromFriend() { - if (this.isFromFriend0 == TriBool.TriBool_unknown) { // L: 39 - this.fillIsFromFriend(); // L: 40 + if (this.isFromFriend0 == TriBool.TriBool_unknown) { + this.fillIsFromFriend(); } - return this.isFromFriend0 == TriBool.TriBool_true; // L: 42 + return this.isFromFriend0 == TriBool.TriBool_true; } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1917257545" + descriptor = "(B)V", + garbageValue = "-50" ) @Export("fillIsFromFriend") void fillIsFromFriend() { - this.isFromFriend0 = WorldMapLabelSize.friendSystem.friendsList.contains(this.senderUsername) ? TriBool.TriBool_true : TriBool.TriBool_false; // L: 46 - } // L: 47 + this.isFromFriend0 = MilliClock.friendSystem.friendsList.contains(this.senderUsername) ? TriBool.TriBool_true : TriBool.TriBool_false; + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "341204953" + garbageValue = "534772186" ) @Export("clearIsFromIgnored") void clearIsFromIgnored() { - this.isFromIgnored0 = TriBool.TriBool_unknown; // L: 50 - } // L: 51 + this.isFromIgnored0 = TriBool.TriBool_unknown; + } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-53" + descriptor = "(I)Z", + garbageValue = "2018415105" ) @Export("isFromIgnored") final boolean isFromIgnored() { - if (this.isFromIgnored0 == TriBool.TriBool_unknown) { // L: 54 - this.fillIsFromIgnored(); // L: 55 + if (this.isFromIgnored0 == TriBool.TriBool_unknown) { + this.fillIsFromIgnored(); } - return this.isFromIgnored0 == TriBool.TriBool_true; // L: 57 + return this.isFromIgnored0 == TriBool.TriBool_true; } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "-73" + garbageValue = "-53" ) @Export("fillIsFromIgnored") void fillIsFromIgnored() { - this.isFromIgnored0 = WorldMapLabelSize.friendSystem.ignoreList.contains(this.senderUsername) ? TriBool.TriBool_true : TriBool.TriBool_false; // L: 61 - } // L: 62 + this.isFromIgnored0 = MilliClock.friendSystem.ignoreList.contains(this.senderUsername) ? TriBool.TriBool_true : TriBool.TriBool_false; + } - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-799394234" + garbageValue = "1096024764" ) @Export("fillSenderUsername") final void fillSenderUsername() { - if (this.sender != null) { // L: 65 - this.senderUsername = new Username(GrandExchangeOfferUnitPriceComparator.method218(this.sender), UserComparator4.loginType); + if (this.sender != null) { + this.senderUsername = new Username(class22.method220(this.sender), GrandExchangeOfferUnitPriceComparator.loginType); } else { - this.senderUsername = null; // L: 66 + this.senderUsername = null; } - } // L: 67 - - @ObfuscatedName("t") - @Export("addEntityUnderMouse") - static final void addEntityUnderMouse(long var0) { - ViewportMouse.ViewportMouse_entityTags[++ViewportMouse.ViewportMouse_entityCount - 1] = var0; // L: 83 - } // L: 84 - - @ObfuscatedName("fs") - @ObfuscatedSignature( - descriptor = "(ZB)V", - garbageValue = "91" - ) - static final void method1314(boolean var0) { - if (var0) { // L: 3037 - Client.field717 = Login.field1227 ? class169.field2029 : class169.field2034; // L: 3038 - } else { - LinkedHashMap var1 = GrandExchangeOfferAgeComparator.clientPreferences.parameters; // L: 3041 - String var3 = Login.Login_username; // L: 3043 - int var4 = var3.length(); // L: 3045 - int var5 = 0; // L: 3046 - - for (int var6 = 0; var6 < var4; ++var6) { // L: 3047 - var5 = (var5 << 5) - var5 + var3.charAt(var6); - } - - Client.field717 = var1.containsKey(var5) ? class169.field2033 : class169.field2028; // L: 3050 - } - - } // L: 3052 - - @ObfuscatedName("ke") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "1336792033" - ) - @Export("Clan_joinChat") - static final void Clan_joinChat(String var0) { - if (!var0.equals("")) { // L: 11502 - PacketBufferNode var1 = class4.getPacketBufferNode(ClientPacket.field2329, Client.packetWriter.isaacCipher); // L: 11504 - var1.packetBuffer.writeByte(SpriteMask.stringCp1252NullTerminatedByteSize(var0)); // L: 11505 - var1.packetBuffer.writeStringCp1252NullTerminated(var0); // L: 11506 - Client.packetWriter.addNode(var1); // L: 11507 - } - } // L: 11508 + } } diff --git a/runescape-client/src/main/java/Messages.java b/runescape-client/src/main/java/Messages.java index f796bc4f62..c203e1665c 100644 --- a/runescape-client/src/main/java/Messages.java +++ b/runescape-client/src/main/java/Messages.java @@ -1,3 +1,4 @@ +import java.awt.Component; import java.util.HashMap; import java.util.Map; import net.runelite.mapping.Export; @@ -5,192 +6,94 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("ch") +@ObfuscatedName("cv") @Implements("Messages") public class Messages { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("Messages_channels") static final Map Messages_channels; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lll;" + descriptor = "Lla;" ) @Export("Messages_hashTable") static final IterableNodeHashTable Messages_hashTable; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Ljt;" + descriptor = "Ljf;" ) @Export("Messages_queue") static final IterableDualNodeQueue Messages_queue; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -2074438197 + intValue = -1894587741 ) @Export("Messages_count") static int Messages_count; + @ObfuscatedName("di") + @ObfuscatedSignature( + descriptor = "Lil;" + ) + @Export("archive8") + static Archive archive8; static { - Messages_channels = new HashMap(); // L: 9 - Messages_hashTable = new IterableNodeHashTable(1024); // L: 10 - Messages_queue = new IterableDualNodeQueue(); // L: 11 - Messages_count = 0; // L: 12 + Messages_channels = new HashMap(); + Messages_hashTable = new IterableNodeHashTable(1024); + Messages_queue = new IterableDualNodeQueue(); + Messages_count = 0; } - @ObfuscatedName("f") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Liw;I)V", - garbageValue = "-2063920931" + descriptor = "(Ljava/awt/Component;I)V", + garbageValue = "-826057575" ) - public static void method2328(AbstractArchive var0) { - EnumDefinition.EnumDefinition_archive = var0; // L: 25 - } // L: 26 + static void method2275(Component var0) { + var0.setFocusTraversalKeysEnabled(false); + var0.addKeyListener(KeyHandler.KeyHandler_instance); + var0.addFocusListener(KeyHandler.KeyHandler_instance); + } - @ObfuscatedName("f") + @ObfuscatedName("m") @ObfuscatedSignature( - descriptor = "(Liw;B)V", - garbageValue = "6" + descriptor = "(ILcs;ZI)I", + garbageValue = "-729014462" ) - public static void method2339(AbstractArchive var0) { - VarcInt.VarcInt_archive = var0; // L: 15 - } // L: 16 - - @ObfuscatedName("fy") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "56" - ) - @Export("playSong") - static void playSong(int var0) { - if (var0 == -1 && !Client.field916) { // L: 3585 - UserComparator3.method3546(); // L: 3586 - } else if (var0 != -1 && var0 != Client.currentTrackGroupId && Client.musicVolume != 0 && !Client.field916) { // L: 3588 - Archive var1 = ApproximateRouteStrategy.archive6; // L: 3589 - int var2 = Client.musicVolume; // L: 3590 - class206.musicPlayerStatus = 1; // L: 3592 - class23.musicTrackArchive = var1; // L: 3593 - TileItem.musicTrackGroupId = var0; // L: 3594 - class206.musicTrackFileId = 0; // L: 3595 - class206.musicTrackVolume = var2; // L: 3596 - class195.musicTrackBoolean = false; // L: 3597 - MusicPatch.pcmSampleLength = 2; // L: 3598 + static int method2283(int var0, Script var1, boolean var2) { + Widget var3 = var2 ? PlayerAppearance.field2561 : VarcInt.field3264; + if (var0 == ScriptOpcodes.CC_GETX) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.x; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETY) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.y; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETWIDTH) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.width; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETHEIGHT) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.height; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETHIDE) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.isHidden ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETLAYER) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.parentId; + return 1; + } else { + return 2; } + } - Client.currentTrackGroupId = var0; // L: 3601 - } // L: 3602 - - @ObfuscatedName("hg") + @ObfuscatedName("i") @ObfuscatedSignature( - descriptor = "(IIIILjava/lang/String;I)V", - garbageValue = "1388890654" + descriptor = "(I)V", + garbageValue = "804061602" ) - @Export("widgetDefaultMenuAction") - static void widgetDefaultMenuAction(int var0, int var1, int var2, int var3, String var4) { - Widget var5 = ItemContainer.getWidgetChild(var1, var2); // L: 8829 - if (var5 != null) { // L: 8830 - if (var5.onOp != null) { // L: 8831 - ScriptEvent var6 = new ScriptEvent(); // L: 8832 - var6.widget = var5; // L: 8833 - var6.opIndex = var0; // L: 8834 - var6.targetName = var4; // L: 8835 - var6.args = var5.onOp; // L: 8836 - Entity.runScriptEvent(var6); // L: 8837 - } - - boolean var11 = true; // L: 8839 - if (var5.contentType > 0) { // L: 8840 - var11 = Varcs.method2313(var5); - } - - if (var11) { // L: 8841 - int var8 = WorldMapData_0.getWidgetFlags(var5); // L: 8843 - int var9 = var0 - 1; // L: 8844 - boolean var7 = (var8 >> var9 + 1 & 1) != 0; // L: 8846 - if (var7) { // L: 8848 - PacketBufferNode var10; - if (var0 == 1) { // L: 8851 - var10 = class4.getPacketBufferNode(ClientPacket.field2298, Client.packetWriter.isaacCipher); // L: 8853 - var10.packetBuffer.writeInt(var1); // L: 8854 - var10.packetBuffer.writeShort(var2); // L: 8855 - var10.packetBuffer.writeShort(var3); // L: 8856 - Client.packetWriter.addNode(var10); // L: 8857 - } - - if (var0 == 2) { // L: 8859 - var10 = class4.getPacketBufferNode(ClientPacket.field2274, Client.packetWriter.isaacCipher); // L: 8861 - var10.packetBuffer.writeInt(var1); // L: 8862 - var10.packetBuffer.writeShort(var2); // L: 8863 - var10.packetBuffer.writeShort(var3); // L: 8864 - Client.packetWriter.addNode(var10); // L: 8865 - } - - if (var0 == 3) { // L: 8867 - var10 = class4.getPacketBufferNode(ClientPacket.field2277, Client.packetWriter.isaacCipher); // L: 8869 - var10.packetBuffer.writeInt(var1); // L: 8870 - var10.packetBuffer.writeShort(var2); // L: 8871 - var10.packetBuffer.writeShort(var3); // L: 8872 - Client.packetWriter.addNode(var10); // L: 8873 - } - - if (var0 == 4) { // L: 8875 - var10 = class4.getPacketBufferNode(ClientPacket.field2300, Client.packetWriter.isaacCipher); // L: 8877 - var10.packetBuffer.writeInt(var1); // L: 8878 - var10.packetBuffer.writeShort(var2); // L: 8879 - var10.packetBuffer.writeShort(var3); // L: 8880 - Client.packetWriter.addNode(var10); // L: 8881 - } - - if (var0 == 5) { // L: 8883 - var10 = class4.getPacketBufferNode(ClientPacket.field2251, Client.packetWriter.isaacCipher); // L: 8885 - var10.packetBuffer.writeInt(var1); // L: 8886 - var10.packetBuffer.writeShort(var2); // L: 8887 - var10.packetBuffer.writeShort(var3); // L: 8888 - Client.packetWriter.addNode(var10); // L: 8889 - } - - if (var0 == 6) { // L: 8891 - var10 = class4.getPacketBufferNode(ClientPacket.field2252, Client.packetWriter.isaacCipher); // L: 8893 - var10.packetBuffer.writeInt(var1); // L: 8894 - var10.packetBuffer.writeShort(var2); // L: 8895 - var10.packetBuffer.writeShort(var3); // L: 8896 - Client.packetWriter.addNode(var10); // L: 8897 - } - - if (var0 == 7) { // L: 8899 - var10 = class4.getPacketBufferNode(ClientPacket.field2242, Client.packetWriter.isaacCipher); // L: 8901 - var10.packetBuffer.writeInt(var1); // L: 8902 - var10.packetBuffer.writeShort(var2); // L: 8903 - var10.packetBuffer.writeShort(var3); // L: 8904 - Client.packetWriter.addNode(var10); // L: 8905 - } - - if (var0 == 8) { // L: 8907 - var10 = class4.getPacketBufferNode(ClientPacket.field2285, Client.packetWriter.isaacCipher); // L: 8909 - var10.packetBuffer.writeInt(var1); // L: 8910 - var10.packetBuffer.writeShort(var2); // L: 8911 - var10.packetBuffer.writeShort(var3); // L: 8912 - Client.packetWriter.addNode(var10); // L: 8913 - } - - if (var0 == 9) { // L: 8915 - var10 = class4.getPacketBufferNode(ClientPacket.field2248, Client.packetWriter.isaacCipher); // L: 8917 - var10.packetBuffer.writeInt(var1); // L: 8918 - var10.packetBuffer.writeShort(var2); // L: 8919 - var10.packetBuffer.writeShort(var3); // L: 8920 - Client.packetWriter.addNode(var10); // L: 8921 - } - - if (var0 == 10) { // L: 8923 - var10 = class4.getPacketBufferNode(ClientPacket.field2256, Client.packetWriter.isaacCipher); // L: 8925 - var10.packetBuffer.writeInt(var1); // L: 8926 - var10.packetBuffer.writeShort(var2); // L: 8927 - var10.packetBuffer.writeShort(var3); // L: 8928 - Client.packetWriter.addNode(var10); // L: 8929 - } - - } - } - } - } // L: 8849 8931 + static void method2285() { + Login.loginIndex = 24; + GameShell.setLoginResponseString("The game servers are currently being updated.", "Please wait a few minutes and try again.", ""); + } } diff --git a/runescape-client/src/main/java/MidiFileReader.java b/runescape-client/src/main/java/MidiFileReader.java index e3478370c1..47afd3a9e7 100644 --- a/runescape-client/src/main/java/MidiFileReader.java +++ b/runescape-client/src/main/java/MidiFileReader.java @@ -3,260 +3,260 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hy") +@ObfuscatedName("hq") @Implements("MidiFileReader") public class MidiFileReader { - @ObfuscatedName("t") - static final byte[] field2493; - @ObfuscatedName("f") + @ObfuscatedName("z") + static final byte[] field2484; + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lkb;" + descriptor = "Lkj;" ) @Export("buffer") Buffer buffer; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("division") int division; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("trackStarts") int[] trackStarts; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("trackPositions") int[] trackPositions; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("trackLengths") int[] trackLengths; - @ObfuscatedName("q") - int[] field2492; - @ObfuscatedName("k") - int field2489; - @ObfuscatedName("u") - long field2495; + @ObfuscatedName("j") + int[] field2483; + @ObfuscatedName("n") + int field2480; + @ObfuscatedName("l") + long field2486; static { - field2493 = new byte[]{2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; // L: 17 + field2484 = new byte[]{2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; } MidiFileReader(byte[] var1) { this.buffer = new Buffer((byte[])null); - this.parse(var1); // L: 26 - } // L: 27 + this.parse(var1); + } MidiFileReader() { - this.buffer = new Buffer((byte[])null); // L: 8 - } // L: 23 + this.buffer = new Buffer((byte[])null); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("parse") void parse(byte[] var1) { - this.buffer.array = var1; // L: 30 - this.buffer.offset = 10; // L: 33 - int var2 = this.buffer.readUnsignedShort(); // L: 34 - this.division = this.buffer.readUnsignedShort(); // L: 36 - this.field2489 = 500000; // L: 37 - this.trackStarts = new int[var2]; // L: 38 + this.buffer.array = var1; + this.buffer.offset = 10; + int var2 = this.buffer.readUnsignedShort(); + this.division = this.buffer.readUnsignedShort(); + this.field2480 = 500000; + this.trackStarts = new int[var2]; Buffer var10000; int var3; int var5; - for (var3 = 0; var3 < var2; var10000.offset += var5) { // L: 39 - int var4 = this.buffer.readInt(); // L: 40 - var5 = this.buffer.readInt(); // L: 41 - if (var4 == 1297379947) { // L: 42 - this.trackStarts[var3] = this.buffer.offset; // L: 43 - ++var3; // L: 44 + for (var3 = 0; var3 < var2; var10000.offset += var5) { + int var4 = this.buffer.readInt(); + var5 = this.buffer.readInt(); + if (var4 == 1297379947) { + this.trackStarts[var3] = this.buffer.offset; + ++var3; } - var10000 = this.buffer; // L: 46 + var10000 = this.buffer; } - this.field2495 = 0L; // L: 48 - this.trackPositions = new int[var2]; // L: 49 + this.field2486 = 0L; + this.trackPositions = new int[var2]; - for (var3 = 0; var3 < var2; ++var3) { // L: 50 + for (var3 = 0; var3 < var2; ++var3) { this.trackPositions[var3] = this.trackStarts[var3]; } - this.trackLengths = new int[var2]; // L: 51 - this.field2492 = new int[var2]; // L: 52 - } // L: 53 + this.trackLengths = new int[var2]; + this.field2483 = new int[var2]; + } - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("clear") void clear() { - this.buffer.array = null; // L: 56 - this.trackStarts = null; // L: 57 - this.trackPositions = null; // L: 58 - this.trackLengths = null; // L: 59 - this.field2492 = null; // L: 60 - } // L: 61 + this.buffer.array = null; + this.trackStarts = null; + this.trackPositions = null; + this.trackLengths = null; + this.field2483 = null; + } - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("isReady") boolean isReady() { - return this.buffer.array != null; // L: 64 + return this.buffer.array != null; } - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("trackCount") int trackCount() { - return this.trackPositions.length; // L: 68 - } - - @ObfuscatedName("z") - @Export("gotoTrack") - void gotoTrack(int var1) { - this.buffer.offset = this.trackPositions[var1]; // L: 72 - } // L: 73 - - @ObfuscatedName("q") - @Export("markTrackPosition") - void markTrackPosition(int var1) { - this.trackPositions[var1] = this.buffer.offset; // L: 76 - } // L: 77 - - @ObfuscatedName("k") - @Export("setTrackDone") - void setTrackDone() { - this.buffer.offset = -1; // L: 80 - } // L: 81 - - @ObfuscatedName("c") - @Export("readTrackLength") - void readTrackLength(int var1) { - int var2 = this.buffer.readVarInt(); // L: 84 - int[] var10000 = this.trackLengths; - var10000[var1] += var2; // L: 85 - } // L: 86 - - @ObfuscatedName("u") - @Export("readMessage") - int readMessage(int var1) { - int var2 = this.readMessage0(var1); // L: 89 - return var2; // L: 90 + return this.trackPositions.length; } @ObfuscatedName("t") + @Export("gotoTrack") + void gotoTrack(int var1) { + this.buffer.offset = this.trackPositions[var1]; + } + + @ObfuscatedName("j") + @Export("markTrackPosition") + void markTrackPosition(int var1) { + this.trackPositions[var1] = this.buffer.offset; + } + + @ObfuscatedName("n") + @Export("setTrackDone") + void setTrackDone() { + this.buffer.offset = -1; + } + + @ObfuscatedName("p") + @Export("readTrackLength") + void readTrackLength(int var1) { + int var2 = this.buffer.readVarInt(); + int[] var10000 = this.trackLengths; + var10000[var1] += var2; + } + + @ObfuscatedName("l") + @Export("readMessage") + int readMessage(int var1) { + int var2 = this.readMessage0(var1); + return var2; + } + + @ObfuscatedName("z") @Export("readMessage0") int readMessage0(int var1) { - byte var2 = this.buffer.array[this.buffer.offset]; // L: 94 + byte var2 = this.buffer.array[this.buffer.offset]; int var5; - if (var2 < 0) { // L: 95 - var5 = var2 & 255; // L: 96 - this.field2492[var1] = var5; // L: 97 - ++this.buffer.offset; // L: 98 + if (var2 < 0) { + var5 = var2 & 255; + this.field2483[var1] = var5; + ++this.buffer.offset; } else { - var5 = this.field2492[var1]; // L: 101 + var5 = this.field2483[var1]; } - if (var5 != 240 && var5 != 247) { // L: 103 - return this.method3997(var1, var5); // L: 116 + if (var5 != 240 && var5 != 247) { + return this.method3877(var1, var5); } else { - int var3 = this.buffer.readVarInt(); // L: 104 - if (var5 == 247 && var3 > 0) { // L: 105 - int var4 = this.buffer.array[this.buffer.offset] & 255; // L: 106 - if (var4 >= 241 && var4 <= 243 || var4 == 246 || var4 == 248 || var4 >= 250 && var4 <= 252 || var4 == 254) { // L: 107 - ++this.buffer.offset; // L: 108 - this.field2492[var1] = var4; // L: 109 - return this.method3997(var1, var4); // L: 110 + int var3 = this.buffer.readVarInt(); + if (var5 == 247 && var3 > 0) { + int var4 = this.buffer.array[this.buffer.offset] & 255; + if (var4 >= 241 && var4 <= 243 || var4 == 246 || var4 == 248 || var4 >= 250 && var4 <= 252 || var4 == 254) { + ++this.buffer.offset; + this.field2483[var1] = var4; + return this.method3877(var1, var4); } } - Buffer var10000 = this.buffer; // L: 113 + Buffer var10000 = this.buffer; var10000.offset += var3; - return 0; // L: 114 + return 0; + } + } + + @ObfuscatedName("u") + int method3877(int var1, int var2) { + int var4; + if (var2 == 255) { + int var7 = this.buffer.readUnsignedByte(); + var4 = this.buffer.readVarInt(); + Buffer var10000; + if (var7 == 47) { + var10000 = this.buffer; + var10000.offset += var4; + return 1; + } else if (var7 == 81) { + int var5 = this.buffer.readMedium(); + var4 -= 3; + int var6 = this.trackLengths[var1]; + this.field2486 += (long)var6 * (long)(this.field2480 - var5); + this.field2480 = var5; + var10000 = this.buffer; + var10000.offset += var4; + return 2; + } else { + var10000 = this.buffer; + var10000.offset += var4; + return 3; + } + } else { + byte var3 = field2484[var2 - 128]; + var4 = var2; + if (var3 >= 1) { + var4 = var2 | this.buffer.readUnsignedByte() << 8; + } + + if (var3 >= 2) { + var4 |= this.buffer.readUnsignedByte() << 16; + } + + return var4; } } @ObfuscatedName("e") - int method3997(int var1, int var2) { - int var4; - if (var2 == 255) { // L: 120 - int var7 = this.buffer.readUnsignedByte(); // L: 121 - var4 = this.buffer.readVarInt(); // L: 122 - Buffer var10000; - if (var7 == 47) { // L: 123 - var10000 = this.buffer; // L: 124 - var10000.offset += var4; - return 1; // L: 125 - } else if (var7 == 81) { // L: 127 - int var5 = this.buffer.readMedium(); // L: 128 - var4 -= 3; // L: 129 - int var6 = this.trackLengths[var1]; // L: 130 - this.field2495 += (long)var6 * (long)(this.field2489 - var5); // L: 131 - this.field2489 = var5; // L: 132 - var10000 = this.buffer; // L: 133 - var10000.offset += var4; - return 2; // L: 134 - } else { - var10000 = this.buffer; // L: 136 - var10000.offset += var4; - return 3; // L: 137 - } - } else { - byte var3 = field2493[var2 - 128]; // L: 139 - var4 = var2; // L: 140 - if (var3 >= 1) { // L: 141 - var4 = var2 | this.buffer.readUnsignedByte() << 8; - } - - if (var3 >= 2) { // L: 142 - var4 |= this.buffer.readUnsignedByte() << 16; - } - - return var4; // L: 143 - } + long method3878(int var1) { + return this.field2486 + (long)var1 * (long)this.field2480; } - @ObfuscatedName("o") - long method4025(int var1) { - return this.field2495 + (long)var1 * (long)this.field2489; // L: 147 - } - - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("getPrioritizedTrack") int getPrioritizedTrack() { - int var1 = this.trackPositions.length; // L: 151 - int var2 = -1; // L: 152 - int var3 = Integer.MAX_VALUE; // L: 153 + int var1 = this.trackPositions.length; + int var2 = -1; + int var3 = Integer.MAX_VALUE; - for (int var4 = 0; var4 < var1; ++var4) { // L: 154 - if (this.trackPositions[var4] >= 0 && this.trackLengths[var4] < var3) { // L: 155 156 - var2 = var4; // L: 157 - var3 = this.trackLengths[var4]; // L: 158 + for (int var4 = 0; var4 < var1; ++var4) { + if (this.trackPositions[var4] >= 0 && this.trackLengths[var4] < var3) { + var2 = var4; + var3 = this.trackLengths[var4]; } } - return var2; // L: 161 + return var2; } - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("isDone") boolean isDone() { - int var1 = this.trackPositions.length; // L: 165 + int var1 = this.trackPositions.length; - for (int var2 = 0; var2 < var1; ++var2) { // L: 166 + for (int var2 = 0; var2 < var1; ++var2) { if (this.trackPositions[var2] >= 0) { return false; } } - return true; // L: 167 + return true; } - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("reset") void reset(long var1) { - this.field2495 = var1; // L: 171 - int var3 = this.trackPositions.length; // L: 172 + this.field2486 = var1; + int var3 = this.trackPositions.length; - for (int var4 = 0; var4 < var3; ++var4) { // L: 173 - this.trackLengths[var4] = 0; // L: 174 - this.field2492[var4] = 0; // L: 175 - this.buffer.offset = this.trackStarts[var4]; // L: 176 - this.readTrackLength(var4); // L: 177 - this.trackPositions[var4] = this.buffer.offset; // L: 178 + for (int var4 = 0; var4 < var3; ++var4) { + this.trackLengths[var4] = 0; + this.field2483[var4] = 0; + this.buffer.offset = this.trackStarts[var4]; + this.readTrackLength(var4); + this.trackPositions[var4] = this.buffer.offset; } - } // L: 180 + } } diff --git a/runescape-client/src/main/java/MidiPcmStream.java b/runescape-client/src/main/java/MidiPcmStream.java index 5320a0c259..4e3ac1b4ad 100644 --- a/runescape-client/src/main/java/MidiPcmStream.java +++ b/runescape-client/src/main/java/MidiPcmStream.java @@ -4,1084 +4,1088 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gv") +@ObfuscatedName("gf") @Implements("MidiPcmStream") public class MidiPcmStream extends PcmStream { - @ObfuscatedName("f") + @ObfuscatedName("bc") + @ObfuscatedGetter( + intValue = 1220950279 + ) + static int field2455; + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Llp;" + descriptor = "Lls;" ) @Export("musicPatches") NodeHashTable musicPatches; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -50885851 + intValue = -849325487 ) - int field2440; - @ObfuscatedName("l") + int field2429; + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 588111065 + intValue = -1519429568 ) - int field2446; - @ObfuscatedName("m") - int[] field2438; - @ObfuscatedName("z") - int[] field2448; - @ObfuscatedName("q") - int[] field2450; - @ObfuscatedName("k") - int[] field2462; - @ObfuscatedName("c") - int[] field2442; - @ObfuscatedName("u") - int[] field2459; + int field2437; @ObfuscatedName("t") + int[] field2446; + @ObfuscatedName("j") + int[] field2432; + @ObfuscatedName("n") + int[] field2433; + @ObfuscatedName("p") + int[] field2443; + @ObfuscatedName("l") int[] field2435; - @ObfuscatedName("e") + @ObfuscatedName("z") int[] field2436; + @ObfuscatedName("u") + int[] field2441; + @ObfuscatedName("e") + int[] field2438; + @ObfuscatedName("m") + int[] field2439; + @ObfuscatedName("r") + int[] field2454; + @ObfuscatedName("q") + int[] field2440; + @ObfuscatedName("g") + int[] field2434; + @ObfuscatedName("s") + int[] field2430; @ObfuscatedName("o") int[] field2444; - @ObfuscatedName("w") - int[] field2449; - @ObfuscatedName("v") - int[] field2441; + @ObfuscatedName("k") + int[] field2442; @ObfuscatedName("d") - int[] field2451; - @ObfuscatedName("a") - int[] field2452; - @ObfuscatedName("g") - int[] field2453; - @ObfuscatedName("h") - int[] field2454; - @ObfuscatedName("i") @ObfuscatedSignature( - descriptor = "[[Lhl;" + descriptor = "[[Lhn;" ) - MusicPatchNode[][] field2455; - @ObfuscatedName("ab") + MusicPatchNode[][] field2428; + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "[[Lhl;" + descriptor = "[[Lhn;" ) - MusicPatchNode[][] field2456; - @ObfuscatedName("ac") + MusicPatchNode[][] field2447; + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "Lhy;" + descriptor = "Lhq;" ) @Export("midiFile") MidiFileReader midiFile; - @ObfuscatedName("ao") - boolean field2458; - @ObfuscatedName("af") + @ObfuscatedName("ax") + boolean field2449; + @ObfuscatedName("ag") @ObfuscatedGetter( - intValue = 236042269 + intValue = 2016646223 ) @Export("track") int track; - @ObfuscatedName("av") + @ObfuscatedName("au") @ObfuscatedGetter( - intValue = -813288527 + intValue = -1682462851 ) @Export("trackLength") int trackLength; - @ObfuscatedName("ar") + @ObfuscatedName("as") @ObfuscatedGetter( - longValue = 4033442646314588215L + longValue = 1796535507771878115L ) - long field2461; - @ObfuscatedName("ay") + long field2452; + @ObfuscatedName("ae") @ObfuscatedGetter( - longValue = 5989401490553660197L + longValue = -5167402805625029887L ) - long field2445; - @ObfuscatedName("ah") + long field2453; + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Lhz;" + descriptor = "Lhi;" ) @Export("patchStream") MusicPatchPcmStream patchStream; public MidiPcmStream() { - this.field2440 = 256; // L: 14 - this.field2446 = 1000000; // L: 15 - this.field2438 = new int[16]; // L: 16 - this.field2448 = new int[16]; // L: 17 - this.field2450 = new int[16]; // L: 18 - this.field2462 = new int[16]; // L: 19 - this.field2442 = new int[16]; // L: 20 - this.field2459 = new int[16]; // L: 21 - this.field2435 = new int[16]; // L: 22 - this.field2436 = new int[16]; // L: 23 - this.field2444 = new int[16]; // L: 24 - this.field2449 = new int[16]; // L: 28 - this.field2441 = new int[16]; // L: 29 - this.field2451 = new int[16]; // L: 30 - this.field2452 = new int[16]; // L: 31 - this.field2453 = new int[16]; // L: 32 - this.field2454 = new int[16]; // L: 33 - this.field2455 = new MusicPatchNode[16][128]; // L: 34 - this.field2456 = new MusicPatchNode[16][128]; // L: 35 - this.midiFile = new MidiFileReader(); // L: 36 - this.patchStream = new MusicPatchPcmStream(this); // L: 42 - this.musicPatches = new NodeHashTable(128); // L: 45 - this.method3875(); // L: 46 - } // L: 47 + this.field2429 = 256; + this.field2437 = -727379968; + this.field2446 = new int[16]; + this.field2432 = new int[16]; + this.field2433 = new int[16]; + this.field2443 = new int[16]; + this.field2435 = new int[16]; + this.field2436 = new int[16]; + this.field2441 = new int[16]; + this.field2438 = new int[16]; + this.field2439 = new int[16]; + this.field2454 = new int[16]; + this.field2440 = new int[16]; + this.field2434 = new int[16]; + this.field2430 = new int[16]; + this.field2444 = new int[16]; + this.field2442 = new int[16]; + this.field2428 = new MusicPatchNode[16][128]; + this.field2447 = new MusicPatchNode[16][128]; + this.midiFile = new MidiFileReader(); + this.patchStream = new MusicPatchPcmStream(this); + this.musicPatches = new NodeHashTable(128); + this.method3842(); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "1236957115" + descriptor = "(IS)V", + garbageValue = "1513" ) @Export("setPcmStreamVolume") public synchronized void setPcmStreamVolume(int var1) { - this.field2440 = var1; // L: 50 - } // L: 51 + this.field2429 = var1; + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1869146108" + garbageValue = "643767530" ) - public int method3856() { - return this.field2440; // L: 54 - } - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(Lhj;Liw;Lds;II)Z", - garbageValue = "-577987969" - ) - @Export("loadMusicTrack") - synchronized boolean loadMusicTrack(MusicTrack var1, AbstractArchive var2, SoundCache var3, int var4) { - var1.method4061(); // L: 58 - boolean var5 = true; // L: 59 - int[] var6 = null; // L: 60 - if (var4 > 0) { // L: 61 - var6 = new int[]{var4}; - } - - for (ByteArrayNode var7 = (ByteArrayNode)var1.table.first(); var7 != null; var7 = (ByteArrayNode)var1.table.next()) { // L: 62 - int var8 = (int)var7.key; // L: 63 - MusicPatch var9 = (MusicPatch)this.musicPatches.get((long)var8); // L: 64 - if (var9 == null) { // L: 65 - var9 = UserComparator4.method3497(var2, var8); // L: 66 - if (var9 == null) { // L: 67 - var5 = false; // L: 68 - continue; - } - - this.musicPatches.put(var9, (long)var8); // L: 71 - } - - if (!var9.method4026(var3, var7.byteArray, var6)) { // L: 73 - var5 = false; - } - } - - if (var5) { // L: 75 - var1.clear(); - } - - return var5; // L: 76 - } - - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1712766376" - ) - @Export("clearAll") - synchronized void clearAll() { - for (MusicPatch var1 = (MusicPatch)this.musicPatches.first(); var1 != null; var1 = (MusicPatch)this.musicPatches.next()) { // L: 80 - var1.clear(); - } - - } // L: 81 - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1913865181" - ) - @Export("removeAll") - public synchronized void removeAll() { - for (MusicPatch var1 = (MusicPatch)this.musicPatches.first(); var1 != null; var1 = (MusicPatch)this.musicPatches.next()) { // L: 84 - var1.remove(); - } - - } // L: 85 - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "()Lde;" - ) - @Export("firstSubStream") - protected synchronized PcmStream firstSubStream() { - return this.patchStream; // L: 460 - } - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "()Lde;" - ) - @Export("nextSubStream") - protected synchronized PcmStream nextSubStream() { - return null; // L: 464 - } - - @ObfuscatedName("c") - protected synchronized int vmethod4043() { - return 0; // L: 468 - } - - @ObfuscatedName("u") - @Export("fill") - protected synchronized void fill(int[] var1, int var2, int var3) { - if (this.midiFile.isReady()) { // L: 472 - int var4 = this.midiFile.division * this.field2446 / PcmPlayer.field1442; // L: 473 - - do { - long var5 = this.field2461 + (long)var4 * (long)var3; // L: 475 - if (this.field2445 - var5 >= 0L) { // L: 476 - this.field2461 = var5; // L: 477 - break; - } - - int var7 = (int)((this.field2445 - this.field2461 + (long)var4 - 1L) / (long)var4); // L: 480 - this.field2461 += (long)var7 * (long)var4; // L: 481 - this.patchStream.fill(var1, var2, var7); // L: 482 - var2 += var7; // L: 483 - var3 -= var7; // L: 484 - this.method3888(); // L: 485 - } while(this.midiFile.isReady()); // L: 486 - } - - this.patchStream.fill(var1, var2, var3); // L: 489 - } // L: 490 - - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "(Lhj;ZI)V", - garbageValue = "1794864455" - ) - @Export("setMusicTrack") - synchronized void setMusicTrack(MusicTrack var1, boolean var2) { - this.clear(); // L: 88 - this.midiFile.parse(var1.midi); // L: 89 - this.field2458 = var2; // L: 90 - this.field2461 = 0L; // L: 91 - int var3 = this.midiFile.trackCount(); // L: 92 - - for (int var4 = 0; var4 < var3; ++var4) { // L: 93 - this.midiFile.gotoTrack(var4); // L: 94 - this.midiFile.readTrackLength(var4); // L: 95 - this.midiFile.markTrackPosition(var4); // L: 96 - } - - this.track = this.midiFile.getPrioritizedTrack(); // L: 98 - this.trackLength = this.midiFile.trackLengths[this.track]; // L: 99 - this.field2445 = this.midiFile.method4025(this.trackLength); // L: 100 - } // L: 101 - - @ObfuscatedName("e") - @Export("skip") - protected synchronized void skip(int var1) { - if (this.midiFile.isReady()) { // L: 493 - int var2 = this.midiFile.division * this.field2446 / PcmPlayer.field1442; // L: 494 - - do { - long var3 = this.field2461 + (long)var1 * (long)var2; // L: 496 - if (this.field2445 - var3 >= 0L) { // L: 497 - this.field2461 = var3; // L: 498 - break; - } - - int var5 = (int)(((long)var2 + (this.field2445 - this.field2461) - 1L) / (long)var2); // L: 501 - this.field2461 += (long)var5 * (long)var2; // L: 502 - this.patchStream.skip(var5); // L: 503 - var1 -= var5; // L: 504 - this.method3888(); // L: 505 - } while(this.midiFile.isReady()); // L: 506 - } - - this.patchStream.skip(var1); // L: 509 - } // L: 510 - - @ObfuscatedName("o") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "100" - ) - @Export("clear") - public synchronized void clear() { - this.midiFile.clear(); // L: 104 - this.method3875(); // L: 105 - } // L: 106 - - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1819990348" - ) - @Export("isReady") - public synchronized boolean isReady() { - return this.midiFile.isReady(); // L: 109 + int method3816() { + return this.field2429; } @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(IIB)V", - garbageValue = "11" + descriptor = "(Lhg;Lib;Lds;IB)Z", + garbageValue = "3" ) - public synchronized void method3863(int var1, int var2) { - this.method3915(var1, var2); // L: 113 - } // L: 114 - - @ObfuscatedName("p") - @ObfuscatedSignature( - descriptor = "(IIS)V", - garbageValue = "-20747" - ) - void method3915(int var1, int var2) { - this.field2462[var1] = var2; // L: 117 - this.field2459[var1] = var2 & -128; // L: 118 - this.method3929(var1, var2); // L: 119 - } // L: 120 - - @ObfuscatedName("r") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "-313859079" - ) - void method3929(int var1, int var2) { - if (var2 != this.field2442[var1]) { // L: 123 - this.field2442[var1] = var2; // L: 124 - - for (int var3 = 0; var3 < 128; ++var3) { // L: 125 - this.field2456[var1][var3] = null; - } + @Export("loadMusicTrack") + synchronized boolean loadMusicTrack(MusicTrack var1, AbstractArchive var2, SoundCache var3, int var4) { + var1.method3956(); + boolean var5 = true; + int[] var6 = null; + if (var4 > 0) { + var6 = new int[]{var4}; } - } // L: 127 - - @ObfuscatedName("y") - @ObfuscatedSignature( - descriptor = "(IIII)V", - garbageValue = "-384310039" - ) - void method3866(int var1, int var2, int var3) { - this.method3913(var1, var2, 64); // L: 130 - if ((this.field2449[var1] & 2) != 0) { // L: 131 - for (MusicPatchNode var4 = (MusicPatchNode)this.patchStream.queue.first(); var4 != null; var4 = (MusicPatchNode)this.patchStream.queue.next()) { // L: 132 - if (var4.field2479 == var1 && var4.field2473 < 0) { // L: 133 - this.field2455[var1][var4.field2466] = null; // L: 134 - this.field2455[var1][var2] = var4; // L: 135 - int var8 = (var4.field2470 * var4.field2474 >> 12) + var4.field2472; // L: 136 - var4.field2472 += var2 - var4.field2466 << 8; // L: 137 - var4.field2470 = var8 - var4.field2472; // L: 138 - var4.field2474 = 4096; // L: 139 - var4.field2466 = var2; // L: 140 - return; // L: 141 - } - } - } - - MusicPatch var9 = (MusicPatch)this.musicPatches.get((long)this.field2442[var1]); // L: 145 - if (var9 != null) { // L: 146 - RawSound var5 = var9.rawSounds[var2]; // L: 147 - if (var5 != null) { // L: 148 - MusicPatchNode var6 = new MusicPatchNode(); // L: 149 - var6.field2479 = var1; // L: 150 - var6.patch = var9; // L: 151 - var6.rawSound = var5; // L: 152 - var6.field2464 = var9.field2506[var2]; // L: 153 - var6.field2468 = var9.field2509[var2]; // L: 154 - var6.field2466 = var2; // L: 155 - var6.field2469 = var3 * var3 * var9.field2502[var2] * var9.field2507 + 1024 >> 11; // L: 156 - var6.field2465 = var9.field2505[var2] & 255; // L: 157 - var6.field2472 = (var2 << 8) - (var9.field2504[var2] & 32767); // L: 158 - var6.field2475 = 0; // L: 159 - var6.field2476 = 0; // L: 160 - var6.field2477 = 0; // L: 161 - var6.field2473 = -1; // L: 162 - var6.field2485 = 0; // L: 163 - if (this.field2452[var1] == 0) { // L: 164 - var6.stream = RawPcmStream.method2683(var5, this.method3880(var6), this.method3881(var6), this.method3882(var6)); // L: 165 + for (ByteArrayNode var7 = (ByteArrayNode)var1.table.first(); var7 != null; var7 = (ByteArrayNode)var1.table.next()) { + int var8 = (int)var7.key; + MusicPatch var9 = (MusicPatch)this.musicPatches.get((long)var8); + if (var9 == null) { + byte[] var11 = var2.takeFileFlat(var8); + MusicPatch var10; + if (var11 == null) { + var10 = null; } else { - var6.stream = RawPcmStream.method2683(var5, this.method3880(var6), 0, this.method3882(var6)); // L: 168 - this.method3867(var6, var9.field2504[var2] < 0); // L: 169 + var10 = new MusicPatch(var11); } - if (var9.field2504[var2] < 0) { // L: 171 - var6.stream.setNumLoops(-1); + var9 = var10; + if (var10 == null) { + var5 = false; + continue; } - if (var6.field2468 >= 0) { // L: 172 - MusicPatchNode var7 = this.field2456[var1][var6.field2468]; // L: 173 - if (var7 != null && var7.field2473 < 0) { // L: 174 - this.field2455[var1][var7.field2466] = null; // L: 175 - var7.field2473 = 0; // L: 176 - } + this.musicPatches.put(var10, (long)var8); + } - this.field2456[var1][var6.field2468] = var6; // L: 178 - } - - this.patchStream.queue.addFirst(var6); // L: 180 - this.field2455[var1][var2] = var6; // L: 181 + if (!var9.method3920(var3, var7.byteArray, var6)) { + var5 = false; } } - } // L: 182 - @ObfuscatedName("s") + if (var5) { + var1.clear(); + } + + return var5; + } + + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lhl;ZI)V", - garbageValue = "1636095944" + descriptor = "(B)V", + garbageValue = "51" ) - void method3867(MusicPatchNode var1, boolean var2) { - int var3 = var1.rawSound.samples.length; // L: 185 - int var4; - if (var2 && var1.rawSound.field1416) { // L: 187 - int var5 = var3 + var3 - var1.rawSound.start; // L: 188 - var4 = (int)((long)var5 * (long)this.field2452[var1.field2479] >> 6); // L: 189 - var3 <<= 8; // L: 190 - if (var4 >= var3) { // L: 191 - var4 = var3 + var3 - 1 - var4; // L: 192 - var1.stream.method2788(); // L: 193 - } - } else { - var4 = (int)((long)var3 * (long)this.field2452[var1.field2479] >> 6); // L: 197 + @Export("clearAll") + synchronized void clearAll() { + for (MusicPatch var1 = (MusicPatch)this.musicPatches.first(); var1 != null; var1 = (MusicPatch)this.musicPatches.next()) { + var1.clear(); } - var1.stream.method2682(var4); // L: 199 - } // L: 200 + } + + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1115530445" + ) + @Export("removeAll") + synchronized void removeAll() { + for (MusicPatch var1 = (MusicPatch)this.musicPatches.first(); var1 != null; var1 = (MusicPatch)this.musicPatches.next()) { + var1.remove(); + } + + } @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(IIII)V", - garbageValue = "-722165372" + descriptor = "()Ldi;" ) - void method3913(int var1, int var2, int var3) { - MusicPatchNode var4 = this.field2455[var1][var2]; // L: 203 - if (var4 != null) { // L: 204 - this.field2455[var1][var2] = null; // L: 205 - if ((this.field2449[var1] & 2) != 0) { // L: 206 - for (MusicPatchNode var5 = (MusicPatchNode)this.patchStream.queue.last(); var5 != null; var5 = (MusicPatchNode)this.patchStream.queue.previous()) { // L: 207 - if (var4.field2479 == var5.field2479 && var5.field2473 < 0 && var5 != var4) { // L: 208 - var4.field2473 = 0; // L: 209 - break; // L: 210 + @Export("firstSubStream") + protected synchronized PcmStream firstSubStream() { + return this.patchStream; + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "()Ldi;" + ) + @Export("nextSubStream") + protected synchronized PcmStream nextSubStream() { + return null; + } + + @ObfuscatedName("p") + protected synchronized int vmethod3927() { + return 0; + } + + @ObfuscatedName("l") + @Export("fill") + protected synchronized void fill(int[] var1, int var2, int var3) { + if (this.midiFile.isReady()) { + int var4 = this.midiFile.division * this.field2437 * 1000000 / PcmPlayer.field1443; + + do { + long var5 = this.field2452 + (long)var3 * (long)var4; + if (this.field2453 - var5 >= 0L) { + this.field2452 = var5; + break; + } + + int var7 = (int)((this.field2453 - this.field2452 + (long)var4 - 1L) / (long)var4); + this.field2452 += (long)var7 * (long)var4; + this.patchStream.fill(var1, var2, var7); + var2 += var7; + var3 -= var7; + this.method3784(); + } while(this.midiFile.isReady()); + } + + this.patchStream.fill(var1, var2, var3); + } + + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(Lhg;ZI)V", + garbageValue = "614971049" + ) + @Export("setMusicTrack") + synchronized void setMusicTrack(MusicTrack var1, boolean var2) { + this.clear(); + this.midiFile.parse(var1.midi); + this.field2449 = var2; + this.field2452 = 0L; + int var3 = this.midiFile.trackCount(); + + for (int var4 = 0; var4 < var3; ++var4) { + this.midiFile.gotoTrack(var4); + this.midiFile.readTrackLength(var4); + this.midiFile.markTrackPosition(var4); + } + + this.track = this.midiFile.getPrioritizedTrack(); + this.trackLength = this.midiFile.trackLengths[this.track]; + this.field2453 = this.midiFile.method3878(this.trackLength); + } + + @ObfuscatedName("u") + @Export("skip") + protected synchronized void skip(int var1) { + if (this.midiFile.isReady()) { + int var2 = this.midiFile.division * this.field2437 * 1000000 / PcmPlayer.field1443; + + do { + long var3 = (long)var1 * (long)var2 + this.field2452; + if (this.field2453 - var3 >= 0L) { + this.field2452 = var3; + break; + } + + int var5 = (int)(((long)var2 + (this.field2453 - this.field2452) - 1L) / (long)var2); + this.field2452 += (long)var2 * (long)var5; + this.patchStream.skip(var5); + var1 -= var5; + this.method3784(); + } while(this.midiFile.isReady()); + } + + this.patchStream.skip(var1); + } + + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "(S)V", + garbageValue = "-15313" + ) + @Export("clear") + synchronized void clear() { + this.midiFile.clear(); + this.method3842(); + } + + @ObfuscatedName("m") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "-185002283" + ) + @Export("isReady") + synchronized boolean isReady() { + return this.midiFile.isReady(); + } + + @ObfuscatedName("c") + @ObfuscatedSignature( + descriptor = "(IIB)V", + garbageValue = "77" + ) + public synchronized void method3759(int var1, int var2) { + this.method3752(var1, var2); + } + + @ObfuscatedName("i") + @ObfuscatedSignature( + descriptor = "(IIS)V", + garbageValue = "-15440" + ) + void method3752(int var1, int var2) { + this.field2443[var1] = var2; + this.field2436[var1] = var2 & -128; + this.method3761(var1, var2); + } + + @ObfuscatedName("f") + @ObfuscatedSignature( + descriptor = "(III)V", + garbageValue = "1712020733" + ) + void method3761(int var1, int var2) { + if (var2 != this.field2435[var1]) { + this.field2435[var1] = var2; + + for (int var3 = 0; var3 < 128; ++var3) { + this.field2447[var1][var3] = null; + } + } + + } + + @ObfuscatedName("y") + @ObfuscatedSignature( + descriptor = "(IIIB)V", + garbageValue = "1" + ) + void method3768(int var1, int var2, int var3) { + this.method3814(var1, var2, 64); + if ((this.field2454[var1] & 2) != 0) { + for (MusicPatchNode var4 = (MusicPatchNode)this.patchStream.queue.first(); var4 != null; var4 = (MusicPatchNode)this.patchStream.queue.next()) { + if (var4.field2477 == var1 && var4.field2470 < 0) { + this.field2428[var1][var4.field2461] = null; + this.field2428[var1][var2] = var4; + int var8 = (var4.field2466 * var4.field2464 >> 12) + var4.field2476; + var4.field2476 += var2 - var4.field2461 << 8; + var4.field2464 = var8 - var4.field2476; + var4.field2466 = 4096; + var4.field2461 = var2; + return; + } + } + } + + MusicPatch var9 = (MusicPatch)this.musicPatches.get((long)this.field2435[var1]); + if (var9 != null) { + RawSound var5 = var9.rawSounds[var2]; + if (var5 != null) { + MusicPatchNode var6 = new MusicPatchNode(); + var6.field2477 = var1; + var6.patch = var9; + var6.rawSound = var5; + var6.field2459 = var9.field2492[var2]; + var6.field2460 = var9.field2498[var2]; + var6.field2461 = var2; + var6.field2462 = var3 * var3 * var9.field2495[var2] * var9.field2499 + 1024 >> 11; + var6.field2463 = var9.field2496[var2] & 255; + var6.field2476 = (var2 << 8) - (var9.field2494[var2] & 32767); + var6.field2467 = 0; + var6.field2465 = 0; + var6.field2472 = 0; + var6.field2470 = -1; + var6.field2471 = 0; + if (this.field2430[var1] == 0) { + var6.stream = RawPcmStream.method2630(var5, this.method3776(var6), this.method3849(var6), this.method3854(var6)); + } else { + var6.stream = RawPcmStream.method2630(var5, this.method3776(var6), 0, this.method3854(var6)); + this.method3763(var6, var9.field2494[var2] < 0); + } + + if (var9.field2494[var2] < 0) { + var6.stream.setNumLoops(-1); + } + + if (var6.field2460 >= 0) { + MusicPatchNode var7 = this.field2447[var1][var6.field2460]; + if (var7 != null && var7.field2470 < 0) { + this.field2428[var1][var7.field2461] = null; + var7.field2470 = 0; + } + + this.field2447[var1][var6.field2460] = var6; + } + + this.patchStream.queue.addFirst(var6); + this.field2428[var1][var2] = var6; + } + } + } + + @ObfuscatedName("r") + @ObfuscatedSignature( + descriptor = "(Lhn;ZB)V", + garbageValue = "1" + ) + void method3763(MusicPatchNode var1, boolean var2) { + int var3 = var1.rawSound.samples.length; + int var4; + if (var2 && var1.rawSound.field1408) { + int var5 = var3 + var3 - var1.rawSound.start; + var4 = (int)((long)this.field2430[var1.field2477] * (long)var5 >> 6); + var3 <<= 8; + if (var4 >= var3) { + var4 = var3 + var3 - 1 - var4; + var1.stream.method2616(); + } + } else { + var4 = (int)((long)var3 * (long)this.field2430[var1.field2477] >> 6); + } + + var1.stream.method2615(var4); + } + + @ObfuscatedName("q") + @ObfuscatedSignature( + descriptor = "(IIII)V", + garbageValue = "452314933" + ) + void method3814(int var1, int var2, int var3) { + MusicPatchNode var4 = this.field2428[var1][var2]; + if (var4 != null) { + this.field2428[var1][var2] = null; + if ((this.field2454[var1] & 2) != 0) { + for (MusicPatchNode var5 = (MusicPatchNode)this.patchStream.queue.last(); var5 != null; var5 = (MusicPatchNode)this.patchStream.queue.previous()) { + if (var4.field2477 == var5.field2477 && var5.field2470 < 0 && var4 != var5) { + var4.field2470 = 0; + break; } } } else { - var4.field2473 = 0; // L: 215 + var4.field2470 = 0; } } - } // L: 217 + } - @ObfuscatedName("d") + @ObfuscatedName("g") @ObfuscatedSignature( descriptor = "(IIIB)V", - garbageValue = "121" + garbageValue = "-55" ) - void method3897(int var1, int var2, int var3) { - } // L: 219 + void method3765(int var1, int var2, int var3) { + } - @ObfuscatedName("ao") + @ObfuscatedName("o") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "-1674175932" + garbageValue = "173552395" ) - void method3870(int var1, int var2) { - } // L: 220 - - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "1933284003" - ) - void method3854(int var1, int var2) { - this.field2435[var1] = var2; // L: 223 - } // L: 224 - - @ObfuscatedName("av") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-406448805" - ) - void method3909(int var1) { - for (MusicPatchNode var2 = (MusicPatchNode)this.patchStream.queue.last(); var2 != null; var2 = (MusicPatchNode)this.patchStream.queue.previous()) { // L: 227 - if (var1 < 0 || var2.field2479 == var1) { // L: 228 - if (var2.stream != null) { // L: 229 - var2.stream.method2687(PcmPlayer.field1442 / 100); // L: 230 - if (var2.stream.method2786()) { // L: 231 - this.patchStream.mixer.addSubStream(var2.stream); - } - - var2.method3971(); // L: 232 - } - - if (var2.field2473 < 0) { // L: 234 - this.field2455[var2.field2479][var2.field2466] = null; - } - - var2.remove(); // L: 235 - } - } - - } // L: 238 - - @ObfuscatedName("ak") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1555645586" - ) - void method3873(int var1) { - if (var1 >= 0) { // L: 241 - this.field2438[var1] = 12800; // L: 245 - this.field2448[var1] = 8192; // L: 246 - this.field2450[var1] = 16383; // L: 247 - this.field2435[var1] = 8192; // L: 248 - this.field2436[var1] = 0; // L: 249 - this.field2444[var1] = 8192; // L: 250 - this.method3876(var1); // L: 251 - this.method3896(var1); // L: 252 - this.field2449[var1] = 0; // L: 253 - this.field2441[var1] = 32767; // L: 254 - this.field2451[var1] = 256; // L: 255 - this.field2452[var1] = 0; // L: 256 - this.method3879(var1, 8192); // L: 257 - } else { - for (var1 = 0; var1 < 16; ++var1) { // L: 242 - this.method3873(var1); - } - - } - } // L: 243 258 - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1324388853" - ) - void method3874(int var1) { - for (MusicPatchNode var2 = (MusicPatchNode)this.patchStream.queue.last(); var2 != null; var2 = (MusicPatchNode)this.patchStream.queue.previous()) { // L: 261 - if ((var1 < 0 || var2.field2479 == var1) && var2.field2473 < 0) { // L: 262 263 - this.field2455[var2.field2479][var2.field2466] = null; // L: 264 - var2.field2473 = 0; // L: 265 - } - } - - } // L: 269 - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1070781239" - ) - void method3875() { - this.method3909(-1); // L: 272 - this.method3873(-1); // L: 273 - - int var1; - for (var1 = 0; var1 < 16; ++var1) { // L: 274 - this.field2442[var1] = this.field2462[var1]; - } - - for (var1 = 0; var1 < 16; ++var1) { // L: 275 - this.field2459[var1] = this.field2462[var1] & -128; - } - - } // L: 276 - - @ObfuscatedName("aw") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-394347948" - ) - void method3876(int var1) { - if ((this.field2449[var1] & 2) != 0) { // L: 279 - for (MusicPatchNode var2 = (MusicPatchNode)this.patchStream.queue.last(); var2 != null; var2 = (MusicPatchNode)this.patchStream.queue.previous()) { // L: 280 - if (var2.field2479 == var1 && this.field2455[var1][var2.field2466] == null && var2.field2473 < 0) { // L: 281 282 - var2.field2473 = 0; - } - } - } - - } // L: 286 + void method3777(int var1, int var2) { + } @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-121" + descriptor = "(IIB)V", + garbageValue = "-30" ) - void method3896(int var1) { - if ((this.field2449[var1] & 4) != 0) { // L: 289 - for (MusicPatchNode var2 = (MusicPatchNode)this.patchStream.queue.last(); var2 != null; var2 = (MusicPatchNode)this.patchStream.queue.previous()) { // L: 290 - if (var2.field2479 == var1) { // L: 291 - var2.field2484 = 0; + void method3767(int var1, int var2) { + this.field2441[var1] = var2; + } + + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "649437065" + ) + void method3750(int var1) { + for (MusicPatchNode var2 = (MusicPatchNode)this.patchStream.queue.last(); var2 != null; var2 = (MusicPatchNode)this.patchStream.queue.previous()) { + if (var1 < 0 || var2.field2477 == var1) { + if (var2.stream != null) { + var2.stream.method2620(PcmPlayer.field1443 / 100); + if (var2.stream.method2624()) { + this.patchStream.mixer.addSubStream(var2.stream); + } + + var2.method3860(); + } + + if (var2.field2470 < 0) { + this.field2428[var2.field2477][var2.field2461] = null; + } + + var2.remove(); + } + } + + } + + @ObfuscatedName("aq") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "178885513" + ) + void method3769(int var1) { + if (var1 >= 0) { + this.field2446[var1] = 12800; + this.field2432[var1] = 8192; + this.field2433[var1] = 16383; + this.field2441[var1] = 8192; + this.field2438[var1] = 0; + this.field2439[var1] = 8192; + this.method3779(var1); + this.method3773(var1); + this.field2454[var1] = 0; + this.field2440[var1] = 32767; + this.field2434[var1] = 256; + this.field2430[var1] = 0; + this.method3775(var1, 8192); + } else { + for (var1 = 0; var1 < 16; ++var1) { + this.method3769(var1); + } + + } + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "971113747" + ) + void method3805(int var1) { + for (MusicPatchNode var2 = (MusicPatchNode)this.patchStream.queue.last(); var2 != null; var2 = (MusicPatchNode)this.patchStream.queue.previous()) { + if ((var1 < 0 || var2.field2477 == var1) && var2.field2470 < 0) { + this.field2428[var2.field2477][var2.field2461] = null; + var2.field2470 = 0; + } + } + + } + + @ObfuscatedName("am") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "100" + ) + void method3842() { + this.method3750(-1); + this.method3769(-1); + + int var1; + for (var1 = 0; var1 < 16; ++var1) { + this.field2435[var1] = this.field2443[var1]; + } + + for (var1 = 0; var1 < 16; ++var1) { + this.field2436[var1] = this.field2443[var1] & -128; + } + + } + + @ObfuscatedName("ad") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-635370566" + ) + void method3779(int var1) { + if ((this.field2454[var1] & 2) != 0) { + for (MusicPatchNode var2 = (MusicPatchNode)this.patchStream.queue.last(); var2 != null; var2 = (MusicPatchNode)this.patchStream.queue.previous()) { + if (var2.field2477 == var1 && this.field2428[var1][var2.field2461] == null && var2.field2470 < 0) { + var2.field2470 = 0; } } } - } // L: 294 + } - @ObfuscatedName("am") + @ObfuscatedName("ai") @ObfuscatedSignature( descriptor = "(IB)V", garbageValue = "0" ) - void method3908(int var1) { - int var2 = var1 & 240; // L: 297 + void method3773(int var1) { + if ((this.field2454[var1] & 4) != 0) { + for (MusicPatchNode var2 = (MusicPatchNode)this.patchStream.queue.last(); var2 != null; var2 = (MusicPatchNode)this.patchStream.queue.previous()) { + if (var2.field2477 == var1) { + var2.field2456 = 0; + } + } + } + + } + + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "(IB)V", + garbageValue = "0" + ) + void method3774(int var1) { + int var2 = var1 & 240; int var3; int var4; int var5; - if (var2 == 128) { // L: 298 - var3 = var1 & 15; // L: 299 - var4 = var1 >> 8 & 127; // L: 300 - var5 = var1 >> 16 & 127; // L: 301 - this.method3913(var3, var4, var5); // L: 302 - } else if (var2 == 144) { // L: 305 - var3 = var1 & 15; // L: 306 - var4 = var1 >> 8 & 127; // L: 307 - var5 = var1 >> 16 & 127; // L: 308 - if (var5 > 0) { // L: 309 - this.method3866(var3, var4, var5); + if (var2 == 128) { + var3 = var1 & 15; + var4 = var1 >> 8 & 127; + var5 = var1 >> 16 & 127; + this.method3814(var3, var4, var5); + } else if (var2 == 144) { + var3 = var1 & 15; + var4 = var1 >> 8 & 127; + var5 = var1 >> 16 & 127; + if (var5 > 0) { + this.method3768(var3, var4, var5); } else { - this.method3913(var3, var4, 64); // L: 310 + this.method3814(var3, var4, 64); } - } else if (var2 == 160) { // L: 313 - var3 = var1 & 15; // L: 314 - var4 = var1 >> 8 & 127; // L: 315 - var5 = var1 >> 16 & 127; // L: 316 - this.method3897(var3, var4, var5); // L: 317 - } else if (var2 == 176) { // L: 320 - var3 = var1 & 15; // L: 321 - var4 = var1 >> 8 & 127; // L: 322 - var5 = var1 >> 16 & 127; // L: 323 - if (var4 == 0) { // L: 324 - this.field2459[var3] = (var5 << 14) + (this.field2459[var3] & -2080769); + } else if (var2 == 160) { + var3 = var1 & 15; + var4 = var1 >> 8 & 127; + var5 = var1 >> 16 & 127; + this.method3765(var3, var4, var5); + } else if (var2 == 176) { + var3 = var1 & 15; + var4 = var1 >> 8 & 127; + var5 = var1 >> 16 & 127; + if (var4 == 0) { + this.field2436[var3] = (var5 << 14) + (this.field2436[var3] & -2080769); } - if (var4 == 32) { // L: 325 - this.field2459[var3] = (var5 << 7) + (this.field2459[var3] & -16257); - } - - if (var4 == 1) { // L: 326 + if (var4 == 32) { this.field2436[var3] = (var5 << 7) + (this.field2436[var3] & -16257); } - if (var4 == 33) { // L: 327 - this.field2436[var3] = var5 + (this.field2436[var3] & -128); - } - - if (var4 == 5) { // L: 328 - this.field2444[var3] = (var5 << 7) + (this.field2444[var3] & -16257); - } - - if (var4 == 37) { // L: 329 - this.field2444[var3] = var5 + (this.field2444[var3] & -128); - } - - if (var4 == 7) { // L: 330 + if (var4 == 1) { this.field2438[var3] = (var5 << 7) + (this.field2438[var3] & -16257); } - if (var4 == 39) { // L: 331 + if (var4 == 33) { this.field2438[var3] = var5 + (this.field2438[var3] & -128); } - if (var4 == 10) { // L: 332 - this.field2448[var3] = (var5 << 7) + (this.field2448[var3] & -16257); + if (var4 == 5) { + this.field2439[var3] = (var5 << 7) + (this.field2439[var3] & -16257); } - if (var4 == 42) { // L: 333 - this.field2448[var3] = var5 + (this.field2448[var3] & -128); + if (var4 == 37) { + this.field2439[var3] = var5 + (this.field2439[var3] & -128); } - if (var4 == 11) { // L: 334 - this.field2450[var3] = (var5 << 7) + (this.field2450[var3] & -16257); + if (var4 == 7) { + this.field2446[var3] = (var5 << 7) + (this.field2446[var3] & -16257); } - if (var4 == 43) { // L: 335 - this.field2450[var3] = var5 + (this.field2450[var3] & -128); + if (var4 == 39) { + this.field2446[var3] = var5 + (this.field2446[var3] & -128); + } + + if (var4 == 10) { + this.field2432[var3] = (var5 << 7) + (this.field2432[var3] & -16257); + } + + if (var4 == 42) { + this.field2432[var3] = var5 + (this.field2432[var3] & -128); + } + + if (var4 == 11) { + this.field2433[var3] = (var5 << 7) + (this.field2433[var3] & -16257); + } + + if (var4 == 43) { + this.field2433[var3] = var5 + (this.field2433[var3] & -128); } int[] var10000; - if (var4 == 64) { // L: 336 - if (var5 >= 64) { // L: 337 - var10000 = this.field2449; + if (var4 == 64) { + if (var5 >= 64) { + var10000 = this.field2454; var10000[var3] |= 1; } else { - var10000 = this.field2449; // L: 338 + var10000 = this.field2454; var10000[var3] &= -2; } } - if (var4 == 65) { // L: 340 - if (var5 >= 64) { // L: 341 - var10000 = this.field2449; + if (var4 == 65) { + if (var5 >= 64) { + var10000 = this.field2454; var10000[var3] |= 2; } else { - this.method3876(var3); // L: 343 - var10000 = this.field2449; // L: 344 + this.method3779(var3); + var10000 = this.field2454; var10000[var3] &= -3; } } - if (var4 == 99) { // L: 347 - this.field2441[var3] = (var5 << 7) + (this.field2441[var3] & 127); + if (var4 == 99) { + this.field2440[var3] = (var5 << 7) + (this.field2440[var3] & 127); } - if (var4 == 98) { // L: 348 - this.field2441[var3] = (this.field2441[var3] & 16256) + var5; + if (var4 == 98) { + this.field2440[var3] = (this.field2440[var3] & 16256) + var5; } - if (var4 == 101) { // L: 349 - this.field2441[var3] = (var5 << 7) + (this.field2441[var3] & 127) + 16384; + if (var4 == 101) { + this.field2440[var3] = (var5 << 7) + (this.field2440[var3] & 127) + 16384; } - if (var4 == 100) { // L: 350 - this.field2441[var3] = (this.field2441[var3] & 16256) + var5 + 16384; + if (var4 == 100) { + this.field2440[var3] = (this.field2440[var3] & 16256) + var5 + 16384; } - if (var4 == 120) { // L: 351 - this.method3909(var3); + if (var4 == 120) { + this.method3750(var3); } - if (var4 == 121) { // L: 352 - this.method3873(var3); + if (var4 == 121) { + this.method3769(var3); } - if (var4 == 123) { // L: 353 - this.method3874(var3); + if (var4 == 123) { + this.method3805(var3); } int var6; - if (var4 == 6) { // L: 354 - var6 = this.field2441[var3]; // L: 355 - if (var6 == 16384) { // L: 356 - this.field2451[var3] = (var5 << 7) + (this.field2451[var3] & -16257); + if (var4 == 6) { + var6 = this.field2440[var3]; + if (var6 == 16384) { + this.field2434[var3] = (var5 << 7) + (this.field2434[var3] & -16257); } } - if (var4 == 38) { // L: 358 - var6 = this.field2441[var3]; // L: 359 - if (var6 == 16384) { // L: 360 - this.field2451[var3] = var5 + (this.field2451[var3] & -128); + if (var4 == 38) { + var6 = this.field2440[var3]; + if (var6 == 16384) { + this.field2434[var3] = var5 + (this.field2434[var3] & -128); } } - if (var4 == 16) { // L: 362 - this.field2452[var3] = (var5 << 7) + (this.field2452[var3] & -16257); + if (var4 == 16) { + this.field2430[var3] = (var5 << 7) + (this.field2430[var3] & -16257); } - if (var4 == 48) { // L: 363 - this.field2452[var3] = var5 + (this.field2452[var3] & -128); + if (var4 == 48) { + this.field2430[var3] = var5 + (this.field2430[var3] & -128); } - if (var4 == 81) { // L: 364 - if (var5 >= 64) { // L: 365 - var10000 = this.field2449; + if (var4 == 81) { + if (var5 >= 64) { + var10000 = this.field2454; var10000[var3] |= 4; } else { - this.method3896(var3); // L: 367 - var10000 = this.field2449; // L: 368 + this.method3773(var3); + var10000 = this.field2454; var10000[var3] &= -5; } } if (var4 == 17) { - this.method3879(var3, (var5 << 7) + (this.field2453[var3] & -16257)); // L: 371 + this.method3775(var3, (var5 << 7) + (this.field2444[var3] & -16257)); } - if (var4 == 49) { // L: 372 - this.method3879(var3, var5 + (this.field2453[var3] & -128)); + if (var4 == 49) { + this.method3775(var3, var5 + (this.field2444[var3] & -128)); } - } else if (var2 == 192) { // L: 375 - var3 = var1 & 15; // L: 376 - var4 = var1 >> 8 & 127; // L: 377 - this.method3929(var3, var4 + this.field2459[var3]); // L: 378 - } else if (var2 == 208) { // L: 381 - var3 = var1 & 15; // L: 382 - var4 = var1 >> 8 & 127; // L: 383 - this.method3870(var3, var4); // L: 384 - } else if (var2 == 224) { // L: 387 - var3 = var1 & 15; // L: 388 - var4 = (var1 >> 8 & 127) + (var1 >> 9 & 16256); // L: 389 - this.method3854(var3, var4); // L: 390 + } else if (var2 == 192) { + var3 = var1 & 15; + var4 = var1 >> 8 & 127; + this.method3761(var3, var4 + this.field2436[var3]); + } else if (var2 == 208) { + var3 = var1 & 15; + var4 = var1 >> 8 & 127; + this.method3777(var3, var4); + } else if (var2 == 224) { + var3 = var1 & 15; + var4 = (var1 >> 8 & 127) + (var1 >> 9 & 16256); + this.method3767(var3, var4); } else { - var2 = var1 & 255; // L: 393 - if (var2 == 255) { // L: 394 - this.method3875(); // L: 395 + var2 = var1 & 255; + if (var2 == 255) { + this.method3842(); } } - } // L: 303 311 318 373 379 385 391 396 398 - - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "-1675086749" - ) - void method3879(int var1, int var2) { - this.field2453[var1] = var2; // L: 401 - this.field2454[var1] = (int)(2097152.0D * Math.pow(2.0D, 5.4931640625E-4D * (double)var2) + 0.5D); // L: 402 - } // L: 403 - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(Lhl;B)I", - garbageValue = "12" - ) - int method3880(MusicPatchNode var1) { - int var2 = (var1.field2474 * var1.field2470 >> 12) + var1.field2472; // L: 406 - var2 += (this.field2435[var1.field2479] - 8192) * this.field2451[var1.field2479] >> 12; // L: 407 - MusicPatchNode2 var3 = var1.field2464; // L: 408 - int var4; - if (var3.field2424 > 0 && (var3.field2418 > 0 || this.field2436[var1.field2479] > 0)) { // L: 409 - var4 = var3.field2418 << 2; // L: 410 - int var5 = var3.field2425 << 1; // L: 411 - if (var1.field2480 < var5) { // L: 412 - var4 = var4 * var1.field2480 / var5; - } - - var4 += this.field2436[var1.field2479] >> 7; // L: 413 - double var6 = Math.sin(0.01227184630308513D * (double)(var1.field2467 & 511)); // L: 414 - var2 += (int)(var6 * (double)var4); // L: 415 - } - - var4 = (int)((double)(var1.rawSound.sampleRate * 256) * Math.pow(2.0D, 3.255208333333333E-4D * (double)var2) / (double)PcmPlayer.field1442 + 0.5D); // L: 417 - return var4 < 1 ? 1 : var4; // L: 418 } - @ObfuscatedName("as") + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "(Lhl;I)I", - garbageValue = "1185861696" + descriptor = "(III)V", + garbageValue = "368361036" ) - int method3881(MusicPatchNode var1) { - MusicPatchNode2 var2 = var1.field2464; // L: 422 - int var3 = this.field2438[var1.field2479] * this.field2450[var1.field2479] + 4096 >> 13; // L: 423 - var3 = var3 * var3 + 16384 >> 15; // L: 424 - var3 = var3 * var1.field2469 + 16384 >> 15; // L: 425 - var3 = var3 * this.field2440 + 128 >> 8; // L: 426 - if (var2.field2419 > 0) { // L: 427 - var3 = (int)((double)var3 * Math.pow(0.5D, 1.953125E-5D * (double)var1.field2475 * (double)var2.field2419) + 0.5D); // L: 428 + void method3775(int var1, int var2) { + this.field2444[var1] = var2; + this.field2442[var1] = (int)(2097152.0D * Math.pow(2.0D, (double)var2 * 5.4931640625E-4D) + 0.5D); + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(Lhn;I)I", + garbageValue = "-1046287806" + ) + int method3776(MusicPatchNode var1) { + int var2 = (var1.field2466 * var1.field2464 >> 12) + var1.field2476; + var2 += (this.field2441[var1.field2477] - 8192) * this.field2434[var1.field2477] >> 12; + MusicPatchNode2 var3 = var1.field2459; + int var4; + if (var3.field2416 > 0 && (var3.field2415 > 0 || this.field2438[var1.field2477] > 0)) { + var4 = var3.field2415 << 2; + int var5 = var3.field2409 << 1; + if (var1.field2468 < var5) { + var4 = var4 * var1.field2468 / var5; + } + + var4 += this.field2438[var1.field2477] >> 7; + double var6 = Math.sin((double)(var1.field2469 & 511) * 0.01227184630308513D); + var2 += (int)((double)var4 * var6); + } + + var4 = (int)((double)(var1.rawSound.sampleRate * 256) * Math.pow(2.0D, (double)var2 * 3.255208333333333E-4D) / (double)PcmPlayer.field1443 + 0.5D); + return var4 < 1 ? 1 : var4; + } + + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "(Lhn;I)I", + garbageValue = "1961596880" + ) + int method3849(MusicPatchNode var1) { + MusicPatchNode2 var2 = var1.field2459; + int var3 = this.field2433[var1.field2477] * this.field2446[var1.field2477] + 4096 >> 13; + var3 = var3 * var3 + 16384 >> 15; + var3 = var3 * var1.field2462 + 16384 >> 15; + var3 = var3 * this.field2429 + 128 >> 8; + if (var2.field2410 > 0) { + var3 = (int)((double)var3 * Math.pow(0.5D, 1.953125E-5D * (double)var1.field2467 * (double)var2.field2410) + 0.5D); } int var4; int var5; int var6; int var7; - if (var2.field2423 != null) { // L: 430 - var4 = var1.field2476; // L: 431 - var5 = var2.field2423[var1.field2477 + 1]; // L: 432 - if (var1.field2477 < var2.field2423.length - 2) { // L: 433 - var6 = (var2.field2423[var1.field2477] & 255) << 8; // L: 434 - var7 = (var2.field2423[var1.field2477 + 2] & 255) << 8; // L: 435 - var5 += (var2.field2423[var1.field2477 + 3] - var5) * (var4 - var6) / (var7 - var6); // L: 436 + if (var2.field2411 != null) { + var4 = var1.field2465; + var5 = var2.field2411[var1.field2472 * 2 + 1]; + if (var1.field2472 * 2 < var2.field2411.length - 2) { + var6 = (var2.field2411[var1.field2472 * 2] & 255) << 8; + var7 = (var2.field2411[var1.field2472 * 2 + 2] & 255) << 8; + var5 += (var2.field2411[var1.field2472 * 2 + 3] - var5) * (var4 - var6) / (var7 - var6); } - var3 = var5 * var3 + 32 >> 6; // L: 438 + var3 = var3 * var5 + 32 >> 6; } - if (var1.field2473 > 0 && var2.field2426 != null) { // L: 440 - var4 = var1.field2473; // L: 441 - var5 = var2.field2426[var1.field2485 + 1]; // L: 442 - if (var1.field2485 < var2.field2426.length - 2) { // L: 443 - var6 = (var2.field2426[var1.field2485] & 255) << 8; // L: 444 - var7 = (var2.field2426[var1.field2485 + 2] & 255) << 8; // L: 445 - var5 += (var4 - var6) * (var2.field2426[var1.field2485 + 3] - var5) / (var7 - var6); // L: 446 + if (var1.field2470 > 0 && var2.field2412 != null) { + var4 = var1.field2470; + var5 = var2.field2412[var1.field2471 * 4 + 1]; + if (var1.field2471 * 4 < var2.field2412.length - 2) { + var6 = (var2.field2412[var1.field2471 * 4] & 255) << 8; + var7 = (var2.field2412[var1.field2471 * 4 + 2] & 255) << 8; + var5 += (var4 - var6) * (var2.field2412[var1.field2471 * 4 + 3] - var5) / (var7 - var6); } - var3 = var5 * var3 + 32 >> 6; // L: 448 + var3 = var3 * var5 + 32 >> 6; } - return var3; // L: 450 + return var3; } - @ObfuscatedName("aj") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lhl;B)I", - garbageValue = "-20" + descriptor = "(Lhn;S)I", + garbageValue = "-9329" ) - int method3882(MusicPatchNode var1) { - int var2 = this.field2448[var1.field2479]; // L: 454 - return var2 < 8192 ? var2 * var1.field2465 + 32 >> 6 : 16384 - ((128 - var1.field2465) * (16384 - var2) + 32 >> 6); // L: 455 456 + int method3854(MusicPatchNode var1) { + int var2 = this.field2432[var1.field2477]; + return var2 < 8192 ? var2 * var1.field2463 + 32 >> 6 : 16384 - ((128 - var1.field2463) * (16384 - var2) + 32 >> 6); } - @ObfuscatedName("ae") + @ObfuscatedName("bh") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "74" + descriptor = "(I)V", + garbageValue = "1360483838" ) - void method3888() { - int var1 = this.track; // L: 513 - int var2 = this.trackLength; // L: 514 + void method3784() { + int var1 = this.track; + int var2 = this.trackLength; long var3; - for (var3 = this.field2445; var2 == this.trackLength; var3 = this.midiFile.method4025(var2)) { // L: 515 516 538 - while (var2 == this.midiFile.trackLengths[var1]) { // L: 517 - this.midiFile.gotoTrack(var1); // L: 518 - int var5 = this.midiFile.readMessage(var1); // L: 519 - if (var5 == 1) { // L: 520 - this.midiFile.setTrackDone(); // L: 521 - this.midiFile.markTrackPosition(var1); // L: 522 - if (this.midiFile.isDone()) { // L: 523 - if (!this.field2458 || var2 == 0) { // L: 524 - this.method3875(); // L: 528 - this.midiFile.clear(); // L: 529 - return; // L: 530 + for (var3 = this.field2453; var2 == this.trackLength; var3 = this.midiFile.method3878(var2)) { + while (var2 == this.midiFile.trackLengths[var1]) { + this.midiFile.gotoTrack(var1); + int var5 = this.midiFile.readMessage(var1); + if (var5 == 1) { + this.midiFile.setTrackDone(); + this.midiFile.markTrackPosition(var1); + if (this.midiFile.isDone()) { + if (!this.field2449 || var2 == 0) { + this.method3842(); + this.midiFile.clear(); + return; } - this.midiFile.reset(var3); // L: 525 + this.midiFile.reset(var3); } break; } - if ((var5 & 128) != 0) { // L: 532 - this.method3908(var5); + if ((var5 & 128) != 0) { + this.method3774(var5); } - this.midiFile.readTrackLength(var1); // L: 533 - this.midiFile.markTrackPosition(var1); // L: 534 + this.midiFile.readTrackLength(var1); + this.midiFile.markTrackPosition(var1); } - var1 = this.midiFile.getPrioritizedTrack(); // L: 536 - var2 = this.midiFile.trackLengths[var1]; // L: 537 + var1 = this.midiFile.getPrioritizedTrack(); + var2 = this.midiFile.trackLengths[var1]; } - this.track = var1; // L: 540 - this.trackLength = var2; // L: 541 - this.field2445 = var3; // L: 542 - } // L: 543 + this.track = var1; + this.trackLength = var2; + this.field2453 = var3; + } - @ObfuscatedName("al") + @ObfuscatedName("by") @ObfuscatedSignature( - descriptor = "(Lhl;I)Z", - garbageValue = "1703844968" + descriptor = "(Lhn;I)Z", + garbageValue = "610995738" ) - boolean method3889(MusicPatchNode var1) { - if (var1.stream == null) { // L: 546 - if (var1.field2473 >= 0) { // L: 547 - var1.remove(); // L: 548 - if (var1.field2468 > 0 && var1 == this.field2456[var1.field2479][var1.field2468]) { // L: 549 - this.field2456[var1.field2479][var1.field2468] = null; // L: 550 + boolean method3851(MusicPatchNode var1) { + if (var1.stream == null) { + if (var1.field2470 >= 0) { + var1.remove(); + if (var1.field2460 > 0 && var1 == this.field2447[var1.field2477][var1.field2460]) { + this.field2447[var1.field2477][var1.field2460] = null; } } - return true; // L: 553 + return true; } else { - return false; // L: 555 + return false; } } - @ObfuscatedName("ap") + @ObfuscatedName("bs") @ObfuscatedSignature( - descriptor = "(Lhl;[IIIB)Z", - garbageValue = "-77" + descriptor = "(Lhn;[IIII)Z", + garbageValue = "-638435532" ) - boolean method3877(MusicPatchNode var1, int[] var2, int var3, int var4) { - var1.field2483 = PcmPlayer.field1442 / 100; // L: 559 - if (var1.field2473 < 0 || var1.stream != null && !var1.stream.method2690()) { // L: 560 - int var5 = var1.field2474; // L: 568 - if (var5 > 0) { // L: 569 - var5 -= (int)(16.0D * Math.pow(2.0D, (double)this.field2444[var1.field2479] * 4.921259842519685E-4D) + 0.5D); // L: 570 - if (var5 < 0) { // L: 571 + boolean method3786(MusicPatchNode var1, int[] var2, int var3, int var4) { + var1.field2475 = PcmPlayer.field1443 / 100; + if (var1.field2470 < 0 || var1.stream != null && !var1.stream.method2623()) { + int var5 = var1.field2466; + if (var5 > 0) { + var5 -= (int)(16.0D * Math.pow(2.0D, (double)this.field2439[var1.field2477] * 4.921259842519685E-4D) + 0.5D); + if (var5 < 0) { var5 = 0; } - var1.field2474 = var5; // L: 572 + var1.field2466 = var5; } - var1.stream.method2733(this.method3880(var1)); // L: 574 - MusicPatchNode2 var6 = var1.field2464; // L: 575 - boolean var7 = false; // L: 576 - ++var1.field2480; // L: 577 - var1.field2467 += var6.field2424; // L: 578 - double var8 = 5.086263020833333E-6D * (double)((var1.field2466 - 60 << 8) + (var1.field2470 * var1.field2474 >> 12)); // L: 579 - if (var6.field2419 > 0) { // L: 580 - if (var6.field2422 > 0) { // L: 581 - var1.field2475 += (int)(128.0D * Math.pow(2.0D, (double)var6.field2422 * var8) + 0.5D); + var1.stream.method2621(this.method3776(var1)); + MusicPatchNode2 var6 = var1.field2459; + boolean var7 = false; + ++var1.field2468; + var1.field2469 += var6.field2416; + double var8 = 5.086263020833333E-6D * (double)((var1.field2461 - 60 << 8) + (var1.field2466 * var1.field2464 >> 12)); + if (var6.field2410 > 0) { + if (var6.field2414 > 0) { + var1.field2467 += (int)(128.0D * Math.pow(2.0D, var8 * (double)var6.field2414) + 0.5D); } else { - var1.field2475 += 128; // L: 582 + var1.field2467 += 128; } } - if (var6.field2423 != null) { // L: 584 - if (var6.field2420 > 0) { // L: 585 - var1.field2476 += (int)(128.0D * Math.pow(2.0D, var8 * (double)var6.field2420) + 0.5D); + if (var6.field2411 != null) { + if (var6.field2417 > 0) { + var1.field2465 += (int)(128.0D * Math.pow(2.0D, (double)var6.field2417 * var8) + 0.5D); } else { - var1.field2476 += 128; // L: 586 + var1.field2465 += 128; } - while (var1.field2477 < var6.field2423.length - 2 && var1.field2476 > (var6.field2423[var1.field2477 + 2] & 255) << 8) { // L: 587 - var1.field2477 += 2; + while (var1.field2472 * 2 < var6.field2411.length - 2 && var1.field2465 > (var6.field2411[var1.field2472 * 2 + 2] & 255) << 8) { + var1.field2472 = var1.field2472 * 4 + 4; } - if (var6.field2423.length - 2 == var1.field2477 && var6.field2423[var1.field2477 + 1] == 0) { // L: 588 + if (var1.field2472 * 2 == var6.field2411.length - 2 && var6.field2411[var1.field2472 * 2 + 1] == 0) { var7 = true; } } - if (var1.field2473 >= 0 && var6.field2426 != null && (this.field2449[var1.field2479] & 1) == 0 && (var1.field2468 < 0 || var1 != this.field2456[var1.field2479][var1.field2468])) { // L: 590 591 - if (var6.field2421 > 0) { // L: 592 - var1.field2473 += (int)(128.0D * Math.pow(2.0D, var8 * (double)var6.field2421) + 0.5D); + if (var1.field2470 >= 0 && var6.field2412 != null && (this.field2454[var1.field2477] & 1) == 0 && (var1.field2460 < 0 || var1 != this.field2447[var1.field2477][var1.field2460])) { + if (var6.field2413 > 0) { + var1.field2470 += (int)(128.0D * Math.pow(2.0D, (double)var6.field2413 * var8) + 0.5D); } else { - var1.field2473 += 128; // L: 593 + var1.field2470 += 128; } - while (var1.field2485 < var6.field2426.length - 2 && var1.field2473 > (var6.field2426[var1.field2485 + 2] & 255) << 8) { // L: 594 - var1.field2485 += 2; + while (var1.field2471 * 4 < var6.field2412.length - 2 && var1.field2470 > (var6.field2412[var1.field2471 * 4 + 2] & 255) << 8) { + var1.field2471 = var1.field2471 * 4 + 2; } - if (var6.field2426.length - 2 == var1.field2485) { // L: 595 + if (var1.field2471 * 4 == var6.field2412.length - 2) { var7 = true; } } - if (var7) { // L: 598 - var1.stream.method2687(var1.field2483); // L: 599 - if (var2 != null) { // L: 600 + if (var7) { + var1.stream.method2620(var1.field2475); + if (var2 != null) { var1.stream.fill(var2, var3, var4); } else { - var1.stream.skip(var4); // L: 601 + var1.stream.skip(var4); } - if (var1.stream.method2786()) { // L: 602 + if (var1.stream.method2624()) { this.patchStream.mixer.addSubStream(var1.stream); } - var1.method3971(); // L: 603 - if (var1.field2473 >= 0) { // L: 604 - var1.remove(); // L: 605 - if (var1.field2468 > 0 && var1 == this.field2456[var1.field2479][var1.field2468]) { // L: 606 - this.field2456[var1.field2479][var1.field2468] = null; // L: 607 + var1.method3860(); + if (var1.field2470 >= 0) { + var1.remove(); + if (var1.field2460 > 0 && var1 == this.field2447[var1.field2477][var1.field2460]) { + this.field2447[var1.field2477][var1.field2460] = null; } } - return true; // L: 610 + return true; } else { - var1.stream.method2686(var1.field2483, this.method3881(var1), this.method3882(var1)); // L: 612 - return false; // L: 613 + var1.stream.method2744(var1.field2475, this.method3849(var1), this.method3854(var1)); + return false; } } else { - var1.method3971(); // L: 561 - var1.remove(); // L: 562 - if (var1.field2468 > 0 && var1 == this.field2456[var1.field2479][var1.field2468]) { // L: 563 - this.field2456[var1.field2479][var1.field2468] = null; // L: 564 + var1.method3860(); + var1.remove(); + if (var1.field2460 > 0 && var1 == this.field2447[var1.field2477][var1.field2460]) { + this.field2447[var1.field2477][var1.field2460] = null; } - return true; // L: 566 + return true; } } - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1417043368" - ) - public static void method3970() { - FloorUnderlayDefinition.FloorUnderlayDefinition_cached.clear(); // L: 86 - } // L: 87 } diff --git a/runescape-client/src/main/java/MilliClock.java b/runescape-client/src/main/java/MilliClock.java index d1ab6e602a..33bd05bf50 100644 --- a/runescape-client/src/main/java/MilliClock.java +++ b/runescape-client/src/main/java/MilliClock.java @@ -4,146 +4,123 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fc") +@ObfuscatedName("fg") @Implements("MilliClock") public class MilliClock extends Clock { - @ObfuscatedName("rn") - @ObfuscatedGetter( - intValue = -1966290911 + @ObfuscatedName("sy") + @ObfuscatedSignature( + descriptor = "Lcm;" ) - static int field2048; - @ObfuscatedName("c") + @Export("friendSystem") + public static FriendSystem friendSystem; + @ObfuscatedName("h") + long[] field2030; + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 1735365545 + intValue = -367823923 ) - @Export("Interpreter_intStackSize") - static int Interpreter_intStackSize; - @ObfuscatedName("f") - long[] field2042; - @ObfuscatedName("b") + int field2031; + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 1230464275 + intValue = -830034537 ) - int field2040; - @ObfuscatedName("l") + int field2032; + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -1780413157 + longValue = 4655820028414698343L ) - int field2041; - @ObfuscatedName("m") + long field2038; + @ObfuscatedName("t") @ObfuscatedGetter( - longValue = 7922425031260846731L + intValue = 744937881 ) - long field2043; - @ObfuscatedName("z") + int field2034; + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -1604091025 + intValue = 802438317 ) - int field2047; - @ObfuscatedName("q") - @ObfuscatedGetter( - intValue = 738623211 - ) - int field2044; + int field2035; - MilliClock() { - this.field2042 = new long[10]; // L: 7 - this.field2040 = 256; // L: 15 - this.field2041 = 1; // L: 16 - this.field2047 = 0; // L: 17 - this.field2043 = User.currentTimeMillis(); // L: 18 + public MilliClock() { + this.field2030 = new long[10]; + this.field2031 = 256; + this.field2032 = 1; + this.field2034 = 0; + this.field2038 = class298.currentTimeMillis(); - for (int var1 = 0; var1 < 10; ++var1) { // L: 19 - this.field2042[var1] = this.field2043; // L: 20 + for (int var1 = 0; var1 < 10; ++var1) { + this.field2030[var1] = this.field2038; } - } // L: 22 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "345512591" + garbageValue = "2095078818" ) @Export("mark") public void mark() { - for (int var1 = 0; var1 < 10; ++var1) { // L: 25 - this.field2042[var1] = 0L; // L: 26 + for (int var1 = 0; var1 < 10; ++var1) { + this.field2030[var1] = 0L; } - } // L: 28 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(III)I", - garbageValue = "-837141414" + garbageValue = "-680717242" ) @Export("wait") public int wait(int var1, int var2) { - int var3 = this.field2040; // L: 31 - int var4 = this.field2041; // L: 32 - this.field2040 = 300; // L: 33 - this.field2041 = 1; // L: 34 - this.field2043 = User.currentTimeMillis(); // L: 35 - if (this.field2042[this.field2044] == 0L) { // L: 36 - this.field2040 = var3; // L: 37 - this.field2041 = var4; // L: 38 - } else if (this.field2043 > this.field2042[this.field2044]) { // L: 40 - this.field2040 = (int)((long)(var1 * 2560) / (this.field2043 - this.field2042[this.field2044])); + int var3 = this.field2031; + int var4 = this.field2032; + this.field2031 = 300; + this.field2032 = 1; + this.field2038 = class298.currentTimeMillis(); + if (0L == this.field2030[this.field2035]) { + this.field2031 = var3; + this.field2032 = var4; + } else if (this.field2038 > this.field2030[this.field2035]) { + this.field2031 = (int)((long)(var1 * 2560) / (this.field2038 - this.field2030[this.field2035])); } - if (this.field2040 < 25) { // L: 41 - this.field2040 = 25; + if (this.field2031 < 25) { + this.field2031 = 25; } - if (this.field2040 > 256) { // L: 42 - this.field2040 = 256; // L: 43 - this.field2041 = (int)((long)var1 - (this.field2043 - this.field2042[this.field2044]) / 10L); // L: 44 + if (this.field2031 > 256) { + this.field2031 = 256; + this.field2032 = (int)((long)var1 - (this.field2038 - this.field2030[this.field2035]) / 10L); } - if (this.field2041 > var1) { // L: 46 - this.field2041 = var1; + if (this.field2032 > var1) { + this.field2032 = var1; } - this.field2042[this.field2044] = this.field2043; // L: 47 - this.field2044 = (this.field2044 + 1) % 10; // L: 48 + this.field2030[this.field2035] = this.field2038; + this.field2035 = (this.field2035 + 1) % 10; int var5; - if (this.field2041 > 1) { // L: 49 - for (var5 = 0; var5 < 10; ++var5) { // L: 50 - if (this.field2042[var5] != 0L) { // L: 51 - this.field2042[var5] += (long)this.field2041; + if (this.field2032 > 1) { + for (var5 = 0; var5 < 10; ++var5) { + if (this.field2030[var5] != 0L) { + this.field2030[var5] += (long)this.field2032; } } } - if (this.field2041 < var2) { // L: 54 - this.field2041 = var2; + if (this.field2032 < var2) { + this.field2032 = var2; } - WorldMapSection3.sleepExact((long)this.field2041); // L: 55 + class236.sleepExact((long)this.field2032); - for (var5 = 0; this.field2047 < 256; this.field2047 += this.field2040) { // L: 56 57 59 - ++var5; // L: 58 + for (var5 = 0; this.field2034 < 256; this.field2034 += this.field2031) { + ++var5; } - this.field2047 &= 255; // L: 61 - return var5; // L: 62 - } - - @ObfuscatedName("ex") - @ObfuscatedSignature( - descriptor = "(IS)I", - garbageValue = "152" - ) - static int method3587(int var0) { - return var0 * 3 + 600; // L: 1918 - } - - @ObfuscatedName("kw") - @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-26" - ) - public static boolean method3590() { - return Client.staffModLevel >= 2; // L: 11656 + this.field2034 &= 255; + return var5; } } diff --git a/runescape-client/src/main/java/ModeWhere.java b/runescape-client/src/main/java/ModeWhere.java index d0370f6774..dea23493b9 100644 --- a/runescape-client/src/main/java/ModeWhere.java +++ b/runescape-client/src/main/java/ModeWhere.java @@ -7,436 +7,307 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("gc") +@ObfuscatedName("ge") @Implements("ModeWhere") public enum ModeWhere implements Enumerated { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lgc;" + descriptor = "Lge;" ) - field2400("", 0, new class200[]{class200.field2392}), - @ObfuscatedName("b") + field2402("", 0, new class200[]{class200.field2389}), + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lgc;" + descriptor = "Lge;" ) - field2396("", 1, new class200[]{class200.field2390, class200.field2392}), - @ObfuscatedName("l") + field2392("", 1, new class200[]{class200.field2388, class200.field2389}), + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lgc;" + descriptor = "Lge;" ) - field2395("", 2, new class200[]{class200.field2390, class200.field2391, class200.field2392}), - @ObfuscatedName("m") + field2391("", 2, new class200[]{class200.field2388, class200.field2387, class200.field2389}), + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lgc;" + descriptor = "Lge;" ) - field2398("", 3, new class200[]{class200.field2390}), - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "Lgc;" - ) - field2397("", 4), - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "Lgc;" - ) - field2405("", 5, new class200[]{class200.field2390, class200.field2392}), - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "Lgc;" - ) - field2402("", 6, new class200[]{class200.field2392}), - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "Lgc;" - ) - field2401("", 8, new class200[]{class200.field2390, class200.field2392}), - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "Lgc;" - ) - field2403("", 9, new class200[]{class200.field2390, class200.field2391}), + field2397("", 3, new class200[]{class200.field2388}), @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lgc;" + descriptor = "Lge;" ) - field2404("", 10, new class200[]{class200.field2390}), - @ObfuscatedName("e") + field2395("", 4), + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lgc;" + descriptor = "Lge;" ) - field2409("", 11, new class200[]{class200.field2390}), - @ObfuscatedName("o") - @ObfuscatedSignature( - descriptor = "Lgc;" - ) - field2406("", 12, new class200[]{class200.field2390, class200.field2392}), + field2396("", 5, new class200[]{class200.field2388, class200.field2389}), @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Lgc;" + descriptor = "Lge;" ) - field2407("", 13, new class200[]{class200.field2390}); - - @ObfuscatedName("gy") + field2406("", 6, new class200[]{class200.field2389}), + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "Lef;" + descriptor = "Lge;" ) - @Export("scene") - static Scene scene; - @ObfuscatedName("x") + field2398("", 8, new class200[]{class200.field2388, class200.field2389}), + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "Lge;" + ) + field2399("", 9, new class200[]{class200.field2388, class200.field2387}), + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "Lge;" + ) + field2400("", 10, new class200[]{class200.field2388}), + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "Lge;" + ) + field2401("", 11, new class200[]{class200.field2388}), + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "Lge;" + ) + field2393("", 12, new class200[]{class200.field2388, class200.field2389}), + @ObfuscatedName("m") + @ObfuscatedSignature( + descriptor = "Lge;" + ) + field2403("", 13, new class200[]{class200.field2388}); + + @ObfuscatedName("ru") @ObfuscatedGetter( - intValue = 797439581 + intValue = -1945883965 + ) + static int field2405; + @ObfuscatedName("c") + @ObfuscatedGetter( + intValue = -594815881 ) @Export("id") final int id; - @ObfuscatedName("p") - final Set field2399; - - static { - method3813(); // L: 28 - } // L: 29 + @ObfuscatedName("i") + final Set field2404; @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I[Lgj;)V" + descriptor = "(Ljava/lang/String;I[Lgp;)V" ) ModeWhere(String var3, int var4, class200[] var5) { - this.field2399 = new HashSet(); - this.id = var4; // L: 43 - class200[] var6 = var5; // L: 45 + this.field2404 = new HashSet(); + this.id = var4; + class200[] var6 = var5; for (int var7 = 0; var7 < var6.length; ++var7) { class200 var8 = var6[var7]; - this.field2399.add(var8); // L: 48 + this.field2404.add(var8); } - } // L: 51 + } ModeWhere(String var3, int var4) { - this.field2399 = new HashSet(); // L: 32 - this.id = var4; // L: 39 - } // L: 40 - - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "23" - ) - @Export("rsOrdinal") - public int rsOrdinal() { - return this.id; // L: 54 + this.field2404 = new HashSet(); + this.id = var4; } - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(B)[Lgc;", - garbageValue = "52" - ) - static ModeWhere[] method3813() { - return new ModeWhere[]{field2404, field2409, field2396, field2403, field2401, field2406, field2395, field2400, field2402, field2397, field2405, field2398, field2407}; // L: 35 - } - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(Llc;IIII)V", - garbageValue = "13725684" - ) - static void method3814(Sprite var0, int var1, int var2, int var3) { - WorldMapRegion.WorldMapRegion_cachedSprites.put(var0, class8.method117(var1, var2, var3), var0.pixels.length * 4); // L: 46 - } // L: 47 - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "([Lcf;II[I[IB)V", - garbageValue = "48" - ) - @Export("sortWorlds") - static void sortWorlds(World[] var0, int var1, int var2, int[] var3, int[] var4) { - if (var1 < var2) { // L: 81 - int var5 = var1 - 1; // L: 82 - int var6 = var2 + 1; // L: 83 - int var7 = (var2 + var1) / 2; // L: 84 - World var8 = var0[var7]; // L: 85 - var0[var7] = var0[var1]; // L: 86 - var0[var1] = var8; // L: 87 - - while (var5 < var6) { // L: 88 - boolean var9 = true; // L: 89 - - int var10; - int var11; - int var12; - do { - --var6; // L: 91 - - for (var10 = 0; var10 < 4; ++var10) { // L: 92 - if (var3[var10] == 2) { // L: 95 - var11 = var0[var6].index; // L: 96 - var12 = var8.index; // L: 97 - } else if (var3[var10] == 1) { // L: 99 - var11 = var0[var6].population; // L: 100 - var12 = var8.population; // L: 101 - if (var11 == -1 && var4[var10] == 1) { // L: 102 - var11 = 2001; - } - - if (var12 == -1 && var4[var10] == 1) { // L: 103 - var12 = 2001; - } - } else if (var3[var10] == 3) { // L: 105 - var11 = var0[var6].isMembersOnly() ? 1 : 0; // L: 106 - var12 = var8.isMembersOnly() ? 1 : 0; // L: 107 - } else { - var11 = var0[var6].id; // L: 110 - var12 = var8.id; // L: 111 - } - - if (var12 != var11) { // L: 113 - if ((var4[var10] != 1 || var11 <= var12) && (var4[var10] != 0 || var11 >= var12)) { // L: 116 117 - var9 = false; // L: 119 - } - break; - } - - if (var10 == 3) { // L: 114 - var9 = false; - } - } - } while(var9); - - var9 = true; // L: 124 - - do { - ++var5; // L: 126 - - for (var10 = 0; var10 < 4; ++var10) { // L: 127 - if (var3[var10] == 2) { // L: 130 - var11 = var0[var5].index; - var12 = var8.index; - } else if (var3[var10] == 1) { - var11 = var0[var5].population; - var12 = var8.population; - if (var11 == -1 && var4[var10] == 1) { - var11 = 2001; - } - - if (var12 == -1 && var4[var10] == 1) { - var12 = 2001; - } - } else if (var3[var10] == 3) { - var11 = var0[var5].isMembersOnly() ? 1 : 0; - var12 = var8.isMembersOnly() ? 1 : 0; - } else { - var11 = var0[var5].id; - var12 = var8.id; - } - - if (var12 != var11) { - if ((var4[var10] != 1 || var11 >= var12) && (var4[var10] != 0 || var11 <= var12)) { - var9 = false; - } - break; - } - - if (var10 == 3) { - var9 = false; - } - } - } while(var9); - - if (var5 < var6) { // L: 159 - World var13 = var0[var5]; // L: 160 - var0[var5] = var0[var6]; // L: 161 - var0[var6] = var13; // L: 162 - } - } - - sortWorlds(var0, var1, var6, var3, var4); // L: 165 - sortWorlds(var0, var6 + 1, var2, var3, var4); // L: 166 - } - - } // L: 168 - @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Leh;IIIB)Z", - garbageValue = "127" + descriptor = "(I)I", + garbageValue = "-275768542" ) - static final boolean method3818(Model var0, int var1, int var2, int var3) { - if (!WorldMapSection2.method425()) { // L: 131 - return false; + @Export("rsOrdinal") + public int rsOrdinal() { + return this.id; + } + + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "(ILcs;ZI)I", + garbageValue = "1236741986" + ) + static int method3717(int var0, Script var1, boolean var2) { + Widget var3; + if (var0 >= 2000) { + var0 -= 1000; + var3 = CollisionMap.getWidget(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); } else { - class238.method4271(); // L: 132 - int var4 = var0.xMid + var1; // L: 133 - int var5 = var2 + var0.yMid; // L: 134 - int var6 = var3 + var0.zMid; // L: 135 - int var7 = var0.xMidOffset; // L: 136 - int var8 = var0.yMidOffset; // L: 137 - int var9 = var0.zMidOffset; // L: 138 - int var10 = ViewportMouse.field1770 - var4; // L: 139 - int var11 = WorldMapEvent.field377 - var5; // L: 140 - int var12 = ViewportMouse.field1768 - var6; // L: 141 - if (Math.abs(var10) > var7 + class1.field3) { // L: 142 - return false; // L: 143 - } else if (Math.abs(var11) > var8 + ItemContainer.field570) { // L: 145 - return false; // L: 146 - } else if (Math.abs(var12) > var9 + ViewportMouse.field1772) { // L: 148 - return false; // L: 149 - } else if (Math.abs(var12 * GrandExchangeOfferTotalQuantityComparator.field81 - var11 * SecureRandomCallable.field553) > var9 * ItemContainer.field570 + var8 * ViewportMouse.field1772) { // L: 151 - return false; // L: 152 - } else if (Math.abs(var10 * SecureRandomCallable.field553 - var12 * ViewportMouse.field1771) > var7 * ViewportMouse.field1772 + var9 * class1.field3) { // L: 154 - return false; // L: 155 + var3 = var2 ? PlayerAppearance.field2561 : VarcInt.field3264; + } + + String var4 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + int[] var5 = null; + if (var4.length() > 0 && var4.charAt(var4.length() - 1) == 'Y') { + int var6 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (var6 > 0) { + for (var5 = new int[var6]; var6-- > 0; var5[var6] = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]) { + } + } + + var4 = var4.substring(0, var4.length() - 1); + } + + Object[] var8 = new Object[var4.length() + 1]; + + int var7; + for (var7 = var8.length - 1; var7 >= 1; --var7) { + if (var4.charAt(var7 - 1) == 's') { + var8[var7] = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; } else { - return Math.abs(var11 * ViewportMouse.field1771 - var10 * GrandExchangeOfferTotalQuantityComparator.field81) <= var7 * ItemContainer.field570 + var8 * class1.field3; // L: 157 + var8[var7] = new Integer(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); } } - } - @ObfuscatedName("ay") - @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "1986323726" - ) - static int method3806(int var0, Script var1, boolean var2) { - int var6; - if (var0 == ScriptOpcodes.OC_NAME) { // L: 2736 - var6 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2737 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = AbstractWorldMapData.ItemDefinition_get(var6).name; // L: 2738 - return 1; // L: 2739 + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (var7 != -1) { + var8[0] = new Integer(var7); } else { - int var4; - ItemDefinition var5; - if (var0 == ScriptOpcodes.OC_OP) { // L: 2741 - MilliClock.Interpreter_intStackSize -= 2; // L: 2742 - var6 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2743 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2744 - var5 = AbstractWorldMapData.ItemDefinition_get(var6); // L: 2745 - if (var4 >= 1 && var4 <= 5 && var5.groundActions[var4 - 1] != null) { // L: 2746 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var5.groundActions[var4 - 1]; - } else { - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 2747 - } - - return 1; // L: 2748 - } else if (var0 == ScriptOpcodes.OC_IOP) { // L: 2750 - MilliClock.Interpreter_intStackSize -= 2; // L: 2751 - var6 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2752 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2753 - var5 = AbstractWorldMapData.ItemDefinition_get(var6); // L: 2754 - if (var4 >= 1 && var4 <= 5 && var5.inventoryActions[var4 - 1] != null) { // L: 2755 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var5.inventoryActions[var4 - 1]; - } else { - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 2756 - } - - return 1; // L: 2757 - } else if (var0 == ScriptOpcodes.OC_COST) { // L: 2759 - var6 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2760 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = AbstractWorldMapData.ItemDefinition_get(var6).price; // L: 2761 - return 1; // L: 2762 - } else if (var0 == ScriptOpcodes.OC_STACKABLE) { // L: 2764 - var6 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2765 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = AbstractWorldMapData.ItemDefinition_get(var6).isStackable == 1 ? 1 : 0; // L: 2766 - return 1; // L: 2767 - } else { - ItemDefinition var7; - if (var0 == ScriptOpcodes.OC_CERT) { // L: 2769 - var6 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2770 - var7 = AbstractWorldMapData.ItemDefinition_get(var6); // L: 2771 - if (var7.noteTemplate == -1 && var7.note >= 0) { // L: 2772 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var7.note; - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var6; // L: 2773 - } - - return 1; // L: 2774 - } else if (var0 == ScriptOpcodes.OC_UNCERT) { // L: 2776 - var6 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2777 - var7 = AbstractWorldMapData.ItemDefinition_get(var6); // L: 2778 - if (var7.noteTemplate >= 0 && var7.note >= 0) { // L: 2779 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var7.note; - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var6; // L: 2780 - } - - return 1; // L: 2781 - } else if (var0 == ScriptOpcodes.OC_MEMBERS) { // L: 2783 - var6 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2784 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = AbstractWorldMapData.ItemDefinition_get(var6).isMembersOnly ? 1 : 0; // L: 2785 - return 1; // L: 2786 - } else if (var0 == ScriptOpcodes.OC_PLACEHOLDER) { // L: 2788 - var6 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2789 - var7 = AbstractWorldMapData.ItemDefinition_get(var6); // L: 2790 - if (var7.placeholderTemplate == -1 && var7.placeholder >= 0) { // L: 2791 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var7.placeholder; - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var6; // L: 2792 - } - - return 1; // L: 2793 - } else if (var0 == ScriptOpcodes.OC_UNPLACEHOLDER) { // L: 2795 - var6 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2796 - var7 = AbstractWorldMapData.ItemDefinition_get(var6); // L: 2797 - if (var7.placeholderTemplate >= 0 && var7.placeholder >= 0) { // L: 2798 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var7.placeholder; - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var6; // L: 2799 - } - - return 1; // L: 2800 - } else if (var0 == ScriptOpcodes.OC_FIND) { // L: 2802 - String var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2803 - var4 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2804 - class22.findItemDefinitions(var3, var4 == 1); // L: 2805 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = PendingSpawn.foundItemIdCount; // L: 2806 - return 1; // L: 2807 - } else if (var0 != ScriptOpcodes.OC_FINDNEXT) { // L: 2809 - if (var0 == ScriptOpcodes.OC_FINDRESET) { // L: 2814 - AbstractWorldMapIcon.foundItemIndex = 0; // L: 2815 - return 1; // L: 2816 - } else { - return 2; // L: 2818 - } - } else { - if (Message.foundItemIds != null && AbstractWorldMapIcon.foundItemIndex < PendingSpawn.foundItemIdCount) { // L: 2810 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Message.foundItemIds[++AbstractWorldMapIcon.foundItemIndex - 1] & '\uffff'; // L: 2811 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; - } - - return 1; // L: 2812 - } - } + var8 = null; } + + if (var0 == ScriptOpcodes.CC_SETONCLICK) { + var3.onClick = var8; + } else if (var0 == ScriptOpcodes.CC_SETONHOLD) { + var3.onHold = var8; + } else if (var0 == ScriptOpcodes.CC_SETONRELEASE) { + var3.onRelease = var8; + } else if (var0 == ScriptOpcodes.CC_SETONMOUSEOVER) { + var3.onMouseOver = var8; + } else if (var0 == ScriptOpcodes.CC_SETONMOUSELEAVE) { + var3.onMouseLeave = var8; + } else if (var0 == ScriptOpcodes.CC_SETONDRAG) { + var3.onDrag = var8; + } else if (var0 == ScriptOpcodes.CC_SETONTARGETLEAVE) { + var3.onTargetLeave = var8; + } else if (var0 == ScriptOpcodes.CC_SETONVARTRANSMIT) { + var3.onVarTransmit = var8; + var3.varTransmitTriggers = var5; + } else if (var0 == ScriptOpcodes.CC_SETONTIMER) { + var3.onTimer = var8; + } else if (var0 == ScriptOpcodes.CC_SETONOP) { + var3.onOp = var8; + } else if (var0 == ScriptOpcodes.CC_SETONDRAGCOMPLETE) { + var3.onDragComplete = var8; + } else if (var0 == ScriptOpcodes.CC_SETONCLICKREPEAT) { + var3.onClickRepeat = var8; + } else if (var0 == ScriptOpcodes.CC_SETONMOUSEREPEAT) { + var3.onMouseRepeat = var8; + } else if (var0 == ScriptOpcodes.CC_SETONINVTRANSMIT) { + var3.onInvTransmit = var8; + var3.invTransmitTriggers = var5; + } else if (var0 == ScriptOpcodes.CC_SETONSTATTRANSMIT) { + var3.onStatTransmit = var8; + var3.statTransmitTriggers = var5; + } else if (var0 == ScriptOpcodes.CC_SETONTARGETENTER) { + var3.onTargetEnter = var8; + } else if (var0 == ScriptOpcodes.CC_SETONSCROLLWHEEL) { + var3.onScroll = var8; + } else if (var0 == ScriptOpcodes.CC_SETONCHATTRANSMIT) { + var3.onChatTransmit = var8; + } else if (var0 == ScriptOpcodes.CC_SETONKEY) { + var3.onKey = var8; + } else if (var0 == ScriptOpcodes.CC_SETONFRIENDTRANSMIT) { + var3.onFriendTransmit = var8; + } else if (var0 == ScriptOpcodes.CC_SETONCLANTRANSMIT) { + var3.onClanTransmit = var8; + } else if (var0 == ScriptOpcodes.CC_SETONMISCTRANSMIT) { + var3.onMiscTransmit = var8; + } else if (var0 == ScriptOpcodes.CC_SETONDIALOGABORT) { + var3.onDialogAbort = var8; + } else if (var0 == ScriptOpcodes.CC_SETONSUBCHANGE) { + var3.onSubChange = var8; + } else if (var0 == ScriptOpcodes.CC_SETONSTOCKTRANSMIT) { + var3.onStockTransmit = var8; + } else if (var0 == 1426) { + var3.field2703 = var8; + } else { + if (var0 != ScriptOpcodes.CC_SETONRESIZE) { + return 2; + } + + var3.onResize = var8; + } + + var3.hasListener = true; + return 1; } - @ObfuscatedName("ju") + @ObfuscatedName("iq") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-1868104521" + descriptor = "(ZLky;B)V", + garbageValue = "57" ) - @Export("getTapToDrop") - static boolean getTapToDrop() { - return Client.tapToDrop; // L: 10338 - } + static final void method3714(boolean var0, PacketBuffer var1) { + while (true) { + if (var1.bitsRemaining(Client.packetWriter.serverPacketLength) >= 27) { + int var2 = var1.readBits(15); + if (var2 != 32767) { + boolean var3 = false; + if (Client.npcs[var2] == null) { + Client.npcs[var2] = new NPC(); + var3 = true; + } - @ObfuscatedName("jc") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1392240516" - ) - static final void method3815() { - PacketBufferNode var0 = class4.getPacketBufferNode(ClientPacket.field2262, Client.packetWriter.isaacCipher); // L: 11249 - Client.packetWriter.addNode(var0); // L: 11250 + NPC var4 = Client.npcs[var2]; + Client.npcIndices[++Client.npcCount - 1] = var2; + var4.npcCycle = Client.cycle; + var4.definition = WorldMapIcon_0.getNpcDefinition(var1.readBits(14)); + int var5 = var1.readBits(1); + if (var5 == 1) { + Client.field654[++Client.field826 - 1] = var2; + } - for (InterfaceParent var1 = (InterfaceParent)Client.interfaceParents.first(); var1 != null; var1 = (InterfaceParent)Client.interfaceParents.next()) { // L: 11251 - if (var1.type == 0 || var1.type == 3) { // L: 11252 - Player.closeInterface(var1, true); + int var6; + if (var0) { + var6 = var1.readBits(8); + if (var6 > 127) { + var6 -= 256; + } + } else { + var6 = var1.readBits(5); + if (var6 > 15) { + var6 -= 32; + } + } + + int var7 = Client.defaultRotations[var1.readBits(3)]; + if (var3) { + var4.orientation = var4.rotation = var7; + } + + int var8 = var1.readBits(1); + int var9; + if (var0) { + var9 = var1.readBits(8); + if (var9 > 127) { + var9 -= 256; + } + } else { + var9 = var1.readBits(5); + if (var9 > 15) { + var9 -= 32; + } + } + + var4.field941 = var4.definition.size * 64; + var4.field940 = var4.definition.rotation; + if (var4.field940 == 0) { + var4.rotation = 0; + } + + var4.walkSequence = var4.definition.walkSequence; + var4.walkBackSequence = var4.definition.walkBackSequence; + var4.walkLeftSequence = var4.definition.walkLeftSequence; + var4.walkRightSequence = var4.definition.walkRightSequence; + var4.idleSequence = var4.definition.idleSequence; + var4.turnLeftSequence = var4.definition.turnLeftSequence; + var4.turnRightSequence = var4.definition.turnRightSequence; + var4.method2106(PlayerAppearance.localPlayer.pathX[0] + var6, PlayerAppearance.localPlayer.pathY[0] + var9, var8 == 1); + continue; + } } - } - if (Client.meslayerContinueWidget != null) { // L: 11254 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(Client.meslayerContinueWidget); // L: 11255 - Client.meslayerContinueWidget = null; // L: 11256 + var1.exportIndex(); + return; } - - } // L: 11258 + } } diff --git a/runescape-client/src/main/java/Model.java b/runescape-client/src/main/java/Model.java index 37810c7821..3d6f050afb 100644 --- a/runescape-client/src/main/java/Model.java +++ b/runescape-client/src/main/java/Model.java @@ -6,410 +6,410 @@ import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("eh") @Implements("Model") public class Model extends Entity { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "Leh;" ) @Export("Model_sharedSequenceModel") static Model Model_sharedSequenceModel; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("Model_sharedSequenceModelFaceAlphas") static byte[] Model_sharedSequenceModelFaceAlphas; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "Leh;" ) @Export("Model_sharedSpotAnimationModel") static Model Model_sharedSpotAnimationModel; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("Model_sharedSpotAnimationModelFaceAlphas") static byte[] Model_sharedSpotAnimationModelFaceAlphas; - @ObfuscatedName("ag") - static boolean[] field1734; - @ObfuscatedName("aq") - static boolean[] field1735; - @ObfuscatedName("aw") + @ObfuscatedName("aa") + static boolean[] field1749; + @ObfuscatedName("ao") + static boolean[] field1724; + @ObfuscatedName("ab") @Export("modelViewportXs") static int[] modelViewportXs; - @ObfuscatedName("an") + @ObfuscatedName("aw") @Export("modelViewportYs") static int[] modelViewportYs; - @ObfuscatedName("am") - static int[] field1752; - @ObfuscatedName("aa") - static int[] field1739; - @ObfuscatedName("at") - static int[] field1709; - @ObfuscatedName("as") - static int[] field1741; - @ObfuscatedName("ae") - static int[] field1743; - @ObfuscatedName("al") - static int[][] field1744; @ObfuscatedName("ap") - static int[] field1719; + static int[] field1727; @ObfuscatedName("ad") - static int[][] field1746; - @ObfuscatedName("bb") - static int[] field1747; - @ObfuscatedName("bf") - static int[] field1748; - @ObfuscatedName("bp") - static int[] field1750; - @ObfuscatedName("bg") - static int[] field1695; - @ObfuscatedName("bc") - static int[] field1724; - @ObfuscatedName("bj") - static int[] field1754; + static int[] field1703; + @ObfuscatedName("ai") + static int[] field1729; + @ObfuscatedName("al") + static int[] field1730; + @ObfuscatedName("af") + static int[] field1732; + @ObfuscatedName("ar") + static int[][] field1733; + @ObfuscatedName("az") + static int[] field1734; + @ObfuscatedName("at") + static int[][] field1735; + @ObfuscatedName("bh") + static int[] field1736; + @ObfuscatedName("by") + static int[] field1737; + @ObfuscatedName("bs") + static int[] field1738; + @ObfuscatedName("br") + static int[] field1689; @ObfuscatedName("bl") + static int[] field1702; + @ObfuscatedName("bx") + static int[] field1741; + @ObfuscatedName("bf") @Export("Model_transformTempX") static int Model_transformTempX; - @ObfuscatedName("bn") + @ObfuscatedName("bz") @Export("Model_transformTempY") static int Model_transformTempY; - @ObfuscatedName("bo") + @ObfuscatedName("bm") @Export("Model_transformTempZ") static int Model_transformTempZ; - @ObfuscatedName("be") - static boolean field1756; - @ObfuscatedName("bw") + @ObfuscatedName("bn") + static boolean field1731; + @ObfuscatedName("bi") @Export("Model_sine") static int[] Model_sine; - @ObfuscatedName("bm") + @ObfuscatedName("bk") @Export("Model_cosine") static int[] Model_cosine; - @ObfuscatedName("by") - static int[] field1761; - @ObfuscatedName("bq") - static int[] field1762; - @ObfuscatedName("z") + @ObfuscatedName("bw") + static int[] field1750; + @ObfuscatedName("bo") + static int[] field1751; + @ObfuscatedName("t") @Export("verticesCount") int verticesCount; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("verticesX") int[] verticesX; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("verticesY") int[] verticesY; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("verticesZ") int[] verticesZ; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("indicesCount") int indicesCount; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("indices1") int[] indices1; - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("indices2") int[] indices2; - @ObfuscatedName("o") + @ObfuscatedName("e") @Export("indices3") int[] indices3; - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("faceColors1") int[] faceColors1; - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("faceColors2") int[] faceColors2; - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("faceColors3") int[] faceColors3; - @ObfuscatedName("r") + @ObfuscatedName("f") @Export("faceRenderPriorities") byte[] faceRenderPriorities; - @ObfuscatedName("y") + @ObfuscatedName("a") @Export("faceAlphas") byte[] faceAlphas; - @ObfuscatedName("s") - byte[] field1712; - @ObfuscatedName("j") + @ObfuscatedName("b") + byte[] field1701; + @ObfuscatedName("y") @Export("faceTextures") short[] faceTextures; - @ObfuscatedName("w") - byte field1751; - @ObfuscatedName("v") - int field1721; - @ObfuscatedName("d") - int[] field1716; - @ObfuscatedName("a") - int[] field1717; + @ObfuscatedName("r") + byte field1722; + @ObfuscatedName("q") + int field1704; @ObfuscatedName("g") - int[] field1718; - @ObfuscatedName("h") + int[] field1723; + @ObfuscatedName("s") + int[] field1745; + @ObfuscatedName("o") + int[] field1707; + @ObfuscatedName("k") @Export("vertexLabels") int[][] vertexLabels; - @ObfuscatedName("i") + @ObfuscatedName("d") @Export("faceLabelsAlpha") int[][] faceLabelsAlpha; - @ObfuscatedName("ab") + @ObfuscatedName("an") @Export("isSingleTile") public boolean isSingleTile; - @ObfuscatedName("ac") + @ObfuscatedName("aj") @Export("boundsType") int boundsType; - @ObfuscatedName("ao") + @ObfuscatedName("ax") @Export("bottomY") int bottomY; - @ObfuscatedName("af") + @ObfuscatedName("ag") @Export("xzRadius") int xzRadius; - @ObfuscatedName("av") + @ObfuscatedName("au") @Export("diameter") int diameter; - @ObfuscatedName("ar") + @ObfuscatedName("as") @Export("radius") int radius; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("xMid") int xMid; - @ObfuscatedName("ah") + @ObfuscatedName("ac") @Export("yMid") int yMid; - @ObfuscatedName("az") + @ObfuscatedName("ak") @Export("zMid") int zMid; - @ObfuscatedName("ak") + @ObfuscatedName("av") @Export("xMidOffset") int xMidOffset; - @ObfuscatedName("au") + @ObfuscatedName("aq") @Export("yMidOffset") int yMidOffset; - @ObfuscatedName("ai") + @ObfuscatedName("ah") @Export("zMidOffset") int zMidOffset; static { - Model_sharedSequenceModel = new Model(); // L: 6 - Model_sharedSequenceModelFaceAlphas = new byte[1]; // L: 7 - Model_sharedSpotAnimationModel = new Model(); // L: 8 - Model_sharedSpotAnimationModelFaceAlphas = new byte[1]; // L: 9 - field1734 = new boolean[4700]; // L: 45 - field1735 = new boolean[4700]; // L: 46 - modelViewportXs = new int[4700]; // L: 47 - modelViewportYs = new int[4700]; // L: 48 - field1752 = new int[4700]; // L: 49 - field1739 = new int[4700]; // L: 50 - field1709 = new int[4700]; // L: 51 - field1741 = new int[4700]; // L: 52 - field1743 = new int[1600]; // L: 54 - field1744 = new int[1600][512]; // L: 55 - field1719 = new int[12]; // L: 56 - field1746 = new int[12][2000]; // L: 57 - field1747 = new int[2000]; // L: 58 - field1748 = new int[2000]; // L: 59 - field1750 = new int[12]; // L: 60 - field1695 = new int[10]; // L: 61 - field1724 = new int[10]; // L: 62 - field1754 = new int[10]; // L: 63 - field1756 = true; // L: 67 - Model_sine = Rasterizer3D.Rasterizer3D_sine; // L: 70 - Model_cosine = Rasterizer3D.Rasterizer3D_cosine; // L: 71 - field1761 = Rasterizer3D.Rasterizer3D_colorPalette; // L: 72 - field1762 = Rasterizer3D.field1813; // L: 73 + Model_sharedSequenceModel = new Model(); + Model_sharedSequenceModelFaceAlphas = new byte[1]; + Model_sharedSpotAnimationModel = new Model(); + Model_sharedSpotAnimationModelFaceAlphas = new byte[1]; + field1749 = new boolean[4700]; + field1724 = new boolean[4700]; + modelViewportXs = new int[4700]; + modelViewportYs = new int[4700]; + field1727 = new int[4700]; + field1703 = new int[4700]; + field1729 = new int[4700]; + field1730 = new int[4700]; + field1732 = new int[1600]; + field1733 = new int[1600][512]; + field1734 = new int[12]; + field1735 = new int[12][2000]; + field1736 = new int[2000]; + field1737 = new int[2000]; + field1738 = new int[12]; + field1689 = new int[10]; + field1702 = new int[10]; + field1741 = new int[10]; + field1731 = true; + Model_sine = Rasterizer3D.Rasterizer3D_sine; + Model_cosine = Rasterizer3D.Rasterizer3D_cosine; + field1750 = Rasterizer3D.Rasterizer3D_colorPalette; + field1751 = Rasterizer3D.field1803; } Model() { this.verticesCount = 0; this.indicesCount = 0; - this.field1751 = 0; - this.field1721 = 0; + this.field1722 = 0; + this.field1704 = 0; this.isSingleTile = false; this.xMidOffset = -1; this.yMidOffset = -1; this.zMidOffset = -1; - } // L: 77 + } @ObfuscatedSignature( descriptor = "([Leh;I)V" ) public Model(Model[] var1, int var2) { - this.verticesCount = 0; // L: 10 - this.indicesCount = 0; // L: 14 - this.field1751 = 0; // L: 25 - this.field1721 = 0; // L: 26 - this.isSingleTile = false; // L: 32 - this.xMidOffset = -1; // L: 41 - this.yMidOffset = -1; // L: 42 - this.zMidOffset = -1; // L: 43 - boolean var3 = false; // L: 80 - boolean var4 = false; // L: 81 - boolean var5 = false; // L: 82 - boolean var6 = false; // L: 83 - this.verticesCount = 0; // L: 84 - this.indicesCount = 0; // L: 85 - this.field1721 = 0; // L: 86 - this.field1751 = -1; // L: 87 + this.verticesCount = 0; + this.indicesCount = 0; + this.field1722 = 0; + this.field1704 = 0; + this.isSingleTile = false; + this.xMidOffset = -1; + this.yMidOffset = -1; + this.zMidOffset = -1; + boolean var3 = false; + boolean var4 = false; + boolean var5 = false; + boolean var6 = false; + this.verticesCount = 0; + this.indicesCount = 0; + this.field1704 = 0; + this.field1722 = -1; int var7; Model var8; - for (var7 = 0; var7 < var2; ++var7) { // L: 88 - var8 = var1[var7]; // L: 89 - if (var8 != null) { // L: 90 - this.verticesCount += var8.verticesCount; // L: 91 - this.indicesCount += var8.indicesCount; // L: 92 - this.field1721 += var8.field1721; // L: 93 - if (var8.faceRenderPriorities != null) { // L: 94 + for (var7 = 0; var7 < var2; ++var7) { + var8 = var1[var7]; + if (var8 != null) { + this.verticesCount += var8.verticesCount; + this.indicesCount += var8.indicesCount; + this.field1704 += var8.field1704; + if (var8.faceRenderPriorities != null) { var3 = true; } else { - if (this.field1751 == -1) { // L: 96 - this.field1751 = var8.field1751; + if (this.field1722 == -1) { + this.field1722 = var8.field1722; } - if (this.field1751 != var8.field1751) { // L: 97 + if (this.field1722 != var8.field1722) { var3 = true; } } - var4 |= var8.faceAlphas != null; // L: 99 - var5 |= var8.faceTextures != null; // L: 100 - var6 |= var8.field1712 != null; // L: 101 + var4 |= var8.faceAlphas != null; + var5 |= var8.faceTextures != null; + var6 |= var8.field1701 != null; } } - this.verticesX = new int[this.verticesCount]; // L: 104 - this.verticesY = new int[this.verticesCount]; // L: 105 - this.verticesZ = new int[this.verticesCount]; // L: 106 - this.indices1 = new int[this.indicesCount]; // L: 107 - this.indices2 = new int[this.indicesCount]; // L: 108 - this.indices3 = new int[this.indicesCount]; // L: 109 - this.faceColors1 = new int[this.indicesCount]; // L: 110 - this.faceColors2 = new int[this.indicesCount]; // L: 111 - this.faceColors3 = new int[this.indicesCount]; // L: 112 - if (var3) { // L: 113 + this.verticesX = new int[this.verticesCount]; + this.verticesY = new int[this.verticesCount]; + this.verticesZ = new int[this.verticesCount]; + this.indices1 = new int[this.indicesCount]; + this.indices2 = new int[this.indicesCount]; + this.indices3 = new int[this.indicesCount]; + this.faceColors1 = new int[this.indicesCount]; + this.faceColors2 = new int[this.indicesCount]; + this.faceColors3 = new int[this.indicesCount]; + if (var3) { this.faceRenderPriorities = new byte[this.indicesCount]; } - if (var4) { // L: 114 + if (var4) { this.faceAlphas = new byte[this.indicesCount]; } - if (var5) { // L: 115 + if (var5) { this.faceTextures = new short[this.indicesCount]; } - if (var6) { // L: 116 - this.field1712 = new byte[this.indicesCount]; + if (var6) { + this.field1701 = new byte[this.indicesCount]; } - if (this.field1721 > 0) { // L: 117 - this.field1716 = new int[this.field1721]; // L: 118 - this.field1717 = new int[this.field1721]; // L: 119 - this.field1718 = new int[this.field1721]; // L: 120 + if (this.field1704 > 0) { + this.field1723 = new int[this.field1704]; + this.field1745 = new int[this.field1704]; + this.field1707 = new int[this.field1704]; } - this.verticesCount = 0; // L: 122 - this.indicesCount = 0; // L: 123 - this.field1721 = 0; // L: 124 + this.verticesCount = 0; + this.indicesCount = 0; + this.field1704 = 0; - for (var7 = 0; var7 < var2; ++var7) { // L: 125 - var8 = var1[var7]; // L: 126 - if (var8 != null) { // L: 127 + for (var7 = 0; var7 < var2; ++var7) { + var8 = var1[var7]; + if (var8 != null) { int var9; - for (var9 = 0; var9 < var8.indicesCount; ++var9) { // L: 128 - this.indices1[this.indicesCount] = this.verticesCount + var8.indices1[var9]; // L: 129 - this.indices2[this.indicesCount] = this.verticesCount + var8.indices2[var9]; // L: 130 - this.indices3[this.indicesCount] = this.verticesCount + var8.indices3[var9]; // L: 131 - this.faceColors1[this.indicesCount] = var8.faceColors1[var9]; // L: 132 - this.faceColors2[this.indicesCount] = var8.faceColors2[var9]; // L: 133 - this.faceColors3[this.indicesCount] = var8.faceColors3[var9]; // L: 134 - if (var3) { // L: 135 - if (var8.faceRenderPriorities != null) { // L: 136 + for (var9 = 0; var9 < var8.indicesCount; ++var9) { + this.indices1[this.indicesCount] = this.verticesCount + var8.indices1[var9]; + this.indices2[this.indicesCount] = this.verticesCount + var8.indices2[var9]; + this.indices3[this.indicesCount] = this.verticesCount + var8.indices3[var9]; + this.faceColors1[this.indicesCount] = var8.faceColors1[var9]; + this.faceColors2[this.indicesCount] = var8.faceColors2[var9]; + this.faceColors3[this.indicesCount] = var8.faceColors3[var9]; + if (var3) { + if (var8.faceRenderPriorities != null) { this.faceRenderPriorities[this.indicesCount] = var8.faceRenderPriorities[var9]; } else { - this.faceRenderPriorities[this.indicesCount] = var8.field1751; // L: 137 + this.faceRenderPriorities[this.indicesCount] = var8.field1722; } } - if (var4 && var8.faceAlphas != null) { // L: 139 140 + if (var4 && var8.faceAlphas != null) { this.faceAlphas[this.indicesCount] = var8.faceAlphas[var9]; } - if (var5) { // L: 142 - if (var8.faceTextures != null) { // L: 143 + if (var5) { + if (var8.faceTextures != null) { this.faceTextures[this.indicesCount] = var8.faceTextures[var9]; } else { - this.faceTextures[this.indicesCount] = -1; // L: 144 + this.faceTextures[this.indicesCount] = -1; } } - if (var6) { // L: 146 - if (var8.field1712 != null && var8.field1712[var9] != -1) { // L: 147 - this.field1712[this.indicesCount] = (byte)(this.field1721 + var8.field1712[var9]); + if (var6) { + if (var8.field1701 != null && var8.field1701[var9] != -1) { + this.field1701[this.indicesCount] = (byte)(this.field1704 + var8.field1701[var9]); } else { - this.field1712[this.indicesCount] = -1; // L: 148 + this.field1701[this.indicesCount] = -1; } } - ++this.indicesCount; // L: 150 + ++this.indicesCount; } - for (var9 = 0; var9 < var8.field1721; ++var9) { // L: 152 - this.field1716[this.field1721] = this.verticesCount + var8.field1716[var9]; // L: 153 - this.field1717[this.field1721] = this.verticesCount + var8.field1717[var9]; // L: 154 - this.field1718[this.field1721] = this.verticesCount + var8.field1718[var9]; // L: 155 - ++this.field1721; // L: 156 + for (var9 = 0; var9 < var8.field1704; ++var9) { + this.field1723[this.field1704] = this.verticesCount + var8.field1723[var9]; + this.field1745[this.field1704] = this.verticesCount + var8.field1745[var9]; + this.field1707[this.field1704] = this.verticesCount + var8.field1707[var9]; + ++this.field1704; } - for (var9 = 0; var9 < var8.verticesCount; ++var9) { // L: 158 - this.verticesX[this.verticesCount] = var8.verticesX[var9]; // L: 159 - this.verticesY[this.verticesCount] = var8.verticesY[var9]; // L: 160 - this.verticesZ[this.verticesCount] = var8.verticesZ[var9]; // L: 161 - ++this.verticesCount; // L: 162 + for (var9 = 0; var9 < var8.verticesCount; ++var9) { + this.verticesX[this.verticesCount] = var8.verticesX[var9]; + this.verticesY[this.verticesCount] = var8.verticesY[var9]; + this.verticesZ[this.verticesCount] = var8.verticesZ[var9]; + ++this.verticesCount; } } } - } // L: 166 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "([[IIIIZI)Leh;" ) @Export("contourGround") public Model contourGround(int[][] var1, int var2, int var3, int var4, boolean var5, int var6) { - this.calculateBoundsCylinder(); // L: 169 - int var7 = var2 - this.xzRadius; // L: 170 - int var8 = var2 + this.xzRadius; // L: 171 - int var9 = var4 - this.xzRadius; // L: 172 - int var10 = var4 + this.xzRadius; // L: 173 - if (var7 >= 0 && var8 + 128 >> 7 < var1.length && var9 >= 0 && var10 + 128 >> 7 < var1[0].length) { // L: 174 - var7 >>= 7; // L: 175 - var8 = var8 + 127 >> 7; // L: 176 - var9 >>= 7; // L: 177 - var10 = var10 + 127 >> 7; // L: 178 - if (var3 == var1[var7][var9] && var3 == var1[var8][var9] && var3 == var1[var7][var10] && var3 == var1[var8][var10]) { // L: 179 + this.calculateBoundsCylinder(); + int var7 = var2 - this.xzRadius; + int var8 = var2 + this.xzRadius; + int var9 = var4 - this.xzRadius; + int var10 = var4 + this.xzRadius; + if (var7 >= 0 && var8 + 128 >> 7 < var1.length && var9 >= 0 && var10 + 128 >> 7 < var1[0].length) { + var7 >>= 7; + var8 = var8 + 127 >> 7; + var9 >>= 7; + var10 = var10 + 127 >> 7; + if (var3 == var1[var7][var9] && var3 == var1[var8][var9] && var3 == var1[var7][var10] && var3 == var1[var8][var10]) { return this; } else { Model var11; - if (var5) { // L: 181 - var11 = new Model(); // L: 182 - var11.verticesCount = this.verticesCount; // L: 183 - var11.indicesCount = this.indicesCount; // L: 184 - var11.field1721 = this.field1721; // L: 185 - var11.verticesX = this.verticesX; // L: 186 - var11.verticesZ = this.verticesZ; // L: 187 - var11.indices1 = this.indices1; // L: 188 - var11.indices2 = this.indices2; // L: 189 - var11.indices3 = this.indices3; // L: 190 - var11.faceColors1 = this.faceColors1; // L: 191 - var11.faceColors2 = this.faceColors2; // L: 192 - var11.faceColors3 = this.faceColors3; // L: 193 - var11.faceRenderPriorities = this.faceRenderPriorities; // L: 194 - var11.faceAlphas = this.faceAlphas; // L: 195 - var11.field1712 = this.field1712; // L: 196 - var11.faceTextures = this.faceTextures; // L: 197 - var11.field1751 = this.field1751; // L: 198 - var11.field1716 = this.field1716; // L: 199 - var11.field1717 = this.field1717; // L: 200 - var11.field1718 = this.field1718; // L: 201 - var11.vertexLabels = this.vertexLabels; // L: 202 - var11.faceLabelsAlpha = this.faceLabelsAlpha; // L: 203 - var11.isSingleTile = this.isSingleTile; // L: 204 - var11.verticesY = new int[var11.verticesCount]; // L: 205 + if (var5) { + var11 = new Model(); + var11.verticesCount = this.verticesCount; + var11.indicesCount = this.indicesCount; + var11.field1704 = this.field1704; + var11.verticesX = this.verticesX; + var11.verticesZ = this.verticesZ; + var11.indices1 = this.indices1; + var11.indices2 = this.indices2; + var11.indices3 = this.indices3; + var11.faceColors1 = this.faceColors1; + var11.faceColors2 = this.faceColors2; + var11.faceColors3 = this.faceColors3; + var11.faceRenderPriorities = this.faceRenderPriorities; + var11.faceAlphas = this.faceAlphas; + var11.field1701 = this.field1701; + var11.faceTextures = this.faceTextures; + var11.field1722 = this.field1722; + var11.field1723 = this.field1723; + var11.field1745 = this.field1745; + var11.field1707 = this.field1707; + var11.vertexLabels = this.vertexLabels; + var11.faceLabelsAlpha = this.faceLabelsAlpha; + var11.isSingleTile = this.isSingleTile; + var11.verticesY = new int[var11.verticesCount]; } else { - var11 = this; // L: 208 + var11 = this; } int var12; @@ -422,495 +422,495 @@ public class Model extends Entity { int var19; int var20; int var21; - if (var6 == 0) { // L: 210 - for (var12 = 0; var12 < var11.verticesCount; ++var12) { // L: 211 - var13 = var2 + this.verticesX[var12]; // L: 212 - var14 = var4 + this.verticesZ[var12]; // L: 213 - var15 = var13 & 127; // L: 214 - var16 = var14 & 127; // L: 215 - var17 = var13 >> 7; // L: 216 - var18 = var14 >> 7; // L: 217 - var19 = var1[var17][var18] * (128 - var15) + var1[var17 + 1][var18] * var15 >> 7; // L: 218 - var20 = var1[var17][var18 + 1] * (128 - var15) + var15 * var1[var17 + 1][var18 + 1] >> 7; // L: 219 - var21 = var19 * (128 - var16) + var20 * var16 >> 7; // L: 220 - var11.verticesY[var12] = var21 + this.verticesY[var12] - var3; // L: 221 + if (var6 == 0) { + for (var12 = 0; var12 < var11.verticesCount; ++var12) { + var13 = var2 + this.verticesX[var12]; + var14 = var4 + this.verticesZ[var12]; + var15 = var13 & 127; + var16 = var14 & 127; + var17 = var13 >> 7; + var18 = var14 >> 7; + var19 = var1[var17][var18] * (128 - var15) + var1[var17 + 1][var18] * var15 >> 7; + var20 = var1[var17][var18 + 1] * (128 - var15) + var15 * var1[var17 + 1][var18 + 1] >> 7; + var21 = var19 * (128 - var16) + var20 * var16 >> 7; + var11.verticesY[var12] = var21 + this.verticesY[var12] - var3; } } else { - for (var12 = 0; var12 < var11.verticesCount; ++var12) { // L: 225 - var13 = (-this.verticesY[var12] << 16) / super.height; // L: 226 - if (var13 < var6) { // L: 227 - var14 = var2 + this.verticesX[var12]; // L: 228 - var15 = var4 + this.verticesZ[var12]; // L: 229 - var16 = var14 & 127; // L: 230 - var17 = var15 & 127; // L: 231 - var18 = var14 >> 7; // L: 232 - var19 = var15 >> 7; // L: 233 - var20 = var1[var18][var19] * (128 - var16) + var1[var18 + 1][var19] * var16 >> 7; // L: 234 - var21 = var1[var18][var19 + 1] * (128 - var16) + var16 * var1[var18 + 1][var19 + 1] >> 7; // L: 235 - int var22 = var20 * (128 - var17) + var21 * var17 >> 7; // L: 236 - var11.verticesY[var12] = (var6 - var13) * (var22 - var3) / var6 + this.verticesY[var12]; // L: 237 + for (var12 = 0; var12 < var11.verticesCount; ++var12) { + var13 = (-this.verticesY[var12] << 16) / super.height; + if (var13 < var6) { + var14 = var2 + this.verticesX[var12]; + var15 = var4 + this.verticesZ[var12]; + var16 = var14 & 127; + var17 = var15 & 127; + var18 = var14 >> 7; + var19 = var15 >> 7; + var20 = var1[var18][var19] * (128 - var16) + var1[var18 + 1][var19] * var16 >> 7; + var21 = var1[var18][var19 + 1] * (128 - var16) + var16 * var1[var18 + 1][var19 + 1] >> 7; + int var22 = var20 * (128 - var17) + var21 * var17 >> 7; + var11.verticesY[var12] = (var6 - var13) * (var22 - var3) / var6 + this.verticesY[var12]; } } } - var11.resetBounds(); // L: 241 - return var11; // L: 242 + var11.resetBounds(); + return var11; } } else { return this; } } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(Z)Leh;" ) @Export("toSharedSequenceModel") public Model toSharedSequenceModel(boolean var1) { - if (!var1 && Model_sharedSequenceModelFaceAlphas.length < this.indicesCount) { // L: 246 + if (!var1 && Model_sharedSequenceModelFaceAlphas.length < this.indicesCount) { Model_sharedSequenceModelFaceAlphas = new byte[this.indicesCount + 100]; } - return this.buildSharedModel(var1, Model_sharedSequenceModel, Model_sharedSequenceModelFaceAlphas); // L: 247 + return this.buildSharedModel(var1, Model_sharedSequenceModel, Model_sharedSequenceModelFaceAlphas); } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(Z)Leh;" ) @Export("toSharedSpotAnimationModel") public Model toSharedSpotAnimationModel(boolean var1) { - if (!var1 && Model_sharedSpotAnimationModelFaceAlphas.length < this.indicesCount) { // L: 251 + if (!var1 && Model_sharedSpotAnimationModelFaceAlphas.length < this.indicesCount) { Model_sharedSpotAnimationModelFaceAlphas = new byte[this.indicesCount + 100]; } - return this.buildSharedModel(var1, Model_sharedSpotAnimationModel, Model_sharedSpotAnimationModelFaceAlphas); // L: 252 + return this.buildSharedModel(var1, Model_sharedSpotAnimationModel, Model_sharedSpotAnimationModelFaceAlphas); } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(ZLeh;[B)Leh;" ) @Export("buildSharedModel") Model buildSharedModel(boolean var1, Model var2, byte[] var3) { - var2.verticesCount = this.verticesCount; // L: 256 - var2.indicesCount = this.indicesCount; // L: 257 - var2.field1721 = this.field1721; // L: 258 - if (var2.verticesX == null || var2.verticesX.length < this.verticesCount) { // L: 259 - var2.verticesX = new int[this.verticesCount + 100]; // L: 260 - var2.verticesY = new int[this.verticesCount + 100]; // L: 261 - var2.verticesZ = new int[this.verticesCount + 100]; // L: 262 + var2.verticesCount = this.verticesCount; + var2.indicesCount = this.indicesCount; + var2.field1704 = this.field1704; + if (var2.verticesX == null || var2.verticesX.length < this.verticesCount) { + var2.verticesX = new int[this.verticesCount + 100]; + var2.verticesY = new int[this.verticesCount + 100]; + var2.verticesZ = new int[this.verticesCount + 100]; } int var4; - for (var4 = 0; var4 < this.verticesCount; ++var4) { // L: 264 - var2.verticesX[var4] = this.verticesX[var4]; // L: 265 - var2.verticesY[var4] = this.verticesY[var4]; // L: 266 - var2.verticesZ[var4] = this.verticesZ[var4]; // L: 267 + for (var4 = 0; var4 < this.verticesCount; ++var4) { + var2.verticesX[var4] = this.verticesX[var4]; + var2.verticesY[var4] = this.verticesY[var4]; + var2.verticesZ[var4] = this.verticesZ[var4]; } - if (var1) { // L: 269 + if (var1) { var2.faceAlphas = this.faceAlphas; } else { - var2.faceAlphas = var3; // L: 271 - if (this.faceAlphas == null) { // L: 272 - for (var4 = 0; var4 < this.indicesCount; ++var4) { // L: 273 + var2.faceAlphas = var3; + if (this.faceAlphas == null) { + for (var4 = 0; var4 < this.indicesCount; ++var4) { var2.faceAlphas[var4] = 0; } } else { - for (var4 = 0; var4 < this.indicesCount; ++var4) { // L: 276 + for (var4 = 0; var4 < this.indicesCount; ++var4) { var2.faceAlphas[var4] = this.faceAlphas[var4]; } } } - var2.indices1 = this.indices1; // L: 279 - var2.indices2 = this.indices2; // L: 280 - var2.indices3 = this.indices3; // L: 281 - var2.faceColors1 = this.faceColors1; // L: 282 - var2.faceColors2 = this.faceColors2; // L: 283 - var2.faceColors3 = this.faceColors3; // L: 284 - var2.faceRenderPriorities = this.faceRenderPriorities; // L: 285 - var2.field1712 = this.field1712; // L: 286 - var2.faceTextures = this.faceTextures; // L: 287 - var2.field1751 = this.field1751; // L: 288 - var2.field1716 = this.field1716; // L: 289 - var2.field1717 = this.field1717; // L: 290 - var2.field1718 = this.field1718; // L: 291 - var2.vertexLabels = this.vertexLabels; // L: 292 - var2.faceLabelsAlpha = this.faceLabelsAlpha; // L: 293 - var2.isSingleTile = this.isSingleTile; // L: 294 - var2.resetBounds(); // L: 295 - return var2; // L: 296 + var2.indices1 = this.indices1; + var2.indices2 = this.indices2; + var2.indices3 = this.indices3; + var2.faceColors1 = this.faceColors1; + var2.faceColors2 = this.faceColors2; + var2.faceColors3 = this.faceColors3; + var2.faceRenderPriorities = this.faceRenderPriorities; + var2.field1701 = this.field1701; + var2.faceTextures = this.faceTextures; + var2.field1722 = this.field1722; + var2.field1723 = this.field1723; + var2.field1745 = this.field1745; + var2.field1707 = this.field1707; + var2.vertexLabels = this.vertexLabels; + var2.faceLabelsAlpha = this.faceLabelsAlpha; + var2.isSingleTile = this.isSingleTile; + var2.resetBounds(); + return var2; } - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("calculateBoundingBox") void calculateBoundingBox(int var1) { - if (this.xMidOffset == -1) { // L: 300 - int var2 = 0; // L: 301 - int var3 = 0; // L: 302 - int var4 = 0; // L: 303 - int var5 = 0; // L: 304 - int var6 = 0; // L: 305 - int var7 = 0; // L: 306 - int var8 = Model_cosine[var1]; // L: 307 - int var9 = Model_sine[var1]; // L: 308 + if (this.xMidOffset == -1) { + int var2 = 0; + int var3 = 0; + int var4 = 0; + int var5 = 0; + int var6 = 0; + int var7 = 0; + int var8 = Model_cosine[var1]; + int var9 = Model_sine[var1]; - for (int var10 = 0; var10 < this.verticesCount; ++var10) { // L: 309 - int var11 = Rasterizer3D.method3157(this.verticesX[var10], this.verticesZ[var10], var8, var9); // L: 310 - int var12 = this.verticesY[var10]; // L: 311 - int var13 = Rasterizer3D.method3179(this.verticesX[var10], this.verticesZ[var10], var8, var9); // L: 312 - if (var11 < var2) { // L: 313 + for (int var10 = 0; var10 < this.verticesCount; ++var10) { + int var11 = Rasterizer3D.method3088(this.verticesX[var10], this.verticesZ[var10], var8, var9); + int var12 = this.verticesY[var10]; + int var13 = Rasterizer3D.method3143(this.verticesX[var10], this.verticesZ[var10], var8, var9); + if (var11 < var2) { var2 = var11; } - if (var11 > var5) { // L: 314 + if (var11 > var5) { var5 = var11; } - if (var12 < var3) { // L: 315 + if (var12 < var3) { var3 = var12; } - if (var12 > var6) { // L: 316 + if (var12 > var6) { var6 = var12; } - if (var13 < var4) { // L: 317 + if (var13 < var4) { var4 = var13; } - if (var13 > var7) { // L: 318 + if (var13 > var7) { var7 = var13; } } - this.xMid = (var5 + var2) / 2; // L: 320 - this.yMid = (var6 + var3) / 2; // L: 321 - this.zMid = (var7 + var4) / 2; // L: 322 - this.xMidOffset = (var5 - var2 + 1) / 2; // L: 323 - this.yMidOffset = (var6 - var3 + 1) / 2; // L: 324 - this.zMidOffset = (var7 - var4 + 1) / 2; // L: 325 - if (this.xMidOffset < 32) { // L: 327 + this.xMid = (var5 + var2) / 2; + this.yMid = (var6 + var3) / 2; + this.zMid = (var7 + var4) / 2; + this.xMidOffset = (var5 - var2 + 1) / 2; + this.yMidOffset = (var6 - var3 + 1) / 2; + this.zMidOffset = (var7 - var4 + 1) / 2; + if (this.xMidOffset < 32) { this.xMidOffset = 32; } - if (this.zMidOffset < 32) { // L: 328 + if (this.zMidOffset < 32) { this.zMidOffset = 32; } - if (this.isSingleTile) { // L: 329 - this.xMidOffset += 8; // L: 331 - this.zMidOffset += 8; // L: 332 + if (this.isSingleTile) { + this.xMidOffset += 8; + this.zMidOffset += 8; } } - } // L: 334 + } - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("calculateBoundsCylinder") public void calculateBoundsCylinder() { - if (this.boundsType != 1) { // L: 337 - this.boundsType = 1; // L: 338 - super.height = 0; // L: 339 - this.bottomY = 0; // L: 340 - this.xzRadius = 0; // L: 341 + if (this.boundsType != 1) { + this.boundsType = 1; + super.height = 0; + this.bottomY = 0; + this.xzRadius = 0; - for (int var1 = 0; var1 < this.verticesCount; ++var1) { // L: 342 - int var2 = this.verticesX[var1]; // L: 343 - int var3 = this.verticesY[var1]; // L: 344 - int var4 = this.verticesZ[var1]; // L: 345 - if (-var3 > super.height) { // L: 346 + for (int var1 = 0; var1 < this.verticesCount; ++var1) { + int var2 = this.verticesX[var1]; + int var3 = this.verticesY[var1]; + int var4 = this.verticesZ[var1]; + if (-var3 > super.height) { super.height = -var3; } - if (var3 > this.bottomY) { // L: 347 + if (var3 > this.bottomY) { this.bottomY = var3; } - int var5 = var2 * var2 + var4 * var4; // L: 348 - if (var5 > this.xzRadius) { // L: 349 + int var5 = var2 * var2 + var4 * var4; + if (var5 > this.xzRadius) { this.xzRadius = var5; } } - this.xzRadius = (int)(Math.sqrt((double)this.xzRadius) + 0.99D); // L: 351 - this.radius = (int)(Math.sqrt((double)(this.xzRadius * this.xzRadius + super.height * super.height)) + 0.99D); // L: 352 - this.diameter = this.radius + (int)(Math.sqrt((double)(this.xzRadius * this.xzRadius + this.bottomY * this.bottomY)) + 0.99D); // L: 353 + this.xzRadius = (int)(Math.sqrt((double)this.xzRadius) + 0.99D); + this.radius = (int)(Math.sqrt((double)(this.xzRadius * this.xzRadius + super.height * super.height)) + 0.99D); + this.diameter = this.radius + (int)(Math.sqrt((double)(this.xzRadius * this.xzRadius + this.bottomY * this.bottomY)) + 0.99D); } - } // L: 354 - - @ObfuscatedName("k") - void method3069() { - if (this.boundsType != 2) { // L: 357 - this.boundsType = 2; // L: 358 - this.xzRadius = 0; // L: 359 - - for (int var1 = 0; var1 < this.verticesCount; ++var1) { // L: 360 - int var2 = this.verticesX[var1]; // L: 361 - int var3 = this.verticesY[var1]; // L: 362 - int var4 = this.verticesZ[var1]; // L: 363 - int var5 = var2 * var2 + var4 * var4 + var3 * var3; // L: 364 - if (var5 > this.xzRadius) { // L: 365 - this.xzRadius = var5; - } - } - - this.xzRadius = (int)(Math.sqrt((double)this.xzRadius) + 0.99D); // L: 367 - this.radius = this.xzRadius; // L: 368 - this.diameter = this.xzRadius + this.xzRadius; // L: 369 - } - } // L: 370 - - @ObfuscatedName("c") - public int method3013() { - this.calculateBoundsCylinder(); // L: 373 - return this.xzRadius; // L: 374 } - @ObfuscatedName("t") + @ObfuscatedName("n") + void method2947() { + if (this.boundsType != 2) { + this.boundsType = 2; + this.xzRadius = 0; + + for (int var1 = 0; var1 < this.verticesCount; ++var1) { + int var2 = this.verticesX[var1]; + int var3 = this.verticesY[var1]; + int var4 = this.verticesZ[var1]; + int var5 = var2 * var2 + var4 * var4 + var3 * var3; + if (var5 > this.xzRadius) { + this.xzRadius = var5; + } + } + + this.xzRadius = (int)(Math.sqrt((double)this.xzRadius) + 0.99D); + this.radius = this.xzRadius; + this.diameter = this.xzRadius + this.xzRadius; + } + } + + @ObfuscatedName("p") + public int method2991() { + this.calculateBoundsCylinder(); + return this.xzRadius; + } + + @ObfuscatedName("z") @Export("resetBounds") void resetBounds() { - this.boundsType = 0; // L: 378 - this.xMidOffset = -1; // L: 379 - } // L: 380 + this.boundsType = 0; + this.xMidOffset = -1; + } - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "(Lex;I)V" + descriptor = "(Lep;I)V" ) @Export("animate") public void animate(Frames var1, int var2) { - if (this.vertexLabels != null) { // L: 383 - if (var2 != -1) { // L: 384 - Animation var3 = var1.frames[var2]; // L: 385 - Skeleton var4 = var3.skeleton; // L: 386 - Model_transformTempX = 0; // L: 387 - Model_transformTempY = 0; // L: 388 - Model_transformTempZ = 0; // L: 389 + if (this.vertexLabels != null) { + if (var2 != -1) { + Animation var3 = var1.frames[var2]; + Skeleton var4 = var3.skeleton; + Model_transformTempX = 0; + Model_transformTempY = 0; + Model_transformTempZ = 0; - for (int var5 = 0; var5 < var3.transformCount; ++var5) { // L: 390 - int var6 = var3.transformSkeletonLabels[var5]; // L: 391 - this.transform(var4.transformTypes[var6], var4.labels[var6], var3.transformXs[var5], var3.transformYs[var5], var3.transformZs[var5]); // L: 392 + for (int var5 = 0; var5 < var3.transformCount; ++var5) { + int var6 = var3.transformSkeletonLabels[var5]; + this.transform(var4.transformTypes[var6], var4.labels[var6], var3.transformXs[var5], var3.transformYs[var5], var3.transformZs[var5]); } - this.resetBounds(); // L: 394 + this.resetBounds(); } } - } // L: 395 + } - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedSignature( - descriptor = "(Lex;ILex;I[I)V" + descriptor = "(Lep;ILep;I[I)V" ) @Export("animate2") public void animate2(Frames var1, int var2, Frames var3, int var4, int[] var5) { - if (var2 != -1) { // L: 398 - if (var5 != null && var4 != -1) { // L: 399 - Animation var6 = var1.frames[var2]; // L: 403 - Animation var7 = var3.frames[var4]; // L: 404 - Skeleton var8 = var6.skeleton; // L: 405 - Model_transformTempX = 0; // L: 406 - Model_transformTempY = 0; // L: 407 - Model_transformTempZ = 0; // L: 408 - byte var9 = 0; // L: 409 - int var13 = var9 + 1; // L: 410 + if (var2 != -1) { + if (var5 != null && var4 != -1) { + Animation var6 = var1.frames[var2]; + Animation var7 = var3.frames[var4]; + Skeleton var8 = var6.skeleton; + Model_transformTempX = 0; + Model_transformTempY = 0; + Model_transformTempZ = 0; + byte var9 = 0; + int var13 = var9 + 1; int var10 = var5[var9]; int var11; int var12; - for (var11 = 0; var11 < var6.transformCount; ++var11) { // L: 411 - for (var12 = var6.transformSkeletonLabels[var11]; var12 > var10; var10 = var5[var13++]) { // L: 412 413 + for (var11 = 0; var11 < var6.transformCount; ++var11) { + for (var12 = var6.transformSkeletonLabels[var11]; var12 > var10; var10 = var5[var13++]) { } - if (var12 != var10 || var8.transformTypes[var12] == 0) { // L: 414 + if (var12 != var10 || var8.transformTypes[var12] == 0) { this.transform(var8.transformTypes[var12], var8.labels[var12], var6.transformXs[var11], var6.transformYs[var11], var6.transformZs[var11]); } } - Model_transformTempX = 0; // L: 416 - Model_transformTempY = 0; // L: 417 - Model_transformTempZ = 0; // L: 418 - var9 = 0; // L: 419 - var13 = var9 + 1; // L: 420 + Model_transformTempX = 0; + Model_transformTempY = 0; + Model_transformTempZ = 0; + var9 = 0; + var13 = var9 + 1; var10 = var5[var9]; - for (var11 = 0; var11 < var7.transformCount; ++var11) { // L: 421 - for (var12 = var7.transformSkeletonLabels[var11]; var12 > var10; var10 = var5[var13++]) { // L: 422 423 + for (var11 = 0; var11 < var7.transformCount; ++var11) { + for (var12 = var7.transformSkeletonLabels[var11]; var12 > var10; var10 = var5[var13++]) { } - if (var12 == var10 || var8.transformTypes[var12] == 0) { // L: 424 + if (var12 == var10 || var8.transformTypes[var12] == 0) { this.transform(var8.transformTypes[var12], var8.labels[var12], var7.transformXs[var11], var7.transformYs[var11], var7.transformZs[var11]); } } - this.resetBounds(); // L: 426 + this.resetBounds(); } else { - this.animate(var1, var2); // L: 400 + this.animate(var1, var2); } } - } // L: 401 427 + } - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("transform") void transform(int var1, int[] var2, int var3, int var4, int var5) { - int var6 = var2.length; // L: 430 + int var6 = var2.length; int var7; int var8; int var11; int var12; - if (var1 == 0) { // L: 431 - var7 = 0; // L: 432 - Model_transformTempX = 0; // L: 433 - Model_transformTempY = 0; // L: 434 - Model_transformTempZ = 0; // L: 435 + if (var1 == 0) { + var7 = 0; + Model_transformTempX = 0; + Model_transformTempY = 0; + Model_transformTempZ = 0; - for (var8 = 0; var8 < var6; ++var8) { // L: 436 - int var18 = var2[var8]; // L: 437 - if (var18 < this.vertexLabels.length) { // L: 438 - int[] var19 = this.vertexLabels[var18]; // L: 439 + for (var8 = 0; var8 < var6; ++var8) { + int var18 = var2[var8]; + if (var18 < this.vertexLabels.length) { + int[] var19 = this.vertexLabels[var18]; - for (var11 = 0; var11 < var19.length; ++var11) { // L: 440 - var12 = var19[var11]; // L: 441 - Model_transformTempX += this.verticesX[var12]; // L: 442 - Model_transformTempY += this.verticesY[var12]; // L: 443 - Model_transformTempZ += this.verticesZ[var12]; // L: 444 - ++var7; // L: 445 + for (var11 = 0; var11 < var19.length; ++var11) { + var12 = var19[var11]; + Model_transformTempX += this.verticesX[var12]; + Model_transformTempY += this.verticesY[var12]; + Model_transformTempZ += this.verticesZ[var12]; + ++var7; } } } - if (var7 > 0) { // L: 449 - Model_transformTempX = var3 + Model_transformTempX / var7; // L: 450 - Model_transformTempY = var4 + Model_transformTempY / var7; // L: 451 - Model_transformTempZ = var5 + Model_transformTempZ / var7; // L: 452 + if (var7 > 0) { + Model_transformTempX = var3 + Model_transformTempX / var7; + Model_transformTempY = var4 + Model_transformTempY / var7; + Model_transformTempZ = var5 + Model_transformTempZ / var7; } else { - Model_transformTempX = var3; // L: 455 - Model_transformTempY = var4; // L: 456 - Model_transformTempZ = var5; // L: 457 + Model_transformTempX = var3; + Model_transformTempY = var4; + Model_transformTempZ = var5; } } else { int[] var9; int var10; int[] var10000; - if (var1 == 1) { // L: 461 - for (var7 = 0; var7 < var6; ++var7) { // L: 462 - var8 = var2[var7]; // L: 463 - if (var8 < this.vertexLabels.length) { // L: 464 - var9 = this.vertexLabels[var8]; // L: 465 + if (var1 == 1) { + for (var7 = 0; var7 < var6; ++var7) { + var8 = var2[var7]; + if (var8 < this.vertexLabels.length) { + var9 = this.vertexLabels[var8]; - for (var10 = 0; var10 < var9.length; ++var10) { // L: 466 - var11 = var9[var10]; // L: 467 - var10000 = this.verticesX; // L: 468 + for (var10 = 0; var10 < var9.length; ++var10) { + var11 = var9[var10]; + var10000 = this.verticesX; var10000[var11] += var3; - var10000 = this.verticesY; // L: 469 + var10000 = this.verticesY; var10000[var11] += var4; - var10000 = this.verticesZ; // L: 470 + var10000 = this.verticesZ; var10000[var11] += var5; } } } - } else if (var1 == 2) { // L: 476 - for (var7 = 0; var7 < var6; ++var7) { // L: 477 - var8 = var2[var7]; // L: 478 - if (var8 < this.vertexLabels.length) { // L: 479 - var9 = this.vertexLabels[var8]; // L: 480 + } else if (var1 == 2) { + for (var7 = 0; var7 < var6; ++var7) { + var8 = var2[var7]; + if (var8 < this.vertexLabels.length) { + var9 = this.vertexLabels[var8]; - for (var10 = 0; var10 < var9.length; ++var10) { // L: 481 - var11 = var9[var10]; // L: 482 - var10000 = this.verticesX; // L: 483 + for (var10 = 0; var10 < var9.length; ++var10) { + var11 = var9[var10]; + var10000 = this.verticesX; var10000[var11] -= Model_transformTempX; - var10000 = this.verticesY; // L: 484 + var10000 = this.verticesY; var10000[var11] -= Model_transformTempY; - var10000 = this.verticesZ; // L: 485 + var10000 = this.verticesZ; var10000[var11] -= Model_transformTempZ; - var12 = (var3 & 255) * 8; // L: 486 - int var13 = (var4 & 255) * 8; // L: 487 - int var14 = (var5 & 255) * 8; // L: 488 + var12 = (var3 & 255) * 8; + int var13 = (var4 & 255) * 8; + int var14 = (var5 & 255) * 8; int var15; int var16; int var17; - if (var14 != 0) { // L: 489 - var15 = Model_sine[var14]; // L: 490 - var16 = Model_cosine[var14]; // L: 491 - var17 = var15 * this.verticesY[var11] + var16 * this.verticesX[var11] >> 16; // L: 492 - this.verticesY[var11] = var16 * this.verticesY[var11] - var15 * this.verticesX[var11] >> 16; // L: 493 - this.verticesX[var11] = var17; // L: 494 + if (var14 != 0) { + var15 = Model_sine[var14]; + var16 = Model_cosine[var14]; + var17 = var15 * this.verticesY[var11] + var16 * this.verticesX[var11] >> 16; + this.verticesY[var11] = var16 * this.verticesY[var11] - var15 * this.verticesX[var11] >> 16; + this.verticesX[var11] = var17; } - if (var12 != 0) { // L: 496 - var15 = Model_sine[var12]; // L: 497 - var16 = Model_cosine[var12]; // L: 498 - var17 = var16 * this.verticesY[var11] - var15 * this.verticesZ[var11] >> 16; // L: 499 - this.verticesZ[var11] = var15 * this.verticesY[var11] + var16 * this.verticesZ[var11] >> 16; // L: 500 - this.verticesY[var11] = var17; // L: 501 + if (var12 != 0) { + var15 = Model_sine[var12]; + var16 = Model_cosine[var12]; + var17 = var16 * this.verticesY[var11] - var15 * this.verticesZ[var11] >> 16; + this.verticesZ[var11] = var15 * this.verticesY[var11] + var16 * this.verticesZ[var11] >> 16; + this.verticesY[var11] = var17; } - if (var13 != 0) { // L: 503 - var15 = Model_sine[var13]; // L: 504 - var16 = Model_cosine[var13]; // L: 505 - var17 = var15 * this.verticesZ[var11] + var16 * this.verticesX[var11] >> 16; // L: 506 - this.verticesZ[var11] = var16 * this.verticesZ[var11] - var15 * this.verticesX[var11] >> 16; // L: 507 - this.verticesX[var11] = var17; // L: 508 + if (var13 != 0) { + var15 = Model_sine[var13]; + var16 = Model_cosine[var13]; + var17 = var15 * this.verticesZ[var11] + var16 * this.verticesX[var11] >> 16; + this.verticesZ[var11] = var16 * this.verticesZ[var11] - var15 * this.verticesX[var11] >> 16; + this.verticesX[var11] = var17; } - var10000 = this.verticesX; // L: 510 + var10000 = this.verticesX; var10000[var11] += Model_transformTempX; - var10000 = this.verticesY; // L: 511 + var10000 = this.verticesY; var10000[var11] += Model_transformTempY; - var10000 = this.verticesZ; // L: 512 + var10000 = this.verticesZ; var10000[var11] += Model_transformTempZ; } } } - } else if (var1 == 3) { // L: 518 - for (var7 = 0; var7 < var6; ++var7) { // L: 519 - var8 = var2[var7]; // L: 520 - if (var8 < this.vertexLabels.length) { // L: 521 - var9 = this.vertexLabels[var8]; // L: 522 + } else if (var1 == 3) { + for (var7 = 0; var7 < var6; ++var7) { + var8 = var2[var7]; + if (var8 < this.vertexLabels.length) { + var9 = this.vertexLabels[var8]; - for (var10 = 0; var10 < var9.length; ++var10) { // L: 523 - var11 = var9[var10]; // L: 524 - var10000 = this.verticesX; // L: 525 + for (var10 = 0; var10 < var9.length; ++var10) { + var11 = var9[var10]; + var10000 = this.verticesX; var10000[var11] -= Model_transformTempX; - var10000 = this.verticesY; // L: 526 + var10000 = this.verticesY; var10000[var11] -= Model_transformTempY; - var10000 = this.verticesZ; // L: 527 + var10000 = this.verticesZ; var10000[var11] -= Model_transformTempZ; - this.verticesX[var11] = var3 * this.verticesX[var11] / 128; // L: 528 - this.verticesY[var11] = var4 * this.verticesY[var11] / 128; // L: 529 - this.verticesZ[var11] = var5 * this.verticesZ[var11] / 128; // L: 530 - var10000 = this.verticesX; // L: 531 + this.verticesX[var11] = var3 * this.verticesX[var11] / 128; + this.verticesY[var11] = var4 * this.verticesY[var11] / 128; + this.verticesZ[var11] = var5 * this.verticesZ[var11] / 128; + var10000 = this.verticesX; var10000[var11] += Model_transformTempX; - var10000 = this.verticesY; // L: 532 + var10000 = this.verticesY; var10000[var11] += Model_transformTempY; - var10000 = this.verticesZ; // L: 533 + var10000 = this.verticesZ; var10000[var11] += Model_transformTempZ; } } } - } else if (var1 == 5) { // L: 539 - if (this.faceLabelsAlpha != null && this.faceAlphas != null) { // L: 540 - for (var7 = 0; var7 < var6; ++var7) { // L: 541 - var8 = var2[var7]; // L: 542 - if (var8 < this.faceLabelsAlpha.length) { // L: 543 - var9 = this.faceLabelsAlpha[var8]; // L: 544 + } else if (var1 == 5) { + if (this.faceLabelsAlpha != null && this.faceAlphas != null) { + for (var7 = 0; var7 < var6; ++var7) { + var8 = var2[var7]; + if (var8 < this.faceLabelsAlpha.length) { + var9 = this.faceLabelsAlpha[var8]; - for (var10 = 0; var10 < var9.length; ++var10) { // L: 545 - var11 = var9[var10]; // L: 546 - var12 = (this.faceAlphas[var11] & 255) + var3 * 8; // L: 547 - if (var12 < 0) { // L: 548 + for (var10 = 0; var10 < var9.length; ++var10) { + var11 = var9[var10]; + var12 = (this.faceAlphas[var11] & 255) + var3 * 8; + if (var12 < 0) { var12 = 0; - } else if (var12 > 255) { // L: 549 + } else if (var12 > 255) { var12 = 255; } - this.faceAlphas[var11] = (byte)var12; // L: 550 + this.faceAlphas[var11] = (byte)var12; } } } @@ -918,223 +918,223 @@ public class Model extends Entity { } } - } // L: 459 474 516 537 555 557 + } - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("rotateY90Ccw") public void rotateY90Ccw() { - for (int var1 = 0; var1 < this.verticesCount; ++var1) { // L: 560 - int var2 = this.verticesX[var1]; // L: 561 - this.verticesX[var1] = this.verticesZ[var1]; // L: 562 - this.verticesZ[var1] = -var2; // L: 563 + for (int var1 = 0; var1 < this.verticesCount; ++var1) { + int var2 = this.verticesX[var1]; + this.verticesX[var1] = this.verticesZ[var1]; + this.verticesZ[var1] = -var2; } - this.resetBounds(); // L: 565 - } // L: 566 + this.resetBounds(); + } - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("rotateY180") public void rotateY180() { - for (int var1 = 0; var1 < this.verticesCount; ++var1) { // L: 569 - this.verticesX[var1] = -this.verticesX[var1]; // L: 570 - this.verticesZ[var1] = -this.verticesZ[var1]; // L: 571 + for (int var1 = 0; var1 < this.verticesCount; ++var1) { + this.verticesX[var1] = -this.verticesX[var1]; + this.verticesZ[var1] = -this.verticesZ[var1]; } - this.resetBounds(); // L: 573 - } // L: 574 + this.resetBounds(); + } - @ObfuscatedName("r") + @ObfuscatedName("f") @Export("rotateY270Ccw") public void rotateY270Ccw() { - for (int var1 = 0; var1 < this.verticesCount; ++var1) { // L: 577 - int var2 = this.verticesZ[var1]; // L: 578 - this.verticesZ[var1] = this.verticesX[var1]; // L: 579 - this.verticesX[var1] = -var2; // L: 580 + for (int var1 = 0; var1 < this.verticesCount; ++var1) { + int var2 = this.verticesZ[var1]; + this.verticesZ[var1] = this.verticesX[var1]; + this.verticesX[var1] = -var2; } - this.resetBounds(); // L: 582 - } // L: 583 + this.resetBounds(); + } @ObfuscatedName("y") @Export("rotateZ") public void rotateZ(int var1) { - int var2 = Model_sine[var1]; // L: 586 - int var3 = Model_cosine[var1]; // L: 587 + int var2 = Model_sine[var1]; + int var3 = Model_cosine[var1]; - for (int var4 = 0; var4 < this.verticesCount; ++var4) { // L: 588 - int var5 = var3 * this.verticesY[var4] - var2 * this.verticesZ[var4] >> 16; // L: 589 - this.verticesZ[var4] = var2 * this.verticesY[var4] + var3 * this.verticesZ[var4] >> 16; // L: 590 - this.verticesY[var4] = var5; // L: 591 + for (int var4 = 0; var4 < this.verticesCount; ++var4) { + int var5 = var3 * this.verticesY[var4] - var2 * this.verticesZ[var4] >> 16; + this.verticesZ[var4] = var2 * this.verticesY[var4] + var3 * this.verticesZ[var4] >> 16; + this.verticesY[var4] = var5; } - this.resetBounds(); // L: 593 - } // L: 594 + this.resetBounds(); + } - @ObfuscatedName("s") + @ObfuscatedName("r") @Export("offsetBy") public void offsetBy(int var1, int var2, int var3) { - for (int var4 = 0; var4 < this.verticesCount; ++var4) { // L: 597 - int[] var10000 = this.verticesX; // L: 598 + for (int var4 = 0; var4 < this.verticesCount; ++var4) { + int[] var10000 = this.verticesX; var10000[var4] += var1; - var10000 = this.verticesY; // L: 599 + var10000 = this.verticesY; var10000[var4] += var2; - var10000 = this.verticesZ; // L: 600 + var10000 = this.verticesZ; var10000[var4] += var3; } - this.resetBounds(); // L: 602 - } // L: 603 + this.resetBounds(); + } - @ObfuscatedName("j") + @ObfuscatedName("q") @Export("scale") public void scale(int var1, int var2, int var3) { - for (int var4 = 0; var4 < this.verticesCount; ++var4) { // L: 606 - this.verticesX[var4] = this.verticesX[var4] * var1 / 128; // L: 607 - this.verticesY[var4] = var2 * this.verticesY[var4] / 128; // L: 608 - this.verticesZ[var4] = var3 * this.verticesZ[var4] / 128; // L: 609 + for (int var4 = 0; var4 < this.verticesCount; ++var4) { + this.verticesX[var4] = this.verticesX[var4] * var1 / 128; + this.verticesY[var4] = var2 * this.verticesY[var4] / 128; + this.verticesZ[var4] = var3 * this.verticesZ[var4] / 128; } - this.resetBounds(); // L: 611 - } // L: 612 - - @ObfuscatedName("d") - public final void method3064(int var1, int var2, int var3, int var4, int var5, int var6, int var7) { - field1743[0] = -1; // L: 615 - if (this.boundsType != 2 && this.boundsType != 1) { // L: 616 - this.method3069(); - } - - int var8 = Rasterizer3D.Rasterizer3D_clipMidX; // L: 617 - int var9 = Rasterizer3D.Rasterizer3D_clipMidY; // L: 618 - int var10 = Model_sine[var1]; // L: 619 - int var11 = Model_cosine[var1]; // L: 620 - int var12 = Model_sine[var2]; // L: 621 - int var13 = Model_cosine[var2]; // L: 622 - int var14 = Model_sine[var3]; // L: 623 - int var15 = Model_cosine[var3]; // L: 624 - int var16 = Model_sine[var4]; // L: 625 - int var17 = Model_cosine[var4]; // L: 626 - int var18 = var16 * var6 + var17 * var7 >> 16; // L: 627 - - for (int var19 = 0; var19 < this.verticesCount; ++var19) { // L: 628 - int var20 = this.verticesX[var19]; // L: 629 - int var21 = this.verticesY[var19]; // L: 630 - int var22 = this.verticesZ[var19]; // L: 631 - int var23; - if (var3 != 0) { // L: 632 - var23 = var21 * var14 + var20 * var15 >> 16; // L: 633 - var21 = var21 * var15 - var20 * var14 >> 16; // L: 634 - var20 = var23; // L: 635 - } - - if (var1 != 0) { // L: 637 - var23 = var21 * var11 - var22 * var10 >> 16; // L: 638 - var22 = var21 * var10 + var22 * var11 >> 16; // L: 639 - var21 = var23; // L: 640 - } - - if (var2 != 0) { // L: 642 - var23 = var22 * var12 + var20 * var13 >> 16; // L: 643 - var22 = var22 * var13 - var20 * var12 >> 16; // L: 644 - var20 = var23; // L: 645 - } - - var20 += var5; // L: 647 - var21 += var6; // L: 648 - var22 += var7; // L: 649 - var23 = var21 * var17 - var22 * var16 >> 16; // L: 650 - var22 = var21 * var16 + var22 * var17 >> 16; // L: 651 - field1752[var19] = var22 - var18; // L: 653 - modelViewportXs[var19] = var20 * Rasterizer3D.Rasterizer3D_zoom / var22 + var8; // L: 654 - modelViewportYs[var19] = var23 * Rasterizer3D.Rasterizer3D_zoom / var22 + var9; // L: 655 - if (this.field1721 > 0) { // L: 656 - field1739[var19] = var20; // L: 657 - field1709[var19] = var23; // L: 658 - field1741[var19] = var22; // L: 659 - } - } - - try { - this.draw0(false, false, false, 0L); // L: 663 - } catch (Exception var25) { // L: 665 - } - - } // L: 666 - - @ObfuscatedName("a") - public final void method3025(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { - field1743[0] = -1; // L: 669 - if (this.boundsType != 2 && this.boundsType != 1) { // L: 670 - this.method3069(); - } - - int var9 = Rasterizer3D.Rasterizer3D_clipMidX; // L: 671 - int var10 = Rasterizer3D.Rasterizer3D_clipMidY; // L: 672 - int var11 = Model_sine[var1]; // L: 673 - int var12 = Model_cosine[var1]; // L: 674 - int var13 = Model_sine[var2]; // L: 675 - int var14 = Model_cosine[var2]; // L: 676 - int var15 = Model_sine[var3]; // L: 677 - int var16 = Model_cosine[var3]; // L: 678 - int var17 = Model_sine[var4]; // L: 679 - int var18 = Model_cosine[var4]; // L: 680 - int var19 = var17 * var6 + var18 * var7 >> 16; // L: 681 - - for (int var20 = 0; var20 < this.verticesCount; ++var20) { // L: 682 - int var21 = this.verticesX[var20]; // L: 683 - int var22 = this.verticesY[var20]; // L: 684 - int var23 = this.verticesZ[var20]; // L: 685 - int var24; - if (var3 != 0) { // L: 686 - var24 = var22 * var15 + var21 * var16 >> 16; // L: 687 - var22 = var22 * var16 - var21 * var15 >> 16; // L: 688 - var21 = var24; // L: 689 - } - - if (var1 != 0) { // L: 691 - var24 = var22 * var12 - var23 * var11 >> 16; // L: 692 - var23 = var22 * var11 + var23 * var12 >> 16; // L: 693 - var22 = var24; // L: 694 - } - - if (var2 != 0) { // L: 696 - var24 = var23 * var13 + var21 * var14 >> 16; // L: 697 - var23 = var23 * var14 - var21 * var13 >> 16; // L: 698 - var21 = var24; // L: 699 - } - - var21 += var5; // L: 701 - var22 += var6; // L: 702 - var23 += var7; // L: 703 - var24 = var22 * var18 - var23 * var17 >> 16; // L: 704 - var23 = var22 * var17 + var23 * var18 >> 16; // L: 705 - field1752[var20] = var23 - var19; // L: 707 - modelViewportXs[var20] = var9 + var21 * Rasterizer3D.Rasterizer3D_zoom / var8; // L: 708 - modelViewportYs[var20] = var10 + var24 * Rasterizer3D.Rasterizer3D_zoom / var8; // L: 709 - if (this.field1721 > 0) { // L: 710 - field1739[var20] = var21; // L: 711 - field1709[var20] = var24; // L: 712 - field1741[var20] = var23; // L: 713 - } - } - - try { - this.draw0(false, false, false, 0L); // L: 717 - } catch (Exception var26) { // L: 719 - } - - } // L: 720 + this.resetBounds(); + } @ObfuscatedName("g") - @Export("draw0") - final void draw0(boolean var1, boolean var2, boolean var3, long var4) { - if (this.diameter < 1600) { // L: 840 - int var6; - for (var6 = 0; var6 < this.diameter; ++var6) { // L: 841 - field1743[var6] = 0; + public final void method2966(int var1, int var2, int var3, int var4, int var5, int var6, int var7) { + field1732[0] = -1; + if (this.boundsType != 2 && this.boundsType != 1) { + this.method2947(); + } + + int var8 = Rasterizer3D.Rasterizer3D_clipMidX; + int var9 = Rasterizer3D.Rasterizer3D_clipMidY; + int var10 = Model_sine[var1]; + int var11 = Model_cosine[var1]; + int var12 = Model_sine[var2]; + int var13 = Model_cosine[var2]; + int var14 = Model_sine[var3]; + int var15 = Model_cosine[var3]; + int var16 = Model_sine[var4]; + int var17 = Model_cosine[var4]; + int var18 = var16 * var6 + var17 * var7 >> 16; + + for (int var19 = 0; var19 < this.verticesCount; ++var19) { + int var20 = this.verticesX[var19]; + int var21 = this.verticesY[var19]; + int var22 = this.verticesZ[var19]; + int var23; + if (var3 != 0) { + var23 = var21 * var14 + var20 * var15 >> 16; + var21 = var21 * var15 - var20 * var14 >> 16; + var20 = var23; } - var6 = var3 ? 20 : 5; // L: 842 + if (var1 != 0) { + var23 = var21 * var11 - var22 * var10 >> 16; + var22 = var21 * var10 + var22 * var11 >> 16; + var21 = var23; + } + + if (var2 != 0) { + var23 = var22 * var12 + var20 * var13 >> 16; + var22 = var22 * var13 - var20 * var12 >> 16; + var20 = var23; + } + + var20 += var5; + var21 += var6; + var22 += var7; + var23 = var21 * var17 - var22 * var16 >> 16; + var22 = var21 * var16 + var22 * var17 >> 16; + field1727[var19] = var22 - var18; + modelViewportXs[var19] = var20 * Rasterizer3D.Rasterizer3D_zoom / var22 + var8; + modelViewportYs[var19] = var23 * Rasterizer3D.Rasterizer3D_zoom / var22 + var9; + if (this.field1704 > 0) { + field1703[var19] = var20; + field1729[var19] = var23; + field1730[var19] = var22; + } + } + + try { + this.draw0(false, false, false, 0L); + } catch (Exception var25) { + } + + } + + @ObfuscatedName("o") + public final void method2967(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { + field1732[0] = -1; + if (this.boundsType != 2 && this.boundsType != 1) { + this.method2947(); + } + + int var9 = Rasterizer3D.Rasterizer3D_clipMidX; + int var10 = Rasterizer3D.Rasterizer3D_clipMidY; + int var11 = Model_sine[var1]; + int var12 = Model_cosine[var1]; + int var13 = Model_sine[var2]; + int var14 = Model_cosine[var2]; + int var15 = Model_sine[var3]; + int var16 = Model_cosine[var3]; + int var17 = Model_sine[var4]; + int var18 = Model_cosine[var4]; + int var19 = var17 * var6 + var18 * var7 >> 16; + + for (int var20 = 0; var20 < this.verticesCount; ++var20) { + int var21 = this.verticesX[var20]; + int var22 = this.verticesY[var20]; + int var23 = this.verticesZ[var20]; + int var24; + if (var3 != 0) { + var24 = var22 * var15 + var21 * var16 >> 16; + var22 = var22 * var16 - var21 * var15 >> 16; + var21 = var24; + } + + if (var1 != 0) { + var24 = var22 * var12 - var23 * var11 >> 16; + var23 = var22 * var11 + var23 * var12 >> 16; + var22 = var24; + } + + if (var2 != 0) { + var24 = var23 * var13 + var21 * var14 >> 16; + var23 = var23 * var14 - var21 * var13 >> 16; + var21 = var24; + } + + var21 += var5; + var22 += var6; + var23 += var7; + var24 = var22 * var18 - var23 * var17 >> 16; + var23 = var22 * var17 + var23 * var18 >> 16; + field1727[var20] = var23 - var19; + modelViewportXs[var20] = var9 + var21 * Rasterizer3D.Rasterizer3D_zoom / var8; + modelViewportYs[var20] = var10 + var24 * Rasterizer3D.Rasterizer3D_zoom / var8; + if (this.field1704 > 0) { + field1703[var20] = var21; + field1729[var20] = var24; + field1730[var20] = var23; + } + } + + try { + this.draw0(false, false, false, 0L); + } catch (Exception var26) { + } + + } + + @ObfuscatedName("an") + @Export("draw0") + final void draw0(boolean var1, boolean var2, boolean var3, long var4) { + if (this.diameter < 1600) { + int var6; + for (var6 = 0; var6 < this.diameter; ++var6) { + field1732[var6] = 0; + } + + var6 = var3 ? 20 : 5; int var7; int var8; @@ -1146,582 +1146,654 @@ public class Model extends Entity { int var16; int var18; int var28; - for (var7 = 0; var7 < this.indicesCount; ++var7) { // L: 843 - if (this.faceColors3[var7] != -2) { // L: 844 - var8 = this.indices1[var7]; // L: 845 - var9 = this.indices2[var7]; // L: 846 - var10 = this.indices3[var7]; // L: 847 - var11 = modelViewportXs[var8]; // L: 848 - var12 = modelViewportXs[var9]; // L: 849 - var28 = modelViewportXs[var10]; // L: 850 + for (var7 = 0; var7 < this.indicesCount; ++var7) { + if (this.faceColors3[var7] != -2) { + var8 = this.indices1[var7]; + var9 = this.indices2[var7]; + var10 = this.indices3[var7]; + var11 = modelViewportXs[var8]; + var12 = modelViewportXs[var9]; + var28 = modelViewportXs[var10]; + int var29; int var30; - int var32; - if (var1 && (var11 == -5000 || var12 == -5000 || var28 == -5000)) { // L: 851 - var32 = field1739[var8]; // L: 852 - var15 = field1739[var9]; // L: 853 - var16 = field1739[var10]; // L: 854 - var30 = field1709[var8]; // L: 855 - var18 = field1709[var9]; // L: 856 - int var19 = field1709[var10]; // L: 857 - int var20 = field1741[var8]; // L: 858 - int var21 = field1741[var9]; // L: 859 - int var22 = field1741[var10]; // L: 860 - var32 -= var15; // L: 861 - var16 -= var15; // L: 862 - var30 -= var18; // L: 863 - var19 -= var18; // L: 864 - var20 -= var21; // L: 865 - var22 -= var21; // L: 866 - int var23 = var30 * var22 - var20 * var19; // L: 867 - int var24 = var20 * var16 - var32 * var22; // L: 868 - int var25 = var32 * var19 - var30 * var16; // L: 869 - if (var15 * var23 + var18 * var24 + var21 * var25 > 0) { // L: 870 - field1735[var7] = true; // L: 871 - int var26 = (field1752[var8] + field1752[var9] + field1752[var10]) / 3 + this.radius; // L: 872 - field1744[var26][field1743[var26]++] = var7; // L: 873 - } - } else { - if (var2) { // L: 877 - var15 = modelViewportYs[var8]; // L: 879 - var16 = modelViewportYs[var9]; // L: 880 - var30 = modelViewportYs[var10]; // L: 881 - var18 = var6 + ViewportMouse.ViewportMouse_y; // L: 883 - boolean var29; - if (var18 < var15 && var18 < var16 && var18 < var30) { // L: 884 - var29 = false; // L: 885 + if (!var1 || var11 != -5000 && var12 != -5000 && var28 != -5000) { + if (var2) { + var15 = modelViewportYs[var8]; + var16 = modelViewportYs[var9]; + var29 = modelViewportYs[var10]; + var18 = var6 + ViewportMouse.ViewportMouse_y; + boolean var34; + if (var18 < var15 && var18 < var16 && var18 < var29) { + var34 = false; } else { - var18 = ViewportMouse.ViewportMouse_y - var6; // L: 888 - if (var18 > var15 && var18 > var16 && var18 > var30) { // L: 889 - var29 = false; // L: 890 + var18 = ViewportMouse.ViewportMouse_y - var6; + if (var18 > var15 && var18 > var16 && var18 > var29) { + var34 = false; } else { - var18 = var6 + ViewportMouse.ViewportMouse_x; // L: 893 - if (var18 < var11 && var18 < var12 && var18 < var28) { // L: 894 - var29 = false; // L: 895 + var18 = var6 + ViewportMouse.ViewportMouse_x; + if (var18 < var11 && var18 < var12 && var18 < var28) { + var34 = false; } else { - var18 = ViewportMouse.ViewportMouse_x - var6; // L: 898 - if (var18 > var11 && var18 > var12 && var18 > var28) { // L: 899 - var29 = false; // L: 900 + var18 = ViewportMouse.ViewportMouse_x - var6; + if (var18 > var11 && var18 > var12 && var18 > var28) { + var34 = false; } else { - var29 = true; // L: 903 + var34 = true; } } } } - if (var29) { // L: 905 - Message.addEntityUnderMouse(var4); // L: 906 - var2 = false; // L: 907 + if (var34) { + ViewportMouse.ViewportMouse_entityTags[++ViewportMouse.ViewportMouse_entityCount - 1] = var4; + var2 = false; } } - if ((var11 - var12) * (modelViewportYs[var10] - modelViewportYs[var9]) - (var28 - var12) * (modelViewportYs[var8] - modelViewportYs[var9]) > 0) { // L: 910 - field1735[var7] = false; // L: 911 - if (var11 >= 0 && var12 >= 0 && var28 >= 0 && var11 <= Rasterizer3D.Rasterizer3D_clipWidth && var12 <= Rasterizer3D.Rasterizer3D_clipWidth && var28 <= Rasterizer3D.Rasterizer3D_clipWidth) { // L: 912 - field1734[var7] = false; // L: 913 + if ((var11 - var12) * (modelViewportYs[var10] - modelViewportYs[var9]) - (var28 - var12) * (modelViewportYs[var8] - modelViewportYs[var9]) > 0) { + field1724[var7] = false; + if (var11 >= 0 && var12 >= 0 && var28 >= 0 && var11 <= Rasterizer3D.Rasterizer3D_clipWidth && var12 <= Rasterizer3D.Rasterizer3D_clipWidth && var28 <= Rasterizer3D.Rasterizer3D_clipWidth) { + field1749[var7] = false; } else { - field1734[var7] = true; + field1749[var7] = true; } - var32 = (field1752[var8] + field1752[var9] + field1752[var10]) / 3 + this.radius; // L: 914 - field1744[var32][field1743[var32]++] = var7; // L: 915 + var30 = (field1727[var8] + field1727[var9] + field1727[var10]) / 3 + this.radius; + field1733[var30][field1732[var30]++] = var7; + } + } else { + var30 = field1703[var8]; + var15 = field1703[var9]; + var16 = field1703[var10]; + var29 = field1729[var8]; + var18 = field1729[var9]; + int var19 = field1729[var10]; + int var20 = field1730[var8]; + int var21 = field1730[var9]; + int var22 = field1730[var10]; + var30 -= var15; + var16 -= var15; + var29 -= var18; + var19 -= var18; + var20 -= var21; + var22 -= var21; + int var23 = var29 * var22 - var20 * var19; + int var24 = var20 * var16 - var30 * var22; + int var25 = var30 * var19 - var29 * var16; + if (var15 * var23 + var18 * var24 + var21 * var25 > 0) { + field1724[var7] = true; + int var26 = (field1727[var8] + field1727[var9] + field1727[var10]) / 3 + this.radius; + field1733[var26][field1732[var26]++] = var7; } } } } int[] var27; - if (this.faceRenderPriorities == null) { // L: 919 - for (var7 = this.diameter - 1; var7 >= 0; --var7) { // L: 920 - var8 = field1743[var7]; // L: 921 - if (var8 > 0) { // L: 922 - var27 = field1744[var7]; // L: 923 + if (this.faceRenderPriorities == null) { + for (var7 = this.diameter - 1; var7 >= 0; --var7) { + var8 = field1732[var7]; + if (var8 > 0) { + var27 = field1733[var7]; - for (var10 = 0; var10 < var8; ++var10) { // L: 924 + for (var10 = 0; var10 < var8; ++var10) { this.drawFace(var27[var10]); } } } } else { - for (var7 = 0; var7 < 12; ++var7) { // L: 929 - field1719[var7] = 0; // L: 930 - field1750[var7] = 0; // L: 931 + for (var7 = 0; var7 < 12; ++var7) { + field1734[var7] = 0; + field1738[var7] = 0; } - for (var7 = this.diameter - 1; var7 >= 0; --var7) { // L: 933 - var8 = field1743[var7]; // L: 934 - if (var8 > 0) { // L: 935 - var27 = field1744[var7]; // L: 936 + for (var7 = this.diameter - 1; var7 >= 0; --var7) { + var8 = field1732[var7]; + if (var8 > 0) { + var27 = field1733[var7]; - for (var10 = 0; var10 < var8; ++var10) { // L: 937 - var11 = var27[var10]; // L: 938 - byte var31 = this.faceRenderPriorities[var11]; // L: 939 - var28 = field1719[var31]++; // L: 940 - field1746[var31][var28] = var11; // L: 941 - if (var31 < 10) { // L: 942 - int[] var10000 = field1750; - var10000[var31] += var7; - } else if (var31 == 10) { // L: 943 - field1747[var28] = var7; + for (var10 = 0; var10 < var8; ++var10) { + var11 = var27[var10]; + byte var33 = this.faceRenderPriorities[var11]; + var28 = field1734[var33]++; + field1735[var33][var28] = var11; + if (var33 < 10) { + int[] var10000 = field1738; + var10000[var33] += var7; + } else if (var33 == 10) { + field1736[var28] = var7; } else { - field1748[var28] = var7; // L: 944 + field1737[var28] = var7; } } } } - var7 = 0; // L: 948 - if (field1719[1] > 0 || field1719[2] > 0) { // L: 949 - var7 = (field1750[1] + field1750[2]) / (field1719[1] + field1719[2]); + var7 = 0; + if (field1734[1] > 0 || field1734[2] > 0) { + var7 = (field1738[1] + field1738[2]) / (field1734[1] + field1734[2]); } - var8 = 0; // L: 950 - if (field1719[3] > 0 || field1719[4] > 0) { // L: 951 - var8 = (field1750[3] + field1750[4]) / (field1719[3] + field1719[4]); + var8 = 0; + if (field1734[3] > 0 || field1734[4] > 0) { + var8 = (field1738[3] + field1738[4]) / (field1734[3] + field1734[4]); } - var9 = 0; // L: 952 - if (field1719[6] > 0 || field1719[8] > 0) { // L: 953 - var9 = (field1750[8] + field1750[6]) / (field1719[8] + field1719[6]); + var9 = 0; + if (field1734[6] > 0 || field1734[8] > 0) { + var9 = (field1738[8] + field1738[6]) / (field1734[8] + field1734[6]); } - var11 = 0; // L: 955 - var12 = field1719[10]; // L: 956 - int[] var13 = field1746[10]; // L: 957 - int[] var14 = field1747; // L: 958 - if (var11 == var12) { // L: 959 - var11 = 0; // L: 960 - var12 = field1719[11]; // L: 961 - var13 = field1746[11]; // L: 962 - var14 = field1748; // L: 963 + var11 = 0; + var12 = field1734[10]; + int[] var13 = field1735[10]; + int[] var14 = field1736; + if (var11 == var12) { + var11 = 0; + var12 = field1734[11]; + var13 = field1735[11]; + var14 = field1737; } - if (var11 < var12) { // L: 965 + if (var11 < var12) { var10 = var14[var11]; } else { - var10 = -1000; // L: 966 + var10 = -1000; } - for (var15 = 0; var15 < 10; ++var15) { // L: 967 - while (var15 == 0 && var10 > var7) { // L: 968 - this.drawFace(var13[var11++]); // L: 969 - if (var11 == var12 && var13 != field1746[11]) { // L: 970 - var11 = 0; // L: 971 - var12 = field1719[11]; // L: 972 - var13 = field1746[11]; // L: 973 - var14 = field1748; // L: 974 + for (var15 = 0; var15 < 10; ++var15) { + while (var15 == 0 && var10 > var7) { + this.drawFace(var13[var11++]); + if (var11 == var12 && var13 != field1735[11]) { + var11 = 0; + var12 = field1734[11]; + var13 = field1735[11]; + var14 = field1737; } - if (var11 < var12) { // L: 976 + if (var11 < var12) { var10 = var14[var11]; } else { - var10 = -1000; // L: 977 + var10 = -1000; } } - while (var15 == 3 && var10 > var8) { // L: 979 - this.drawFace(var13[var11++]); // L: 980 - if (var11 == var12 && var13 != field1746[11]) { // L: 981 - var11 = 0; // L: 982 - var12 = field1719[11]; // L: 983 - var13 = field1746[11]; // L: 984 - var14 = field1748; // L: 985 + while (var15 == 3 && var10 > var8) { + this.drawFace(var13[var11++]); + if (var11 == var12 && var13 != field1735[11]) { + var11 = 0; + var12 = field1734[11]; + var13 = field1735[11]; + var14 = field1737; } - if (var11 < var12) { // L: 987 + if (var11 < var12) { var10 = var14[var11]; } else { - var10 = -1000; // L: 988 + var10 = -1000; } } - while (var15 == 5 && var10 > var9) { // L: 990 - this.drawFace(var13[var11++]); // L: 991 - if (var11 == var12 && var13 != field1746[11]) { // L: 992 - var11 = 0; // L: 993 - var12 = field1719[11]; // L: 994 - var13 = field1746[11]; // L: 995 - var14 = field1748; // L: 996 + while (var15 == 5 && var10 > var9) { + this.drawFace(var13[var11++]); + if (var11 == var12 && var13 != field1735[11]) { + var11 = 0; + var12 = field1734[11]; + var13 = field1735[11]; + var14 = field1737; } - if (var11 < var12) { // L: 998 + if (var11 < var12) { var10 = var14[var11]; } else { - var10 = -1000; // L: 999 + var10 = -1000; } } - var16 = field1719[var15]; // L: 1001 - int[] var17 = field1746[var15]; // L: 1002 + var16 = field1734[var15]; + int[] var17 = field1735[var15]; - for (var18 = 0; var18 < var16; ++var18) { // L: 1003 - this.drawFace(var17[var18]); // L: 1004 + for (var18 = 0; var18 < var16; ++var18) { + this.drawFace(var17[var18]); } } - while (var10 != -1000) { // L: 1007 - this.drawFace(var13[var11++]); // L: 1008 - if (var11 == var12 && var13 != field1746[11]) { // L: 1009 - var11 = 0; // L: 1010 - var13 = field1746[11]; // L: 1011 - var12 = field1719[11]; // L: 1012 - var14 = field1748; // L: 1013 + while (var10 != -1000) { + this.drawFace(var13[var11++]); + if (var11 == var12 && var13 != field1735[11]) { + var11 = 0; + var13 = field1735[11]; + var12 = field1734[11]; + var14 = field1737; } - if (var11 < var12) { // L: 1015 + if (var11 < var12) { var10 = var14[var11]; } else { - var10 = -1000; // L: 1016 + var10 = -1000; } } } } - } // L: 927 1018 + } - @ObfuscatedName("h") + @ObfuscatedName("aj") @Export("drawFace") final void drawFace(int var1) { - if (field1735[var1]) { // L: 1021 - this.method3029(var1); // L: 1022 + if (field1724[var1]) { + this.method2978(var1); } else { - int var2 = this.indices1[var1]; // L: 1025 - int var3 = this.indices2[var1]; // L: 1026 - int var4 = this.indices3[var1]; // L: 1027 - Rasterizer3D.field1800 = field1734[var1]; // L: 1028 - if (this.faceAlphas == null) { // L: 1029 + int var2 = this.indices1[var1]; + int var3 = this.indices2[var1]; + int var4 = this.indices3[var1]; + Rasterizer3D.field1791 = field1749[var1]; + if (this.faceAlphas == null) { Rasterizer3D.Rasterizer3D_alpha = 0; } else { - Rasterizer3D.Rasterizer3D_alpha = this.faceAlphas[var1] & 255; // L: 1030 + Rasterizer3D.Rasterizer3D_alpha = this.faceAlphas[var1] & 255; } - if (this.faceTextures != null && this.faceTextures[var1] != -1) { // L: 1031 + if (this.faceTextures != null && this.faceTextures[var1] != -1) { int var5; int var6; int var7; - if (this.field1712 != null && this.field1712[var1] != -1) { // L: 1039 - int var8 = this.field1712[var1] & 255; // L: 1040 - var5 = this.field1716[var8]; // L: 1041 - var6 = this.field1717[var8]; // L: 1042 - var7 = this.field1718[var8]; // L: 1043 + if (this.field1701 != null && this.field1701[var1] != -1) { + int var8 = this.field1701[var1] & 255; + var5 = this.field1723[var8]; + var6 = this.field1745[var8]; + var7 = this.field1707[var8]; } else { - var5 = var2; // L: 1046 - var6 = var3; // L: 1047 - var7 = var4; // L: 1048 + var5 = var2; + var6 = var3; + var7 = var4; } if (this.faceColors3[var1] == -1) { - Rasterizer3D.method3156(modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], this.faceColors1[var1], this.faceColors1[var1], this.faceColors1[var1], field1739[var5], field1739[var6], field1739[var7], field1709[var5], field1709[var6], field1709[var7], field1741[var5], field1741[var6], field1741[var7], this.faceTextures[var1]); // L: 1050 + Rasterizer3D.method3083(modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], this.faceColors1[var1], this.faceColors1[var1], this.faceColors1[var1], field1703[var5], field1703[var6], field1703[var7], field1729[var5], field1729[var6], field1729[var7], field1730[var5], field1730[var6], field1730[var7], this.faceTextures[var1]); } else { - Rasterizer3D.method3156(modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], this.faceColors1[var1], this.faceColors2[var1], this.faceColors3[var1], field1739[var5], field1739[var6], field1739[var7], field1709[var5], field1709[var6], field1709[var7], field1741[var5], field1741[var6], field1741[var7], this.faceTextures[var1]); // L: 1051 + Rasterizer3D.method3083(modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], this.faceColors1[var1], this.faceColors2[var1], this.faceColors3[var1], field1703[var5], field1703[var6], field1703[var7], field1729[var5], field1729[var6], field1729[var7], field1730[var5], field1730[var6], field1730[var7], this.faceTextures[var1]); } - } else if (this.faceColors3[var1] == -1) { // L: 1032 - Rasterizer3D.method3149(modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], field1761[this.faceColors1[var1]]); + } else if (this.faceColors3[var1] == -1) { + Rasterizer3D.method3081(modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], field1750[this.faceColors1[var1]]); } else { - Rasterizer3D.method3155(modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], this.faceColors1[var1], this.faceColors2[var1], this.faceColors3[var1]); // L: 1033 + Rasterizer3D.method3079(modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], this.faceColors1[var1], this.faceColors2[var1], this.faceColors3[var1]); } } - } // L: 1023 1053 + } - @ObfuscatedName("ab") - final void method3029(int var1) { - int var2 = Rasterizer3D.Rasterizer3D_clipMidX; // L: 1056 - int var3 = Rasterizer3D.Rasterizer3D_clipMidY; // L: 1057 - int var4 = 0; // L: 1058 - int var5 = this.indices1[var1]; // L: 1059 - int var6 = this.indices2[var1]; // L: 1060 - int var7 = this.indices3[var1]; // L: 1061 - int var8 = field1741[var5]; // L: 1062 - int var9 = field1741[var6]; // L: 1063 - int var10 = field1741[var7]; // L: 1064 - if (this.faceAlphas == null) { // L: 1065 + @ObfuscatedName("ax") + final void method2978(int var1) { + int var2 = Rasterizer3D.Rasterizer3D_clipMidX; + int var3 = Rasterizer3D.Rasterizer3D_clipMidY; + int var4 = 0; + int var5 = this.indices1[var1]; + int var6 = this.indices2[var1]; + int var7 = this.indices3[var1]; + int var8 = field1730[var5]; + int var9 = field1730[var6]; + int var10 = field1730[var7]; + if (this.faceAlphas == null) { Rasterizer3D.Rasterizer3D_alpha = 0; } else { - Rasterizer3D.Rasterizer3D_alpha = this.faceAlphas[var1] & 255; // L: 1066 + Rasterizer3D.Rasterizer3D_alpha = this.faceAlphas[var1] & 255; } int var11; int var12; int var13; int var14; - if (var8 >= 50) { // L: 1067 - field1695[var4] = modelViewportXs[var5]; // L: 1068 - field1724[var4] = modelViewportYs[var5]; // L: 1069 - field1754[var4++] = this.faceColors1[var1]; // L: 1070 + if (var8 >= 50) { + field1689[var4] = modelViewportXs[var5]; + field1702[var4] = modelViewportYs[var5]; + field1741[var4++] = this.faceColors1[var1]; } else { - var11 = field1739[var5]; // L: 1073 - var12 = field1709[var5]; // L: 1074 - var13 = this.faceColors1[var1]; // L: 1075 - if (var10 >= 50) { // L: 1076 - var14 = field1762[var10 - var8] * (50 - var8); // L: 1077 - field1695[var4] = var2 + Rasterizer3D.Rasterizer3D_zoom * (var11 + ((field1739[var7] - var11) * var14 >> 16)) / 50; // L: 1078 - field1724[var4] = var3 + Rasterizer3D.Rasterizer3D_zoom * (var12 + ((field1709[var7] - var12) * var14 >> 16)) / 50; // L: 1079 - field1754[var4++] = var13 + ((this.faceColors3[var1] - var13) * var14 >> 16); // L: 1080 + var11 = field1703[var5]; + var12 = field1729[var5]; + var13 = this.faceColors1[var1]; + if (var10 >= 50) { + var14 = field1751[var10 - var8] * (50 - var8); + field1689[var4] = var2 + Rasterizer3D.Rasterizer3D_zoom * (var11 + ((field1703[var7] - var11) * var14 >> 16)) / 50; + field1702[var4] = var3 + Rasterizer3D.Rasterizer3D_zoom * (var12 + ((field1729[var7] - var12) * var14 >> 16)) / 50; + field1741[var4++] = var13 + ((this.faceColors3[var1] - var13) * var14 >> 16); } - if (var9 >= 50) { // L: 1082 - var14 = field1762[var9 - var8] * (50 - var8); // L: 1083 - field1695[var4] = var2 + Rasterizer3D.Rasterizer3D_zoom * (var11 + ((field1739[var6] - var11) * var14 >> 16)) / 50; // L: 1084 - field1724[var4] = var3 + Rasterizer3D.Rasterizer3D_zoom * (var12 + ((field1709[var6] - var12) * var14 >> 16)) / 50; // L: 1085 - field1754[var4++] = var13 + ((this.faceColors2[var1] - var13) * var14 >> 16); // L: 1086 + if (var9 >= 50) { + var14 = field1751[var9 - var8] * (50 - var8); + field1689[var4] = var2 + Rasterizer3D.Rasterizer3D_zoom * (var11 + ((field1703[var6] - var11) * var14 >> 16)) / 50; + field1702[var4] = var3 + Rasterizer3D.Rasterizer3D_zoom * (var12 + ((field1729[var6] - var12) * var14 >> 16)) / 50; + field1741[var4++] = var13 + ((this.faceColors2[var1] - var13) * var14 >> 16); } } - if (var9 >= 50) { // L: 1089 - field1695[var4] = modelViewportXs[var6]; // L: 1090 - field1724[var4] = modelViewportYs[var6]; // L: 1091 - field1754[var4++] = this.faceColors2[var1]; // L: 1092 + if (var9 >= 50) { + field1689[var4] = modelViewportXs[var6]; + field1702[var4] = modelViewportYs[var6]; + field1741[var4++] = this.faceColors2[var1]; } else { - var11 = field1739[var6]; // L: 1095 - var12 = field1709[var6]; // L: 1096 - var13 = this.faceColors2[var1]; // L: 1097 - if (var8 >= 50) { // L: 1098 - var14 = field1762[var8 - var9] * (50 - var9); // L: 1099 - field1695[var4] = var2 + Rasterizer3D.Rasterizer3D_zoom * (var11 + ((field1739[var5] - var11) * var14 >> 16)) / 50; // L: 1100 - field1724[var4] = var3 + Rasterizer3D.Rasterizer3D_zoom * (var12 + ((field1709[var5] - var12) * var14 >> 16)) / 50; // L: 1101 - field1754[var4++] = var13 + ((this.faceColors1[var1] - var13) * var14 >> 16); // L: 1102 + var11 = field1703[var6]; + var12 = field1729[var6]; + var13 = this.faceColors2[var1]; + if (var8 >= 50) { + var14 = field1751[var8 - var9] * (50 - var9); + field1689[var4] = var2 + Rasterizer3D.Rasterizer3D_zoom * (var11 + ((field1703[var5] - var11) * var14 >> 16)) / 50; + field1702[var4] = var3 + Rasterizer3D.Rasterizer3D_zoom * (var12 + ((field1729[var5] - var12) * var14 >> 16)) / 50; + field1741[var4++] = var13 + ((this.faceColors1[var1] - var13) * var14 >> 16); } - if (var10 >= 50) { // L: 1104 - var14 = field1762[var10 - var9] * (50 - var9); // L: 1105 - field1695[var4] = var2 + Rasterizer3D.Rasterizer3D_zoom * (var11 + ((field1739[var7] - var11) * var14 >> 16)) / 50; // L: 1106 - field1724[var4] = var3 + Rasterizer3D.Rasterizer3D_zoom * (var12 + ((field1709[var7] - var12) * var14 >> 16)) / 50; // L: 1107 - field1754[var4++] = var13 + ((this.faceColors3[var1] - var13) * var14 >> 16); // L: 1108 + if (var10 >= 50) { + var14 = field1751[var10 - var9] * (50 - var9); + field1689[var4] = var2 + Rasterizer3D.Rasterizer3D_zoom * (var11 + ((field1703[var7] - var11) * var14 >> 16)) / 50; + field1702[var4] = var3 + Rasterizer3D.Rasterizer3D_zoom * (var12 + ((field1729[var7] - var12) * var14 >> 16)) / 50; + field1741[var4++] = var13 + ((this.faceColors3[var1] - var13) * var14 >> 16); } } - if (var10 >= 50) { // L: 1111 - field1695[var4] = modelViewportXs[var7]; // L: 1112 - field1724[var4] = modelViewportYs[var7]; // L: 1113 - field1754[var4++] = this.faceColors3[var1]; // L: 1114 + if (var10 >= 50) { + field1689[var4] = modelViewportXs[var7]; + field1702[var4] = modelViewportYs[var7]; + field1741[var4++] = this.faceColors3[var1]; } else { - var11 = field1739[var7]; // L: 1117 - var12 = field1709[var7]; // L: 1118 - var13 = this.faceColors3[var1]; // L: 1119 - if (var9 >= 50) { // L: 1120 - var14 = field1762[var9 - var10] * (50 - var10); // L: 1121 - field1695[var4] = var2 + Rasterizer3D.Rasterizer3D_zoom * (var11 + ((field1739[var6] - var11) * var14 >> 16)) / 50; // L: 1122 - field1724[var4] = var3 + Rasterizer3D.Rasterizer3D_zoom * (var12 + ((field1709[var6] - var12) * var14 >> 16)) / 50; // L: 1123 - field1754[var4++] = var13 + ((this.faceColors2[var1] - var13) * var14 >> 16); // L: 1124 + var11 = field1703[var7]; + var12 = field1729[var7]; + var13 = this.faceColors3[var1]; + if (var9 >= 50) { + var14 = field1751[var9 - var10] * (50 - var10); + field1689[var4] = var2 + Rasterizer3D.Rasterizer3D_zoom * (var11 + ((field1703[var6] - var11) * var14 >> 16)) / 50; + field1702[var4] = var3 + Rasterizer3D.Rasterizer3D_zoom * (var12 + ((field1729[var6] - var12) * var14 >> 16)) / 50; + field1741[var4++] = var13 + ((this.faceColors2[var1] - var13) * var14 >> 16); } - if (var8 >= 50) { // L: 1126 - var14 = field1762[var8 - var10] * (50 - var10); // L: 1127 - field1695[var4] = var2 + Rasterizer3D.Rasterizer3D_zoom * (var11 + ((field1739[var5] - var11) * var14 >> 16)) / 50; // L: 1128 - field1724[var4] = var3 + Rasterizer3D.Rasterizer3D_zoom * (var12 + ((field1709[var5] - var12) * var14 >> 16)) / 50; // L: 1129 - field1754[var4++] = var13 + ((this.faceColors1[var1] - var13) * var14 >> 16); // L: 1130 + if (var8 >= 50) { + var14 = field1751[var8 - var10] * (50 - var10); + field1689[var4] = var2 + Rasterizer3D.Rasterizer3D_zoom * (var11 + ((field1703[var5] - var11) * var14 >> 16)) / 50; + field1702[var4] = var3 + Rasterizer3D.Rasterizer3D_zoom * (var12 + ((field1729[var5] - var12) * var14 >> 16)) / 50; + field1741[var4++] = var13 + ((this.faceColors1[var1] - var13) * var14 >> 16); } } - var11 = field1695[0]; // L: 1133 - var12 = field1695[1]; // L: 1134 - var13 = field1695[2]; // L: 1135 - var14 = field1724[0]; // L: 1136 - int var15 = field1724[1]; // L: 1137 - int var16 = field1724[2]; // L: 1138 - Rasterizer3D.field1800 = false; // L: 1139 + var11 = field1689[0]; + var12 = field1689[1]; + var13 = field1689[2]; + var14 = field1702[0]; + int var15 = field1702[1]; + int var16 = field1702[2]; + Rasterizer3D.field1791 = false; int var17; int var18; int var19; int var20; - if (var4 == 3) { // L: 1140 - if (var11 < 0 || var12 < 0 || var13 < 0 || var11 > Rasterizer3D.Rasterizer3D_clipWidth || var12 > Rasterizer3D.Rasterizer3D_clipWidth || var13 > Rasterizer3D.Rasterizer3D_clipWidth) { // L: 1141 - Rasterizer3D.field1800 = true; + if (var4 == 3) { + if (var11 < 0 || var12 < 0 || var13 < 0 || var11 > Rasterizer3D.Rasterizer3D_clipWidth || var12 > Rasterizer3D.Rasterizer3D_clipWidth || var13 > Rasterizer3D.Rasterizer3D_clipWidth) { + Rasterizer3D.field1791 = true; } - if (this.faceTextures != null && this.faceTextures[var1] != -1) { // L: 1142 - if (this.field1712 != null && this.field1712[var1] != -1) { // L: 1150 - var20 = this.field1712[var1] & 255; // L: 1151 - var17 = this.field1716[var20]; // L: 1152 - var18 = this.field1717[var20]; // L: 1153 - var19 = this.field1718[var20]; // L: 1154 + if (this.faceTextures != null && this.faceTextures[var1] != -1) { + if (this.field1701 != null && this.field1701[var1] != -1) { + var20 = this.field1701[var1] & 255; + var17 = this.field1723[var20]; + var18 = this.field1745[var20]; + var19 = this.field1707[var20]; } else { - var17 = var5; // L: 1157 - var18 = var6; // L: 1158 - var19 = var7; // L: 1159 + var17 = var5; + var18 = var6; + var19 = var7; } - if (this.faceColors3[var1] == -1) { // L: 1161 - Rasterizer3D.method3156(var14, var15, var16, var11, var12, var13, this.faceColors1[var1], this.faceColors1[var1], this.faceColors1[var1], field1739[var17], field1739[var18], field1739[var19], field1709[var17], field1709[var18], field1709[var19], field1741[var17], field1741[var18], field1741[var19], this.faceTextures[var1]); + if (this.faceColors3[var1] == -1) { + Rasterizer3D.method3083(var14, var15, var16, var11, var12, var13, this.faceColors1[var1], this.faceColors1[var1], this.faceColors1[var1], field1703[var17], field1703[var18], field1703[var19], field1729[var17], field1729[var18], field1729[var19], field1730[var17], field1730[var18], field1730[var19], this.faceTextures[var1]); } else { - Rasterizer3D.method3156(var14, var15, var16, var11, var12, var13, field1754[0], field1754[1], field1754[2], field1739[var17], field1739[var18], field1739[var19], field1709[var17], field1709[var18], field1709[var19], field1741[var17], field1741[var18], field1741[var19], this.faceTextures[var1]); // L: 1162 + Rasterizer3D.method3083(var14, var15, var16, var11, var12, var13, field1741[0], field1741[1], field1741[2], field1703[var17], field1703[var18], field1703[var19], field1729[var17], field1729[var18], field1729[var19], field1730[var17], field1730[var18], field1730[var19], this.faceTextures[var1]); } - } else if (this.faceColors3[var1] == -1) { // L: 1143 - Rasterizer3D.method3149(var14, var15, var16, var11, var12, var13, field1761[this.faceColors1[var1]]); + } else if (this.faceColors3[var1] == -1) { + Rasterizer3D.method3081(var14, var15, var16, var11, var12, var13, field1750[this.faceColors1[var1]]); } else { - Rasterizer3D.method3155(var14, var15, var16, var11, var12, var13, field1754[0], field1754[1], field1754[2]); // L: 1144 + Rasterizer3D.method3079(var14, var15, var16, var11, var12, var13, field1741[0], field1741[1], field1741[2]); } } - if (var4 == 4) { // L: 1165 - if (var11 < 0 || var12 < 0 || var13 < 0 || var11 > Rasterizer3D.Rasterizer3D_clipWidth || var12 > Rasterizer3D.Rasterizer3D_clipWidth || var13 > Rasterizer3D.Rasterizer3D_clipWidth || field1695[3] < 0 || field1695[3] > Rasterizer3D.Rasterizer3D_clipWidth) { // L: 1166 - Rasterizer3D.field1800 = true; + if (var4 == 4) { + if (var11 < 0 || var12 < 0 || var13 < 0 || var11 > Rasterizer3D.Rasterizer3D_clipWidth || var12 > Rasterizer3D.Rasterizer3D_clipWidth || var13 > Rasterizer3D.Rasterizer3D_clipWidth || field1689[3] < 0 || field1689[3] > Rasterizer3D.Rasterizer3D_clipWidth) { + Rasterizer3D.field1791 = true; } - if (this.faceTextures != null && this.faceTextures[var1] != -1) { // L: 1167 - if (this.field1712 != null && this.field1712[var1] != -1) { // L: 1182 - var20 = this.field1712[var1] & 255; // L: 1183 - var17 = this.field1716[var20]; // L: 1184 - var18 = this.field1717[var20]; // L: 1185 - var19 = this.field1718[var20]; // L: 1186 + if (this.faceTextures != null && this.faceTextures[var1] != -1) { + if (this.field1701 != null && this.field1701[var1] != -1) { + var20 = this.field1701[var1] & 255; + var17 = this.field1723[var20]; + var18 = this.field1745[var20]; + var19 = this.field1707[var20]; } else { - var17 = var5; // L: 1189 - var18 = var6; // L: 1190 - var19 = var7; // L: 1191 + var17 = var5; + var18 = var6; + var19 = var7; } - short var21 = this.faceTextures[var1]; // L: 1193 - if (this.faceColors3[var1] == -1) { // L: 1194 - Rasterizer3D.method3156(var14, var15, var16, var11, var12, var13, this.faceColors1[var1], this.faceColors1[var1], this.faceColors1[var1], field1739[var17], field1739[var18], field1739[var19], field1709[var17], field1709[var18], field1709[var19], field1741[var17], field1741[var18], field1741[var19], var21); // L: 1195 - Rasterizer3D.method3156(var14, var16, field1724[3], var11, var13, field1695[3], this.faceColors1[var1], this.faceColors1[var1], this.faceColors1[var1], field1739[var17], field1739[var18], field1739[var19], field1709[var17], field1709[var18], field1709[var19], field1741[var17], field1741[var18], field1741[var19], var21); // L: 1196 + short var21 = this.faceTextures[var1]; + if (this.faceColors3[var1] == -1) { + Rasterizer3D.method3083(var14, var15, var16, var11, var12, var13, this.faceColors1[var1], this.faceColors1[var1], this.faceColors1[var1], field1703[var17], field1703[var18], field1703[var19], field1729[var17], field1729[var18], field1729[var19], field1730[var17], field1730[var18], field1730[var19], var21); + Rasterizer3D.method3083(var14, var16, field1702[3], var11, var13, field1689[3], this.faceColors1[var1], this.faceColors1[var1], this.faceColors1[var1], field1703[var17], field1703[var18], field1703[var19], field1729[var17], field1729[var18], field1729[var19], field1730[var17], field1730[var18], field1730[var19], var21); } else { - Rasterizer3D.method3156(var14, var15, var16, var11, var12, var13, field1754[0], field1754[1], field1754[2], field1739[var17], field1739[var18], field1739[var19], field1709[var17], field1709[var18], field1709[var19], field1741[var17], field1741[var18], field1741[var19], var21); // L: 1199 - Rasterizer3D.method3156(var14, var16, field1724[3], var11, var13, field1695[3], field1754[0], field1754[2], field1754[3], field1739[var17], field1739[var18], field1739[var19], field1709[var17], field1709[var18], field1709[var19], field1741[var17], field1741[var18], field1741[var19], var21); // L: 1200 + Rasterizer3D.method3083(var14, var15, var16, var11, var12, var13, field1741[0], field1741[1], field1741[2], field1703[var17], field1703[var18], field1703[var19], field1729[var17], field1729[var18], field1729[var19], field1730[var17], field1730[var18], field1730[var19], var21); + Rasterizer3D.method3083(var14, var16, field1702[3], var11, var13, field1689[3], field1741[0], field1741[2], field1741[3], field1703[var17], field1703[var18], field1703[var19], field1729[var17], field1729[var18], field1729[var19], field1730[var17], field1730[var18], field1730[var19], var21); } - } else if (this.faceColors3[var1] == -1) { // L: 1168 - var17 = field1761[this.faceColors1[var1]]; // L: 1169 - Rasterizer3D.method3149(var14, var15, var16, var11, var12, var13, var17); // L: 1170 - Rasterizer3D.method3149(var14, var16, field1724[3], var11, var13, field1695[3], var17); // L: 1171 + } else if (this.faceColors3[var1] == -1) { + var17 = field1750[this.faceColors1[var1]]; + Rasterizer3D.method3081(var14, var15, var16, var11, var12, var13, var17); + Rasterizer3D.method3081(var14, var16, field1702[3], var11, var13, field1689[3], var17); } else { - Rasterizer3D.method3155(var14, var15, var16, var11, var12, var13, field1754[0], field1754[1], field1754[2]); // L: 1174 - Rasterizer3D.method3155(var14, var16, field1724[3], var11, var13, field1695[3], field1754[0], field1754[2], field1754[3]); // L: 1175 + Rasterizer3D.method3079(var14, var15, var16, var11, var12, var13, field1741[0], field1741[1], field1741[2]); + Rasterizer3D.method3079(var14, var16, field1702[3], var11, var13, field1689[3], field1741[0], field1741[2], field1741[3]); } } - } // L: 1204 + } - @ObfuscatedName("cg") + @ObfuscatedName("cf") @Export("draw") void draw(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, long var9) { - field1743[0] = -1; // L: 723 - if (this.boundsType != 1) { // L: 724 + field1732[0] = -1; + if (this.boundsType != 1) { this.calculateBoundsCylinder(); } - this.calculateBoundingBox(var1); // L: 725 - int var11 = var5 * var8 - var4 * var6 >> 16; // L: 726 - int var12 = var2 * var7 + var3 * var11 >> 16; // L: 727 - int var13 = var3 * this.xzRadius >> 16; // L: 728 - int var14 = var12 + var13; // L: 729 - if (var14 > 50 && var12 < 3500) { // L: 730 - int var15 = var8 * var4 + var5 * var6 >> 16; // L: 731 - int var16 = (var15 - this.xzRadius) * Rasterizer3D.Rasterizer3D_zoom; // L: 732 - if (var16 / var14 < Rasterizer3D.Rasterizer3D_clipMidX2) { // L: 733 - int var17 = (var15 + this.xzRadius) * Rasterizer3D.Rasterizer3D_zoom; // L: 734 - if (var17 / var14 > Rasterizer3D.Rasterizer3D_clipNegativeMidX) { // L: 735 - int var18 = var3 * var7 - var11 * var2 >> 16; // L: 736 - int var19 = var2 * this.xzRadius >> 16; // L: 737 - int var20 = (var18 + var19) * Rasterizer3D.Rasterizer3D_zoom; // L: 738 - if (var20 / var14 > Rasterizer3D.Rasterizer3D_clipNegativeMidY) { // L: 739 - int var21 = (var3 * super.height >> 16) + var19; // L: 740 - int var22 = (var18 - var21) * Rasterizer3D.Rasterizer3D_zoom; // L: 741 - if (var22 / var14 < Rasterizer3D.Rasterizer3D_clipMidY2) { // L: 742 - int var23 = var13 + (var2 * super.height >> 16); // L: 743 - boolean var24 = false; // L: 744 - boolean var25 = false; // L: 745 - if (var12 - var23 <= 50) { // L: 746 + this.calculateBoundingBox(var1); + int var11 = var5 * var8 - var4 * var6 >> 16; + int var12 = var2 * var7 + var3 * var11 >> 16; + int var13 = var3 * this.xzRadius >> 16; + int var14 = var12 + var13; + if (var14 > 50 && var12 < 3500) { + int var15 = var8 * var4 + var5 * var6 >> 16; + int var16 = (var15 - this.xzRadius) * Rasterizer3D.Rasterizer3D_zoom; + if (var16 / var14 < Rasterizer3D.Rasterizer3D_clipMidX2) { + int var17 = (var15 + this.xzRadius) * Rasterizer3D.Rasterizer3D_zoom; + if (var17 / var14 > Rasterizer3D.Rasterizer3D_clipNegativeMidX) { + int var18 = var3 * var7 - var11 * var2 >> 16; + int var19 = var2 * this.xzRadius >> 16; + int var20 = (var18 + var19) * Rasterizer3D.Rasterizer3D_zoom; + if (var20 / var14 > Rasterizer3D.Rasterizer3D_clipNegativeMidY) { + int var21 = (var3 * super.height >> 16) + var19; + int var22 = (var18 - var21) * Rasterizer3D.Rasterizer3D_zoom; + if (var22 / var14 < Rasterizer3D.Rasterizer3D_clipMidY2) { + int var23 = var13 + (var2 * super.height >> 16); + boolean var24 = false; + boolean var25 = false; + if (var12 - var23 <= 50) { var25 = true; } - boolean var26 = var25 || this.field1721 > 0; // L: 747 - int var27 = ArchiveDiskAction.method4291(); // L: 748 - int var28 = ViewportMouse.ViewportMouse_y; // L: 751 - boolean var30 = WorldMapSection2.method425(); // L: 754 - boolean var31 = DevicePcmPlayerProvider.method941(var9); // L: 755 - boolean var32 = false; // L: 756 - int var34; - int var35; - int var36; - if (var31 && var30) { // L: 757 - boolean var33 = false; // L: 758 - if (field1756) { // L: 759 - var33 = ModeWhere.method3818(this, var6, var7, var8); // L: 760 + boolean var26 = var25 || this.field1704 > 0; + int var27 = ObjectSound.method1993(); + int var28 = ViewportMouse.ViewportMouse_y; + boolean var30 = FontName.method5355(); + boolean var31 = FriendSystem.method1943(var9); + boolean var32 = false; + int var37; + int var38; + int var39; + int var40; + int var48; + int var54; + int var55; + int var56; + if (var31 && var30) { + boolean var33 = false; + if (field1731) { + boolean var36 = ViewportMouse.ViewportMouse_isInViewport; + boolean var34; + if (!var36) { + var34 = false; + } else { + int var43; + int var44; + int var45; + int var57; + if (!ViewportMouse.ViewportMouse_false0) { + var37 = Scene.Scene_cameraPitchSine; + var38 = Scene.Scene_cameraPitchCosine; + var39 = Scene.Scene_cameraYawSine; + var40 = Scene.Scene_cameraYawCosine; + byte var41 = 50; + short var42 = 3500; + var43 = (ViewportMouse.ViewportMouse_x - Rasterizer3D.Rasterizer3D_clipMidX) * var41 / Rasterizer3D.Rasterizer3D_zoom; + var44 = (ViewportMouse.ViewportMouse_y - Rasterizer3D.Rasterizer3D_clipMidY) * var41 / Rasterizer3D.Rasterizer3D_zoom; + var45 = (ViewportMouse.ViewportMouse_x - Rasterizer3D.Rasterizer3D_clipMidX) * var42 / Rasterizer3D.Rasterizer3D_zoom; + int var46 = (ViewportMouse.ViewportMouse_y - Rasterizer3D.Rasterizer3D_clipMidY) * var42 / Rasterizer3D.Rasterizer3D_zoom; + int var47 = Rasterizer3D.method3092(var44, var41, var38, var37); + var56 = Rasterizer3D.method3094(var44, var41, var38, var37); + var44 = var47; + var47 = Rasterizer3D.method3092(var46, var42, var38, var37); + var57 = Rasterizer3D.method3094(var46, var42, var38, var37); + var46 = var47; + var47 = Rasterizer3D.method3090(var43, var56, var40, var39); + var56 = Rasterizer3D.method3133(var43, var56, var40, var39); + var43 = var47; + var47 = Rasterizer3D.method3090(var45, var57, var40, var39); + var57 = Rasterizer3D.method3133(var45, var57, var40, var39); + ViewportMouse.field1758 = (var43 + var47) / 2; + ViewportMouse.field1759 = (var44 + var46) / 2; + ViewportMouse.field1765 = (var56 + var57) / 2; + ViewportMouse.field1761 = (var47 - var43) / 2; + ViewportMouse.field1762 = (var46 - var44) / 2; + class232.field2778 = (var57 - var56) / 2; + FriendSystem.field1065 = Math.abs(ViewportMouse.field1761); + SpriteMask.field2535 = Math.abs(ViewportMouse.field1762); + WorldMapIcon_0.field146 = Math.abs(class232.field2778); + } + + var37 = this.xMid + var6; + var38 = var7 + this.yMid; + var39 = var8 + this.zMid; + var40 = this.xMidOffset; + var56 = this.yMidOffset; + var57 = this.zMidOffset; + var43 = ViewportMouse.field1758 - var37; + var44 = ViewportMouse.field1759 - var38; + var45 = ViewportMouse.field1765 - var39; + if (Math.abs(var43) > var40 + FriendSystem.field1065) { + var34 = false; + } else if (Math.abs(var44) > var56 + SpriteMask.field2535) { + var34 = false; + } else if (Math.abs(var45) > var57 + WorldMapIcon_0.field146) { + var34 = false; + } else if (Math.abs(var45 * ViewportMouse.field1762 - var44 * class232.field2778) > var56 * WorldMapIcon_0.field146 + var57 * SpriteMask.field2535) { + var34 = false; + } else if (Math.abs(var43 * class232.field2778 - var45 * ViewportMouse.field1761) > var40 * WorldMapIcon_0.field146 + var57 * FriendSystem.field1065) { + var34 = false; + } else if (Math.abs(var44 * ViewportMouse.field1761 - var43 * ViewportMouse.field1762) > var40 * SpriteMask.field2535 + var56 * FriendSystem.field1065) { + var34 = false; + } else { + var34 = true; + } + } + + var33 = var34; } else { - var34 = var12 - var13; // L: 763 - if (var34 <= 50) { // L: 764 - var34 = 50; + var55 = var12 - var13; + if (var55 <= 50) { + var55 = 50; } - if (var15 > 0) { // L: 765 - var16 /= var14; // L: 766 - var17 /= var34; // L: 767 + if (var15 > 0) { + var16 /= var14; + var17 /= var55; } else { - var17 /= var14; // L: 770 - var16 /= var34; // L: 771 + var17 /= var14; + var16 /= var55; } - if (var18 > 0) { // L: 773 - var22 /= var14; // L: 774 - var20 /= var34; // L: 775 + if (var18 > 0) { + var22 /= var14; + var20 /= var55; } else { - var20 /= var14; // L: 778 - var22 /= var34; // L: 779 + var20 /= var14; + var22 /= var55; } - var35 = var27 - Rasterizer3D.Rasterizer3D_clipMidX; // L: 781 - var36 = var28 - Rasterizer3D.Rasterizer3D_clipMidY; // L: 782 - if (var35 > var16 && var35 < var17 && var36 > var22 && var36 < var20) { // L: 783 - var33 = true; // L: 784 + var48 = var27 - Rasterizer3D.Rasterizer3D_clipMidX; + var54 = var28 - Rasterizer3D.Rasterizer3D_clipMidY; + if (var48 > var16 && var48 < var17 && var54 > var22 && var54 < var20) { + var33 = true; } } - if (var33) { // L: 787 - if (this.isSingleTile) { // L: 788 - Message.addEntityUnderMouse(var9); + if (var33) { + if (this.isSingleTile) { + ViewportMouse.ViewportMouse_entityTags[++ViewportMouse.ViewportMouse_entityCount - 1] = var9; } else { - var32 = true; // L: 789 + var32 = true; } } } - int var44 = Rasterizer3D.Rasterizer3D_clipMidX; // L: 792 - var34 = Rasterizer3D.Rasterizer3D_clipMidY; // L: 793 - var35 = 0; // L: 794 - var36 = 0; // L: 795 - if (var1 != 0) { // L: 796 - var35 = Model_sine[var1]; // L: 797 - var36 = Model_cosine[var1]; // L: 798 + int var53 = Rasterizer3D.Rasterizer3D_clipMidX; + var55 = Rasterizer3D.Rasterizer3D_clipMidY; + var48 = 0; + var54 = 0; + if (var1 != 0) { + var48 = Model_sine[var1]; + var54 = Model_cosine[var1]; } - for (int var37 = 0; var37 < this.verticesCount; ++var37) { // L: 800 - int var38 = this.verticesX[var37]; // L: 801 - int var39 = this.verticesY[var37]; // L: 802 - int var40 = this.verticesZ[var37]; // L: 803 - int var41; - if (var1 != 0) { // L: 804 - var41 = var40 * var35 + var38 * var36 >> 16; // L: 805 - var40 = var40 * var36 - var38 * var35 >> 16; // L: 806 - var38 = var41; // L: 807 + for (var37 = 0; var37 < this.verticesCount; ++var37) { + var38 = this.verticesX[var37]; + var39 = this.verticesY[var37]; + var40 = this.verticesZ[var37]; + if (var1 != 0) { + var56 = var40 * var48 + var38 * var54 >> 16; + var40 = var40 * var54 - var38 * var48 >> 16; + var38 = var56; } - var38 += var6; // L: 809 - var39 += var7; // L: 810 - var40 += var8; // L: 811 - var41 = var40 * var4 + var5 * var38 >> 16; // L: 812 - var40 = var5 * var40 - var38 * var4 >> 16; // L: 813 - var38 = var41; // L: 814 - var41 = var3 * var39 - var40 * var2 >> 16; // L: 815 - var40 = var39 * var2 + var3 * var40 >> 16; // L: 816 - field1752[var37] = var40 - var12; // L: 818 - if (var40 >= 50) { // L: 819 - modelViewportXs[var37] = var38 * Rasterizer3D.Rasterizer3D_zoom / var40 + var44; // L: 820 - modelViewportYs[var37] = var41 * Rasterizer3D.Rasterizer3D_zoom / var40 + var34; // L: 821 + var38 += var6; + var39 += var7; + var40 += var8; + var56 = var40 * var4 + var5 * var38 >> 16; + var40 = var5 * var40 - var38 * var4 >> 16; + var38 = var56; + var56 = var3 * var39 - var40 * var2 >> 16; + var40 = var39 * var2 + var3 * var40 >> 16; + field1727[var37] = var40 - var12; + if (var40 >= 50) { + modelViewportXs[var37] = var38 * Rasterizer3D.Rasterizer3D_zoom / var40 + var53; + modelViewportYs[var37] = var56 * Rasterizer3D.Rasterizer3D_zoom / var40 + var55; } else { - modelViewportXs[var37] = -5000; // L: 824 - var24 = true; // L: 825 + modelViewportXs[var37] = -5000; + var24 = true; } - if (var26) { // L: 827 - field1739[var37] = var38; // L: 828 - field1709[var37] = var41; // L: 829 - field1741[var37] = var40; // L: 830 + if (var26) { + field1703[var37] = var38; + field1729[var37] = var56; + field1730[var37] = var40; } } try { - this.draw0(var24, var32, this.isSingleTile, var9); // L: 834 - } catch (Exception var43) { // L: 836 + this.draw0(var24, var32, this.isSingleTile, var9); + } catch (Exception var52) { } } @@ -1729,5 +1801,5 @@ public class Model extends Entity { } } } - } // L: 837 + } } diff --git a/runescape-client/src/main/java/ModelData.java b/runescape-client/src/main/java/ModelData.java index ee556ad790..27ecc299d1 100644 --- a/runescape-client/src/main/java/ModelData.java +++ b/runescape-client/src/main/java/ModelData.java @@ -3,136 +3,136 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("en") +@ObfuscatedName("es") @Implements("ModelData") public class ModelData extends Entity { - @ObfuscatedName("ak") - static int[] field1608; - @ObfuscatedName("au") - static int[] field1576; - @ObfuscatedName("ai") - static int field1610; - @ObfuscatedName("ax") + @ObfuscatedName("av") + static int[] field1598; + @ObfuscatedName("aq") + static int[] field1599; + @ObfuscatedName("ah") + static int field1600; + @ObfuscatedName("am") @Export("ModelData_sine") static int[] ModelData_sine; - @ObfuscatedName("ag") + @ObfuscatedName("aa") @Export("ModelData_cosine") static int[] ModelData_cosine; - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("verticesCount") int verticesCount; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("verticesX") int[] verticesX; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("verticesY") int[] verticesY; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("verticesZ") int[] verticesZ; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("faceCount") int faceCount; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("indices1") int[] indices1; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("indices2") int[] indices2; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("indices3") int[] indices3; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("faceRenderTypes") byte[] faceRenderTypes; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("faceRenderPriorities") byte[] faceRenderPriorities; - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("faceAlphas") byte[] faceAlphas; - @ObfuscatedName("o") + @ObfuscatedName("e") @Export("textureCoords") byte[] textureCoords; - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("faceColors") short[] faceColors; - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("faceTextures") short[] faceTextures; - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("priority") byte priority; - @ObfuscatedName("r") + @ObfuscatedName("f") @Export("textureTriangleCount") int textureTriangleCount; - @ObfuscatedName("y") + @ObfuscatedName("a") @Export("textureRenderTypes") byte[] textureRenderTypes; - @ObfuscatedName("s") + @ObfuscatedName("b") @Export("texTriangleX") short[] texTriangleX; - @ObfuscatedName("j") + @ObfuscatedName("y") @Export("texTriangleY") short[] texTriangleY; - @ObfuscatedName("w") + @ObfuscatedName("r") @Export("texTriangleZ") short[] texTriangleZ; - @ObfuscatedName("v") + @ObfuscatedName("q") @Export("vertexSkins") int[] vertexSkins; - @ObfuscatedName("d") + @ObfuscatedName("g") @Export("faceSkins") int[] faceSkins; - @ObfuscatedName("a") + @ObfuscatedName("s") @Export("vertexLabels") int[][] vertexLabels; - @ObfuscatedName("g") + @ObfuscatedName("o") @Export("faceLabelsAlpha") int[][] faceLabelsAlpha; - @ObfuscatedName("h") + @ObfuscatedName("k") @ObfuscatedSignature( - descriptor = "[Leb;" + descriptor = "[Lef;" ) @Export("faceNormals") FaceNormal[] faceNormals; - @ObfuscatedName("i") + @ObfuscatedName("d") @ObfuscatedSignature( - descriptor = "[Lep;" + descriptor = "[Leb;" ) @Export("vertexNormals") VertexNormal[] vertexNormals; - @ObfuscatedName("ab") + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "[Lep;" + descriptor = "[Leb;" ) - VertexNormal[] field1599; - @ObfuscatedName("ac") + VertexNormal[] field1601; + @ObfuscatedName("aj") @Export("ambient") public short ambient; - @ObfuscatedName("ao") + @ObfuscatedName("ax") @Export("contrast") public short contrast; - @ObfuscatedName("af") + @ObfuscatedName("ag") @Export("isBoundsCalculated") boolean isBoundsCalculated; - @ObfuscatedName("av") - int field1603; - @ObfuscatedName("ar") - int field1604; - @ObfuscatedName("ay") - int field1605; - @ObfuscatedName("ah") - int field1587; - @ObfuscatedName("az") - int field1607; + @ObfuscatedName("au") + int field1593; + @ObfuscatedName("as") + int field1585; + @ObfuscatedName("ae") + int field1595; + @ObfuscatedName("ac") + int field1596; + @ObfuscatedName("ak") + int field1597; static { - field1608 = new int[10000]; // L: 44 - field1576 = new int[10000]; // L: 45 - field1610 = 0; // L: 46 - ModelData_sine = Rasterizer3D.Rasterizer3D_sine; // L: 47 - ModelData_cosine = Rasterizer3D.Rasterizer3D_cosine; // L: 48 + field1598 = new int[10000]; + field1599 = new int[10000]; + field1600 = 0; + ModelData_sine = Rasterizer3D.Rasterizer3D_sine; + ModelData_cosine = Rasterizer3D.Rasterizer3D_cosine; } ModelData() { @@ -140,949 +140,949 @@ public class ModelData extends Entity { this.faceCount = 0; this.priority = 0; this.isBoundsCalculated = false; - } // L: 50 + } @ObfuscatedSignature( - descriptor = "([Len;I)V" + descriptor = "([Les;I)V" ) public ModelData(ModelData[] var1, int var2) { this.verticesCount = 0; this.faceCount = 0; this.priority = 0; this.isBoundsCalculated = false; - boolean var3 = false; // L: 471 - boolean var4 = false; // L: 472 - boolean var5 = false; // L: 473 - boolean var6 = false; // L: 474 - boolean var7 = false; // L: 475 - boolean var8 = false; // L: 476 - this.verticesCount = 0; // L: 477 - this.faceCount = 0; // L: 478 - this.textureTriangleCount = 0; // L: 479 - this.priority = -1; // L: 480 + boolean var3 = false; + boolean var4 = false; + boolean var5 = false; + boolean var6 = false; + boolean var7 = false; + boolean var8 = false; + this.verticesCount = 0; + this.faceCount = 0; + this.textureTriangleCount = 0; + this.priority = -1; int var9; ModelData var10; - for (var9 = 0; var9 < var2; ++var9) { // L: 481 - var10 = var1[var9]; // L: 482 - if (var10 != null) { // L: 483 - this.verticesCount += var10.verticesCount; // L: 484 - this.faceCount += var10.faceCount; // L: 485 - this.textureTriangleCount += var10.textureTriangleCount; // L: 486 - if (var10.faceRenderPriorities != null) { // L: 487 + for (var9 = 0; var9 < var2; ++var9) { + var10 = var1[var9]; + if (var10 != null) { + this.verticesCount += var10.verticesCount; + this.faceCount += var10.faceCount; + this.textureTriangleCount += var10.textureTriangleCount; + if (var10.faceRenderPriorities != null) { var4 = true; } else { - if (this.priority == -1) { // L: 489 + if (this.priority == -1) { this.priority = var10.priority; } - if (this.priority != var10.priority) { // L: 490 + if (this.priority != var10.priority) { var4 = true; } } - var3 |= var10.faceRenderTypes != null; // L: 492 - var5 |= var10.faceAlphas != null; // L: 493 - var6 |= var10.faceSkins != null; // L: 494 - var7 |= var10.faceTextures != null; // L: 495 - var8 |= var10.textureCoords != null; // L: 496 + var3 |= var10.faceRenderTypes != null; + var5 |= var10.faceAlphas != null; + var6 |= var10.faceSkins != null; + var7 |= var10.faceTextures != null; + var8 |= var10.textureCoords != null; } } - this.verticesX = new int[this.verticesCount]; // L: 499 - this.verticesY = new int[this.verticesCount]; // L: 500 - this.verticesZ = new int[this.verticesCount]; // L: 501 - this.vertexSkins = new int[this.verticesCount]; // L: 502 - this.indices1 = new int[this.faceCount]; // L: 503 - this.indices2 = new int[this.faceCount]; // L: 504 - this.indices3 = new int[this.faceCount]; // L: 505 - if (var3) { // L: 506 + this.verticesX = new int[this.verticesCount]; + this.verticesY = new int[this.verticesCount]; + this.verticesZ = new int[this.verticesCount]; + this.vertexSkins = new int[this.verticesCount]; + this.indices1 = new int[this.faceCount]; + this.indices2 = new int[this.faceCount]; + this.indices3 = new int[this.faceCount]; + if (var3) { this.faceRenderTypes = new byte[this.faceCount]; } - if (var4) { // L: 507 + if (var4) { this.faceRenderPriorities = new byte[this.faceCount]; } - if (var5) { // L: 508 + if (var5) { this.faceAlphas = new byte[this.faceCount]; } - if (var6) { // L: 509 + if (var6) { this.faceSkins = new int[this.faceCount]; } - if (var7) { // L: 510 + if (var7) { this.faceTextures = new short[this.faceCount]; } - if (var8) { // L: 511 + if (var8) { this.textureCoords = new byte[this.faceCount]; } - this.faceColors = new short[this.faceCount]; // L: 512 - if (this.textureTriangleCount > 0) { // L: 513 - this.textureRenderTypes = new byte[this.textureTriangleCount]; // L: 514 - this.texTriangleX = new short[this.textureTriangleCount]; // L: 515 - this.texTriangleY = new short[this.textureTriangleCount]; // L: 516 - this.texTriangleZ = new short[this.textureTriangleCount]; // L: 517 + this.faceColors = new short[this.faceCount]; + if (this.textureTriangleCount > 0) { + this.textureRenderTypes = new byte[this.textureTriangleCount]; + this.texTriangleX = new short[this.textureTriangleCount]; + this.texTriangleY = new short[this.textureTriangleCount]; + this.texTriangleZ = new short[this.textureTriangleCount]; } - this.verticesCount = 0; // L: 519 - this.faceCount = 0; // L: 520 - this.textureTriangleCount = 0; // L: 521 + this.verticesCount = 0; + this.faceCount = 0; + this.textureTriangleCount = 0; - for (var9 = 0; var9 < var2; ++var9) { // L: 522 - var10 = var1[var9]; // L: 523 - if (var10 != null) { // L: 524 + for (var9 = 0; var9 < var2; ++var9) { + var10 = var1[var9]; + if (var10 != null) { int var11; - for (var11 = 0; var11 < var10.faceCount; ++var11) { // L: 525 - if (var3 && var10.faceRenderTypes != null) { // L: 526 527 + for (var11 = 0; var11 < var10.faceCount; ++var11) { + if (var3 && var10.faceRenderTypes != null) { this.faceRenderTypes[this.faceCount] = var10.faceRenderTypes[var11]; } - if (var4) { // L: 529 - if (var10.faceRenderPriorities != null) { // L: 530 + if (var4) { + if (var10.faceRenderPriorities != null) { this.faceRenderPriorities[this.faceCount] = var10.faceRenderPriorities[var11]; } else { - this.faceRenderPriorities[this.faceCount] = var10.priority; // L: 531 + this.faceRenderPriorities[this.faceCount] = var10.priority; } } - if (var5 && var10.faceAlphas != null) { // L: 533 534 + if (var5 && var10.faceAlphas != null) { this.faceAlphas[this.faceCount] = var10.faceAlphas[var11]; } - if (var6 && var10.faceSkins != null) { // L: 536 537 + if (var6 && var10.faceSkins != null) { this.faceSkins[this.faceCount] = var10.faceSkins[var11]; } - if (var7) { // L: 539 - if (var10.faceTextures != null) { // L: 540 + if (var7) { + if (var10.faceTextures != null) { this.faceTextures[this.faceCount] = var10.faceTextures[var11]; } else { - this.faceTextures[this.faceCount] = -1; // L: 541 + this.faceTextures[this.faceCount] = -1; } } - if (var8) { // L: 543 - if (var10.textureCoords != null && var10.textureCoords[var11] != -1) { // L: 544 + if (var8) { + if (var10.textureCoords != null && var10.textureCoords[var11] != -1) { this.textureCoords[this.faceCount] = (byte)(this.textureTriangleCount + var10.textureCoords[var11]); } else { - this.textureCoords[this.faceCount] = -1; // L: 545 + this.textureCoords[this.faceCount] = -1; } } - this.faceColors[this.faceCount] = var10.faceColors[var11]; // L: 547 - this.indices1[this.faceCount] = this.method2952(var10, var10.indices1[var11]); // L: 548 - this.indices2[this.faceCount] = this.method2952(var10, var10.indices2[var11]); // L: 549 - this.indices3[this.faceCount] = this.method2952(var10, var10.indices3[var11]); // L: 550 - ++this.faceCount; // L: 551 + this.faceColors[this.faceCount] = var10.faceColors[var11]; + this.indices1[this.faceCount] = this.method2856(var10, var10.indices1[var11]); + this.indices2[this.faceCount] = this.method2856(var10, var10.indices2[var11]); + this.indices3[this.faceCount] = this.method2856(var10, var10.indices3[var11]); + ++this.faceCount; } - for (var11 = 0; var11 < var10.textureTriangleCount; ++var11) { // L: 553 - byte var12 = this.textureRenderTypes[this.textureTriangleCount] = var10.textureRenderTypes[var11]; // L: 554 - if (var12 == 0) { // L: 555 - this.texTriangleX[this.textureTriangleCount] = (short)this.method2952(var10, var10.texTriangleX[var11]); // L: 556 - this.texTriangleY[this.textureTriangleCount] = (short)this.method2952(var10, var10.texTriangleY[var11]); // L: 557 - this.texTriangleZ[this.textureTriangleCount] = (short)this.method2952(var10, var10.texTriangleZ[var11]); // L: 558 + for (var11 = 0; var11 < var10.textureTriangleCount; ++var11) { + byte var12 = this.textureRenderTypes[this.textureTriangleCount] = var10.textureRenderTypes[var11]; + if (var12 == 0) { + this.texTriangleX[this.textureTriangleCount] = (short)this.method2856(var10, var10.texTriangleX[var11]); + this.texTriangleY[this.textureTriangleCount] = (short)this.method2856(var10, var10.texTriangleY[var11]); + this.texTriangleZ[this.textureTriangleCount] = (short)this.method2856(var10, var10.texTriangleZ[var11]); } - ++this.textureTriangleCount; // L: 560 + ++this.textureTriangleCount; } } } - } // L: 564 + } ModelData(byte[] var1) { this.verticesCount = 0; this.faceCount = 0; this.priority = 0; this.isBoundsCalculated = false; - if (var1[var1.length - 1] == -1 && var1[var1.length - 2] == -1) { // L: 59 - this.method2913(var1); + if (var1[var1.length - 1] == -1 && var1[var1.length - 2] == -1) { + this.method2853(var1); } else { - this.method2914(var1); // L: 60 + this.method2854(var1); } - } // L: 61 + } @ObfuscatedSignature( - descriptor = "(Len;ZZZZ)V", + descriptor = "(Les;ZZZZ)V", garbageValue = "1" ) public ModelData(ModelData var1, boolean var2, boolean var3, boolean var4, boolean var5) { - this.verticesCount = 0; // L: 9 - this.faceCount = 0; // L: 13 - this.priority = 0; // L: 23 - this.isBoundsCalculated = false; // L: 38 - this.verticesCount = var1.verticesCount; // L: 588 - this.faceCount = var1.faceCount; // L: 589 - this.textureTriangleCount = var1.textureTriangleCount; // L: 590 + this.verticesCount = 0; + this.faceCount = 0; + this.priority = 0; + this.isBoundsCalculated = false; + this.verticesCount = var1.verticesCount; + this.faceCount = var1.faceCount; + this.textureTriangleCount = var1.textureTriangleCount; int var6; - if (var2) { // L: 591 - this.verticesX = var1.verticesX; // L: 592 - this.verticesY = var1.verticesY; // L: 593 - this.verticesZ = var1.verticesZ; // L: 594 + if (var2) { + this.verticesX = var1.verticesX; + this.verticesY = var1.verticesY; + this.verticesZ = var1.verticesZ; } else { - this.verticesX = new int[this.verticesCount]; // L: 597 - this.verticesY = new int[this.verticesCount]; // L: 598 - this.verticesZ = new int[this.verticesCount]; // L: 599 + this.verticesX = new int[this.verticesCount]; + this.verticesY = new int[this.verticesCount]; + this.verticesZ = new int[this.verticesCount]; - for (var6 = 0; var6 < this.verticesCount; ++var6) { // L: 600 - this.verticesX[var6] = var1.verticesX[var6]; // L: 601 - this.verticesY[var6] = var1.verticesY[var6]; // L: 602 - this.verticesZ[var6] = var1.verticesZ[var6]; // L: 603 + for (var6 = 0; var6 < this.verticesCount; ++var6) { + this.verticesX[var6] = var1.verticesX[var6]; + this.verticesY[var6] = var1.verticesY[var6]; + this.verticesZ[var6] = var1.verticesZ[var6]; } } - if (var3) { // L: 606 + if (var3) { this.faceColors = var1.faceColors; } else { - this.faceColors = new short[this.faceCount]; // L: 608 + this.faceColors = new short[this.faceCount]; - for (var6 = 0; var6 < this.faceCount; ++var6) { // L: 609 + for (var6 = 0; var6 < this.faceCount; ++var6) { this.faceColors[var6] = var1.faceColors[var6]; } } - if (!var4 && var1.faceTextures != null) { // L: 611 - this.faceTextures = new short[this.faceCount]; // L: 613 + if (!var4 && var1.faceTextures != null) { + this.faceTextures = new short[this.faceCount]; - for (var6 = 0; var6 < this.faceCount; ++var6) { // L: 614 + for (var6 = 0; var6 < this.faceCount; ++var6) { this.faceTextures[var6] = var1.faceTextures[var6]; } } else { this.faceTextures = var1.faceTextures; } - this.faceAlphas = var1.faceAlphas; // L: 616 - this.indices1 = var1.indices1; // L: 626 - this.indices2 = var1.indices2; // L: 627 - this.indices3 = var1.indices3; // L: 628 - this.faceRenderTypes = var1.faceRenderTypes; // L: 629 - this.faceRenderPriorities = var1.faceRenderPriorities; // L: 630 - this.textureCoords = var1.textureCoords; // L: 631 - this.priority = var1.priority; // L: 632 - this.textureRenderTypes = var1.textureRenderTypes; // L: 633 - this.texTriangleX = var1.texTriangleX; // L: 634 - this.texTriangleY = var1.texTriangleY; // L: 635 - this.texTriangleZ = var1.texTriangleZ; // L: 636 - this.vertexSkins = var1.vertexSkins; // L: 637 - this.faceSkins = var1.faceSkins; // L: 638 - this.vertexLabels = var1.vertexLabels; // L: 639 - this.faceLabelsAlpha = var1.faceLabelsAlpha; // L: 640 - this.vertexNormals = var1.vertexNormals; // L: 641 - this.faceNormals = var1.faceNormals; // L: 642 - this.field1599 = var1.field1599; // L: 643 - this.ambient = var1.ambient; // L: 644 - this.contrast = var1.contrast; // L: 645 + this.faceAlphas = var1.faceAlphas; + this.indices1 = var1.indices1; + this.indices2 = var1.indices2; + this.indices3 = var1.indices3; + this.faceRenderTypes = var1.faceRenderTypes; + this.faceRenderPriorities = var1.faceRenderPriorities; + this.textureCoords = var1.textureCoords; + this.priority = var1.priority; + this.textureRenderTypes = var1.textureRenderTypes; + this.texTriangleX = var1.texTriangleX; + this.texTriangleY = var1.texTriangleY; + this.texTriangleZ = var1.texTriangleZ; + this.vertexSkins = var1.vertexSkins; + this.faceSkins = var1.faceSkins; + this.vertexLabels = var1.vertexLabels; + this.faceLabelsAlpha = var1.faceLabelsAlpha; + this.vertexNormals = var1.vertexNormals; + this.faceNormals = var1.faceNormals; + this.field1601 = var1.field1601; + this.ambient = var1.ambient; + this.contrast = var1.contrast; } - @ObfuscatedName("b") - void method2913(byte[] var1) { - Buffer var2 = new Buffer(var1); // L: 64 - Buffer var3 = new Buffer(var1); // L: 65 - Buffer var4 = new Buffer(var1); // L: 66 - Buffer var5 = new Buffer(var1); // L: 67 - Buffer var6 = new Buffer(var1); // L: 68 - Buffer var7 = new Buffer(var1); // L: 69 - Buffer var8 = new Buffer(var1); // L: 70 - var2.offset = var1.length - 23; // L: 71 - int var9 = var2.readUnsignedShort(); // L: 72 - int var10 = var2.readUnsignedShort(); // L: 73 - int var11 = var2.readUnsignedByte(); // L: 74 - int var12 = var2.readUnsignedByte(); // L: 75 - int var13 = var2.readUnsignedByte(); // L: 76 - int var14 = var2.readUnsignedByte(); // L: 77 - int var15 = var2.readUnsignedByte(); // L: 78 - int var16 = var2.readUnsignedByte(); // L: 79 - int var17 = var2.readUnsignedByte(); // L: 80 - int var18 = var2.readUnsignedShort(); // L: 81 - int var19 = var2.readUnsignedShort(); // L: 82 - int var20 = var2.readUnsignedShort(); // L: 83 - int var21 = var2.readUnsignedShort(); // L: 84 - int var22 = var2.readUnsignedShort(); // L: 85 - int var23 = 0; // L: 86 - int var24 = 0; // L: 87 - int var25 = 0; // L: 88 + @ObfuscatedName("v") + void method2853(byte[] var1) { + Buffer var2 = new Buffer(var1); + Buffer var3 = new Buffer(var1); + Buffer var4 = new Buffer(var1); + Buffer var5 = new Buffer(var1); + Buffer var6 = new Buffer(var1); + Buffer var7 = new Buffer(var1); + Buffer var8 = new Buffer(var1); + var2.offset = var1.length - 23; + int var9 = var2.readUnsignedShort(); + int var10 = var2.readUnsignedShort(); + int var11 = var2.readUnsignedByte(); + int var12 = var2.readUnsignedByte(); + int var13 = var2.readUnsignedByte(); + int var14 = var2.readUnsignedByte(); + int var15 = var2.readUnsignedByte(); + int var16 = var2.readUnsignedByte(); + int var17 = var2.readUnsignedByte(); + int var18 = var2.readUnsignedShort(); + int var19 = var2.readUnsignedShort(); + int var20 = var2.readUnsignedShort(); + int var21 = var2.readUnsignedShort(); + int var22 = var2.readUnsignedShort(); + int var23 = 0; + int var24 = 0; + int var25 = 0; int var26; - if (var11 > 0) { // L: 89 - this.textureRenderTypes = new byte[var11]; // L: 90 - var2.offset = 0; // L: 91 + if (var11 > 0) { + this.textureRenderTypes = new byte[var11]; + var2.offset = 0; - for (var26 = 0; var26 < var11; ++var26) { // L: 92 - byte var27 = this.textureRenderTypes[var26] = var2.readByte(); // L: 93 - if (var27 == 0) { // L: 94 + for (var26 = 0; var26 < var11; ++var26) { + byte var27 = this.textureRenderTypes[var26] = var2.readByte(); + if (var27 == 0) { ++var23; } - if (var27 >= 1 && var27 <= 3) { // L: 95 + if (var27 >= 1 && var27 <= 3) { ++var24; } - if (var27 == 2) { // L: 96 + if (var27 == 2) { ++var25; } } } - var26 = var11 + var9; // L: 101 - int var28 = var26; // L: 102 - if (var12 == 1) { // L: 103 + var26 = var11 + var9; + int var28 = var26; + if (var12 == 1) { var26 += var10; } - int var29 = var26; // L: 104 - var26 += var10; // L: 105 - int var30 = var26; // L: 106 - if (var13 == 255) { // L: 107 + int var29 = var26; + var26 += var10; + int var30 = var26; + if (var13 == 255) { var26 += var10; } - int var31 = var26; // L: 108 - if (var15 == 1) { // L: 109 + int var31 = var26; + if (var15 == 1) { var26 += var10; } - int var32 = var26; // L: 110 - if (var17 == 1) { // L: 111 + int var32 = var26; + if (var17 == 1) { var26 += var9; } - int var33 = var26; // L: 112 - if (var14 == 1) { // L: 113 + int var33 = var26; + if (var14 == 1) { var26 += var10; } - int var34 = var26; // L: 114 - var26 += var21; // L: 115 - int var35 = var26; // L: 116 - if (var16 == 1) { // L: 117 + int var34 = var26; + var26 += var21; + int var35 = var26; + if (var16 == 1) { var26 += var10 * 2; } - int var36 = var26; // L: 118 - var26 += var22; // L: 119 - int var37 = var26; // L: 120 - var26 += var10 * 2; // L: 121 - int var38 = var26; // L: 122 - var26 += var18; // L: 123 - int var39 = var26; // L: 124 - var26 += var19; // L: 125 - int var40 = var26; // L: 126 - var26 += var20; // L: 127 - int var41 = var26; // L: 128 - var26 += var23 * 6; // L: 129 - int var42 = var26; // L: 130 - var26 += var24 * 6; // L: 131 - int var43 = var26; // L: 132 - var26 += var24 * 6; // L: 133 - int var44 = var26; // L: 134 - var26 += var24 * 2; // L: 135 - int var45 = var26; // L: 136 - var26 += var24; // L: 137 - int var46 = var26; // L: 138 - var26 += var24 * 2 + var25 * 2; // L: 139 - this.verticesCount = var9; // L: 141 - this.faceCount = var10; // L: 142 - this.textureTriangleCount = var11; // L: 143 - this.verticesX = new int[var9]; // L: 144 - this.verticesY = new int[var9]; // L: 145 - this.verticesZ = new int[var9]; // L: 146 - this.indices1 = new int[var10]; // L: 147 - this.indices2 = new int[var10]; // L: 148 - this.indices3 = new int[var10]; // L: 149 - if (var17 == 1) { // L: 150 + int var36 = var26; + var26 += var22; + int var37 = var26; + var26 += var10 * 2; + int var38 = var26; + var26 += var18; + int var39 = var26; + var26 += var19; + int var40 = var26; + var26 += var20; + int var41 = var26; + var26 += var23 * 6; + int var42 = var26; + var26 += var24 * 6; + int var43 = var26; + var26 += var24 * 6; + int var44 = var26; + var26 += var24 * 2; + int var45 = var26; + var26 += var24; + int var46 = var26; + var26 += var24 * 2 + var25 * 2; + this.verticesCount = var9; + this.faceCount = var10; + this.textureTriangleCount = var11; + this.verticesX = new int[var9]; + this.verticesY = new int[var9]; + this.verticesZ = new int[var9]; + this.indices1 = new int[var10]; + this.indices2 = new int[var10]; + this.indices3 = new int[var10]; + if (var17 == 1) { this.vertexSkins = new int[var9]; } - if (var12 == 1) { // L: 151 + if (var12 == 1) { this.faceRenderTypes = new byte[var10]; } - if (var13 == 255) { // L: 152 + if (var13 == 255) { this.faceRenderPriorities = new byte[var10]; } else { - this.priority = (byte)var13; // L: 153 + this.priority = (byte)var13; } - if (var14 == 1) { // L: 154 + if (var14 == 1) { this.faceAlphas = new byte[var10]; } - if (var15 == 1) { // L: 155 + if (var15 == 1) { this.faceSkins = new int[var10]; } - if (var16 == 1) { // L: 156 + if (var16 == 1) { this.faceTextures = new short[var10]; } - if (var16 == 1 && var11 > 0) { // L: 157 + if (var16 == 1 && var11 > 0) { this.textureCoords = new byte[var10]; } - this.faceColors = new short[var10]; // L: 158 - if (var11 > 0) { // L: 159 - this.texTriangleX = new short[var11]; // L: 160 - this.texTriangleY = new short[var11]; // L: 161 - this.texTriangleZ = new short[var11]; // L: 162 + this.faceColors = new short[var10]; + if (var11 > 0) { + this.texTriangleX = new short[var11]; + this.texTriangleY = new short[var11]; + this.texTriangleZ = new short[var11]; } - var2.offset = var11; // L: 164 - var3.offset = var38; // L: 165 - var4.offset = var39; // L: 166 - var5.offset = var40; // L: 167 - var6.offset = var32; // L: 168 - int var48 = 0; // L: 169 - int var49 = 0; // L: 170 - int var50 = 0; // L: 171 + var2.offset = var11; + var3.offset = var38; + var4.offset = var39; + var5.offset = var40; + var6.offset = var32; + int var48 = 0; + int var49 = 0; + int var50 = 0; int var51; int var52; int var53; int var54; int var55; - for (var51 = 0; var51 < var9; ++var51) { // L: 172 - var52 = var2.readUnsignedByte(); // L: 173 - var53 = 0; // L: 174 - if ((var52 & 1) != 0) { // L: 175 + for (var51 = 0; var51 < var9; ++var51) { + var52 = var2.readUnsignedByte(); + var53 = 0; + if ((var52 & 1) != 0) { var53 = var3.readShortSmart(); } - var54 = 0; // L: 176 - if ((var52 & 2) != 0) { // L: 177 + var54 = 0; + if ((var52 & 2) != 0) { var54 = var4.readShortSmart(); } - var55 = 0; // L: 178 - if ((var52 & 4) != 0) { // L: 179 + var55 = 0; + if ((var52 & 4) != 0) { var55 = var5.readShortSmart(); } - this.verticesX[var51] = var48 + var53; // L: 180 - this.verticesY[var51] = var49 + var54; // L: 181 - this.verticesZ[var51] = var50 + var55; // L: 182 - var48 = this.verticesX[var51]; // L: 183 - var49 = this.verticesY[var51]; // L: 184 - var50 = this.verticesZ[var51]; // L: 185 - if (var17 == 1) { // L: 186 + this.verticesX[var51] = var48 + var53; + this.verticesY[var51] = var49 + var54; + this.verticesZ[var51] = var50 + var55; + var48 = this.verticesX[var51]; + var49 = this.verticesY[var51]; + var50 = this.verticesZ[var51]; + if (var17 == 1) { this.vertexSkins[var51] = var6.readUnsignedByte(); } } - var2.offset = var37; // L: 188 - var3.offset = var28; // L: 189 - var4.offset = var30; // L: 190 - var5.offset = var33; // L: 191 - var6.offset = var31; // L: 192 - var7.offset = var35; // L: 193 - var8.offset = var36; // L: 194 + var2.offset = var37; + var3.offset = var28; + var4.offset = var30; + var5.offset = var33; + var6.offset = var31; + var7.offset = var35; + var8.offset = var36; - for (var51 = 0; var51 < var10; ++var51) { // L: 195 - this.faceColors[var51] = (short)var2.readUnsignedShort(); // L: 196 - if (var12 == 1) { // L: 197 + for (var51 = 0; var51 < var10; ++var51) { + this.faceColors[var51] = (short)var2.readUnsignedShort(); + if (var12 == 1) { this.faceRenderTypes[var51] = var3.readByte(); } - if (var13 == 255) { // L: 198 + if (var13 == 255) { this.faceRenderPriorities[var51] = var4.readByte(); } - if (var14 == 1) { // L: 199 + if (var14 == 1) { this.faceAlphas[var51] = var5.readByte(); } - if (var15 == 1) { // L: 200 + if (var15 == 1) { this.faceSkins[var51] = var6.readUnsignedByte(); } - if (var16 == 1) { // L: 201 + if (var16 == 1) { this.faceTextures[var51] = (short)(var7.readUnsignedShort() - 1); } - if (this.textureCoords != null && this.faceTextures[var51] != -1) { // L: 202 + if (this.textureCoords != null && this.faceTextures[var51] != -1) { this.textureCoords[var51] = (byte)(var8.readUnsignedByte() - 1); } } - var2.offset = var34; // L: 204 - var3.offset = var29; // L: 205 - var51 = 0; // L: 206 - var52 = 0; // L: 207 - var53 = 0; // L: 208 - var54 = 0; // L: 209 + var2.offset = var34; + var3.offset = var29; + var51 = 0; + var52 = 0; + var53 = 0; + var54 = 0; int var56; - for (var55 = 0; var55 < var10; ++var55) { // L: 210 - var56 = var3.readUnsignedByte(); // L: 211 - if (var56 == 1) { // L: 212 - var51 = var2.readShortSmart() + var54; // L: 213 - var52 = var2.readShortSmart() + var51; // L: 215 - var53 = var2.readShortSmart() + var52; // L: 217 - var54 = var53; // L: 218 - this.indices1[var55] = var51; // L: 219 - this.indices2[var55] = var52; // L: 220 - this.indices3[var55] = var53; // L: 221 + for (var55 = 0; var55 < var10; ++var55) { + var56 = var3.readUnsignedByte(); + if (var56 == 1) { + var51 = var2.readShortSmart() + var54; + var52 = var2.readShortSmart() + var51; + var53 = var2.readShortSmart() + var52; + var54 = var53; + this.indices1[var55] = var51; + this.indices2[var55] = var52; + this.indices3[var55] = var53; } - if (var56 == 2) { // L: 223 - var52 = var53; // L: 224 - var53 = var2.readShortSmart() + var54; // L: 225 - var54 = var53; // L: 226 - this.indices1[var55] = var51; // L: 227 - this.indices2[var55] = var52; // L: 228 - this.indices3[var55] = var53; // L: 229 + if (var56 == 2) { + var52 = var53; + var53 = var2.readShortSmart() + var54; + var54 = var53; + this.indices1[var55] = var51; + this.indices2[var55] = var52; + this.indices3[var55] = var53; } - if (var56 == 3) { // L: 231 - var51 = var53; // L: 232 - var53 = var2.readShortSmart() + var54; // L: 233 - var54 = var53; // L: 234 - this.indices1[var55] = var51; // L: 235 - this.indices2[var55] = var52; // L: 236 - this.indices3[var55] = var53; // L: 237 + if (var56 == 3) { + var51 = var53; + var53 = var2.readShortSmart() + var54; + var54 = var53; + this.indices1[var55] = var51; + this.indices2[var55] = var52; + this.indices3[var55] = var53; } - if (var56 == 4) { // L: 239 - int var57 = var51; // L: 240 - var51 = var52; // L: 241 - var52 = var57; // L: 242 - var53 = var2.readShortSmart() + var54; // L: 243 - var54 = var53; // L: 244 - this.indices1[var55] = var51; // L: 245 - this.indices2[var55] = var57; // L: 246 - this.indices3[var55] = var53; // L: 247 + if (var56 == 4) { + int var57 = var51; + var51 = var52; + var52 = var57; + var53 = var2.readShortSmart() + var54; + var54 = var53; + this.indices1[var55] = var51; + this.indices2[var55] = var57; + this.indices3[var55] = var53; } } - var2.offset = var41; // L: 250 - var3.offset = var42; // L: 251 - var4.offset = var43; // L: 252 - var5.offset = var44; // L: 253 - var6.offset = var45; // L: 254 - var7.offset = var46; // L: 255 + var2.offset = var41; + var3.offset = var42; + var4.offset = var43; + var5.offset = var44; + var6.offset = var45; + var7.offset = var46; - for (var55 = 0; var55 < var11; ++var55) { // L: 256 - var56 = this.textureRenderTypes[var55] & 255; // L: 257 - if (var56 == 0) { // L: 258 - this.texTriangleX[var55] = (short)var2.readUnsignedShort(); // L: 259 - this.texTriangleY[var55] = (short)var2.readUnsignedShort(); // L: 260 - this.texTriangleZ[var55] = (short)var2.readUnsignedShort(); // L: 261 + for (var55 = 0; var55 < var11; ++var55) { + var56 = this.textureRenderTypes[var55] & 255; + if (var56 == 0) { + this.texTriangleX[var55] = (short)var2.readUnsignedShort(); + this.texTriangleY[var55] = (short)var2.readUnsignedShort(); + this.texTriangleZ[var55] = (short)var2.readUnsignedShort(); } } - var2.offset = var26; // L: 264 - var55 = var2.readUnsignedByte(); // L: 265 - if (var55 != 0) { // L: 266 + var2.offset = var26; + var55 = var2.readUnsignedByte(); + if (var55 != 0) { new ModelData0(); - var2.readUnsignedShort(); // L: 268 - var2.readUnsignedShort(); // L: 269 - var2.readUnsignedShort(); // L: 270 - var2.readInt(); // L: 271 + var2.readUnsignedShort(); + var2.readUnsignedShort(); + var2.readUnsignedShort(); + var2.readInt(); } - } // L: 273 + } - @ObfuscatedName("l") - void method2914(byte[] var1) { - boolean var2 = false; // L: 276 - boolean var3 = false; // L: 277 - Buffer var4 = new Buffer(var1); // L: 278 - Buffer var5 = new Buffer(var1); // L: 279 - Buffer var6 = new Buffer(var1); // L: 280 - Buffer var7 = new Buffer(var1); // L: 281 - Buffer var8 = new Buffer(var1); // L: 282 - var4.offset = var1.length - 18; // L: 283 - int var9 = var4.readUnsignedShort(); // L: 284 - int var10 = var4.readUnsignedShort(); // L: 285 - int var11 = var4.readUnsignedByte(); // L: 286 - int var12 = var4.readUnsignedByte(); // L: 287 - int var13 = var4.readUnsignedByte(); // L: 288 - int var14 = var4.readUnsignedByte(); // L: 289 - int var15 = var4.readUnsignedByte(); // L: 290 - int var16 = var4.readUnsignedByte(); // L: 291 - int var17 = var4.readUnsignedShort(); // L: 292 - int var18 = var4.readUnsignedShort(); // L: 293 - int var19 = var4.readUnsignedShort(); // L: 294 - int var20 = var4.readUnsignedShort(); // L: 295 - byte var21 = 0; // L: 296 - int var45 = var21 + var9; // L: 298 - int var23 = var45; // L: 299 - var45 += var10; // L: 300 - int var24 = var45; // L: 301 - if (var13 == 255) { // L: 302 + @ObfuscatedName("x") + void method2854(byte[] var1) { + boolean var2 = false; + boolean var3 = false; + Buffer var4 = new Buffer(var1); + Buffer var5 = new Buffer(var1); + Buffer var6 = new Buffer(var1); + Buffer var7 = new Buffer(var1); + Buffer var8 = new Buffer(var1); + var4.offset = var1.length - 18; + int var9 = var4.readUnsignedShort(); + int var10 = var4.readUnsignedShort(); + int var11 = var4.readUnsignedByte(); + int var12 = var4.readUnsignedByte(); + int var13 = var4.readUnsignedByte(); + int var14 = var4.readUnsignedByte(); + int var15 = var4.readUnsignedByte(); + int var16 = var4.readUnsignedByte(); + int var17 = var4.readUnsignedShort(); + int var18 = var4.readUnsignedShort(); + int var19 = var4.readUnsignedShort(); + int var20 = var4.readUnsignedShort(); + byte var21 = 0; + int var45 = var21 + var9; + int var23 = var45; + var45 += var10; + int var24 = var45; + if (var13 == 255) { var45 += var10; } - int var25 = var45; // L: 303 - if (var15 == 1) { // L: 304 + int var25 = var45; + if (var15 == 1) { var45 += var10; } - int var26 = var45; // L: 305 - if (var12 == 1) { // L: 306 + int var26 = var45; + if (var12 == 1) { var45 += var10; } - int var27 = var45; // L: 307 - if (var16 == 1) { // L: 308 + int var27 = var45; + if (var16 == 1) { var45 += var9; } - int var28 = var45; // L: 309 - if (var14 == 1) { // L: 310 + int var28 = var45; + if (var14 == 1) { var45 += var10; } - int var29 = var45; // L: 311 - var45 += var20; // L: 312 - int var30 = var45; // L: 313 - var45 += var10 * 2; // L: 314 - int var31 = var45; // L: 315 - var45 += var11 * 6; // L: 316 - int var32 = var45; // L: 317 - var45 += var17; // L: 318 - int var33 = var45; // L: 319 - var45 += var18; // L: 320 - int var10000 = var45 + var19; // L: 322 - this.verticesCount = var9; // L: 323 - this.faceCount = var10; // L: 324 - this.textureTriangleCount = var11; // L: 325 - this.verticesX = new int[var9]; // L: 326 - this.verticesY = new int[var9]; // L: 327 - this.verticesZ = new int[var9]; // L: 328 - this.indices1 = new int[var10]; // L: 329 - this.indices2 = new int[var10]; // L: 330 - this.indices3 = new int[var10]; // L: 331 - if (var11 > 0) { // L: 332 - this.textureRenderTypes = new byte[var11]; // L: 333 - this.texTriangleX = new short[var11]; // L: 334 - this.texTriangleY = new short[var11]; // L: 335 - this.texTriangleZ = new short[var11]; // L: 336 + int var29 = var45; + var45 += var20; + int var30 = var45; + var45 += var10 * 2; + int var31 = var45; + var45 += var11 * 6; + int var32 = var45; + var45 += var17; + int var33 = var45; + var45 += var18; + int var10000 = var45 + var19; + this.verticesCount = var9; + this.faceCount = var10; + this.textureTriangleCount = var11; + this.verticesX = new int[var9]; + this.verticesY = new int[var9]; + this.verticesZ = new int[var9]; + this.indices1 = new int[var10]; + this.indices2 = new int[var10]; + this.indices3 = new int[var10]; + if (var11 > 0) { + this.textureRenderTypes = new byte[var11]; + this.texTriangleX = new short[var11]; + this.texTriangleY = new short[var11]; + this.texTriangleZ = new short[var11]; } - if (var16 == 1) { // L: 338 + if (var16 == 1) { this.vertexSkins = new int[var9]; } - if (var12 == 1) { // L: 339 - this.faceRenderTypes = new byte[var10]; // L: 340 - this.textureCoords = new byte[var10]; // L: 341 - this.faceTextures = new short[var10]; // L: 342 + if (var12 == 1) { + this.faceRenderTypes = new byte[var10]; + this.textureCoords = new byte[var10]; + this.faceTextures = new short[var10]; } - if (var13 == 255) { // L: 344 + if (var13 == 255) { this.faceRenderPriorities = new byte[var10]; } else { - this.priority = (byte)var13; // L: 345 + this.priority = (byte)var13; } - if (var14 == 1) { // L: 346 + if (var14 == 1) { this.faceAlphas = new byte[var10]; } - if (var15 == 1) { // L: 347 + if (var15 == 1) { this.faceSkins = new int[var10]; } - this.faceColors = new short[var10]; // L: 348 - var4.offset = var21; // L: 349 - var5.offset = var32; // L: 350 - var6.offset = var33; // L: 351 - var7.offset = var45; // L: 352 - var8.offset = var27; // L: 353 - int var35 = 0; // L: 354 - int var36 = 0; // L: 355 - int var37 = 0; // L: 356 + this.faceColors = new short[var10]; + var4.offset = var21; + var5.offset = var32; + var6.offset = var33; + var7.offset = var45; + var8.offset = var27; + int var35 = 0; + int var36 = 0; + int var37 = 0; int var38; int var39; int var40; int var41; int var42; - for (var38 = 0; var38 < var9; ++var38) { // L: 357 - var39 = var4.readUnsignedByte(); // L: 358 - var40 = 0; // L: 359 - if ((var39 & 1) != 0) { // L: 360 + for (var38 = 0; var38 < var9; ++var38) { + var39 = var4.readUnsignedByte(); + var40 = 0; + if ((var39 & 1) != 0) { var40 = var5.readShortSmart(); } - var41 = 0; // L: 361 - if ((var39 & 2) != 0) { // L: 362 + var41 = 0; + if ((var39 & 2) != 0) { var41 = var6.readShortSmart(); } - var42 = 0; // L: 363 - if ((var39 & 4) != 0) { // L: 364 + var42 = 0; + if ((var39 & 4) != 0) { var42 = var7.readShortSmart(); } - this.verticesX[var38] = var35 + var40; // L: 365 - this.verticesY[var38] = var36 + var41; // L: 366 - this.verticesZ[var38] = var37 + var42; // L: 367 - var35 = this.verticesX[var38]; // L: 368 - var36 = this.verticesY[var38]; // L: 369 - var37 = this.verticesZ[var38]; // L: 370 - if (var16 == 1) { // L: 371 + this.verticesX[var38] = var35 + var40; + this.verticesY[var38] = var36 + var41; + this.verticesZ[var38] = var37 + var42; + var35 = this.verticesX[var38]; + var36 = this.verticesY[var38]; + var37 = this.verticesZ[var38]; + if (var16 == 1) { this.vertexSkins[var38] = var8.readUnsignedByte(); } } - var4.offset = var30; // L: 373 - var5.offset = var26; // L: 374 - var6.offset = var24; // L: 375 - var7.offset = var28; // L: 376 - var8.offset = var25; // L: 377 + var4.offset = var30; + var5.offset = var26; + var6.offset = var24; + var7.offset = var28; + var8.offset = var25; - for (var38 = 0; var38 < var10; ++var38) { // L: 378 - this.faceColors[var38] = (short)var4.readUnsignedShort(); // L: 379 - if (var12 == 1) { // L: 380 - var39 = var5.readUnsignedByte(); // L: 381 - if ((var39 & 1) == 1) { // L: 382 - this.faceRenderTypes[var38] = 1; // L: 383 - var2 = true; // L: 384 + for (var38 = 0; var38 < var10; ++var38) { + this.faceColors[var38] = (short)var4.readUnsignedShort(); + if (var12 == 1) { + var39 = var5.readUnsignedByte(); + if ((var39 & 1) == 1) { + this.faceRenderTypes[var38] = 1; + var2 = true; } else { - this.faceRenderTypes[var38] = 0; // L: 386 + this.faceRenderTypes[var38] = 0; } - if ((var39 & 2) == 2) { // L: 387 - this.textureCoords[var38] = (byte)(var39 >> 2); // L: 388 - this.faceTextures[var38] = this.faceColors[var38]; // L: 389 - this.faceColors[var38] = 127; // L: 390 - if (this.faceTextures[var38] != -1) { // L: 391 + if ((var39 & 2) == 2) { + this.textureCoords[var38] = (byte)(var39 >> 2); + this.faceTextures[var38] = this.faceColors[var38]; + this.faceColors[var38] = 127; + if (this.faceTextures[var38] != -1) { var3 = true; } } else { - this.textureCoords[var38] = -1; // L: 394 - this.faceTextures[var38] = -1; // L: 395 + this.textureCoords[var38] = -1; + this.faceTextures[var38] = -1; } } - if (var13 == 255) { // L: 398 + if (var13 == 255) { this.faceRenderPriorities[var38] = var6.readByte(); } - if (var14 == 1) { // L: 399 + if (var14 == 1) { this.faceAlphas[var38] = var7.readByte(); } - if (var15 == 1) { // L: 400 + if (var15 == 1) { this.faceSkins[var38] = var8.readUnsignedByte(); } } - var4.offset = var29; // L: 402 - var5.offset = var23; // L: 403 - var38 = 0; // L: 404 - var39 = 0; // L: 405 - var40 = 0; // L: 406 - var41 = 0; // L: 407 + var4.offset = var29; + var5.offset = var23; + var38 = 0; + var39 = 0; + var40 = 0; + var41 = 0; int var43; int var44; - for (var42 = 0; var42 < var10; ++var42) { // L: 408 - var43 = var5.readUnsignedByte(); // L: 409 - if (var43 == 1) { // L: 410 - var38 = var4.readShortSmart() + var41; // L: 411 - var39 = var4.readShortSmart() + var38; // L: 413 - var40 = var4.readShortSmart() + var39; // L: 415 - var41 = var40; // L: 416 - this.indices1[var42] = var38; // L: 417 - this.indices2[var42] = var39; // L: 418 - this.indices3[var42] = var40; // L: 419 + for (var42 = 0; var42 < var10; ++var42) { + var43 = var5.readUnsignedByte(); + if (var43 == 1) { + var38 = var4.readShortSmart() + var41; + var39 = var4.readShortSmart() + var38; + var40 = var4.readShortSmart() + var39; + var41 = var40; + this.indices1[var42] = var38; + this.indices2[var42] = var39; + this.indices3[var42] = var40; } - if (var43 == 2) { // L: 421 - var39 = var40; // L: 422 - var40 = var4.readShortSmart() + var41; // L: 423 - var41 = var40; // L: 424 - this.indices1[var42] = var38; // L: 425 - this.indices2[var42] = var39; // L: 426 - this.indices3[var42] = var40; // L: 427 + if (var43 == 2) { + var39 = var40; + var40 = var4.readShortSmart() + var41; + var41 = var40; + this.indices1[var42] = var38; + this.indices2[var42] = var39; + this.indices3[var42] = var40; } - if (var43 == 3) { // L: 429 - var38 = var40; // L: 430 - var40 = var4.readShortSmart() + var41; // L: 431 - var41 = var40; // L: 432 - this.indices1[var42] = var38; // L: 433 - this.indices2[var42] = var39; // L: 434 - this.indices3[var42] = var40; // L: 435 + if (var43 == 3) { + var38 = var40; + var40 = var4.readShortSmart() + var41; + var41 = var40; + this.indices1[var42] = var38; + this.indices2[var42] = var39; + this.indices3[var42] = var40; } - if (var43 == 4) { // L: 437 - var44 = var38; // L: 438 - var38 = var39; // L: 439 - var39 = var44; // L: 440 - var40 = var4.readShortSmart() + var41; // L: 441 - var41 = var40; // L: 442 - this.indices1[var42] = var38; // L: 443 - this.indices2[var42] = var44; // L: 444 - this.indices3[var42] = var40; // L: 445 + if (var43 == 4) { + var44 = var38; + var38 = var39; + var39 = var44; + var40 = var4.readShortSmart() + var41; + var41 = var40; + this.indices1[var42] = var38; + this.indices2[var42] = var44; + this.indices3[var42] = var40; } } - var4.offset = var31; // L: 448 + var4.offset = var31; - for (var42 = 0; var42 < var11; ++var42) { // L: 449 - this.textureRenderTypes[var42] = 0; // L: 450 - this.texTriangleX[var42] = (short)var4.readUnsignedShort(); // L: 451 - this.texTriangleY[var42] = (short)var4.readUnsignedShort(); // L: 452 - this.texTriangleZ[var42] = (short)var4.readUnsignedShort(); // L: 453 + for (var42 = 0; var42 < var11; ++var42) { + this.textureRenderTypes[var42] = 0; + this.texTriangleX[var42] = (short)var4.readUnsignedShort(); + this.texTriangleY[var42] = (short)var4.readUnsignedShort(); + this.texTriangleZ[var42] = (short)var4.readUnsignedShort(); } - if (this.textureCoords != null) { // L: 455 - boolean var46 = false; // L: 456 + if (this.textureCoords != null) { + boolean var46 = false; - for (var43 = 0; var43 < var10; ++var43) { // L: 457 - var44 = this.textureCoords[var43] & 255; // L: 458 - if (var44 != 255) { // L: 459 - if (this.indices1[var43] == (this.texTriangleX[var44] & '\uffff') && this.indices2[var43] == (this.texTriangleY[var44] & '\uffff') && this.indices3[var43] == (this.texTriangleZ[var44] & '\uffff')) { // L: 460 + for (var43 = 0; var43 < var10; ++var43) { + var44 = this.textureCoords[var43] & 255; + if (var44 != 255) { + if (this.indices1[var43] == (this.texTriangleX[var44] & '\uffff') && this.indices2[var43] == (this.texTriangleY[var44] & '\uffff') && this.indices3[var43] == (this.texTriangleZ[var44] & '\uffff')) { this.textureCoords[var43] = -1; } else { - var46 = true; // L: 461 + var46 = true; } } } - if (!var46) { // L: 464 + if (!var46) { this.textureCoords = null; } } - if (!var3) { // L: 466 + if (!var3) { this.faceTextures = null; } - if (!var2) { // L: 467 + if (!var2) { this.faceRenderTypes = null; } - } // L: 468 + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Len;I)I" + descriptor = "(Les;I)I" ) - final int method2952(ModelData var1, int var2) { - int var3 = -1; // L: 567 - int var4 = var1.verticesX[var2]; // L: 568 - int var5 = var1.verticesY[var2]; // L: 569 - int var6 = var1.verticesZ[var2]; // L: 570 + final int method2856(ModelData var1, int var2) { + int var3 = -1; + int var4 = var1.verticesX[var2]; + int var5 = var1.verticesY[var2]; + int var6 = var1.verticesZ[var2]; - for (int var7 = 0; var7 < this.verticesCount; ++var7) { // L: 571 - if (var4 == this.verticesX[var7] && var5 == this.verticesY[var7] && var6 == this.verticesZ[var7]) { // L: 572 - var3 = var7; // L: 573 + for (int var7 = 0; var7 < this.verticesCount; ++var7) { + if (var4 == this.verticesX[var7] && var5 == this.verticesY[var7] && var6 == this.verticesZ[var7]) { + var3 = var7; break; } } - if (var3 == -1) { // L: 577 - this.verticesX[this.verticesCount] = var4; // L: 578 - this.verticesY[this.verticesCount] = var5; // L: 579 - this.verticesZ[this.verticesCount] = var6; // L: 580 + if (var3 == -1) { + this.verticesX[this.verticesCount] = var4; + this.verticesY[this.verticesCount] = var5; + this.verticesZ[this.verticesCount] = var6; if (var1.vertexSkins != null) { - this.vertexSkins[this.verticesCount] = var1.vertexSkins[var2]; // L: 581 + this.vertexSkins[this.verticesCount] = var1.vertexSkins[var2]; } - var3 = this.verticesCount++; // L: 582 + var3 = this.verticesCount++; } - return var3; // L: 584 + return var3; } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "()Len;" + descriptor = "()Les;" ) - public ModelData method2932() { - ModelData var1 = new ModelData(); // L: 650 - if (this.faceRenderTypes != null) { // L: 651 - var1.faceRenderTypes = new byte[this.faceCount]; // L: 652 + public ModelData method2857() { + ModelData var1 = new ModelData(); + if (this.faceRenderTypes != null) { + var1.faceRenderTypes = new byte[this.faceCount]; - for (int var2 = 0; var2 < this.faceCount; ++var2) { // L: 653 + for (int var2 = 0; var2 < this.faceCount; ++var2) { var1.faceRenderTypes[var2] = this.faceRenderTypes[var2]; } } - var1.verticesCount = this.verticesCount; // L: 655 - var1.faceCount = this.faceCount; // L: 656 - var1.textureTriangleCount = this.textureTriangleCount; // L: 657 - var1.verticesX = this.verticesX; // L: 658 - var1.verticesY = this.verticesY; // L: 659 - var1.verticesZ = this.verticesZ; // L: 660 - var1.indices1 = this.indices1; // L: 661 - var1.indices2 = this.indices2; // L: 662 - var1.indices3 = this.indices3; // L: 663 - var1.faceRenderPriorities = this.faceRenderPriorities; // L: 664 - var1.faceAlphas = this.faceAlphas; // L: 665 - var1.textureCoords = this.textureCoords; // L: 666 - var1.faceColors = this.faceColors; // L: 667 - var1.faceTextures = this.faceTextures; // L: 668 - var1.priority = this.priority; // L: 669 - var1.textureRenderTypes = this.textureRenderTypes; // L: 670 - var1.texTriangleX = this.texTriangleX; // L: 671 - var1.texTriangleY = this.texTriangleY; // L: 672 - var1.texTriangleZ = this.texTriangleZ; // L: 673 - var1.vertexSkins = this.vertexSkins; // L: 674 - var1.faceSkins = this.faceSkins; // L: 675 - var1.vertexLabels = this.vertexLabels; // L: 676 - var1.faceLabelsAlpha = this.faceLabelsAlpha; // L: 677 - var1.vertexNormals = this.vertexNormals; // L: 678 - var1.faceNormals = this.faceNormals; // L: 679 - var1.ambient = this.ambient; // L: 680 - var1.contrast = this.contrast; // L: 681 - return var1; // L: 682 + var1.verticesCount = this.verticesCount; + var1.faceCount = this.faceCount; + var1.textureTriangleCount = this.textureTriangleCount; + var1.verticesX = this.verticesX; + var1.verticesY = this.verticesY; + var1.verticesZ = this.verticesZ; + var1.indices1 = this.indices1; + var1.indices2 = this.indices2; + var1.indices3 = this.indices3; + var1.faceRenderPriorities = this.faceRenderPriorities; + var1.faceAlphas = this.faceAlphas; + var1.textureCoords = this.textureCoords; + var1.faceColors = this.faceColors; + var1.faceTextures = this.faceTextures; + var1.priority = this.priority; + var1.textureRenderTypes = this.textureRenderTypes; + var1.texTriangleX = this.texTriangleX; + var1.texTriangleY = this.texTriangleY; + var1.texTriangleZ = this.texTriangleZ; + var1.vertexSkins = this.vertexSkins; + var1.faceSkins = this.faceSkins; + var1.vertexLabels = this.vertexLabels; + var1.faceLabelsAlpha = this.faceLabelsAlpha; + var1.vertexNormals = this.vertexNormals; + var1.faceNormals = this.faceNormals; + var1.ambient = this.ambient; + var1.contrast = this.contrast; + return var1; } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "([[IIIIZI)Len;" + descriptor = "([[IIIIZI)Les;" ) - public ModelData method2915(int[][] var1, int var2, int var3, int var4, boolean var5, int var6) { - this.calculateBounds(); // L: 686 - int var7 = var2 + this.field1604; // L: 687 - int var8 = var2 + this.field1605; // L: 688 - int var9 = var4 + this.field1607; // L: 689 - int var10 = var4 + this.field1587; // L: 690 - if (var7 >= 0 && var8 + 128 >> 7 < var1.length && var9 >= 0 && var10 + 128 >> 7 < var1[0].length) { // L: 691 - var7 >>= 7; // L: 692 - var8 = var8 + 127 >> 7; // L: 693 - var9 >>= 7; // L: 694 - var10 = var10 + 127 >> 7; // L: 695 - if (var3 == var1[var7][var9] && var3 == var1[var8][var9] && var3 == var1[var7][var10] && var3 == var1[var8][var10]) { // L: 696 + public ModelData method2858(int[][] var1, int var2, int var3, int var4, boolean var5, int var6) { + this.calculateBounds(); + int var7 = var2 + this.field1585; + int var8 = var2 + this.field1595; + int var9 = var4 + this.field1597; + int var10 = var4 + this.field1596; + if (var7 >= 0 && var8 + 128 >> 7 < var1.length && var9 >= 0 && var10 + 128 >> 7 < var1[0].length) { + var7 >>= 7; + var8 = var8 + 127 >> 7; + var9 >>= 7; + var10 = var10 + 127 >> 7; + if (var3 == var1[var7][var9] && var3 == var1[var8][var9] && var3 == var1[var7][var10] && var3 == var1[var8][var10]) { return this; } else { - ModelData var11 = new ModelData(); // L: 699 - var11.verticesCount = this.verticesCount; // L: 700 - var11.faceCount = this.faceCount; // L: 701 - var11.textureTriangleCount = this.textureTriangleCount; // L: 702 - var11.verticesX = this.verticesX; // L: 703 - var11.verticesZ = this.verticesZ; // L: 704 - var11.indices1 = this.indices1; // L: 705 - var11.indices2 = this.indices2; // L: 706 - var11.indices3 = this.indices3; // L: 707 - var11.faceRenderTypes = this.faceRenderTypes; // L: 708 - var11.faceRenderPriorities = this.faceRenderPriorities; // L: 709 - var11.faceAlphas = this.faceAlphas; // L: 710 - var11.textureCoords = this.textureCoords; // L: 711 - var11.faceColors = this.faceColors; // L: 712 - var11.faceTextures = this.faceTextures; // L: 713 - var11.priority = this.priority; // L: 714 - var11.textureRenderTypes = this.textureRenderTypes; // L: 715 - var11.texTriangleX = this.texTriangleX; // L: 716 - var11.texTriangleY = this.texTriangleY; // L: 717 - var11.texTriangleZ = this.texTriangleZ; // L: 718 - var11.vertexSkins = this.vertexSkins; // L: 719 - var11.faceSkins = this.faceSkins; // L: 720 - var11.vertexLabels = this.vertexLabels; // L: 721 - var11.faceLabelsAlpha = this.faceLabelsAlpha; // L: 722 - var11.ambient = this.ambient; // L: 723 - var11.contrast = this.contrast; // L: 724 - var11.verticesY = new int[var11.verticesCount]; // L: 725 + ModelData var11 = new ModelData(); + var11.verticesCount = this.verticesCount; + var11.faceCount = this.faceCount; + var11.textureTriangleCount = this.textureTriangleCount; + var11.verticesX = this.verticesX; + var11.verticesZ = this.verticesZ; + var11.indices1 = this.indices1; + var11.indices2 = this.indices2; + var11.indices3 = this.indices3; + var11.faceRenderTypes = this.faceRenderTypes; + var11.faceRenderPriorities = this.faceRenderPriorities; + var11.faceAlphas = this.faceAlphas; + var11.textureCoords = this.textureCoords; + var11.faceColors = this.faceColors; + var11.faceTextures = this.faceTextures; + var11.priority = this.priority; + var11.textureRenderTypes = this.textureRenderTypes; + var11.texTriangleX = this.texTriangleX; + var11.texTriangleY = this.texTriangleY; + var11.texTriangleZ = this.texTriangleZ; + var11.vertexSkins = this.vertexSkins; + var11.faceSkins = this.faceSkins; + var11.vertexLabels = this.vertexLabels; + var11.faceLabelsAlpha = this.faceLabelsAlpha; + var11.ambient = this.ambient; + var11.contrast = this.contrast; + var11.verticesY = new int[var11.verticesCount]; int var12; int var13; int var14; @@ -1093,601 +1093,601 @@ public class ModelData extends Entity { int var19; int var20; int var21; - if (var6 == 0) { // L: 730 - for (var12 = 0; var12 < var11.verticesCount; ++var12) { // L: 731 - var13 = var2 + this.verticesX[var12]; // L: 732 - var14 = var4 + this.verticesZ[var12]; // L: 733 - var15 = var13 & 127; // L: 734 - var16 = var14 & 127; // L: 735 - var17 = var13 >> 7; // L: 736 - var18 = var14 >> 7; // L: 737 - var19 = var1[var17][var18] * (128 - var15) + var1[var17 + 1][var18] * var15 >> 7; // L: 738 - var20 = var1[var17][var18 + 1] * (128 - var15) + var15 * var1[var17 + 1][var18 + 1] >> 7; // L: 739 - var21 = var19 * (128 - var16) + var20 * var16 >> 7; // L: 740 - var11.verticesY[var12] = var21 + this.verticesY[var12] - var3; // L: 741 + if (var6 == 0) { + for (var12 = 0; var12 < var11.verticesCount; ++var12) { + var13 = var2 + this.verticesX[var12]; + var14 = var4 + this.verticesZ[var12]; + var15 = var13 & 127; + var16 = var14 & 127; + var17 = var13 >> 7; + var18 = var14 >> 7; + var19 = var1[var17][var18] * (128 - var15) + var1[var17 + 1][var18] * var15 >> 7; + var20 = var1[var17][var18 + 1] * (128 - var15) + var15 * var1[var17 + 1][var18 + 1] >> 7; + var21 = var19 * (128 - var16) + var20 * var16 >> 7; + var11.verticesY[var12] = var21 + this.verticesY[var12] - var3; } } else { - for (var12 = 0; var12 < var11.verticesCount; ++var12) { // L: 745 - var13 = (-this.verticesY[var12] << 16) / super.height; // L: 746 - if (var13 < var6) { // L: 747 - var14 = var2 + this.verticesX[var12]; // L: 748 - var15 = var4 + this.verticesZ[var12]; // L: 749 - var16 = var14 & 127; // L: 750 - var17 = var15 & 127; // L: 751 - var18 = var14 >> 7; // L: 752 - var19 = var15 >> 7; // L: 753 - var20 = var1[var18][var19] * (128 - var16) + var1[var18 + 1][var19] * var16 >> 7; // L: 754 - var21 = var1[var18][var19 + 1] * (128 - var16) + var16 * var1[var18 + 1][var19 + 1] >> 7; // L: 755 - int var22 = var20 * (128 - var17) + var21 * var17 >> 7; // L: 756 - var11.verticesY[var12] = (var6 - var13) * (var22 - var3) / var6 + this.verticesY[var12]; // L: 757 + for (var12 = 0; var12 < var11.verticesCount; ++var12) { + var13 = (-this.verticesY[var12] << 16) / super.height; + if (var13 < var6) { + var14 = var2 + this.verticesX[var12]; + var15 = var4 + this.verticesZ[var12]; + var16 = var14 & 127; + var17 = var15 & 127; + var18 = var14 >> 7; + var19 = var15 >> 7; + var20 = var1[var18][var19] * (128 - var16) + var1[var18 + 1][var19] * var16 >> 7; + var21 = var1[var18][var19 + 1] * (128 - var16) + var16 * var1[var18 + 1][var19 + 1] >> 7; + int var22 = var20 * (128 - var17) + var21 * var17 >> 7; + var11.verticesY[var12] = (var6 - var13) * (var22 - var3) / var6 + this.verticesY[var12]; } } } - var11.invalidate(); // L: 761 - return var11; // L: 762 + var11.invalidate(); + return var11; } } else { return this; } } - @ObfuscatedName("k") - void method2919() { + @ObfuscatedName("n") + void method2859() { int[] var1; int var2; int var10002; int var3; int var4; - if (this.vertexSkins != null) { // L: 766 - var1 = new int[256]; // L: 767 - var2 = 0; // L: 768 + if (this.vertexSkins != null) { + var1 = new int[256]; + var2 = 0; - for (var3 = 0; var3 < this.verticesCount; ++var3) { // L: 769 - var4 = this.vertexSkins[var3]; // L: 770 - var10002 = var1[var4]++; // L: 771 - if (var4 > var2) { // L: 772 + for (var3 = 0; var3 < this.verticesCount; ++var3) { + var4 = this.vertexSkins[var3]; + var10002 = var1[var4]++; + if (var4 > var2) { var2 = var4; } } - this.vertexLabels = new int[var2 + 1][]; // L: 774 + this.vertexLabels = new int[var2 + 1][]; - for (var3 = 0; var3 <= var2; ++var3) { // L: 775 - this.vertexLabels[var3] = new int[var1[var3]]; // L: 776 - var1[var3] = 0; // L: 777 + for (var3 = 0; var3 <= var2; ++var3) { + this.vertexLabels[var3] = new int[var1[var3]]; + var1[var3] = 0; } - for (var3 = 0; var3 < this.verticesCount; this.vertexLabels[var4][var1[var4]++] = var3++) { // L: 779 781 - var4 = this.vertexSkins[var3]; // L: 780 + for (var3 = 0; var3 < this.verticesCount; this.vertexLabels[var4][var1[var4]++] = var3++) { + var4 = this.vertexSkins[var3]; } - this.vertexSkins = null; // L: 783 + this.vertexSkins = null; } - if (this.faceSkins != null) { // L: 785 - var1 = new int[256]; // L: 786 - var2 = 0; // L: 787 + if (this.faceSkins != null) { + var1 = new int[256]; + var2 = 0; - for (var3 = 0; var3 < this.faceCount; ++var3) { // L: 788 - var4 = this.faceSkins[var3]; // L: 789 - var10002 = var1[var4]++; // L: 790 - if (var4 > var2) { // L: 791 + for (var3 = 0; var3 < this.faceCount; ++var3) { + var4 = this.faceSkins[var3]; + var10002 = var1[var4]++; + if (var4 > var2) { var2 = var4; } } - this.faceLabelsAlpha = new int[var2 + 1][]; // L: 793 + this.faceLabelsAlpha = new int[var2 + 1][]; - for (var3 = 0; var3 <= var2; ++var3) { // L: 794 - this.faceLabelsAlpha[var3] = new int[var1[var3]]; // L: 795 - var1[var3] = 0; // L: 796 + for (var3 = 0; var3 <= var2; ++var3) { + this.faceLabelsAlpha[var3] = new int[var1[var3]]; + var1[var3] = 0; } - for (var3 = 0; var3 < this.faceCount; this.faceLabelsAlpha[var4][var1[var4]++] = var3++) { // L: 798 800 - var4 = this.faceSkins[var3]; // L: 799 + for (var3 = 0; var3 < this.faceCount; this.faceLabelsAlpha[var4][var1[var4]++] = var3++) { + var4 = this.faceSkins[var3]; } - this.faceSkins = null; // L: 802 + this.faceSkins = null; } - } // L: 804 + } - @ObfuscatedName("c") - public void method2940() { - for (int var1 = 0; var1 < this.verticesCount; ++var1) { // L: 807 - int var2 = this.verticesX[var1]; // L: 808 - this.verticesX[var1] = this.verticesZ[var1]; // L: 809 - this.verticesZ[var1] = -var2; // L: 810 + @ObfuscatedName("p") + public void method2860() { + for (int var1 = 0; var1 < this.verticesCount; ++var1) { + int var2 = this.verticesX[var1]; + this.verticesX[var1] = this.verticesZ[var1]; + this.verticesZ[var1] = -var2; } - this.invalidate(); // L: 812 - } // L: 813 + this.invalidate(); + } - @ObfuscatedName("t") - public void method2921() { - for (int var1 = 0; var1 < this.verticesCount; ++var1) { // L: 816 - this.verticesX[var1] = -this.verticesX[var1]; // L: 817 - this.verticesZ[var1] = -this.verticesZ[var1]; // L: 818 + @ObfuscatedName("z") + public void method2896() { + for (int var1 = 0; var1 < this.verticesCount; ++var1) { + this.verticesX[var1] = -this.verticesX[var1]; + this.verticesZ[var1] = -this.verticesZ[var1]; } - this.invalidate(); // L: 820 - } // L: 821 + this.invalidate(); + } + + @ObfuscatedName("u") + public void method2863() { + for (int var1 = 0; var1 < this.verticesCount; ++var1) { + int var2 = this.verticesZ[var1]; + this.verticesZ[var1] = this.verticesX[var1]; + this.verticesX[var1] = -var2; + } + + this.invalidate(); + } @ObfuscatedName("e") - public void method2922() { - for (int var1 = 0; var1 < this.verticesCount; ++var1) { // L: 824 - int var2 = this.verticesZ[var1]; // L: 825 - this.verticesZ[var1] = this.verticesX[var1]; // L: 826 - this.verticesX[var1] = -var2; // L: 827 + public void method2871(int var1) { + int var2 = ModelData_sine[var1]; + int var3 = ModelData_cosine[var1]; + + for (int var4 = 0; var4 < this.verticesCount; ++var4) { + int var5 = var2 * this.verticesZ[var4] + var3 * this.verticesX[var4] >> 16; + this.verticesZ[var4] = var3 * this.verticesZ[var4] - var2 * this.verticesX[var4] >> 16; + this.verticesX[var4] = var5; } - this.invalidate(); // L: 829 - } // L: 830 + this.invalidate(); + } - @ObfuscatedName("o") - public void method2937(int var1) { - int var2 = ModelData_sine[var1]; // L: 833 - int var3 = ModelData_cosine[var1]; // L: 834 - - for (int var4 = 0; var4 < this.verticesCount; ++var4) { // L: 835 - int var5 = var2 * this.verticesZ[var4] + var3 * this.verticesX[var4] >> 16; // L: 836 - this.verticesZ[var4] = var3 * this.verticesZ[var4] - var2 * this.verticesX[var4] >> 16; // L: 837 - this.verticesX[var4] = var5; // L: 838 - } - - this.invalidate(); // L: 840 - } // L: 841 - - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("changeOffset") public void changeOffset(int var1, int var2, int var3) { - for (int var4 = 0; var4 < this.verticesCount; ++var4) { // L: 844 - int[] var10000 = this.verticesX; // L: 845 + for (int var4 = 0; var4 < this.verticesCount; ++var4) { + int[] var10000 = this.verticesX; var10000[var4] += var1; - var10000 = this.verticesY; // L: 846 + var10000 = this.verticesY; var10000[var4] += var2; - var10000 = this.verticesZ; // L: 847 + var10000 = this.verticesZ; var10000[var4] += var3; } - this.invalidate(); // L: 849 - } // L: 850 + this.invalidate(); + } - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("recolor") public void recolor(short var1, short var2) { - for (int var3 = 0; var3 < this.faceCount; ++var3) { // L: 853 - if (this.faceColors[var3] == var1) { // L: 854 + for (int var3 = 0; var3 < this.faceCount; ++var3) { + if (this.faceColors[var3] == var1) { this.faceColors[var3] = var2; } } - } // L: 856 + } - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("retexture") public void retexture(short var1, short var2) { - if (this.faceTextures != null) { // L: 859 - for (int var3 = 0; var3 < this.faceCount; ++var3) { // L: 860 + if (this.faceTextures != null) { + for (int var3 = 0; var3 < this.faceCount; ++var3) { if (this.faceTextures[var3] == var1) { - this.faceTextures[var3] = var2; // L: 861 + this.faceTextures[var3] = var2; } } } - } // L: 863 + } - @ObfuscatedName("r") - public void method2927() { + @ObfuscatedName("f") + public void method2867() { int var1; - for (var1 = 0; var1 < this.verticesCount; ++var1) { // L: 866 + for (var1 = 0; var1 < this.verticesCount; ++var1) { this.verticesZ[var1] = -this.verticesZ[var1]; } - for (var1 = 0; var1 < this.faceCount; ++var1) { // L: 867 - int var2 = this.indices1[var1]; // L: 868 - this.indices1[var1] = this.indices3[var1]; // L: 869 - this.indices3[var1] = var2; // L: 870 + for (var1 = 0; var1 < this.faceCount; ++var1) { + int var2 = this.indices1[var1]; + this.indices1[var1] = this.indices3[var1]; + this.indices3[var1] = var2; } - this.invalidate(); // L: 872 - } // L: 873 + this.invalidate(); + } @ObfuscatedName("y") @Export("resize") public void resize(int var1, int var2, int var3) { - for (int var4 = 0; var4 < this.verticesCount; ++var4) { // L: 876 - this.verticesX[var4] = this.verticesX[var4] * var1 / 128; // L: 877 - this.verticesY[var4] = var2 * this.verticesY[var4] / 128; // L: 878 - this.verticesZ[var4] = var3 * this.verticesZ[var4] / 128; // L: 879 + for (int var4 = 0; var4 < this.verticesCount; ++var4) { + this.verticesX[var4] = this.verticesX[var4] * var1 / 128; + this.verticesY[var4] = var2 * this.verticesY[var4] / 128; + this.verticesZ[var4] = var3 * this.verticesZ[var4] / 128; } - this.invalidate(); // L: 881 - } // L: 882 + this.invalidate(); + } - @ObfuscatedName("s") + @ObfuscatedName("r") @Export("calculateVertexNormals") public void calculateVertexNormals() { - if (this.vertexNormals == null) { // L: 885 - this.vertexNormals = new VertexNormal[this.verticesCount]; // L: 886 + if (this.vertexNormals == null) { + this.vertexNormals = new VertexNormal[this.verticesCount]; int var1; - for (var1 = 0; var1 < this.verticesCount; ++var1) { // L: 887 + for (var1 = 0; var1 < this.verticesCount; ++var1) { this.vertexNormals[var1] = new VertexNormal(); } - for (var1 = 0; var1 < this.faceCount; ++var1) { // L: 888 - int var2 = this.indices1[var1]; // L: 889 - int var3 = this.indices2[var1]; // L: 890 - int var4 = this.indices3[var1]; // L: 891 - int var5 = this.verticesX[var3] - this.verticesX[var2]; // L: 892 - int var6 = this.verticesY[var3] - this.verticesY[var2]; // L: 893 - int var7 = this.verticesZ[var3] - this.verticesZ[var2]; // L: 894 - int var8 = this.verticesX[var4] - this.verticesX[var2]; // L: 895 - int var9 = this.verticesY[var4] - this.verticesY[var2]; // L: 896 - int var10 = this.verticesZ[var4] - this.verticesZ[var2]; // L: 897 - int var11 = var6 * var10 - var9 * var7; // L: 898 - int var12 = var7 * var8 - var10 * var5; // L: 899 + for (var1 = 0; var1 < this.faceCount; ++var1) { + int var2 = this.indices1[var1]; + int var3 = this.indices2[var1]; + int var4 = this.indices3[var1]; + int var5 = this.verticesX[var3] - this.verticesX[var2]; + int var6 = this.verticesY[var3] - this.verticesY[var2]; + int var7 = this.verticesZ[var3] - this.verticesZ[var2]; + int var8 = this.verticesX[var4] - this.verticesX[var2]; + int var9 = this.verticesY[var4] - this.verticesY[var2]; + int var10 = this.verticesZ[var4] - this.verticesZ[var2]; + int var11 = var6 * var10 - var9 * var7; + int var12 = var7 * var8 - var10 * var5; int var13; - for (var13 = var5 * var9 - var8 * var6; var11 > 8192 || var12 > 8192 || var13 > 8192 || var11 < -8192 || var12 < -8192 || var13 < -8192; var13 >>= 1) { // L: 900 901 904 - var11 >>= 1; // L: 902 - var12 >>= 1; // L: 903 + for (var13 = var5 * var9 - var8 * var6; var11 > 8192 || var12 > 8192 || var13 > 8192 || var11 < -8192 || var12 < -8192 || var13 < -8192; var13 >>= 1) { + var11 >>= 1; + var12 >>= 1; } - int var14 = (int)Math.sqrt((double)(var11 * var11 + var12 * var12 + var13 * var13)); // L: 906 - if (var14 <= 0) { // L: 907 + int var14 = (int)Math.sqrt((double)(var11 * var11 + var12 * var12 + var13 * var13)); + if (var14 <= 0) { var14 = 1; } - var11 = var11 * 256 / var14; // L: 908 - var12 = var12 * 256 / var14; // L: 909 - var13 = var13 * 256 / var14; // L: 910 + var11 = var11 * 256 / var14; + var12 = var12 * 256 / var14; + var13 = var13 * 256 / var14; byte var15; - if (this.faceRenderTypes == null) { // L: 912 + if (this.faceRenderTypes == null) { var15 = 0; } else { - var15 = this.faceRenderTypes[var1]; // L: 913 + var15 = this.faceRenderTypes[var1]; } - if (var15 == 0) { // L: 914 - VertexNormal var16 = this.vertexNormals[var2]; // L: 916 - var16.x += var11; // L: 917 - var16.y += var12; // L: 918 - var16.z += var13; // L: 919 - ++var16.magnitude; // L: 920 - var16 = this.vertexNormals[var3]; // L: 921 - var16.x += var11; // L: 922 - var16.y += var12; // L: 923 - var16.z += var13; // L: 924 - ++var16.magnitude; // L: 925 - var16 = this.vertexNormals[var4]; // L: 926 - var16.x += var11; // L: 927 - var16.y += var12; // L: 928 - var16.z += var13; // L: 929 - ++var16.magnitude; // L: 930 - } else if (var15 == 1) { // L: 932 - if (this.faceNormals == null) { // L: 933 + if (var15 == 0) { + VertexNormal var16 = this.vertexNormals[var2]; + var16.x += var11; + var16.y += var12; + var16.z += var13; + ++var16.magnitude; + var16 = this.vertexNormals[var3]; + var16.x += var11; + var16.y += var12; + var16.z += var13; + ++var16.magnitude; + var16 = this.vertexNormals[var4]; + var16.x += var11; + var16.y += var12; + var16.z += var13; + ++var16.magnitude; + } else if (var15 == 1) { + if (this.faceNormals == null) { this.faceNormals = new FaceNormal[this.faceCount]; } - FaceNormal var17 = this.faceNormals[var1] = new FaceNormal(); // L: 934 - var17.x = var11; // L: 935 - var17.y = var12; // L: 936 - var17.z = var13; // L: 937 + FaceNormal var17 = this.faceNormals[var1] = new FaceNormal(); + var17.x = var11; + var17.y = var12; + var17.z = var13; } } } - } // L: 940 + } - @ObfuscatedName("j") + @ObfuscatedName("q") @Export("invalidate") void invalidate() { - this.vertexNormals = null; // L: 943 - this.field1599 = null; // L: 944 - this.faceNormals = null; // L: 945 - this.isBoundsCalculated = false; // L: 946 - } // L: 947 + this.vertexNormals = null; + this.field1601 = null; + this.faceNormals = null; + this.isBoundsCalculated = false; + } - @ObfuscatedName("d") + @ObfuscatedName("g") @Export("calculateBounds") void calculateBounds() { - if (!this.isBoundsCalculated) { // L: 950 - super.height = 0; // L: 951 - this.field1603 = 0; // L: 952 - this.field1604 = 999999; // L: 953 - this.field1605 = -999999; // L: 954 - this.field1587 = -99999; // L: 955 - this.field1607 = 99999; // L: 956 + if (!this.isBoundsCalculated) { + super.height = 0; + this.field1593 = 0; + this.field1585 = 999999; + this.field1595 = -999999; + this.field1596 = -99999; + this.field1597 = 99999; - for (int var1 = 0; var1 < this.verticesCount; ++var1) { // L: 957 - int var2 = this.verticesX[var1]; // L: 958 - int var3 = this.verticesY[var1]; // L: 959 - int var4 = this.verticesZ[var1]; // L: 960 - if (var2 < this.field1604) { // L: 961 - this.field1604 = var2; + for (int var1 = 0; var1 < this.verticesCount; ++var1) { + int var2 = this.verticesX[var1]; + int var3 = this.verticesY[var1]; + int var4 = this.verticesZ[var1]; + if (var2 < this.field1585) { + this.field1585 = var2; } - if (var2 > this.field1605) { // L: 962 - this.field1605 = var2; + if (var2 > this.field1595) { + this.field1595 = var2; } - if (var4 < this.field1607) { // L: 963 - this.field1607 = var4; + if (var4 < this.field1597) { + this.field1597 = var4; } - if (var4 > this.field1587) { // L: 964 - this.field1587 = var4; + if (var4 > this.field1596) { + this.field1596 = var4; } - if (-var3 > super.height) { // L: 965 + if (-var3 > super.height) { super.height = -var3; } - if (var3 > this.field1603) { // L: 966 - this.field1603 = var3; + if (var3 > this.field1593) { + this.field1593 = var3; } } - this.isBoundsCalculated = true; // L: 968 + this.isBoundsCalculated = true; } - } // L: 969 + } - @ObfuscatedName("g") + @ObfuscatedName("an") @ObfuscatedSignature( descriptor = "(IIIII)Leh;" ) @Export("toModel") public final Model toModel(int var1, int var2, int var3, int var4, int var5) { - this.calculateVertexNormals(); // L: 1028 - int var6 = (int)Math.sqrt((double)(var5 * var5 + var3 * var3 + var4 * var4)); // L: 1029 - int var7 = var6 * var2 >> 8; // L: 1030 - Model var8 = new Model(); // L: 1031 - var8.faceColors1 = new int[this.faceCount]; // L: 1032 - var8.faceColors2 = new int[this.faceCount]; // L: 1033 - var8.faceColors3 = new int[this.faceCount]; // L: 1034 - if (this.textureTriangleCount > 0 && this.textureCoords != null) { // L: 1035 - int[] var9 = new int[this.textureTriangleCount]; // L: 1036 + this.calculateVertexNormals(); + int var6 = (int)Math.sqrt((double)(var5 * var5 + var3 * var3 + var4 * var4)); + int var7 = var6 * var2 >> 8; + Model var8 = new Model(); + var8.faceColors1 = new int[this.faceCount]; + var8.faceColors2 = new int[this.faceCount]; + var8.faceColors3 = new int[this.faceCount]; + if (this.textureTriangleCount > 0 && this.textureCoords != null) { + int[] var9 = new int[this.textureTriangleCount]; int var10; - for (var10 = 0; var10 < this.faceCount; ++var10) { // L: 1037 - if (this.textureCoords[var10] != -1) { // L: 1038 + for (var10 = 0; var10 < this.faceCount; ++var10) { + if (this.textureCoords[var10] != -1) { ++var9[this.textureCoords[var10] & 255]; } } - var8.field1721 = 0; // L: 1040 + var8.field1704 = 0; - for (var10 = 0; var10 < this.textureTriangleCount; ++var10) { // L: 1041 - if (var9[var10] > 0 && this.textureRenderTypes[var10] == 0) { // L: 1042 - ++var8.field1721; + for (var10 = 0; var10 < this.textureTriangleCount; ++var10) { + if (var9[var10] > 0 && this.textureRenderTypes[var10] == 0) { + ++var8.field1704; } } - var8.field1716 = new int[var8.field1721]; // L: 1044 - var8.field1717 = new int[var8.field1721]; // L: 1045 - var8.field1718 = new int[var8.field1721]; // L: 1046 - var10 = 0; // L: 1047 + var8.field1723 = new int[var8.field1704]; + var8.field1745 = new int[var8.field1704]; + var8.field1707 = new int[var8.field1704]; + var10 = 0; int var11; - for (var11 = 0; var11 < this.textureTriangleCount; ++var11) { // L: 1048 - if (var9[var11] > 0 && this.textureRenderTypes[var11] == 0) { // L: 1049 - var8.field1716[var10] = this.texTriangleX[var11] & '\uffff'; // L: 1050 - var8.field1717[var10] = this.texTriangleY[var11] & '\uffff'; // L: 1051 - var8.field1718[var10] = this.texTriangleZ[var11] & '\uffff'; // L: 1052 - var9[var11] = var10++; // L: 1053 + for (var11 = 0; var11 < this.textureTriangleCount; ++var11) { + if (var9[var11] > 0 && this.textureRenderTypes[var11] == 0) { + var8.field1723[var10] = this.texTriangleX[var11] & '\uffff'; + var8.field1745[var10] = this.texTriangleY[var11] & '\uffff'; + var8.field1707[var10] = this.texTriangleZ[var11] & '\uffff'; + var9[var11] = var10++; } else { - var9[var11] = -1; // L: 1055 + var9[var11] = -1; } } - var8.field1712 = new byte[this.faceCount]; // L: 1057 + var8.field1701 = new byte[this.faceCount]; - for (var11 = 0; var11 < this.faceCount; ++var11) { // L: 1058 - if (this.textureCoords[var11] != -1) { // L: 1059 - var8.field1712[var11] = (byte)var9[this.textureCoords[var11] & 255]; + for (var11 = 0; var11 < this.faceCount; ++var11) { + if (this.textureCoords[var11] != -1) { + var8.field1701[var11] = (byte)var9[this.textureCoords[var11] & 255]; } else { - var8.field1712[var11] = -1; // L: 1060 + var8.field1701[var11] = -1; } } } - for (int var16 = 0; var16 < this.faceCount; ++var16) { // L: 1063 + for (int var16 = 0; var16 < this.faceCount; ++var16) { byte var17; - if (this.faceRenderTypes == null) { // L: 1065 + if (this.faceRenderTypes == null) { var17 = 0; } else { - var17 = this.faceRenderTypes[var16]; // L: 1066 + var17 = this.faceRenderTypes[var16]; } byte var18; - if (this.faceAlphas == null) { // L: 1068 + if (this.faceAlphas == null) { var18 = 0; } else { - var18 = this.faceAlphas[var16]; // L: 1069 + var18 = this.faceAlphas[var16]; } short var12; - if (this.faceTextures == null) { // L: 1071 + if (this.faceTextures == null) { var12 = -1; } else { - var12 = this.faceTextures[var16]; // L: 1072 + var12 = this.faceTextures[var16]; } - if (var18 == -2) { // L: 1073 + if (var18 == -2) { var17 = 3; } - if (var18 == -1) { // L: 1074 + if (var18 == -1) { var17 = 2; } VertexNormal var13; int var14; FaceNormal var19; - if (var12 == -1) { // L: 1075 - if (var17 != 0) { // L: 1076 - if (var17 == 1) { // L: 1093 - var19 = this.faceNormals[var16]; // L: 1094 - var14 = (var4 * var19.y + var5 * var19.z + var3 * var19.x) / (var7 / 2 + var7) + var1; // L: 1095 - var8.faceColors1[var16] = method2934(this.faceColors[var16] & '\uffff', var14); // L: 1096 - var8.faceColors3[var16] = -1; // L: 1097 - } else if (var17 == 3) { // L: 1099 - var8.faceColors1[var16] = 128; // L: 1100 - var8.faceColors3[var16] = -1; // L: 1101 + if (var12 == -1) { + if (var17 != 0) { + if (var17 == 1) { + var19 = this.faceNormals[var16]; + var14 = (var4 * var19.y + var5 * var19.z + var3 * var19.x) / (var7 / 2 + var7) + var1; + var8.faceColors1[var16] = method2874(this.faceColors[var16] & '\uffff', var14); + var8.faceColors3[var16] = -1; + } else if (var17 == 3) { + var8.faceColors1[var16] = 128; + var8.faceColors3[var16] = -1; } else { - var8.faceColors3[var16] = -2; // L: 1104 + var8.faceColors3[var16] = -2; } } else { - int var15 = this.faceColors[var16] & '\uffff'; // L: 1079 - if (this.field1599 != null && this.field1599[this.indices1[var16]] != null) { // L: 1080 - var13 = this.field1599[this.indices1[var16]]; + int var15 = this.faceColors[var16] & '\uffff'; + if (this.field1601 != null && this.field1601[this.indices1[var16]] != null) { + var13 = this.field1601[this.indices1[var16]]; } else { - var13 = this.vertexNormals[this.indices1[var16]]; // L: 1081 + var13 = this.vertexNormals[this.indices1[var16]]; } - var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; // L: 1082 - var8.faceColors1[var16] = method2934(var15, var14); // L: 1083 - if (this.field1599 != null && this.field1599[this.indices2[var16]] != null) { // L: 1084 - var13 = this.field1599[this.indices2[var16]]; + var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; + var8.faceColors1[var16] = method2874(var15, var14); + if (this.field1601 != null && this.field1601[this.indices2[var16]] != null) { + var13 = this.field1601[this.indices2[var16]]; } else { - var13 = this.vertexNormals[this.indices2[var16]]; // L: 1085 + var13 = this.vertexNormals[this.indices2[var16]]; } - var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; // L: 1086 - var8.faceColors2[var16] = method2934(var15, var14); // L: 1087 - if (this.field1599 != null && this.field1599[this.indices3[var16]] != null) { // L: 1088 - var13 = this.field1599[this.indices3[var16]]; + var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; + var8.faceColors2[var16] = method2874(var15, var14); + if (this.field1601 != null && this.field1601[this.indices3[var16]] != null) { + var13 = this.field1601[this.indices3[var16]]; } else { - var13 = this.vertexNormals[this.indices3[var16]]; // L: 1089 + var13 = this.vertexNormals[this.indices3[var16]]; } - var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; // L: 1090 - var8.faceColors3[var16] = method2934(var15, var14); // L: 1091 + var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; + var8.faceColors3[var16] = method2874(var15, var14); } - } else if (var17 != 0) { // L: 1108 - if (var17 == 1) { // L: 1124 - var19 = this.faceNormals[var16]; // L: 1125 - var14 = (var4 * var19.y + var5 * var19.z + var3 * var19.x) / (var7 / 2 + var7) + var1; // L: 1126 - var8.faceColors1[var16] = method2983(var14); // L: 1127 - var8.faceColors3[var16] = -1; // L: 1128 + } else if (var17 != 0) { + if (var17 == 1) { + var19 = this.faceNormals[var16]; + var14 = (var4 * var19.y + var5 * var19.z + var3 * var19.x) / (var7 / 2 + var7) + var1; + var8.faceColors1[var16] = method2908(var14); + var8.faceColors3[var16] = -1; } else { - var8.faceColors3[var16] = -2; // L: 1131 + var8.faceColors3[var16] = -2; } } else { - if (this.field1599 != null && this.field1599[this.indices1[var16]] != null) { // L: 1111 - var13 = this.field1599[this.indices1[var16]]; + if (this.field1601 != null && this.field1601[this.indices1[var16]] != null) { + var13 = this.field1601[this.indices1[var16]]; } else { - var13 = this.vertexNormals[this.indices1[var16]]; // L: 1112 + var13 = this.vertexNormals[this.indices1[var16]]; } - var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; // L: 1113 - var8.faceColors1[var16] = method2983(var14); // L: 1114 - if (this.field1599 != null && this.field1599[this.indices2[var16]] != null) { // L: 1115 - var13 = this.field1599[this.indices2[var16]]; + var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; + var8.faceColors1[var16] = method2908(var14); + if (this.field1601 != null && this.field1601[this.indices2[var16]] != null) { + var13 = this.field1601[this.indices2[var16]]; } else { - var13 = this.vertexNormals[this.indices2[var16]]; // L: 1116 + var13 = this.vertexNormals[this.indices2[var16]]; } - var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; // L: 1117 - var8.faceColors2[var16] = method2983(var14); // L: 1118 - if (this.field1599 != null && this.field1599[this.indices3[var16]] != null) { // L: 1119 - var13 = this.field1599[this.indices3[var16]]; + var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; + var8.faceColors2[var16] = method2908(var14); + if (this.field1601 != null && this.field1601[this.indices3[var16]] != null) { + var13 = this.field1601[this.indices3[var16]]; } else { - var13 = this.vertexNormals[this.indices3[var16]]; // L: 1120 + var13 = this.vertexNormals[this.indices3[var16]]; } - var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; // L: 1121 - var8.faceColors3[var16] = method2983(var14); // L: 1122 + var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; + var8.faceColors3[var16] = method2908(var14); } } - this.method2919(); // L: 1135 - var8.verticesCount = this.verticesCount; // L: 1136 - var8.verticesX = this.verticesX; // L: 1137 - var8.verticesY = this.verticesY; // L: 1138 - var8.verticesZ = this.verticesZ; // L: 1139 - var8.indicesCount = this.faceCount; // L: 1140 - var8.indices1 = this.indices1; // L: 1141 - var8.indices2 = this.indices2; // L: 1142 - var8.indices3 = this.indices3; // L: 1143 - var8.faceRenderPriorities = this.faceRenderPriorities; // L: 1144 - var8.faceAlphas = this.faceAlphas; // L: 1145 - var8.field1751 = this.priority; // L: 1146 - var8.vertexLabels = this.vertexLabels; // L: 1147 - var8.faceLabelsAlpha = this.faceLabelsAlpha; // L: 1148 - var8.faceTextures = this.faceTextures; // L: 1149 - return var8; // L: 1150 + this.method2859(); + var8.verticesCount = this.verticesCount; + var8.verticesX = this.verticesX; + var8.verticesY = this.verticesY; + var8.verticesZ = this.verticesZ; + var8.indicesCount = this.faceCount; + var8.indices1 = this.indices1; + var8.indices2 = this.indices2; + var8.indices3 = this.indices3; + var8.faceRenderPriorities = this.faceRenderPriorities; + var8.faceAlphas = this.faceAlphas; + var8.field1722 = this.priority; + var8.vertexLabels = this.vertexLabels; + var8.faceLabelsAlpha = this.faceLabelsAlpha; + var8.faceTextures = this.faceTextures; + return var8; } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Liw;II)Len;" + descriptor = "(Lib;II)Les;" ) @Export("ModelData_get") public static ModelData ModelData_get(AbstractArchive var0, int var1, int var2) { - byte[] var3 = var0.takeFile(var1, var2); // L: 53 - return var3 == null ? null : new ModelData(var3); // L: 54 + byte[] var3 = var0.takeFile(var1, var2); + return var3 == null ? null : new ModelData(var3); } - @ObfuscatedName("a") + @ObfuscatedName("o") @ObfuscatedSignature( - descriptor = "(Len;Len;IIIZ)V" + descriptor = "(Les;Les;IIIZ)V" ) - static void method2929(ModelData var0, ModelData var1, int var2, int var3, int var4, boolean var5) { - var0.calculateBounds(); // L: 972 - var0.calculateVertexNormals(); // L: 973 - var1.calculateBounds(); // L: 974 - var1.calculateVertexNormals(); // L: 975 - ++field1610; // L: 976 - int var6 = 0; // L: 977 - int[] var7 = var1.verticesX; // L: 978 - int var8 = var1.verticesCount; // L: 979 + static void method2872(ModelData var0, ModelData var1, int var2, int var3, int var4, boolean var5) { + var0.calculateBounds(); + var0.calculateVertexNormals(); + var1.calculateBounds(); + var1.calculateVertexNormals(); + ++field1600; + int var6 = 0; + int[] var7 = var1.verticesX; + int var8 = var1.verticesCount; int var9; - for (var9 = 0; var9 < var0.verticesCount; ++var9) { // L: 980 - VertexNormal var10 = var0.vertexNormals[var9]; // L: 981 - if (var10.magnitude != 0) { // L: 982 - int var11 = var0.verticesY[var9] - var3; // L: 983 - if (var11 <= var1.field1603) { // L: 984 - int var12 = var0.verticesX[var9] - var2; // L: 985 - if (var12 >= var1.field1604 && var12 <= var1.field1605) { // L: 986 - int var13 = var0.verticesZ[var9] - var4; // L: 987 - if (var13 >= var1.field1607 && var13 <= var1.field1587) { // L: 988 - for (int var14 = 0; var14 < var8; ++var14) { // L: 989 - VertexNormal var15 = var1.vertexNormals[var14]; // L: 990 - if (var12 == var7[var14] && var13 == var1.verticesZ[var14] && var11 == var1.verticesY[var14] && var15.magnitude != 0) { // L: 991 - if (var0.field1599 == null) { // L: 992 - var0.field1599 = new VertexNormal[var0.verticesCount]; + for (var9 = 0; var9 < var0.verticesCount; ++var9) { + VertexNormal var10 = var0.vertexNormals[var9]; + if (var10.magnitude != 0) { + int var11 = var0.verticesY[var9] - var3; + if (var11 <= var1.field1593) { + int var12 = var0.verticesX[var9] - var2; + if (var12 >= var1.field1585 && var12 <= var1.field1595) { + int var13 = var0.verticesZ[var9] - var4; + if (var13 >= var1.field1597 && var13 <= var1.field1596) { + for (int var14 = 0; var14 < var8; ++var14) { + VertexNormal var15 = var1.vertexNormals[var14]; + if (var12 == var7[var14] && var13 == var1.verticesZ[var14] && var11 == var1.verticesY[var14] && var15.magnitude != 0) { + if (var0.field1601 == null) { + var0.field1601 = new VertexNormal[var0.verticesCount]; } - if (var1.field1599 == null) { // L: 993 - var1.field1599 = new VertexNormal[var8]; + if (var1.field1601 == null) { + var1.field1601 = new VertexNormal[var8]; } - VertexNormal var16 = var0.field1599[var9]; // L: 994 - if (var16 == null) { // L: 995 - var16 = var0.field1599[var9] = new VertexNormal(var10); + VertexNormal var16 = var0.field1601[var9]; + if (var16 == null) { + var16 = var0.field1601[var9] = new VertexNormal(var10); } - VertexNormal var17 = var1.field1599[var14]; // L: 996 + VertexNormal var17 = var1.field1601[var14]; if (var17 == null) { - var17 = var1.field1599[var14] = new VertexNormal(var15); // L: 997 + var17 = var1.field1601[var14] = new VertexNormal(var15); } - var16.x += var15.x; // L: 998 - var16.y += var15.y; // L: 999 - var16.z += var15.z; // L: 1000 - var16.magnitude += var15.magnitude; // L: 1001 - var17.x += var10.x; // L: 1002 - var17.y += var10.y; // L: 1003 - var17.z += var10.z; // L: 1004 - var17.magnitude += var10.magnitude; // L: 1005 - ++var6; // L: 1006 - field1608[var9] = field1610; // L: 1007 - field1576[var14] = field1610; // L: 1008 + var16.x += var15.x; + var16.y += var15.y; + var16.z += var15.z; + var16.magnitude += var15.magnitude; + var17.x += var10.x; + var17.y += var10.y; + var17.z += var10.z; + var17.magnitude += var10.magnitude; + ++var6; + field1598[var9] = field1600; + field1599[var14] = field1600; } } } @@ -1696,50 +1696,50 @@ public class ModelData extends Entity { } } - if (var6 >= 3 && var5) { // L: 1012 - for (var9 = 0; var9 < var0.faceCount; ++var9) { // L: 1013 - if (field1608[var0.indices1[var9]] == field1610 && field1608[var0.indices2[var9]] == field1610 && field1608[var0.indices3[var9]] == field1610) { // L: 1014 - if (var0.faceRenderTypes == null) { // L: 1015 + if (var6 >= 3 && var5) { + for (var9 = 0; var9 < var0.faceCount; ++var9) { + if (field1598[var0.indices1[var9]] == field1600 && field1598[var0.indices2[var9]] == field1600 && field1598[var0.indices3[var9]] == field1600) { + if (var0.faceRenderTypes == null) { var0.faceRenderTypes = new byte[var0.faceCount]; } - var0.faceRenderTypes[var9] = 2; // L: 1016 + var0.faceRenderTypes[var9] = 2; } } - for (var9 = 0; var9 < var1.faceCount; ++var9) { // L: 1019 - if (field1610 == field1576[var1.indices1[var9]] && field1610 == field1576[var1.indices2[var9]] && field1610 == field1576[var1.indices3[var9]]) { // L: 1020 - if (var1.faceRenderTypes == null) { // L: 1021 + for (var9 = 0; var9 < var1.faceCount; ++var9) { + if (field1600 == field1599[var1.indices1[var9]] && field1600 == field1599[var1.indices2[var9]] && field1600 == field1599[var1.indices3[var9]]) { + if (var1.faceRenderTypes == null) { var1.faceRenderTypes = new byte[var1.faceCount]; } - var1.faceRenderTypes[var9] = 2; // L: 1022 + var1.faceRenderTypes[var9] = 2; } } } - } // L: 1025 + } - @ObfuscatedName("h") - static final int method2934(int var0, int var1) { - var1 = (var0 & 127) * var1 >> 7; // L: 1154 - if (var1 < 2) { // L: 1155 + @ObfuscatedName("aj") + static final int method2874(int var0, int var1) { + var1 = (var0 & 127) * var1 >> 7; + if (var1 < 2) { var1 = 2; - } else if (var1 > 126) { // L: 1156 + } else if (var1 > 126) { var1 = 126; } - return (var0 & 65408) + var1; // L: 1157 + return (var0 & 65408) + var1; } - @ObfuscatedName("ab") - static final int method2983(int var0) { - if (var0 < 2) { // L: 1161 + @ObfuscatedName("ax") + static final int method2908(int var0) { + if (var0 < 2) { var0 = 2; } else if (var0 > 126) { - var0 = 126; // L: 1162 + var0 = 126; } - return var0; // L: 1163 + return var0; } } diff --git a/runescape-client/src/main/java/ModelData0.java b/runescape-client/src/main/java/ModelData0.java index 6ec8904503..4fb4a64e27 100644 --- a/runescape-client/src/main/java/ModelData0.java +++ b/runescape-client/src/main/java/ModelData0.java @@ -1,91 +1,95 @@ +import java.io.File; +import java.io.RandomAccessFile; 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("ec") +@ObfuscatedName("et") @Implements("ModelData0") public class ModelData0 { - @ObfuscatedName("sv") - @ObfuscatedSignature( - descriptor = "Liq;" + @ObfuscatedName("k") + @ObfuscatedGetter( + intValue = 1312474223 ) - public static class248 field1895; - @ObfuscatedName("ez") - @ObfuscatedSignature( - descriptor = "Lid;" - ) - @Export("archive18") - static Archive archive18; + @Export("canvasHeight") + public static int canvasHeight; ModelData0() { - } // L: 4 - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(I)Lcf;", - garbageValue = "1326128676" - ) - @Export("worldListStart") - static World worldListStart() { - World.World_listCount = 0; // L: 237 - return FileSystem.getNextWorldListWorld(); // L: 238 } - @ObfuscatedName("he") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/String;IIIIB)V", - garbageValue = "-117" + descriptor = "(Ljava/lang/String;I)Ljava/io/File;", + garbageValue = "1637999764" ) - @Export("insertMenuItemNoShift") - public static final void insertMenuItemNoShift(String var0, String var1, int var2, int var3, int var4, int var5) { - KeyHandler.insertMenuItem(var0, var1, var2, var3, var4, var5, false); // L: 8934 - } // L: 8935 + @Export("getFile") + public static File getFile(String var0) { + if (!FileSystem.FileSystem_hasPermissions) { + throw new RuntimeException(""); + } else { + File var1 = (File)FileSystem.FileSystem_cacheFiles.get(var0); + if (var1 != null) { + return var1; + } else { + File var2 = new File(FileSystem.FileSystem_cacheDir, var0); + RandomAccessFile var3 = null; - @ObfuscatedName("jt") - @ObfuscatedSignature( - descriptor = "(IIII)Lbs;", - garbageValue = "1523932767" - ) - static final InterfaceParent method3381(int var0, int var1, int var2) { - InterfaceParent var3 = new InterfaceParent(); // L: 11261 - var3.group = var1; // L: 11262 - var3.type = var2; // L: 11263 - Client.interfaceParents.put(var3, (long)var0); // L: 11264 - FontName.Widget_resetModelFrames(var1); // L: 11265 - Widget var4 = UserComparator4.getWidget(var0); // L: 11266 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var4); // L: 11267 - if (Client.meslayerContinueWidget != null) { // L: 11268 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(Client.meslayerContinueWidget); // L: 11269 - Client.meslayerContinueWidget = null; // L: 11270 - } - - for (int var5 = 0; var5 < Client.menuOptionsCount; ++var5) { // L: 11273 - if (DynamicObject.method2362(Client.menuOpcodes[var5])) { // L: 11274 - if (var5 < Client.menuOptionsCount - 1) { // L: 11275 - for (int var6 = var5; var6 < Client.menuOptionsCount - 1; ++var6) { // L: 11276 - Client.menuActions[var6] = Client.menuActions[var6 + 1]; // L: 11277 - Client.menuTargets[var6] = Client.menuTargets[var6 + 1]; // L: 11278 - Client.menuOpcodes[var6] = Client.menuOpcodes[var6 + 1]; // L: 11279 - Client.menuIdentifiers[var6] = Client.menuIdentifiers[var6 + 1]; // L: 11280 - Client.menuArguments1[var6] = Client.menuArguments1[var6 + 1]; // L: 11281 - Client.menuArguments2[var6] = Client.menuArguments2[var6 + 1]; // L: 11282 - Client.menuShiftClick[var6] = Client.menuShiftClick[var6 + 1]; // L: 11283 + try { + File var4 = new File(var2.getParent()); + if (!var4.exists()) { + throw new RuntimeException(""); + } else { + var3 = new RandomAccessFile(var2, "rw"); + int var5 = var3.read(); + var3.seek(0L); + var3.write(var5); + var3.seek(0L); + var3.close(); + FileSystem.FileSystem_cacheFiles.put(var0, var2); + return var2; + } + } catch (Exception var8) { + try { + if (var3 != null) { + var3.close(); + var3 = null; + } + } catch (Exception var7) { } - } - --var5; // L: 11286 - --Client.menuOptionsCount; // L: 11287 + throw new RuntimeException(); + } } } + } - TileItemPile.method2908(); // L: 11290 - UserComparator9.revalidateWidgetScroll(Widget.Widget_interfaceComponents[var0 >> 16], var4, false); // L: 11292 - ScriptFrame.runWidgetOnLoadListener(var1); // L: 11293 - if (Client.rootInterface != -1) { // L: 11294 - WorldMapAreaData.runIntfCloseListeners(Client.rootInterface, 1); - } + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Lib;Lib;I)V", + garbageValue = "402911181" + ) + public static void method3331(AbstractArchive var0, AbstractArchive var1) { + SpotAnimationDefinition.SpotAnimationDefinition_archive = var0; + SpotAnimationDefinition.SpotAnimationDefinition_modelArchive = var1; + } - return var3; // L: 11295 + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Lib;I)V", + garbageValue = "2029131503" + ) + public static void method3330(AbstractArchive var0) { + VarcInt.VarcInt_archive = var0; + } + + @ObfuscatedName("jf") + @ObfuscatedSignature( + descriptor = "(II)Ljava/lang/String;", + garbageValue = "237482387" + ) + static final String method3329(int var0) { + return var0 < 999999999 ? Integer.toString(var0) : "*"; } } diff --git a/runescape-client/src/main/java/MouseHandler.java b/runescape-client/src/main/java/MouseHandler.java index f7271c7930..0635bca99d 100644 --- a/runescape-client/src/main/java/MouseHandler.java +++ b/runescape-client/src/main/java/MouseHandler.java @@ -3,337 +3,270 @@ import java.awt.event.FocusListener; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; -import java.io.File; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("bt") +@ObfuscatedName("bc") @Implements("MouseHandler") public class MouseHandler implements MouseListener, MouseMotionListener, FocusListener { - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "Lbt;" - ) - @Export("MouseHandler_instance") - public static MouseHandler MouseHandler_instance; - @ObfuscatedName("z") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 996345837 - ) - @Export("MouseHandler_idleCycles") - public static volatile int MouseHandler_idleCycles; - @ObfuscatedName("q") - @ObfuscatedGetter( - intValue = 1273849555 - ) - @Export("MouseHandler_currentButtonVolatile") - public static volatile int MouseHandler_currentButtonVolatile; - @ObfuscatedName("k") - @ObfuscatedGetter( - intValue = -2115208813 - ) - @Export("MouseHandler_x") - public static int MouseHandler_x; - @ObfuscatedName("c") - @ObfuscatedGetter( - intValue = -575888969 - ) - @Export("MouseHandler_xVolatile") - public static volatile int MouseHandler_xVolatile; - @ObfuscatedName("u") - @ObfuscatedGetter( - intValue = -393031685 - ) - @Export("MouseHandler_yVolatile") - public static volatile int MouseHandler_yVolatile; - @ObfuscatedName("t") - @ObfuscatedGetter( - longValue = -2981327926764741279L - ) - @Export("MouseHandler_lastMovedVolatile") - public static volatile long MouseHandler_lastMovedVolatile; - @ObfuscatedName("e") - @ObfuscatedGetter( - intValue = -279954639 - ) - @Export("MouseHandler_currentButton") - public static int MouseHandler_currentButton; - @ObfuscatedName("o") - @ObfuscatedGetter( - intValue = -581221331 + intValue = -1946834755 ) @Export("MouseHandler_y") public static int MouseHandler_y; + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "Lbc;" + ) + @Export("MouseHandler_instance") + static MouseHandler MouseHandler_instance; + @ObfuscatedName("j") + @ObfuscatedGetter( + intValue = 775805491 + ) + @Export("MouseHandler_idleCycles") + static volatile int MouseHandler_idleCycles; @ObfuscatedName("n") @ObfuscatedGetter( - longValue = -6548306948160213705L + intValue = 573166023 + ) + @Export("MouseHandler_currentButtonVolatile") + static volatile int MouseHandler_currentButtonVolatile; + @ObfuscatedName("p") + @ObfuscatedGetter( + intValue = -1601241931 + ) + @Export("MouseHandler_xVolatile") + static volatile int MouseHandler_xVolatile; + @ObfuscatedName("l") + @ObfuscatedGetter( + intValue = -393042359 + ) + @Export("MouseHandler_yVolatile") + static volatile int MouseHandler_yVolatile; + @ObfuscatedName("z") + @ObfuscatedGetter( + longValue = 2107554156313021357L + ) + @Export("MouseHandler_lastMovedVolatile") + static volatile long MouseHandler_lastMovedVolatile; + @ObfuscatedName("u") + @ObfuscatedGetter( + intValue = -40540789 + ) + @Export("MouseHandler_currentButton") + public static int MouseHandler_currentButton; + @ObfuscatedName("e") + @ObfuscatedGetter( + intValue = -1140294545 + ) + @Export("MouseHandler_x") + public static int MouseHandler_x; + @ObfuscatedName("m") + @ObfuscatedGetter( + longValue = 3330713262365834661L ) @Export("MouseHandler_millis") public static long MouseHandler_millis; - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedGetter( - intValue = 950852407 + intValue = -1471802557 ) @Export("MouseHandler_lastButtonVolatile") - public static volatile int MouseHandler_lastButtonVolatile; - @ObfuscatedName("p") + static volatile int MouseHandler_lastButtonVolatile; + @ObfuscatedName("i") @ObfuscatedGetter( - intValue = 53768097 + intValue = -424181839 ) @Export("MouseHandler_lastPressedXVolatile") - public static volatile int MouseHandler_lastPressedXVolatile; - @ObfuscatedName("r") + static volatile int MouseHandler_lastPressedXVolatile; + @ObfuscatedName("f") @ObfuscatedGetter( - intValue = -1335668523 + intValue = -896112983 ) @Export("MouseHandler_lastPressedYVolatile") - public static volatile int MouseHandler_lastPressedYVolatile; - @ObfuscatedName("y") + static volatile int MouseHandler_lastPressedYVolatile; + @ObfuscatedName("a") @ObfuscatedGetter( - longValue = -8304358038408735417L + longValue = 4573498381714569869L ) @Export("MouseHandler_lastPressedTimeMillisVolatile") - public static volatile long MouseHandler_lastPressedTimeMillisVolatile; - @ObfuscatedName("s") + static volatile long MouseHandler_lastPressedTimeMillisVolatile; + @ObfuscatedName("b") @ObfuscatedGetter( - intValue = 1344493173 + intValue = 1823163477 ) @Export("MouseHandler_lastButton") public static int MouseHandler_lastButton; - @ObfuscatedName("j") + @ObfuscatedName("y") @ObfuscatedGetter( - intValue = -42560979 + intValue = -246658433 ) @Export("MouseHandler_lastPressedX") public static int MouseHandler_lastPressedX; - @ObfuscatedName("w") + @ObfuscatedName("r") @ObfuscatedGetter( - intValue = 1647084327 + intValue = 1476930385 ) @Export("MouseHandler_lastPressedY") public static int MouseHandler_lastPressedY; - @ObfuscatedName("v") + @ObfuscatedName("q") @ObfuscatedGetter( - longValue = -4462860366380858355L + longValue = -5526312633867782885L ) @Export("MouseHandler_lastPressedTimeMillis") public static long MouseHandler_lastPressedTimeMillis; - @ObfuscatedName("bt") - @ObfuscatedSignature( - descriptor = "Lle;" + @ObfuscatedName("ez") + static int[] field487; + @ObfuscatedName("ma") + @ObfuscatedGetter( + intValue = -139305955 ) - static IndexedSprite field523; - @ObfuscatedName("ja") - @ObfuscatedSignature( - descriptor = "Lht;" - ) - static Widget field525; + @Export("selectedSpellWidget") + static int selectedSpellWidget; static { - MouseHandler_instance = new MouseHandler(); // L: 15 + MouseHandler_instance = new MouseHandler(); MouseHandler_idleCycles = 0; MouseHandler_currentButtonVolatile = 0; MouseHandler_xVolatile = -1; MouseHandler_yVolatile = -1; - MouseHandler_lastMovedVolatile = -1L; // L: 20 - MouseHandler_currentButton = 0; // L: 21 - MouseHandler_x = 0; // L: 22 - MouseHandler_y = 0; // L: 23 - MouseHandler_millis = 0L; // L: 24 - MouseHandler_lastButtonVolatile = 0; // L: 25 - MouseHandler_lastPressedXVolatile = 0; // L: 26 - MouseHandler_lastPressedYVolatile = 0; // L: 27 - MouseHandler_lastPressedTimeMillisVolatile = 0L; // L: 28 - MouseHandler_lastButton = 0; // L: 29 - MouseHandler_lastPressedX = 0; // L: 30 - MouseHandler_lastPressedY = 0; // L: 31 - MouseHandler_lastPressedTimeMillis = 0L; // L: 32 + MouseHandler_lastMovedVolatile = -1L; + MouseHandler_currentButton = 0; + MouseHandler_x = 0; + MouseHandler_y = 0; + MouseHandler_millis = 0L; + MouseHandler_lastButtonVolatile = 0; + MouseHandler_lastPressedXVolatile = 0; + MouseHandler_lastPressedYVolatile = 0; + MouseHandler_lastPressedTimeMillisVolatile = 0L; + MouseHandler_lastButton = 0; + MouseHandler_lastPressedX = 0; + MouseHandler_lastPressedY = 0; + MouseHandler_lastPressedTimeMillis = 0L; } MouseHandler() { - } // L: 34 + } - @ObfuscatedName("m") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(Ljava/awt/event/MouseEvent;I)I", - garbageValue = "1643778515" + garbageValue = "-2088746983" ) @Export("getButton") final int getButton(MouseEvent var1) { - int var2 = var1.getButton(); // L: 55 - if (!var1.isAltDown() && var2 != 2) { // L: 56 - return !var1.isMetaDown() && var2 != 3 ? 1 : 2; // L: 57 58 + int var2 = var1.getButton(); + if (!var1.isAltDown() && var2 != 2) { + return !var1.isMetaDown() && var2 != 3 ? 1 : 2; } else { return 4; } } public final synchronized void mouseMoved(MouseEvent var1) { - if (MouseHandler_instance != null) { // L: 103 - MouseHandler_idleCycles = 0; // L: 104 - MouseHandler_xVolatile = var1.getX(); // L: 105 - MouseHandler_yVolatile = var1.getY(); // L: 106 - MouseHandler_lastMovedVolatile = var1.getWhen(); // L: 107 + if (MouseHandler_instance != null) { + MouseHandler_idleCycles = 0; + MouseHandler_xVolatile = var1.getX(); + MouseHandler_yVolatile = var1.getY(); + MouseHandler_lastMovedVolatile = var1.getWhen(); } - } // L: 109 + } + + public final synchronized void focusLost(FocusEvent var1) { + if (MouseHandler_instance != null) { + MouseHandler_currentButtonVolatile = 0; + } + + } public final synchronized void mousePressed(MouseEvent var1) { - if (MouseHandler_instance != null) { // L: 62 - MouseHandler_idleCycles = 0; // L: 63 - MouseHandler_lastPressedXVolatile = var1.getX(); // L: 64 - MouseHandler_lastPressedYVolatile = var1.getY(); // L: 65 - MouseHandler_lastPressedTimeMillisVolatile = User.currentTimeMillis(); // L: 66 - MouseHandler_lastButtonVolatile = this.getButton(var1); // L: 67 - if (MouseHandler_lastButtonVolatile != 0) { // L: 68 + if (MouseHandler_instance != null) { + MouseHandler_idleCycles = 0; + MouseHandler_lastPressedXVolatile = var1.getX(); + MouseHandler_lastPressedYVolatile = var1.getY(); + MouseHandler_lastPressedTimeMillisVolatile = class298.currentTimeMillis(); + MouseHandler_lastButtonVolatile = this.getButton(var1); + if (MouseHandler_lastButtonVolatile != 0) { MouseHandler_currentButtonVolatile = MouseHandler_lastButtonVolatile; } } - if (var1.isPopupTrigger()) { // L: 70 - var1.consume(); - } - - } // L: 71 - - public final synchronized void mouseReleased(MouseEvent var1) { - if (MouseHandler_instance != null) { // L: 74 - MouseHandler_idleCycles = 0; // L: 75 - MouseHandler_currentButtonVolatile = 0; // L: 76 - } - if (var1.isPopupTrigger()) { var1.consume(); } } - public final synchronized void mouseEntered(MouseEvent var1) { - this.mouseMoved(var1); - } - public final void mouseClicked(MouseEvent var1) { - if (var1.isPopupTrigger()) { // L: 82 + if (var1.isPopupTrigger()) { var1.consume(); } } - public final synchronized void mouseDragged(MouseEvent var1) { - this.mouseMoved(var1); // L: 99 - } // L: 100 - - public final void focusGained(FocusEvent var1) { - } // L: 111 - - public final synchronized void focusLost(FocusEvent var1) { - if (MouseHandler_instance != null) { // L: 114 - MouseHandler_currentButtonVolatile = 0; - } - - } // L: 115 - public final synchronized void mouseExited(MouseEvent var1) { if (MouseHandler_instance != null) { - MouseHandler_idleCycles = 0; // L: 91 - MouseHandler_xVolatile = -1; // L: 92 - MouseHandler_yVolatile = -1; // L: 93 + MouseHandler_idleCycles = 0; + MouseHandler_xVolatile = -1; + MouseHandler_yVolatile = -1; MouseHandler_lastMovedVolatile = var1.getWhen(); } - } // L: 96 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(Ljava/io/File;I)V", - garbageValue = "-203771743" - ) - static void method1177(File var0) { - FileSystem.FileSystem_cacheDir = var0; // L: 16 - if (!FileSystem.FileSystem_cacheDir.exists()) { // L: 17 - throw new RuntimeException(""); - } else { - FileSystem.FileSystem_hasPermissions = true; // L: 18 - } - } // L: 19 - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;IB)Z", - garbageValue = "1" - ) - static boolean method1176(String var0, int var1) { - return WorldMapManager.method735(var0, var1, "openjs"); // L: 50 } - @ObfuscatedName("l") + public final synchronized void mouseReleased(MouseEvent var1) { + if (MouseHandler_instance != null) { + MouseHandler_idleCycles = 0; + MouseHandler_currentButtonVolatile = 0; + } + + if (var1.isPopupTrigger()) { + var1.consume(); + } + + } + + public final void focusGained(FocusEvent var1) { + } + + public final synchronized void mouseEntered(MouseEvent var1) { + this.mouseMoved(var1); + } + + public final synchronized void mouseDragged(MouseEvent var1) { + this.mouseMoved(var1); + } + + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "([BIIIIIII[Lfh;B)V", - garbageValue = "-2" + descriptor = "(Lib;I)V", + garbageValue = "-1589242946" ) - static final void method1174(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) { // L: 78 - for (var10 = 0; var10 < 8; ++var10) { // L: 79 - if (var9 + var2 > 0 && var9 + var2 < 103 && var3 + var10 > 0 && var3 + var10 < 103) { - int[] var10000 = var8[var1].flags[var9 + var2]; // L: 80 - var10000[var3 + var10] &= -16777217; - } - } - } + public static void method1157(AbstractArchive var0) { + FloorOverlayDefinition.FloorOverlayDefinition_archive = var0; + } - Buffer var13 = new Buffer(var0); // L: 83 - - for (var10 = 0; var10 < 4; ++var10) { // L: 84 - for (int var11 = 0; var11 < 64; ++var11) { // L: 85 - for (int var12 = 0; var12 < 64; ++var12) { // L: 86 - if (var10 == var4 && var11 >= var5 && var11 < var5 + 8 && var12 >= var6 && var12 < var6 + 8) { // L: 87 - HealthBarUpdate.loadTerrain(var13, var1, var2 + Varps.method4122(var11 & 7, var12 & 7, var7), var3 + MusicPatchNode2.method3831(var11 & 7, var12 & 7, var7), 0, 0, var7); // L: 88 - } else { - HealthBarUpdate.loadTerrain(var13, 0, -1, -1, 0, 0, 0); // L: 90 - } - } - } - } - - } // L: 94 - - @ObfuscatedName("r") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "-128859351" + descriptor = "(II)I", + garbageValue = "-870366396" ) - static int method1152(int var0, Script var1, boolean var2) { - Widget var3 = var2 ? MouseRecorder.field621 : Interpreter.field1122; // L: 1122 - if (var0 == ScriptOpcodes.CC_GETTARGETMASK) { // L: 1123 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = JagexCache.Widget_unpackTargetMask(WorldMapData_0.getWidgetFlags(var3)); // L: 1124 - return 1; // L: 1125 - } else if (var0 != ScriptOpcodes.CC_GETOP) { // L: 1127 - if (var0 == ScriptOpcodes.CC_GETOPBASE) { // L: 1134 - if (var3.dataText == null) { // L: 1135 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; - } else { - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3.dataText; // L: 1136 - } + static int method1156(int var0) { + return (int)((Math.log((double)var0) / Interpreter.field1093 - 7.0D) * 256.0D); + } - return 1; // L: 1137 - } else { - return 2; // L: 1139 - } - } else { - int var4 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1128 - --var4; // L: 1129 - if (var3.actions != null && var4 < var3.actions.length && var3.actions[var4] != null) { // L: 1130 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3.actions[var4]; // L: 1131 - } else { - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; - } - - return 1; // L: 1132 - } + @ObfuscatedName("hk") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "-1220632952" + ) + static boolean method1150() { + return (Client.drawPlayerNames & 8) != 0; } } diff --git a/runescape-client/src/main/java/MouseRecorder.java b/runescape-client/src/main/java/MouseRecorder.java index 2ce6148148..44d3433742 100644 --- a/runescape-client/src/main/java/MouseRecorder.java +++ b/runescape-client/src/main/java/MouseRecorder.java @@ -4,126 +4,214 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bh") +@ObfuscatedName("bv") @Implements("MouseRecorder") public class MouseRecorder implements Runnable { - @ObfuscatedName("c") - public static short[][] field628; - @ObfuscatedName("x") - @ObfuscatedSignature( - descriptor = "Lht;" - ) - static Widget field621; - @ObfuscatedName("v") - public static String field617; - @ObfuscatedName("fz") - @ObfuscatedSignature( - descriptor = "Llv;" - ) - static AbstractSocket field615; - @ObfuscatedName("f") + @ObfuscatedName("gv") + @Export("regionMapArchives") + static byte[][] regionMapArchives; + @ObfuscatedName("h") @Export("isRunning") boolean isRunning; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("lock") Object lock; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -973723423 + intValue = -1074522321 ) @Export("index") int index; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("xs") int[] xs; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("ys") int[] ys; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("millis") long[] millis; MouseRecorder() { - this.isRunning = true; // L: 7 - this.lock = new Object(); // L: 8 - this.index = 0; // L: 9 - this.xs = new int[500]; // L: 10 - this.ys = new int[500]; // L: 11 - this.millis = new long[500]; // L: 12 - } // L: 14 + this.isRunning = true; + this.lock = new Object(); + this.index = 0; + this.xs = new int[500]; + this.ys = new int[500]; + this.millis = new long[500]; + } public void run() { - for (; this.isRunning; WorldMapSection3.sleepExact(50L)) { // L: 17 26 - synchronized(this.lock) { // L: 18 - if (this.index < 500) { // L: 19 + for (; this.isRunning; class236.sleepExact(50L)) { + synchronized(this.lock) { + if (this.index < 500) { this.xs[this.index] = MouseHandler.MouseHandler_x; this.ys[this.index] = MouseHandler.MouseHandler_y; this.millis[this.index] = MouseHandler.MouseHandler_millis; - ++this.index; // L: 23 + ++this.index; } } } } - @ObfuscatedName("b") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(II)Llb;", - garbageValue = "-2124586789" + descriptor = "(Lcj;Lcj;IZI)I", + garbageValue = "1286095524" ) - public static PrivateChatMode method1287(int var0) { - PrivateChatMode[] var1 = FloorDecoration.method2989(); // L: 20 + @Export("compareWorlds") + static int compareWorlds(World var0, World var1, int var2, boolean var3) { + if (var2 == 1) { + int var4 = var0.population; + int var5 = var1.population; + if (!var3) { + if (var4 == -1) { + var4 = 2001; + } - for (int var2 = 0; var2 < var1.length; ++var2) { // L: 21 - PrivateChatMode var3 = var1[var2]; // L: 22 - if (var0 == var3.field3825) { - return var3; // L: 24 + if (var5 == -1) { + var5 = 2001; + } } - } - return null; // L: 28 + return var4 - var5; + } else if (var2 == 2) { + return var0.location - var1.location; + } else if (var2 == 3) { + if (var0.activity.equals("-")) { + if (var1.activity.equals("-")) { + return 0; + } else { + return var3 ? -1 : 1; + } + } else if (var1.activity.equals("-")) { + return var3 ? 1 : -1; + } else { + return var0.activity.compareTo(var1.activity); + } + } else if (var2 == 4) { + return var0.method1831() ? (var1.method1831() ? 0 : 1) : (var1.method1831() ? -1 : 0); + } else if (var2 == 5) { + return var0.method1829() ? (var1.method1829() ? 0 : 1) : (var1.method1829() ? -1 : 0); + } else if (var2 == 6) { + return var0.isPvp() ? (var1.isPvp() ? 0 : 1) : (var1.isPvp() ? -1 : 0); + } else if (var2 == 7) { + return var0.isMembersOnly() ? (var1.isMembersOnly() ? 0 : 1) : (var1.isMembersOnly() ? -1 : 0); + } else { + return var0.id - var1.id; + } } - @ObfuscatedName("z") + @ObfuscatedName("gp") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1737054142" + garbageValue = "-2045975634" ) - public static void method1283() { - VarpDefinition.VarpDefinition_cached.clear(); // L: 46 - } // L: 47 + static void method1264() { + PacketBufferNode var0 = ItemContainer.getPacketBufferNode(ClientPacket.field2273, Client.packetWriter.isaacCipher); + var0.packetBuffer.writeByte(SoundSystem.getWindowedMode()); + var0.packetBuffer.writeShort(IgnoreList.canvasWidth); + var0.packetBuffer.writeShort(ModelData0.canvasHeight); + Client.packetWriter.addNode(var0); + } - @ObfuscatedName("e") + @ObfuscatedName("hd") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-500540968" + descriptor = "(III)V", + garbageValue = "-1589366551" ) - static final void method1286() { - Object var10000 = null; // L: 133 - String var0 = "You can't add yourself to your own friend list"; - DevicePcmPlayerProvider.addGameMessage(30, "", var0); // L: 135 - } // L: 137 + @Export("updateItemPile") + static final void updateItemPile(int var0, int var1) { + NodeDeque var2 = Client.groundItems[GameObject.Client_plane][var0][var1]; + if (var2 == null) { + ArchiveLoader.scene.removeGroundItemPile(GameObject.Client_plane, var0, var1); + } else { + long var3 = -99999999L; + TileItem var5 = null; - @ObfuscatedName("gt") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1123050484" - ) - static final void method1285() { - for (GraphicsObject var0 = (GraphicsObject)Client.graphicsObjects.last(); var0 != null; var0 = (GraphicsObject)Client.graphicsObjects.previous()) { // L: 4901 4902 4909 - if (var0.plane == GrandExchangeOfferUnitPriceComparator.Client_plane && !var0.isFinished) { // L: 4903 - if (Client.cycle >= var0.cycleStart) { // L: 4904 - var0.advance(Client.field743); // L: 4905 - if (var0.isFinished) { // L: 4906 - var0.remove(); - } else { - ModeWhere.scene.drawEntity(var0.plane, var0.x, var0.y, var0.height, 60, var0, 0, -1L, false); // L: 4907 + TileItem var6; + for (var6 = (TileItem)var2.last(); var6 != null; var6 = (TileItem)var2.previous()) { + ItemDefinition var7 = SecureRandomCallable.ItemDefinition_get(var6.id); + long var11 = (long)var7.price; + if (var7.isStackable == 1) { + var11 *= (long)(var6.quantity + 1); + } + + if (var11 > var3) { + var3 = var11; + var5 = var6; + } + } + + if (var5 == null) { + ArchiveLoader.scene.removeGroundItemPile(GameObject.Client_plane, var0, var1); + } else { + var2.addLast(var5); + TileItem var13 = null; + TileItem var8 = null; + + for (var6 = (TileItem)var2.last(); var6 != null; var6 = (TileItem)var2.previous()) { + if (var5.id != var6.id) { + if (var13 == null) { + var13 = var6; + } + + if (var13.id != var6.id && var8 == null) { + var8 = var6; + } } } - } else { - var0.remove(); + + long var9 = NPC.calculateTag(var0, var1, 3, false, 0); + ArchiveLoader.scene.newGroundItemPile(GameObject.Client_plane, var0, var1, SecureRandomFuture.getTileHeight(var0 * 128 + 64, var1 * 128 + 64, GameObject.Client_plane), var5, var9, var13, var8); + } + } + } + + @ObfuscatedName("ku") + @ObfuscatedSignature( + descriptor = "(Lbt;ZI)V", + garbageValue = "1519561634" + ) + @Export("closeInterface") + static final void closeInterface(InterfaceParent var0, boolean var1) { + int var2 = var0.group; + int var3 = (int)var0.key; + var0.remove(); + if (var1 && var2 != -1 && class195.Widget_loadedInterfaces[var2]) { + class58.Widget_archive.clearFilesGroup(var2); + if (class9.Widget_interfaceComponents[var2] != null) { + boolean var4 = true; + + for (int var5 = 0; var5 < class9.Widget_interfaceComponents[var2].length; ++var5) { + if (class9.Widget_interfaceComponents[var2][var5] != null) { + if (class9.Widget_interfaceComponents[var2][var5].type != 2) { + class9.Widget_interfaceComponents[var2][var5] = null; + } else { + var4 = false; + } + } + } + + if (var4) { + class9.Widget_interfaceComponents[var2] = null; + } + + class195.Widget_loadedInterfaces[var2] = false; } } - } // L: 4911 + WorldMapRegion.method589(var2); + Widget var6 = CollisionMap.getWidget(var3); + if (var6 != null) { + CollisionMap.invalidateWidget(var6); + } + + WorldMapData_1.method767(); + if (Client.rootInterface != -1) { + WorldMapRectangle.runIntfCloseListeners(Client.rootInterface, 1); + } + + } } diff --git a/runescape-client/src/main/java/MouseWheel.java b/runescape-client/src/main/java/MouseWheel.java index 44933b9cca..926deb31b2 100644 --- a/runescape-client/src/main/java/MouseWheel.java +++ b/runescape-client/src/main/java/MouseWheel.java @@ -3,13 +3,13 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fq") +@ObfuscatedName("fi") @Implements("MouseWheel") public interface MouseWheel { - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(S)I", - garbageValue = "128" + descriptor = "(B)I", + garbageValue = "16" ) @Export("useRotation") int useRotation(); diff --git a/runescape-client/src/main/java/MouseWheelHandler.java b/runescape-client/src/main/java/MouseWheelHandler.java index dedaddcd77..5686af9798 100644 --- a/runescape-client/src/main/java/MouseWheelHandler.java +++ b/runescape-client/src/main/java/MouseWheelHandler.java @@ -7,53 +7,53 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bf") +@ObfuscatedName("by") @Implements("MouseWheelHandler") public final class MouseWheelHandler implements MouseWheel, MouseWheelListener { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 507951149 + intValue = 1401911287 ) @Export("rotation") int rotation; MouseWheelHandler() { - this.rotation = 0; // L: 8 - } // L: 10 + this.rotation = 0; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(Ljava/awt/Component;B)V", - garbageValue = "-12" + garbageValue = "-124" ) @Export("addTo") void addTo(Component var1) { - var1.addMouseWheelListener(this); // L: 13 - } // L: 14 + var1.addMouseWheelListener(this); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Ljava/awt/Component;S)V", - garbageValue = "13978" + descriptor = "(Ljava/awt/Component;I)V", + garbageValue = "-1451320085" ) @Export("removeFrom") void removeFrom(Component var1) { - var1.removeMouseWheelListener(this); // L: 17 - } // L: 18 + var1.removeMouseWheelListener(this); + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(S)I", - garbageValue = "128" + descriptor = "(B)I", + garbageValue = "16" ) @Export("useRotation") public synchronized int useRotation() { - int var1 = this.rotation; // L: 26 - this.rotation = 0; // L: 27 - return var1; // L: 28 + int var1 = this.rotation; + this.rotation = 0; + return var1; } public synchronized void mouseWheelMoved(MouseWheelEvent var1) { - this.rotation += var1.getWheelRotation(); // L: 22 - } // L: 23 + this.rotation += var1.getWheelRotation(); + } } diff --git a/runescape-client/src/main/java/MusicPatch.java b/runescape-client/src/main/java/MusicPatch.java index a47f80b962..4d9a8b6306 100644 --- a/runescape-client/src/main/java/MusicPatch.java +++ b/runescape-client/src/main/java/MusicPatch.java @@ -3,335 +3,333 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("hk") +@ObfuscatedName("ha") @Implements("MusicPatch") public class MusicPatch extends Node { - @ObfuscatedName("t") + @ObfuscatedName("ed") @ObfuscatedGetter( - intValue = 1306227375 + intValue = -179610783 ) - @Export("pcmSampleLength") - public static int pcmSampleLength; - @ObfuscatedName("f") + static int field2497; + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 1308325501 + intValue = 791296859 ) - int field2507; - @ObfuscatedName("b") + int field2499; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "[Ldo;" + descriptor = "[Ldf;" ) @Export("rawSounds") RawSound[] rawSounds; - @ObfuscatedName("l") - short[] field2504; - @ObfuscatedName("m") - byte[] field2502; - @ObfuscatedName("z") - byte[] field2505; - @ObfuscatedName("q") + @ObfuscatedName("x") + short[] field2494; + @ObfuscatedName("w") + byte[] field2495; + @ObfuscatedName("t") + byte[] field2496; + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "[Lgi;" + descriptor = "[Lgy;" ) - MusicPatchNode2[] field2506; - @ObfuscatedName("k") - byte[] field2509; - @ObfuscatedName("c") - int[] field2508; + MusicPatchNode2[] field2492; + @ObfuscatedName("n") + byte[] field2498; + @ObfuscatedName("p") + int[] field2500; MusicPatch(byte[] var1) { - this.rawSounds = new RawSound[128]; // L: 27 - this.field2504 = new short[128]; // L: 28 - this.field2502 = new byte[128]; // L: 29 - this.field2505 = new byte[128]; // L: 30 - this.field2506 = new MusicPatchNode2[128]; // L: 31 - this.field2509 = new byte[128]; // L: 32 - this.field2508 = new int[128]; // L: 33 - Buffer var2 = new Buffer(var1); // L: 34 + this.rawSounds = new RawSound[128]; + this.field2494 = new short[128]; + this.field2495 = new byte[128]; + this.field2496 = new byte[128]; + this.field2492 = new MusicPatchNode2[128]; + this.field2498 = new byte[128]; + this.field2500 = new int[128]; + Buffer var2 = new Buffer(var1); int var3; - for (var3 = 0; var2.array[var3 + var2.offset] != 0; ++var3) { // L: 35 36 + for (var3 = 0; var2.array[var3 + var2.offset] != 0; ++var3) { } - byte[] var4 = new byte[var3]; // L: 37 + byte[] var4 = new byte[var3]; int var5; - for (var5 = 0; var5 < var3; ++var5) { // L: 38 + for (var5 = 0; var5 < var3; ++var5) { var4[var5] = var2.readByte(); } - ++var2.offset; // L: 39 - ++var3; // L: 40 - var5 = var2.offset; // L: 41 - var2.offset += var3; // L: 42 + ++var2.offset; + ++var3; + var5 = var2.offset; + var2.offset += var3; int var6; - for (var6 = 0; var2.array[var6 + var2.offset] != 0; ++var6) { // L: 43 44 + for (var6 = 0; var2.array[var6 + var2.offset] != 0; ++var6) { } - byte[] var7 = new byte[var6]; // L: 45 + byte[] var7 = new byte[var6]; int var8; - for (var8 = 0; var8 < var6; ++var8) { // L: 46 + for (var8 = 0; var8 < var6; ++var8) { var7[var8] = var2.readByte(); } - ++var2.offset; // L: 47 - ++var6; // L: 48 - var8 = var2.offset; // L: 49 - var2.offset += var6; // L: 50 + ++var2.offset; + ++var6; + var8 = var2.offset; + var2.offset += var6; int var9; - for (var9 = 0; var2.array[var9 + var2.offset] != 0; ++var9) { // L: 51 52 + for (var9 = 0; var2.array[var9 + var2.offset] != 0; ++var9) { } - byte[] var10 = new byte[var9]; // L: 53 + byte[] var10 = new byte[var9]; - for (int var11 = 0; var11 < var9; ++var11) { // L: 54 + for (int var11 = 0; var11 < var9; ++var11) { var10[var11] = var2.readByte(); } - ++var2.offset; // L: 55 - ++var9; // L: 56 - byte[] var36 = new byte[var9]; // L: 57 + ++var2.offset; + ++var9; + byte[] var38 = new byte[var9]; int var12; int var14; - if (var9 > 1) { // L: 59 - var36[1] = 1; // L: 60 - int var13 = 1; // L: 61 - var12 = 2; // L: 62 + if (var9 > 1) { + var38[1] = 1; + int var13 = 1; + var12 = 2; - for (var14 = 2; var14 < var9; ++var14) { // L: 63 - int var41 = var2.readUnsignedByte(); // L: 64 - if (var41 == 0) { // L: 65 + for (var14 = 2; var14 < var9; ++var14) { + int var43 = var2.readUnsignedByte(); + if (var43 == 0) { var13 = var12++; } else { - if (var41 <= var13) { // L: 67 - --var41; + if (var43 <= var13) { + --var43; } - var13 = var41; // L: 68 + var13 = var43; } - var36[var14] = (byte)var13; // L: 70 + var38[var14] = (byte)var13; } } else { - var12 = var9; // L: 73 + var12 = var9; } - MusicPatchNode2[] var37 = new MusicPatchNode2[var12]; // L: 74 + MusicPatchNode2[] var39 = new MusicPatchNode2[var12]; MusicPatchNode2 var15; - for (var14 = 0; var14 < var37.length; ++var14) { // L: 75 - var15 = var37[var14] = new MusicPatchNode2(); // L: 76 - int var40 = var2.readUnsignedByte(); // L: 77 - if (var40 > 0) { // L: 78 - var15.field2423 = new byte[var40 * 2]; + for (var14 = 0; var14 < var39.length; ++var14) { + var15 = var39[var14] = new MusicPatchNode2(); + int var42 = var2.readUnsignedByte(); + if (var42 > 0) { + var15.field2411 = new byte[var42 * 2]; } - var40 = var2.readUnsignedByte(); // L: 79 - if (var40 > 0) { // L: 80 - var15.field2426 = new byte[var40 * 2 + 2]; // L: 81 - var15.field2426[1] = 64; // L: 82 + var42 = var2.readUnsignedByte(); + if (var42 > 0) { + var15.field2412 = new byte[var42 * 2 + 2]; + var15.field2412[1] = 64; } } - var14 = var2.readUnsignedByte(); // L: 85 - byte[] var42 = var14 > 0 ? new byte[var14 * 2] : null; // L: 86 - var14 = var2.readUnsignedByte(); // L: 87 - byte[] var16 = var14 > 0 ? new byte[var14 * 2] : null; // L: 88 + var14 = var2.readUnsignedByte(); + byte[] var44 = var14 > 0 ? new byte[var14 * 2] : null; + var14 = var2.readUnsignedByte(); + byte[] var16 = var14 > 0 ? new byte[var14 * 2] : null; int var17; - for (var17 = 0; var2.array[var17 + var2.offset] != 0; ++var17) { // L: 89 90 + for (var17 = 0; var2.array[var17 + var2.offset] != 0; ++var17) { } - byte[] var18 = new byte[var17]; // L: 91 + byte[] var18 = new byte[var17]; int var19; - for (var19 = 0; var19 < var17; ++var19) { // L: 92 + for (var19 = 0; var19 < var17; ++var19) { var18[var19] = var2.readByte(); } - ++var2.offset; // L: 93 - ++var17; // L: 94 - var19 = 0; // L: 95 + ++var2.offset; + ++var17; + var19 = 0; int var20; - for (var20 = 0; var20 < 128; ++var20) { // L: 96 - var19 += var2.readUnsignedByte(); // L: 97 - this.field2504[var20] = (short)var19; // L: 98 + for (var20 = 0; var20 < 128; ++var20) { + var19 += var2.readUnsignedByte(); + this.field2494[var20] = (short)var19; } - var19 = 0; // L: 100 + var19 = 0; - short[] var48; - for (var20 = 0; var20 < 128; ++var20) { // L: 101 - var19 += var2.readUnsignedByte(); // L: 102 - var48 = this.field2504; // L: 103 - var48[var20] = (short)(var48[var20] + (var19 << 8)); + short[] var50; + for (var20 = 0; var20 < 128; ++var20) { + var19 += var2.readUnsignedByte(); + var50 = this.field2494; + var50[var20] = (short)(var50[var20] + (var19 << 8)); } - var20 = 0; // L: 105 - int var21 = 0; // L: 106 - int var22 = 0; // L: 107 + var20 = 0; + int var21 = 0; + int var22 = 0; int var23; - for (var23 = 0; var23 < 128; ++var23) { // L: 108 - if (var20 == 0) { // L: 109 - if (var21 < var18.length) { // L: 110 + for (var23 = 0; var23 < 128; ++var23) { + if (var20 == 0) { + if (var21 < var18.length) { var20 = var18[var21++]; } else { - var20 = -1; // L: 111 + var20 = -1; } - var22 = var2.readVarInt(); // L: 112 + var22 = var2.readVarInt(); } - var48 = this.field2504; // L: 114 - var48[var23] = (short)(var48[var23] + ((var22 - 1 & 2) << 14)); - this.field2508[var23] = var22; // L: 115 - --var20; // L: 116 + var50 = this.field2494; + var50[var23] = (short)(var50[var23] + ((var22 - 1 & 2) << 14)); + this.field2500[var23] = var22; + --var20; } - var20 = 0; // L: 118 - var21 = 0; // L: 119 - var23 = 0; // L: 120 + var20 = 0; + var21 = 0; + var23 = 0; int var24; - for (var24 = 0; var24 < 128; ++var24) { // L: 121 - if (this.field2508[var24] != 0) { // L: 122 - if (var20 == 0) { // L: 123 - if (var21 < var4.length) { // L: 124 + for (var24 = 0; var24 < 128; ++var24) { + if (this.field2500[var24] != 0) { + if (var20 == 0) { + if (var21 < var4.length) { var20 = var4[var21++]; } else { - var20 = -1; // L: 125 + var20 = -1; } - var23 = var2.array[var5++] - 1; // L: 126 + var23 = var2.array[var5++] - 1; } - this.field2509[var24] = (byte)var23; // L: 128 - --var20; // L: 129 + this.field2498[var24] = (byte)var23; + --var20; } } - var20 = 0; // L: 131 - var21 = 0; // L: 132 - var24 = 0; // L: 133 + var20 = 0; + var21 = 0; + var24 = 0; - for (int var25 = 0; var25 < 128; ++var25) { // L: 134 - if (this.field2508[var25] != 0) { // L: 135 - if (var20 == 0) { // L: 136 - if (var21 < var7.length) { // L: 137 + for (int var25 = 0; var25 < 128; ++var25) { + if (this.field2500[var25] != 0) { + if (var20 == 0) { + if (var21 < var7.length) { var20 = var7[var21++]; } else { - var20 = -1; // L: 138 + var20 = -1; } - var24 = var2.array[var8++] + 16 << 2; // L: 139 + var24 = var2.array[var8++] + 16 << 2; } - this.field2505[var25] = (byte)var24; // L: 141 - --var20; // L: 142 + this.field2496[var25] = (byte)var24; + --var20; } } - var20 = 0; // L: 144 - var21 = 0; // L: 145 - MusicPatchNode2 var38 = null; // L: 146 + var20 = 0; + var21 = 0; + MusicPatchNode2 var40 = null; int var26; - for (var26 = 0; var26 < 128; ++var26) { // L: 147 - if (this.field2508[var26] != 0) { // L: 148 - if (var20 == 0) { // L: 149 - var38 = var37[var36[var21]]; // L: 150 - if (var21 < var10.length) { // L: 151 + for (var26 = 0; var26 < 128; ++var26) { + if (this.field2500[var26] != 0) { + if (var20 == 0) { + var40 = var39[var38[var21]]; + if (var21 < var10.length) { var20 = var10[var21++]; } else { - var20 = -1; // L: 152 + var20 = -1; } } - this.field2506[var26] = var38; // L: 154 - --var20; // L: 155 + this.field2492[var26] = var40; + --var20; } } - var20 = 0; // L: 157 - var21 = 0; // L: 158 - var26 = 0; // L: 159 + var20 = 0; + var21 = 0; + var26 = 0; int var27; - for (var27 = 0; var27 < 128; ++var27) { // L: 160 - if (var20 == 0) { // L: 161 - if (var21 < var18.length) { // L: 162 + for (var27 = 0; var27 < 128; ++var27) { + if (var20 == 0) { + if (var21 < var18.length) { var20 = var18[var21++]; } else { - var20 = -1; // L: 163 + var20 = -1; } - if (this.field2508[var27] > 0) { // L: 164 + if (this.field2500[var27] > 0) { var26 = var2.readUnsignedByte() + 1; } } - this.field2502[var27] = (byte)var26; // L: 166 - --var20; // L: 167 + this.field2495[var27] = (byte)var26; + --var20; } - this.field2507 = var2.readUnsignedByte() + 1; // L: 169 + this.field2499 = var2.readUnsignedByte() + 1; int var29; - MusicPatchNode2 var39; - for (var27 = 0; var27 < var12; ++var27) { // L: 170 - var39 = var37[var27]; // L: 171 - if (var39.field2423 != null) { // L: 172 - for (var29 = 1; var29 < var39.field2423.length; var29 += 2) { // L: 173 - var39.field2423[var29] = var2.readByte(); + MusicPatchNode2 var41; + for (var27 = 0; var27 < var12; ++var27) { + var41 = var39[var27]; + if (var41.field2411 != null) { + for (var29 = 1; var29 < var41.field2411.length; var29 += 2) { + var41.field2411[var29] = var2.readByte(); } } - if (var39.field2426 != null) { // L: 175 - for (var29 = 3; var29 < var39.field2426.length - 2; var29 += 2) { // L: 176 - var39.field2426[var29] = var2.readByte(); + if (var41.field2412 != null) { + for (var29 = 3; var29 < var41.field2412.length - 2; var29 += 2) { + var41.field2412[var29] = var2.readByte(); } } } - if (var42 != null) { // L: 179 - for (var27 = 1; var27 < var42.length; var27 += 2) { // L: 180 - var42[var27] = var2.readByte(); + if (var44 != null) { + for (var27 = 1; var27 < var44.length; var27 += 2) { + var44[var27] = var2.readByte(); } } - if (var16 != null) { // L: 182 - for (var27 = 1; var27 < var16.length; var27 += 2) { // L: 183 + if (var16 != null) { + for (var27 = 1; var27 < var16.length; var27 += 2) { var16[var27] = var2.readByte(); } } - for (var27 = 0; var27 < var12; ++var27) { // L: 185 - var39 = var37[var27]; // L: 186 - if (var39.field2426 != null) { // L: 187 - var19 = 0; // L: 188 + for (var27 = 0; var27 < var12; ++var27) { + var41 = var39[var27]; + if (var41.field2412 != null) { + var19 = 0; - for (var29 = 2; var29 < var39.field2426.length; var29 += 2) { // L: 189 - var19 = 1 + var19 + var2.readUnsignedByte(); // L: 190 - var39.field2426[var29] = (byte)var19; // L: 191 + for (var29 = 2; var29 < var41.field2412.length; var29 += 2) { + var19 = 1 + var19 + var2.readUnsignedByte(); + var41.field2412[var29] = (byte)var19; } } } - for (var27 = 0; var27 < var12; ++var27) { // L: 195 - var39 = var37[var27]; // L: 196 - if (var39.field2423 != null) { // L: 197 - var19 = 0; // L: 198 + for (var27 = 0; var27 < var12; ++var27) { + var41 = var39[var27]; + if (var41.field2411 != null) { + var19 = 0; - for (var29 = 2; var29 < var39.field2423.length; var29 += 2) { // L: 199 - var19 = var19 + 1 + var2.readUnsignedByte(); // L: 200 - var39.field2423[var29] = (byte)var19; // L: 201 + for (var29 = 2; var29 < var41.field2411.length; var29 += 2) { + var19 = var19 + 1 + var2.readUnsignedByte(); + var41.field2411[var29] = (byte)var19; } } } @@ -340,671 +338,202 @@ public class MusicPatch extends Node { int var32; int var33; int var34; - int var45; - byte var47; - if (var42 != null) { + int var35; + int var36; + int var47; + byte var49; + if (var44 != null) { var19 = var2.readUnsignedByte(); - var42[0] = (byte)var19; // L: 207 + var44[0] = (byte)var19; - for (var27 = 2; var27 < var42.length; var27 += 2) { + for (var27 = 2; var27 < var44.length; var27 += 2) { + var19 = var19 + 1 + var2.readUnsignedByte(); + var44[var27] = (byte)var19; + } + + var49 = var44[0]; + byte var28 = var44[1]; + + for (var29 = 0; var29 < var49; ++var29) { + this.field2495[var29] = (byte)(var28 * this.field2495[var29] + 32 >> 6); + } + + for (var29 = 2; var29 < var44.length; var29 += 2) { + var30 = var44[var29]; + byte var31 = var44[var29 + 1]; + var32 = var28 * (var30 - var49) + (var30 - var49) / 2; + + for (var33 = var49; var33 < var30; ++var33) { + var35 = var30 - var49; + var36 = var32 >>> 31; + var34 = (var32 + var36) / var35 - var36; + this.field2495[var33] = (byte)(var34 * this.field2495[var33] + 32 >> 6); + var32 += var31 - var28; + } + + var49 = var30; + var28 = var31; + } + + for (var47 = var49; var47 < 128; ++var47) { + this.field2495[var47] = (byte)(var28 * this.field2495[var47] + 32 >> 6); + } + + var15 = null; + } + + if (var16 != null) { + var19 = var2.readUnsignedByte(); + var16[0] = (byte)var19; + + for (var27 = 2; var27 < var16.length; var27 += 2) { var19 = 1 + var19 + var2.readUnsignedByte(); - var42[var27] = (byte)var19; // L: 210 + var16[var27] = (byte)var19; } - var47 = var42[0]; // L: 212 - byte var28 = var42[1]; // L: 213 + var49 = var16[0]; + int var46 = var16[1] << 1; - for (var29 = 0; var29 < var47; ++var29) { // L: 214 - this.field2502[var29] = (byte)(var28 * this.field2502[var29] + 32 >> 6); - } - - for (var29 = 2; var29 < var42.length; var29 += 2) { // L: 215 216 227 - var30 = var42[var29]; // L: 217 - byte var31 = var42[var29 + 1]; // L: 218 - var32 = var28 * (var30 - var47) + (var30 - var47) / 2; // L: 219 - - for (var33 = var47; var33 < var30; ++var33) { // L: 220 - var34 = SecureRandomCallable.method1238(var32, var30 - var47); // L: 221 - this.field2502[var33] = (byte)(var34 * this.field2502[var33] + 32 >> 6); // L: 222 - var32 += var31 - var28; // L: 223 + for (var29 = 0; var29 < var49; ++var29) { + var47 = var46 + (this.field2496[var29] & 255); + if (var47 < 0) { + var47 = 0; } - var47 = var30; // L: 225 - var28 = var31; // L: 226 - } - - for (var45 = var47; var45 < 128; ++var45) { // L: 229 - this.field2502[var45] = (byte)(var28 * this.field2502[var45] + 32 >> 6); - } - - var15 = null; // L: 230 - } - - if (var16 != null) { // L: 232 - var19 = var2.readUnsignedByte(); // L: 233 - var16[0] = (byte)var19; // L: 234 - - for (var27 = 2; var27 < var16.length; var27 += 2) { // L: 235 - var19 = var19 + 1 + var2.readUnsignedByte(); // L: 236 - var16[var27] = (byte)var19; // L: 237 - } - - var47 = var16[0]; // L: 239 - int var44 = var16[1] << 1; // L: 240 - - for (var29 = 0; var29 < var47; ++var29) { // L: 241 - var45 = var44 + (this.field2505[var29] & 255); // L: 242 - if (var45 < 0) { // L: 243 - var45 = 0; + if (var47 > 128) { + var47 = 128; } - if (var45 > 128) { // L: 244 - var45 = 128; - } - - this.field2505[var29] = (byte)var45; // L: 245 + this.field2496[var29] = (byte)var47; } - int var46; - for (var29 = 2; var29 < var16.length; var29 += 2) { // L: 247 248 262 - var30 = var16[var29]; // L: 249 - var46 = var16[var29 + 1] << 1; // L: 250 - var32 = var44 * (var30 - var47) + (var30 - var47) / 2; // L: 251 + int var48; + for (var29 = 2; var29 < var16.length; var29 += 2) { + var30 = var16[var29]; + var48 = var16[var29 + 1] << 1; + var32 = var46 * (var30 - var49) + (var30 - var49) / 2; - for (var33 = var47; var33 < var30; ++var33) { // L: 252 - var34 = SecureRandomCallable.method1238(var32, var30 - var47); // L: 253 - int var35 = var34 + (this.field2505[var33] & 255); // L: 254 - if (var35 < 0) { // L: 255 - var35 = 0; + for (var33 = var49; var33 < var30; ++var33) { + var35 = var30 - var49; + var36 = var32 >>> 31; + var34 = (var32 + var36) / var35 - var36; + int var37 = var34 + (this.field2496[var33] & 255); + if (var37 < 0) { + var37 = 0; } - if (var35 > 128) { // L: 256 - var35 = 128; + if (var37 > 128) { + var37 = 128; } - this.field2505[var33] = (byte)var35; // L: 257 - var32 += var46 - var44; // L: 258 + this.field2496[var33] = (byte)var37; + var32 += var48 - var46; } - var47 = var30; // L: 260 - var44 = var46; // L: 261 + var49 = var30; + var46 = var48; } - for (var45 = var47; var45 < 128; ++var45) { // L: 264 - var46 = var44 + (this.field2505[var45] & 255); // L: 265 - if (var46 < 0) { // L: 266 - var46 = 0; + for (var47 = var49; var47 < 128; ++var47) { + var48 = var46 + (this.field2496[var47] & 255); + if (var48 < 0) { + var48 = 0; } - if (var46 > 128) { // L: 267 - var46 = 128; + if (var48 > 128) { + var48 = 128; } - this.field2505[var45] = (byte)var46; // L: 268 + this.field2496[var47] = (byte)var48; } - Object var43 = null; // L: 270 + Object var45 = null; } - for (var27 = 0; var27 < var12; ++var27) { // L: 272 - var37[var27].field2419 = var2.readUnsignedByte(); + for (var27 = 0; var27 < var12; ++var27) { + var39[var27].field2410 = var2.readUnsignedByte(); } - for (var27 = 0; var27 < var12; ++var27) { // L: 273 - var39 = var37[var27]; // L: 274 - if (var39.field2423 != null) { // L: 275 - var39.field2420 = var2.readUnsignedByte(); + for (var27 = 0; var27 < var12; ++var27) { + var41 = var39[var27]; + if (var41.field2411 != null) { + var41.field2417 = var2.readUnsignedByte(); } - if (var39.field2426 != null) { // L: 276 - var39.field2421 = var2.readUnsignedByte(); + if (var41.field2412 != null) { + var41.field2413 = var2.readUnsignedByte(); } - if (var39.field2419 > 0) { // L: 277 - var39.field2422 = var2.readUnsignedByte(); + if (var41.field2410 > 0) { + var41.field2414 = var2.readUnsignedByte(); } } - for (var27 = 0; var27 < var12; ++var27) { // L: 279 - var37[var27].field2424 = var2.readUnsignedByte(); + for (var27 = 0; var27 < var12; ++var27) { + var39[var27].field2416 = var2.readUnsignedByte(); } - for (var27 = 0; var27 < var12; ++var27) { // L: 280 - var39 = var37[var27]; // L: 281 - if (var39.field2424 > 0) { // L: 282 - var39.field2418 = var2.readUnsignedByte(); + for (var27 = 0; var27 < var12; ++var27) { + var41 = var39[var27]; + if (var41.field2416 > 0) { + var41.field2415 = var2.readUnsignedByte(); } } - for (var27 = 0; var27 < var12; ++var27) { // L: 284 - var39 = var37[var27]; // L: 285 - if (var39.field2418 > 0) { // L: 286 - var39.field2425 = var2.readUnsignedByte(); + for (var27 = 0; var27 < var12; ++var27) { + var41 = var39[var27]; + if (var41.field2415 > 0) { + var41.field2409 = var2.readUnsignedByte(); } } - } // L: 288 + } - @ObfuscatedName("b") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lds;[B[IB)Z", - garbageValue = "-125" + descriptor = "(Lds;[B[II)Z", + garbageValue = "189208991" ) - boolean method4026(SoundCache var1, byte[] var2, int[] var3) { - boolean var4 = true; // L: 291 - int var5 = 0; // L: 292 - RawSound var6 = null; // L: 293 + boolean method3920(SoundCache var1, byte[] var2, int[] var3) { + boolean var4 = true; + int var5 = 0; + RawSound var6 = null; - for (int var7 = 0; var7 < 128; ++var7) { // L: 294 - if (var2 == null || var2[var7] != 0) { // L: 295 - int var8 = this.field2508[var7]; // L: 296 - if (var8 != 0) { // L: 297 - if (var8 != var5) { // L: 298 - var5 = var8--; // L: 299 300 - if ((var8 & 1) == 0) { // L: 301 + for (int var7 = 0; var7 < 128; ++var7) { + if (var2 == null || var2[var7] != 0) { + int var8 = this.field2500[var7]; + if (var8 != 0) { + if (var5 != var8) { + var5 = var8--; + if ((var8 & 1) == 0) { var6 = var1.getSoundEffect(var8 >> 2, var3); } else { - var6 = var1.getMusicSample(var8 >> 2, var3); // L: 302 + var6 = var1.getMusicSample(var8 >> 2, var3); } - if (var6 == null) { // L: 303 + if (var6 == null) { var4 = false; } } - if (var6 != null) { // L: 305 - this.rawSounds[var7] = var6; // L: 306 - this.field2508[var7] = 0; // L: 307 + if (var6 != null) { + this.rawSounds[var7] = var6; + this.field2500[var7] = 0; } } } } - return var4; // L: 311 + return var4; } - @ObfuscatedName("l") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "793986731" + descriptor = "(B)V", + garbageValue = "-118" ) @Export("clear") void clear() { - this.field2508 = null; // L: 315 - } // L: 316 - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "87" - ) - public static boolean method4039(int var0) { - return (var0 >> 20 & 1) != 0; // L: 17 + this.field2500 = null; } - - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1645227256" - ) - static void method4038() { - if (Login.Login_username == null || Login.Login_username.length() <= 0) { // L: 203 - if (GrandExchangeOfferAgeComparator.clientPreferences.rememberedUsername != null) { // L: 204 - Login.Login_username = GrandExchangeOfferAgeComparator.clientPreferences.rememberedUsername; // L: 205 - Client.Login_isUsernameRemembered = true; // L: 206 - } else { - Client.Login_isUsernameRemembered = false; // L: 208 - } - - } - } // L: 209 - - @ObfuscatedName("aw") - @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "733181439" - ) - static int method4036(int var0, Script var1, boolean var2) { - int var3; - if (var0 == 6600) { // L: 3470 - var3 = GrandExchangeOfferUnitPriceComparator.Client_plane; // L: 3471 - int var15 = (PlayerType.localPlayer.x >> 7) + FloorDecoration.baseX; // L: 3472 - int var8 = (PlayerType.localPlayer.y >> 7) + WorldMapData_0.baseY; // L: 3473 - Canvas.getWorldMap().method6464(var3, var15, var8, true); // L: 3474 - return 1; // L: 3475 - } else { - WorldMapArea var9; - if (var0 == ScriptOpcodes.WORLDMAP_GETMAPNAME) { // L: 3477 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3478 - String var16 = ""; // L: 3479 - var9 = Canvas.getWorldMap().getMapArea(var3); // L: 3480 - if (var9 != null) { // L: 3481 - var16 = var9.getExternalName(); // L: 3482 - } - - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var16; // L: 3484 - return 1; // L: 3485 - } else if (var0 == ScriptOpcodes.WORLDMAP_SETMAP) { // L: 3487 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3488 - Canvas.getWorldMap().setCurrentMapAreaId(var3); // L: 3489 - return 1; // L: 3490 - } else if (var0 == ScriptOpcodes.WORLDMAP_GETZOOM) { // L: 3492 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Canvas.getWorldMap().getZoomLevel(); // L: 3493 - return 1; // L: 3494 - } else if (var0 == ScriptOpcodes.WORLDMAP_SETZOOM) { // L: 3496 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3497 - Canvas.getWorldMap().setZoomPercentage(var3); // L: 3498 - return 1; // L: 3499 - } else if (var0 == ScriptOpcodes.WORLDMAP_ISLOADED) { // L: 3501 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Canvas.getWorldMap().isCacheLoaded() ? 1 : 0; // L: 3502 - return 1; // L: 3503 - } else { - Coord var14; - if (var0 == ScriptOpcodes.WORLDMAP_JUMPTODISPLAYCOORD) { // L: 3505 - var14 = new Coord(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 3506 - Canvas.getWorldMap().setWorldMapPositionTarget(var14.x, var14.y); // L: 3507 - return 1; // L: 3508 - } else if (var0 == ScriptOpcodes.WORLDMAP_JUMPTODISPLAYCOORD_INSTANT) { // L: 3510 - var14 = new Coord(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 3511 - Canvas.getWorldMap().setWorldMapPositionTargetInstant(var14.x, var14.y); // L: 3512 - return 1; // L: 3513 - } else if (var0 == ScriptOpcodes.WORLDMAP_JUMPTOSOURCECOORD) { // L: 3515 - var14 = new Coord(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 3516 - Canvas.getWorldMap().jumpToSourceCoord(var14.plane, var14.x, var14.y); // L: 3517 - return 1; // L: 3518 - } else if (var0 == ScriptOpcodes.WORLDMAP_JUMPTOSOURCECOORD_INSTANT) { // L: 3520 - var14 = new Coord(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 3521 - Canvas.getWorldMap().jumpToSourceCoordInstant(var14.plane, var14.x, var14.y); // L: 3522 - return 1; // L: 3523 - } else if (var0 == ScriptOpcodes.WORLDMAP_GETDISPLAYPOSITION) { // L: 3525 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Canvas.getWorldMap().getDisplayX(); // L: 3526 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Canvas.getWorldMap().getDisplayY(); // L: 3527 - return 1; // L: 3528 - } else { - WorldMapArea var11; - if (var0 == ScriptOpcodes.WORLDMAP_GETCONFIGORIGIN) { // L: 3530 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3531 - var11 = Canvas.getWorldMap().getMapArea(var3); // L: 3532 - if (var11 == null) { // L: 3533 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3534 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var11.getOrigin().packed(); // L: 3537 - } - - return 1; // L: 3539 - } else if (var0 == ScriptOpcodes.WORLDMAP_GETCONFIGSIZE) { // L: 3541 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3542 - var11 = Canvas.getWorldMap().getMapArea(var3); // L: 3543 - if (var11 == null) { // L: 3544 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3545 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3546 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = (var11.getRegionHighX() - var11.getRegionLowX() + 1) * 64; // L: 3549 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = (var11.getRegionHighY() - var11.getRegionLowY() + 1) * 64; // L: 3550 - } - - return 1; // L: 3552 - } else if (var0 == ScriptOpcodes.WORLDMAP_GETCONFIGBOUNDS) { // L: 3554 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3555 - var11 = Canvas.getWorldMap().getMapArea(var3); // L: 3556 - if (var11 == null) { // L: 3557 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3558 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3559 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3560 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3561 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var11.getRegionLowX() * 64; // L: 3564 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var11.getRegionLowY() * 64; // L: 3565 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var11.getRegionHighX() * 64 + 64 - 1; // L: 3566 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var11.getRegionHighY() * 64 + 64 - 1; // L: 3567 - } - - return 1; // L: 3569 - } else if (var0 == ScriptOpcodes.WORLDMAP_GETCONFIGZOOM) { // L: 3571 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3572 - var11 = Canvas.getWorldMap().getMapArea(var3); // L: 3573 - if (var11 == null) { // L: 3574 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3575 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var11.getZoom(); // L: 3578 - } - - return 1; // L: 3580 - } else if (var0 == 6615) { // L: 3582 - var14 = Canvas.getWorldMap().getDisplayCoord(); // L: 3583 - if (var14 == null) { // L: 3584 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3585 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3586 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var14.x; // L: 3589 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var14.y; // L: 3590 - } - - return 1; // L: 3592 - } else if (var0 == ScriptOpcodes.WORLDMAP_GETCURRENTMAP) { // L: 3594 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Canvas.getWorldMap().currentMapAreaId(); // L: 3595 - return 1; // L: 3596 - } else if (var0 == ScriptOpcodes.WORLDMAP_GETDISPLAYCOORD) { // L: 3598 - var14 = new Coord(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 3599 - var11 = Canvas.getWorldMap().getCurrentMapArea(); // L: 3600 - if (var11 == null) { // L: 3601 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3602 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3603 - return 1; // L: 3604 - } else { - int[] var12 = var11.position(var14.plane, var14.x, var14.y); // L: 3606 - if (var12 == null) { // L: 3607 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3608 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3609 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var12[0]; // L: 3612 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var12[1]; // L: 3613 - } - - return 1; // L: 3615 - } - } else { - Coord var5; - if (var0 == 6618) { // L: 3617 - var14 = new Coord(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 3618 - var11 = Canvas.getWorldMap().getCurrentMapArea(); // L: 3619 - if (var11 == null) { // L: 3620 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3621 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3622 - return 1; // L: 3623 - } else { - var5 = var11.coord(var14.x, var14.y); // L: 3625 - if (var5 == null) { // L: 3626 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3627 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var5.packed(); // L: 3630 - } - - return 1; // L: 3632 - } - } else { - Coord var10; - if (var0 == 6619) { // L: 3634 - MilliClock.Interpreter_intStackSize -= 2; // L: 3635 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 3636 - var10 = new Coord(Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]); // L: 3637 - WorldMapData_1.method796(var3, var10, false); // L: 3638 - return 1; // L: 3639 - } else if (var0 == 6620) { // L: 3641 - MilliClock.Interpreter_intStackSize -= 2; // L: 3642 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 3643 - var10 = new Coord(Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]); // L: 3644 - WorldMapData_1.method796(var3, var10, true); // L: 3645 - return 1; // L: 3646 - } else if (var0 == ScriptOpcodes.WORLDMAP_COORDINMAP) { // L: 3648 - MilliClock.Interpreter_intStackSize -= 2; // L: 3649 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 3650 - var10 = new Coord(Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]); // L: 3651 - var9 = Canvas.getWorldMap().getMapArea(var3); // L: 3652 - if (var9 == null) { // L: 3653 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3654 - return 1; // L: 3655 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9.containsCoord(var10.plane, var10.x, var10.y) ? 1 : 0; // L: 3657 - return 1; // L: 3658 - } - } else if (var0 == ScriptOpcodes.WORLDMAP_GETSIZE) { // L: 3660 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Canvas.getWorldMap().getDisplayWith(); // L: 3661 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Canvas.getWorldMap().getDisplayHeight(); // L: 3662 - return 1; // L: 3663 - } else if (var0 == 6623) { // L: 3665 - var14 = new Coord(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 3666 - var11 = Canvas.getWorldMap().mapAreaAtCoord(var14.plane, var14.x, var14.y); // L: 3667 - if (var11 == null) { // L: 3668 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3669 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var11.getId(); // L: 3672 - } - - return 1; // L: 3674 - } else if (var0 == 6624) { // L: 3676 - Canvas.getWorldMap().setMaxFlashCount(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 3677 - return 1; // L: 3678 - } else if (var0 == 6625) { // L: 3680 - Canvas.getWorldMap().resetMaxFlashCount(); // L: 3681 - return 1; // L: 3682 - } else if (var0 == 6626) { // L: 3684 - Canvas.getWorldMap().setCyclesPerFlash(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 3685 - return 1; // L: 3686 - } else if (var0 == 6627) { // L: 3688 - Canvas.getWorldMap().resetCyclesPerFlash(); // L: 3689 - return 1; // L: 3690 - } else { - boolean var13; - if (var0 == ScriptOpcodes.WORLDMAP_PERPETUALFLASH) { // L: 3692 - var13 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 3693 - Canvas.getWorldMap().setPerpetualFlash(var13); // L: 3694 - return 1; // L: 3695 - } else if (var0 == ScriptOpcodes.WORLDMAP_FLASHELEMENT) { // L: 3697 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3698 - Canvas.getWorldMap().flashElement(var3); // L: 3699 - return 1; // L: 3700 - } else if (var0 == ScriptOpcodes.WORLDMAP_FLASHELEMENTCATEGORY) { // L: 3702 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3703 - Canvas.getWorldMap().flashCategory(var3); // L: 3704 - return 1; // L: 3705 - } else if (var0 == ScriptOpcodes.WORLDMAP_STOPCURRENTFLASHES) { // L: 3707 - Canvas.getWorldMap().stopCurrentFlashes(); // L: 3708 - return 1; // L: 3709 - } else if (var0 == ScriptOpcodes.WORLDMAP_DISABLEELEMENTS) { // L: 3711 - var13 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 3712 - Canvas.getWorldMap().setElementsDisabled(var13); // L: 3713 - return 1; // L: 3714 - } else { - boolean var7; - if (var0 == ScriptOpcodes.WORLDMAP_DISABLEELEMENT) { // L: 3716 - MilliClock.Interpreter_intStackSize -= 2; // L: 3717 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 3718 - var7 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1] == 1; // L: 3719 - Canvas.getWorldMap().disableElement(var3, var7); // L: 3720 - return 1; // L: 3721 - } else if (var0 == ScriptOpcodes.WORLDMAP_DISABLEELEMENTCATEGORY) { // L: 3723 - MilliClock.Interpreter_intStackSize -= 2; // L: 3724 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 3725 - var7 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1] == 1; // L: 3726 - Canvas.getWorldMap().setCategoryDisabled(var3, var7); // L: 3727 - return 1; // L: 3728 - } else if (var0 == ScriptOpcodes.WORLDMAP_GETDISABLEELEMENTS) { // L: 3730 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Canvas.getWorldMap().getElementsDisabled() ? 1 : 0; // L: 3731 - return 1; // L: 3732 - } else if (var0 == ScriptOpcodes.WORLDMAP_GETDISABLEELEMENT) { // L: 3734 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3735 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Canvas.getWorldMap().isElementDisabled(var3) ? 1 : 0; // L: 3736 - return 1; // L: 3737 - } else if (var0 == ScriptOpcodes.WORLDMAP_GETDISABLEELEMENTCATEGORY) { // L: 3739 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3740 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Canvas.getWorldMap().isCategoryDisabled(var3) ? 1 : 0; // L: 3741 - return 1; // L: 3742 - } else if (var0 == 6638) { // L: 3744 - MilliClock.Interpreter_intStackSize -= 2; // L: 3745 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 3746 - var10 = new Coord(Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]); // L: 3747 - var5 = Canvas.getWorldMap().method6481(var3, var10); // L: 3748 - if (var5 == null) { // L: 3749 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3750 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var5.packed(); // L: 3753 - } - - return 1; // L: 3755 - } else { - AbstractWorldMapIcon var6; - if (var0 == ScriptOpcodes.WORLDMAP_LISTELEMENT_START) { // L: 3757 - var6 = Canvas.getWorldMap().iconStart(); // L: 3758 - if (var6 == null) { // L: 3759 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3760 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3761 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var6.getElement(); // L: 3764 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var6.coord2.packed(); // L: 3765 - } - - return 1; // L: 3767 - } else if (var0 == ScriptOpcodes.WORLDMAP_LISTELEMENT_NEXT) { // L: 3769 - var6 = Canvas.getWorldMap().iconNext(); // L: 3770 - if (var6 == null) { // L: 3771 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3772 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3773 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var6.getElement(); // L: 3776 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var6.coord2.packed(); // L: 3777 - } - - return 1; // L: 3779 - } else { - WorldMapElement var4; - if (var0 == ScriptOpcodes.MEC_TEXT) { // L: 3781 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3782 - var4 = class194.WorldMapElement_get(var3); // L: 3783 - if (var4.name == null) { // L: 3784 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 3785 - } else { - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var4.name; // L: 3788 - } - - return 1; // L: 3790 - } else if (var0 == ScriptOpcodes.MEC_TEXTSIZE) { // L: 3792 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3793 - var4 = class194.WorldMapElement_get(var3); // L: 3794 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var4.textSize; // L: 3795 - return 1; // L: 3796 - } else if (var0 == ScriptOpcodes.MEC_CATEGORY) { // L: 3798 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3799 - var4 = class194.WorldMapElement_get(var3); // L: 3800 - if (var4 == null) { // L: 3801 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3802 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var4.category; // L: 3805 - } - - return 1; // L: 3807 - } else if (var0 == ScriptOpcodes.MEC_SPRITE) { // L: 3809 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3810 - var4 = class194.WorldMapElement_get(var3); // L: 3811 - if (var4 == null) { // L: 3812 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3813 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var4.sprite1; // L: 3816 - } - - return 1; // L: 3818 - } else if (var0 == ScriptOpcodes.WORLDMAP_ELEMENT) { // L: 3820 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = WorldMapSection0.worldMapEvent.mapElement; // L: 3821 - return 1; // L: 3822 - } else if (var0 == 6698) { // L: 3824 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = WorldMapSection0.worldMapEvent.coord1.packed(); // L: 3825 - return 1; // L: 3826 - } else if (var0 == ScriptOpcodes.WORLDMAP_ELEMENTCOORD) { // L: 3828 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = WorldMapSection0.worldMapEvent.coord2.packed(); // L: 3829 - return 1; // L: 3830 - } else { - return 2; // L: 3832 - } - } - } - } - } - } - } - } - } - } - } - - @ObfuscatedName("hh") - @ObfuscatedSignature( - descriptor = "(ZLks;B)V", - garbageValue = "44" - ) - @Export("updateNpcs") - static final void updateNpcs(boolean var0, PacketBuffer var1) { - Client.field802 = 0; // L: 7460 - Client.field726 = 0; // L: 7461 - PacketBuffer var2 = Client.packetWriter.packetBuffer; // L: 7463 - var2.importIndex(); // L: 7464 - int var3 = var2.readBits(8); // L: 7465 - int var4; - if (var3 < Client.npcCount) { // L: 7466 - for (var4 = var3; var4 < Client.npcCount; ++var4) { // L: 7467 - Client.field803[++Client.field802 - 1] = Client.npcIndices[var4]; - } - } - - if (var3 > Client.npcCount) { // L: 7469 - throw new RuntimeException(""); - } else { - Client.npcCount = 0; // L: 7470 - - for (var4 = 0; var4 < var3; ++var4) { // L: 7471 - int var5 = Client.npcIndices[var4]; // L: 7472 - NPC var6 = Client.npcs[var5]; // L: 7473 - int var7 = var2.readBits(1); // L: 7474 - if (var7 == 0) { // L: 7475 - Client.npcIndices[++Client.npcCount - 1] = var5; // L: 7476 - var6.npcCycle = Client.cycle; // L: 7477 - } else { - int var8 = var2.readBits(2); // L: 7480 - if (var8 == 0) { // L: 7481 - Client.npcIndices[++Client.npcCount - 1] = var5; // L: 7482 - var6.npcCycle = Client.cycle; // L: 7483 - Client.field727[++Client.field726 - 1] = var5; // L: 7484 - } else { - int var9; - int var10; - if (var8 == 1) { // L: 7487 - Client.npcIndices[++Client.npcCount - 1] = var5; // L: 7488 - var6.npcCycle = Client.cycle; // L: 7489 - var9 = var2.readBits(3); // L: 7490 - var6.method2150(var9, (byte)1); // L: 7491 - var10 = var2.readBits(1); // L: 7492 - if (var10 == 1) { // L: 7493 - Client.field727[++Client.field726 - 1] = var5; - } - } else if (var8 == 2) { // L: 7496 - Client.npcIndices[++Client.npcCount - 1] = var5; // L: 7497 - var6.npcCycle = Client.cycle; // L: 7498 - var9 = var2.readBits(3); // L: 7499 - var6.method2150(var9, (byte)2); // L: 7500 - var10 = var2.readBits(3); // L: 7501 - var6.method2150(var10, (byte)2); // L: 7502 - int var11 = var2.readBits(1); // L: 7503 - if (var11 == 1) { // L: 7504 - Client.field727[++Client.field726 - 1] = var5; - } - } else if (var8 == 3) { // L: 7507 - Client.field803[++Client.field802 - 1] = var5; // L: 7508 - } - } - } - } - - WorldMapCacheName.method724(var0, var1); // L: 7513 - SoundSystem.method2632(var1); // L: 7514 - - int var12; - for (var12 = 0; var12 < Client.field802; ++var12) { // L: 7515 - var3 = Client.field803[var12]; // L: 7516 - if (Client.npcs[var3].npcCycle != Client.cycle) { // L: 7517 - Client.npcs[var3].definition = null; // L: 7518 - Client.npcs[var3] = null; // L: 7519 - } - } - - if (var1.offset != Client.packetWriter.serverPacketLength) { // L: 7522 - throw new RuntimeException(var1.offset + "," + Client.packetWriter.serverPacketLength); - } else { - for (var12 = 0; var12 < Client.npcCount; ++var12) { // L: 7523 - if (Client.npcs[Client.npcIndices[var12]] == null) { // L: 7524 - throw new RuntimeException(var12 + "," + Client.npcCount); // L: 7525 - } - } - - } - } - } // L: 7528 } diff --git a/runescape-client/src/main/java/MusicPatchNode.java b/runescape-client/src/main/java/MusicPatchNode.java index fd7473367d..07831d5ffa 100644 --- a/runescape-client/src/main/java/MusicPatchNode.java +++ b/runescape-client/src/main/java/MusicPatchNode.java @@ -4,150 +4,152 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hl") +@ObfuscatedName("hn") @Implements("MusicPatchNode") public class MusicPatchNode extends Node { - @ObfuscatedName("dv") - @Export("mouseCam") - static boolean mouseCam; - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 648896771 + intValue = -780037221 ) - int field2479; - @ObfuscatedName("b") + int field2477; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lhk;" + descriptor = "Lha;" ) @Export("patch") MusicPatch patch; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Ldo;" + descriptor = "Ldf;" ) @Export("rawSound") RawSound rawSound; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lgi;" + descriptor = "Lgy;" ) - MusicPatchNode2 field2464; - @ObfuscatedName("z") - @ObfuscatedGetter( - intValue = -567152179 - ) - int field2468; - @ObfuscatedName("q") - @ObfuscatedGetter( - intValue = 63217979 - ) - int field2466; - @ObfuscatedName("k") - @ObfuscatedGetter( - intValue = 1531269935 - ) - int field2469; - @ObfuscatedName("c") - @ObfuscatedGetter( - intValue = -2019958227 - ) - int field2465; - @ObfuscatedName("u") - @ObfuscatedGetter( - intValue = -441601487 - ) - int field2472; + MusicPatchNode2 field2459; @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -2122667109 + intValue = -988921205 ) - int field2470; - @ObfuscatedName("e") + int field2460; + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = 419759473 + intValue = 1698248805 ) - int field2474; - @ObfuscatedName("o") - @ObfuscatedGetter( - intValue = 1747326149 - ) - int field2475; + int field2461; @ObfuscatedName("n") @ObfuscatedGetter( - intValue = 1604412873 + intValue = -1639163759 ) - int field2476; - @ObfuscatedName("x") - @ObfuscatedGetter( - intValue = -481757253 - ) - int field2477; + int field2462; @ObfuscatedName("p") @ObfuscatedGetter( - intValue = -1285265109 + intValue = -239406377 ) - int field2473; - @ObfuscatedName("r") + int field2463; + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = -1335006663 + intValue = -1040186295 ) - int field2485; - @ObfuscatedName("y") + int field2476; + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = -46018309 + intValue = -1414126871 ) - int field2480; - @ObfuscatedName("s") + int field2464; + @ObfuscatedName("u") @ObfuscatedGetter( - intValue = -39925853 + intValue = -907348397 + ) + int field2466; + @ObfuscatedName("e") + @ObfuscatedGetter( + intValue = 1674863125 ) int field2467; - @ObfuscatedName("j") + @ObfuscatedName("m") + @ObfuscatedGetter( + intValue = -72116075 + ) + int field2465; + @ObfuscatedName("c") + @ObfuscatedGetter( + intValue = -17380566 + ) + int field2472; + @ObfuscatedName("i") + @ObfuscatedGetter( + intValue = -1112640035 + ) + int field2470; + @ObfuscatedName("f") + @ObfuscatedGetter( + intValue = -1473586889 + ) + int field2471; + @ObfuscatedName("a") + @ObfuscatedGetter( + intValue = 1781294933 + ) + int field2468; + @ObfuscatedName("b") + @ObfuscatedGetter( + intValue = -1965880629 + ) + int field2469; + @ObfuscatedName("y") @ObfuscatedSignature( - descriptor = "Ldx;" + descriptor = "Ldj;" ) @Export("stream") RawPcmStream stream; - @ObfuscatedName("w") + @ObfuscatedName("r") @ObfuscatedGetter( - intValue = -631500041 + intValue = -1121296603 ) - int field2483; - @ObfuscatedName("d") + int field2475; + @ObfuscatedName("g") @ObfuscatedGetter( - intValue = 1318550711 + intValue = -865267785 ) - int field2484; + int field2456; MusicPatchNode() { - } // L: 31 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1941368303" + garbageValue = "2082654889" ) - void method3971() { - this.patch = null; // L: 34 - this.rawSound = null; // L: 35 - this.field2464 = null; // L: 36 - this.stream = null; // L: 37 - } // L: 38 + void method3860() { + this.patch = null; + this.rawSound = null; + this.field2459 = null; + this.stream = null; + } - @ObfuscatedName("gf") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1392160704" + descriptor = "(II)Ljx;", + garbageValue = "-621121394" ) - static void method3973() { - int var0 = Players.Players_count; // L: 4821 - int[] var1 = Players.Players_indices; // L: 4822 - - for (int var2 = 0; var2 < var0; ++var2) { // L: 4823 - if (var1[var2] != Client.combatTargetPlayerIndex && var1[var2] != Client.localPlayerIndex) { // L: 4824 - ArchiveLoader.addPlayerToScene(Client.players[var1[var2]], true); // L: 4825 + @Export("getEnum") + public static EnumDefinition getEnum(int var0) { + EnumDefinition var1 = (EnumDefinition)EnumDefinition.EnumDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = EnumDefinition.EnumDefinition_archive.takeFile(8, var0); + var1 = new EnumDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); } - } - } // L: 4827 + EnumDefinition.EnumDefinition_cached.put(var1, (long)var0); + return var1; + } + } } diff --git a/runescape-client/src/main/java/MusicPatchNode2.java b/runescape-client/src/main/java/MusicPatchNode2.java index 64e7ac55ae..052b3285e0 100644 --- a/runescape-client/src/main/java/MusicPatchNode2.java +++ b/runescape-client/src/main/java/MusicPatchNode2.java @@ -1,86 +1,200 @@ -import net.runelite.mapping.Export; +import java.io.InputStream; +import java.io.OutputStreamWriter; +import java.net.MalformedURLException; +import java.net.URL; +import java.net.URLConnection; +import java.util.Random; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gi") +@ObfuscatedName("gy") @Implements("MusicPatchNode2") public class MusicPatchNode2 { - @ObfuscatedName("f") - byte[] field2423; - @ObfuscatedName("b") - byte[] field2426; + @ObfuscatedName("h") + byte[] field2411; + @ObfuscatedName("v") + byte[] field2412; + @ObfuscatedName("x") + @ObfuscatedGetter( + intValue = -1761129663 + ) + int field2410; + @ObfuscatedName("w") + @ObfuscatedGetter( + intValue = 1532426433 + ) + int field2417; + @ObfuscatedName("t") + @ObfuscatedGetter( + intValue = -1235995601 + ) + int field2413; + @ObfuscatedName("j") + @ObfuscatedGetter( + intValue = 1053337205 + ) + int field2414; + @ObfuscatedName("n") + @ObfuscatedGetter( + intValue = 196885279 + ) + int field2415; + @ObfuscatedName("p") + @ObfuscatedGetter( + intValue = -540093809 + ) + int field2416; @ObfuscatedName("l") @ObfuscatedGetter( - intValue = -261303639 + intValue = -180969663 ) - int field2419; - @ObfuscatedName("m") - @ObfuscatedGetter( - intValue = -689759697 - ) - int field2420; - @ObfuscatedName("z") - @ObfuscatedGetter( - intValue = 164653841 - ) - int field2421; - @ObfuscatedName("q") - @ObfuscatedGetter( - intValue = 2055857397 - ) - int field2422; - @ObfuscatedName("k") - @ObfuscatedGetter( - intValue = -1633678853 - ) - int field2418; - @ObfuscatedName("c") - @ObfuscatedGetter( - intValue = -451863831 - ) - int field2424; - @ObfuscatedName("u") - @ObfuscatedGetter( - intValue = -354420263 - ) - int field2425; + int field2409; MusicPatchNode2() { - } // L: 14 + } - @ObfuscatedName("b") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(IIIB)I", - garbageValue = "-19" + descriptor = "(JLjava/lang/String;S)I", + garbageValue = "765" ) - public static int method3831(int var0, int var1, int var2) { - var2 &= 3; // L: 17 - if (var2 == 0) { // L: 18 - return var1; - } else if (var2 == 1) { // L: 19 - return 7 - var0; - } else { - return var2 == 2 ? 7 - var1 : var0; // L: 20 + static final int method3724(long var0, String var2) { + Random var3 = new Random(); + Buffer var4 = new Buffer(128); + Buffer var5 = new Buffer(128); + int[] var6 = new int[]{var3.nextInt(), var3.nextInt(), (int)(var0 >> 32), (int)var0}; + var4.writeByte(10); + + int var7; + for (var7 = 0; var7 < 4; ++var7) { + var4.writeInt(var3.nextInt()); + } + + var4.writeInt(var6[0]); + var4.writeInt(var6[1]); + var4.writeLong(var0); + var4.writeLong(0L); + + for (var7 = 0; var7 < 4; ++var7) { + var4.writeInt(var3.nextInt()); + } + + var4.encryptRsa(class89.field1147, class89.field1142); + var5.writeByte(10); + + for (var7 = 0; var7 < 3; ++var7) { + var5.writeInt(var3.nextInt()); + } + + var5.writeLong(var3.nextLong()); + var5.writeLongMedium(var3.nextLong()); + FileSystem.method3573(var5); + var5.writeLong(var3.nextLong()); + var5.encryptRsa(class89.field1147, class89.field1142); + var7 = FloorDecoration.stringCp1252NullTerminatedByteSize(var2); + if (var7 % 8 != 0) { + var7 += 8 - var7 % 8; + } + + Buffer var8 = new Buffer(var7); + var8.writeStringCp1252NullTerminated(var2); + var8.offset = var7; + var8.xteaEncryptAll(var6); + Buffer var9 = new Buffer(var8.offset + var5.offset + var4.offset + 5); + var9.writeByte(2); + var9.writeByte(var4.offset); + var9.writeBytes(var4.array, 0, var4.offset); + var9.writeByte(var5.offset); + var9.writeBytes(var5.array, 0, var5.offset); + var9.writeShort(var8.offset); + var9.writeBytes(var8.array, 0, var8.offset); + byte[] var11 = var9.array; + String var10 = ArchiveLoader.method1229(var11, 0, var11.length); + String var12 = var10; + + try { + URL var13 = new URL(AbstractWorldMapIcon.method632("services", false) + "m=accountappeal/login.ws"); + URLConnection var14 = var13.openConnection(); + var14.setDoInput(true); + var14.setDoOutput(true); + var14.setConnectTimeout(5000); + OutputStreamWriter var15 = new OutputStreamWriter(var14.getOutputStream()); + var15.write("data2=" + BoundaryObject.method3343(var12) + "&dest=" + BoundaryObject.method3343("passwordchoice.ws")); + var15.flush(); + InputStream var16 = var14.getInputStream(); + var9 = new Buffer(new byte[1000]); + + do { + int var17 = var16.read(var9.array, var9.offset, 1000 - var9.offset); + if (var17 == -1) { + var15.close(); + var16.close(); + String var20 = new String(var9.array); + if (var20.startsWith("OFFLINE")) { + return 4; + } else if (var20.startsWith("WRONG")) { + return 7; + } else if (var20.startsWith("RELOAD")) { + return 3; + } else if (var20.startsWith("Not permitted for social network accounts.")) { + return 6; + } else { + var9.xteaDecryptAll(var6); + + while (var9.offset > 0 && var9.array[var9.offset - 1] == 0) { + --var9.offset; + } + + var20 = new String(var9.array, 0, var9.offset); + boolean var18; + if (var20 == null) { + var18 = false; + } else { + label85: { + try { + new URL(var20); + } catch (MalformedURLException var21) { + var18 = false; + break label85; + } + + var18 = true; + } + } + + if (var18) { + AttackOption.openURL(var20, true, false); + return 2; + } else { + return 5; + } + } + } + + var9.offset += var17; + } while(var9.offset < 1000); + + return 5; + } catch (Throwable var22) { + var22.printStackTrace(); + return 5; } } - @ObfuscatedName("e") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lht;II)V", - garbageValue = "1909237816" + descriptor = "(IIB)I", + garbageValue = "-94" ) - @Export("Widget_setKeyIgnoreHeld") - static final void Widget_setKeyIgnoreHeld(Widget var0, int var1) { - if (var0.field2668 == null) { // L: 934 - throw new RuntimeException(); // L: 935 - } else { - if (var0.field2594 == null) { // L: 937 - var0.field2594 = new int[var0.field2668.length]; // L: 938 - } - - var0.field2594[var1] = Integer.MAX_VALUE; // L: 940 + public static int method3723(int var0, int var1) { + int var2; + for (var2 = 0; var1 > 0; --var1) { + var2 = var2 << 1 | var0 & 1; + var0 >>>= 1; } - } // L: 941 + + return var2; + } } diff --git a/runescape-client/src/main/java/MusicPatchPcmStream.java b/runescape-client/src/main/java/MusicPatchPcmStream.java index 0c7cb59609..99fd8273cb 100644 --- a/runescape-client/src/main/java/MusicPatchPcmStream.java +++ b/runescape-client/src/main/java/MusicPatchPcmStream.java @@ -1,445 +1,226 @@ -import java.io.File; -import java.io.IOException; -import java.io.RandomAccessFile; 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("hz") +@ObfuscatedName("hi") @Implements("MusicPatchPcmStream") public class MusicPatchPcmStream extends PcmStream { - @ObfuscatedName("t") - public static short[][] field2516; - @ObfuscatedName("f") + @ObfuscatedName("j") + @ObfuscatedGetter( + intValue = 468748381 + ) + @Export("idxCount") + public static int idxCount; + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lgv;" + descriptor = "Lgf;" ) @Export("superStream") MidiPcmStream superStream; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lja;" + descriptor = "Ljp;" ) @Export("queue") NodeDeque queue; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Ldf;" + descriptor = "Lde;" ) @Export("mixer") PcmStreamMixer mixer; @ObfuscatedSignature( - descriptor = "(Lgv;)V" + descriptor = "(Lgf;)V" ) MusicPatchPcmStream(MidiPcmStream var1) { - this.queue = new NodeDeque(); // L: 11 - this.mixer = new PcmStreamMixer(); // L: 12 - this.superStream = var1; // L: 15 - } // L: 16 + this.queue = new NodeDeque(); + this.mixer = new PcmStreamMixer(); + this.superStream = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lhl;[IIIII)V", - garbageValue = "1431385490" + descriptor = "(Lhn;[IIIII)V", + garbageValue = "882339994" ) - void method4046(MusicPatchNode var1, int[] var2, int var3, int var4, int var5) { - if ((this.superStream.field2449[var1.field2479] & 4) != 0 && var1.field2473 < 0) { - int var6 = this.superStream.field2454[var1.field2479] / PcmPlayer.field1442; + void method3930(MusicPatchNode var1, int[] var2, int var3, int var4, int var5) { + if ((this.superStream.field2454[var1.field2477] & 4) != 0 && var1.field2470 < 0) { + int var6 = this.superStream.field2442[var1.field2477] / PcmPlayer.field1443; while (true) { - int var7 = (var6 + 1048575 - var1.field2484) / var6; // L: 76 - if (var7 > var4) { // L: 77 - var1.field2484 += var4 * var6; // L: 99 + int var7 = (var6 + 1048575 - var1.field2456) / var6; + if (var7 > var4) { + var1.field2456 += var4 * var6; break; } var1.stream.fill(var2, var3, var7); var3 += var7; var4 -= var7; - var1.field2484 += var7 * var6 - 1048576; - int var8 = PcmPlayer.field1442 / 100; + var1.field2456 += var7 * var6 - 1048576; + int var8 = PcmPlayer.field1443 / 100; int var9 = 262144 / var6; - if (var9 < var8) { // L: 84 + if (var9 < var8) { var8 = var9; } RawPcmStream var10 = var1.stream; - if (this.superStream.field2452[var1.field2479] == 0) { - var1.stream = RawPcmStream.method2683(var1.rawSound, var10.method2689(), var10.method2680(), var10.method2681()); + if (this.superStream.field2430[var1.field2477] == 0) { + var1.stream = RawPcmStream.method2630(var1.rawSound, var10.method2622(), var10.method2613(), var10.method2614()); } else { - var1.stream = RawPcmStream.method2683(var1.rawSound, var10.method2689(), 0, var10.method2681()); - this.superStream.method3867(var1, var1.patch.field2504[var1.field2466] < 0); - var1.stream.method2721(var8, var10.method2680()); + var1.stream = RawPcmStream.method2630(var1.rawSound, var10.method2622(), 0, var10.method2614()); + this.superStream.method3763(var1, var1.patch.field2494[var1.field2461] < 0); + var1.stream.method2707(var8, var10.method2613()); } - if (var1.patch.field2504[var1.field2466] < 0) { // L: 94 + if (var1.patch.field2494[var1.field2461] < 0) { var1.stream.setNumLoops(-1); } - var10.method2687(var8); + var10.method2620(var8); var10.fill(var2, var3, var5 - var3); - if (var10.method2786()) { // L: 97 + if (var10.method2624()) { this.mixer.addSubStream(var10); } } } var1.stream.fill(var2, var3, var4); - } // L: 102 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lhl;IB)V", - garbageValue = "-29" + descriptor = "(Lhn;II)V", + garbageValue = "1389060283" ) - void method4047(MusicPatchNode var1, int var2) { - if ((this.superStream.field2449[var1.field2479] & 4) != 0 && var1.field2473 < 0) { - int var3 = this.superStream.field2454[var1.field2479] / PcmPlayer.field1442; - int var4 = (var3 + 1048575 - var1.field2484) / var3; // L: 107 - var1.field2484 = var3 * var2 + var1.field2484 & 1048575; // L: 108 + void method3931(MusicPatchNode var1, int var2) { + if ((this.superStream.field2454[var1.field2477] & 4) != 0 && var1.field2470 < 0) { + int var3 = this.superStream.field2442[var1.field2477] / PcmPlayer.field1443; + int var4 = (var3 + 1048575 - var1.field2456) / var3; + var1.field2456 = var3 * var2 + var1.field2456 & 1048575; if (var4 <= var2) { - if (this.superStream.field2452[var1.field2479] == 0) { - var1.stream = RawPcmStream.method2683(var1.rawSound, var1.stream.method2689(), var1.stream.method2680(), var1.stream.method2681()); // L: 111 + if (this.superStream.field2430[var1.field2477] == 0) { + var1.stream = RawPcmStream.method2630(var1.rawSound, var1.stream.method2622(), var1.stream.method2613(), var1.stream.method2614()); } else { - var1.stream = RawPcmStream.method2683(var1.rawSound, var1.stream.method2689(), 0, var1.stream.method2681()); - this.superStream.method3867(var1, var1.patch.field2504[var1.field2466] < 0); + var1.stream = RawPcmStream.method2630(var1.rawSound, var1.stream.method2622(), 0, var1.stream.method2614()); + this.superStream.method3763(var1, var1.patch.field2494[var1.field2461] < 0); } - if (var1.patch.field2504[var1.field2466] < 0) { + if (var1.patch.field2494[var1.field2461] < 0) { var1.stream.setNumLoops(-1); } - var2 = var1.field2484 / var3; + var2 = var1.field2456 / var3; } } var1.stream.skip(var2); - } // L: 122 + } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "()Lde;" + descriptor = "()Ldi;" ) @Export("firstSubStream") protected PcmStream firstSubStream() { - MusicPatchNode var1 = (MusicPatchNode)this.queue.last(); // L: 19 + MusicPatchNode var1 = (MusicPatchNode)this.queue.last(); if (var1 == null) { - return null; // L: 20 + return null; } else { - return (PcmStream)(var1.stream != null ? var1.stream : this.nextSubStream()); // L: 21 22 + return (PcmStream)(var1.stream != null ? var1.stream : this.nextSubStream()); } } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "()Lde;" + descriptor = "()Ldi;" ) @Export("nextSubStream") protected PcmStream nextSubStream() { MusicPatchNode var1; do { - var1 = (MusicPatchNode)this.queue.previous(); // L: 27 + var1 = (MusicPatchNode)this.queue.previous(); if (var1 == null) { - return null; // L: 28 + return null; } - } while(var1.stream == null); // L: 29 + } while(var1.stream == null); return var1.stream; } - @ObfuscatedName("c") - protected int vmethod4043() { - return 0; // L: 34 + @ObfuscatedName("p") + protected int vmethod3927() { + return 0; } - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("fill") protected void fill(int[] var1, int var2, int var3) { this.mixer.fill(var1, var2, var3); for (MusicPatchNode var6 = (MusicPatchNode)this.queue.last(); var6 != null; var6 = (MusicPatchNode)this.queue.previous()) { - if (!this.superStream.method3889(var6)) { // L: 42 + if (!this.superStream.method3851(var6)) { int var4 = var2; - int var5 = var3; // L: 44 + int var5 = var3; do { - if (var5 <= var6.field2483) { - this.method4046(var6, var1, var4, var5, var4 + var5); - var6.field2483 -= var5; // L: 52 + if (var5 <= var6.field2475) { + this.method3930(var6, var1, var4, var5, var4 + var5); + var6.field2475 -= var5; break; } - this.method4046(var6, var1, var4, var6.field2483, var5 + var4); - var4 += var6.field2483; // L: 47 - var5 -= var6.field2483; - } while(!this.superStream.method3877(var6, var1, var4, var5)); // L: 49 - } - } - - } // L: 54 - - @ObfuscatedName("e") - @Export("skip") - protected void skip(int var1) { - this.mixer.skip(var1); // L: 58 - - for (MusicPatchNode var3 = (MusicPatchNode)this.queue.last(); var3 != null; var3 = (MusicPatchNode)this.queue.previous()) { - if (!this.superStream.method3889(var3)) { // L: 60 - int var2 = var1; - - do { - if (var2 <= var3.field2483) { // L: 62 - this.method4047(var3, var2); - var3.field2483 -= var2; // L: 68 - break; - } - - this.method4047(var3, var3.field2483); - var2 -= var3.field2483; - } while(!this.superStream.method3877(var3, (int[])null, 0, var2)); + this.method3930(var6, var1, var4, var6.field2475, var4 + var5); + var4 += var6.field2475; + var5 -= var6.field2475; + } while(!this.superStream.method3786(var6, var1, var4, var5)); } } } - @ObfuscatedName("f") + @ObfuscatedName("u") + @Export("skip") + protected void skip(int var1) { + this.mixer.skip(var1); + + for (MusicPatchNode var3 = (MusicPatchNode)this.queue.last(); var3 != null; var3 = (MusicPatchNode)this.queue.previous()) { + if (!this.superStream.method3851(var3)) { + int var2 = var1; + + do { + if (var2 <= var3.field2475) { + this.method3931(var3, var2); + var3.field2475 -= var2; + break; + } + + this.method3931(var3, var3.field2475); + var2 -= var3.field2475; + } while(!this.superStream.method3786(var3, (int[])null, 0, var2)); + } + } + + } + + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/String;III)V", - garbageValue = "1711772520" + descriptor = "(IIB)I", + garbageValue = "-2" ) - public static void method4041(String var0, String var1, int var2, int var3) throws IOException { - class297.idxCount = var3; // L: 40 - AbstractUserComparator.cacheGamebuild = var2; // L: 41 + public static int method3954(int var0, int var1) { + return (var0 + 40000 << 8) + var1; + } - try { - ApproximateRouteStrategy.field642 = System.getProperty("os.name"); // L: 43 - } catch (Exception var32) { // L: 45 - ApproximateRouteStrategy.field642 = "Unknown"; // L: 46 - } - - MouseRecorder.field617 = ApproximateRouteStrategy.field642.toLowerCase(); // L: 48 - - try { - class52.userHomeDirectory = System.getProperty("user.home"); // L: 50 - if (class52.userHomeDirectory != null) { // L: 51 - class52.userHomeDirectory = class52.userHomeDirectory + "/"; - } - } catch (Exception var31) { // L: 53 - } - - try { - if (MouseRecorder.field617.startsWith("win")) { // L: 55 - if (class52.userHomeDirectory == null) { // L: 56 - class52.userHomeDirectory = System.getenv("USERPROFILE"); - } - } else if (class52.userHomeDirectory == null) { // L: 59 - class52.userHomeDirectory = System.getenv("HOME"); - } - - if (class52.userHomeDirectory != null) { // L: 61 - class52.userHomeDirectory = class52.userHomeDirectory + "/"; - } - } catch (Exception var30) { // L: 63 - } - - if (class52.userHomeDirectory == null) { // L: 64 - class52.userHomeDirectory = "~/"; - } - - GrandExchangeEvents.field68 = new String[]{"c:/rscache/", "/rscache/", "c:/windows/", "c:/winnt/", "c:/", class52.userHomeDirectory, "/tmp/", ""}; // L: 65 - Client.field957 = new String[]{".jagex_cache_" + AbstractUserComparator.cacheGamebuild, ".file_store_" + AbstractUserComparator.cacheGamebuild}; // L: 66 - int var18 = 0; - - label256: - while (var18 < 4) { - String var6 = var18 == 0 ? "" : "" + var18; // L: 70 - class277.JagexCache_locationFile = new File(class52.userHomeDirectory, "jagex_cl_" + var0 + "_" + var1 + var6 + ".dat"); // L: 71 - String var7 = null; // L: 72 - String var8 = null; // L: 73 - boolean var9 = false; // L: 74 - int var12; - int var14; - File var37; - if (class277.JagexCache_locationFile.exists()) { // L: 75 - try { - AccessFile var10 = new AccessFile(class277.JagexCache_locationFile, "rw", 10000L); // L: 78 - - Buffer var11; - for (var11 = new Buffer((int)var10.length()); var11.offset < var11.array.length; var11.offset += var12) { // L: 79 80 83 - var12 = var10.read(var11.array, var11.offset, var11.array.length - var11.offset); // L: 81 - if (var12 == -1) { // L: 82 - throw new IOException(); - } - } - - var11.offset = 0; // L: 85 - var12 = var11.readUnsignedByte(); // L: 86 - if (var12 < 1 || var12 > 3) { // L: 87 - throw new IOException("" + var12); - } - - int var13 = 0; // L: 88 - if (var12 > 1) { // L: 89 - var13 = var11.readUnsignedByte(); - } - - if (var12 <= 2) { // L: 90 - var7 = var11.readStringCp1252NullCircumfixed(); // L: 91 - if (var13 == 1) { // L: 92 - var8 = var11.readStringCp1252NullCircumfixed(); - } - } else { - var7 = var11.readCESU8(); // L: 95 - if (var13 == 1) { // L: 96 - var8 = var11.readCESU8(); - } - } - - var10.close(); // L: 98 - } catch (IOException var34) { // L: 100 - var34.printStackTrace(); // L: 101 - } - - if (var7 != null) { // L: 103 - var37 = new File(var7); // L: 104 - if (!var37.exists()) { // L: 105 - var7 = null; // L: 106 - } - } - - if (var7 != null) { // L: 109 - var37 = new File(var7, "test.dat"); // L: 110 - - boolean var40; - try { - RandomAccessFile var19 = new RandomAccessFile(var37, "rw"); // L: 114 - var14 = var19.read(); // L: 115 - var19.seek(0L); // L: 116 - var19.write(var14); // L: 117 - var19.seek(0L); // L: 118 - var19.close(); // L: 119 - var37.delete(); // L: 120 - var40 = true; // L: 121 - } catch (Exception var29) { // L: 123 - var40 = false; // L: 124 - } - - if (!var40) { // L: 127 - var7 = null; // L: 128 - } - } - } - - if (var7 == null && var18 == 0) { // L: 132 - label230: - for (int var20 = 0; var20 < Client.field957.length; ++var20) { // L: 133 - for (int var21 = 0; var21 < GrandExchangeEvents.field68.length; ++var21) { // L: 134 - File var22 = new File(GrandExchangeEvents.field68[var21] + Client.field957[var20] + File.separatorChar + var0 + File.separatorChar); // L: 135 - if (var22.exists()) { // L: 136 - File var23 = new File(var22, "test.dat"); // L: 138 - - boolean var41; - try { - RandomAccessFile var15 = new RandomAccessFile(var23, "rw"); // L: 141 - int var16 = var15.read(); // L: 142 - var15.seek(0L); // L: 143 - var15.write(var16); // L: 144 - var15.seek(0L); // L: 145 - var15.close(); // L: 146 - var23.delete(); // L: 147 - var41 = true; // L: 148 - } catch (Exception var28) { // L: 150 - var41 = false; // L: 151 - } - - if (var41) { // L: 154 - var7 = var22.toString(); // L: 155 - var9 = true; // L: 156 - break label230; // L: 157 - } - } - } - } - } - - if (var7 == null) { // L: 163 - var7 = class52.userHomeDirectory + File.separatorChar + "jagexcache" + var6 + File.separatorChar + var0 + File.separatorChar + var1 + File.separatorChar; // L: 164 - var9 = true; // L: 165 - } - - if (var8 != null) { // L: 167 - File var36 = new File(var8); // L: 168 - var37 = new File(var7); // L: 169 - - try { - File[] var45 = var36.listFiles(); // L: 171 - File[] var43 = var45; // L: 173 - - for (var14 = 0; var14 < var43.length; ++var14) { // L: 174 - File var42 = var43[var14]; // L: 175 - File var24 = new File(var37, var42.getName()); // L: 177 - boolean var17 = var42.renameTo(var24); // L: 178 - if (!var17) { // L: 179 - throw new IOException(); - } - } - } catch (Exception var33) { // L: 184 - var33.printStackTrace(); // L: 185 - } - - var9 = true; // L: 187 - } - - if (var9) { // L: 189 - SecureRandomCallable.method1237(new File(var7), (File)null); - } - - File var5 = new File(var7); // L: 190 - JagexCache.cacheDir = var5; // L: 192 - if (!JagexCache.cacheDir.exists()) { // L: 193 - JagexCache.cacheDir.mkdirs(); - } - - File[] var35 = JagexCache.cacheDir.listFiles(); // L: 194 - if (var35 != null) { // L: 195 - File[] var38 = var35; // L: 197 - - for (int var25 = 0; var25 < var38.length; ++var25) { // L: 198 - File var26 = var38[var25]; // L: 199 - - boolean var44; - try { - RandomAccessFile var39 = new RandomAccessFile(var26, "rw"); // L: 204 - var12 = var39.read(); // L: 205 - var39.seek(0L); // L: 206 - var39.write(var12); // L: 207 - var39.seek(0L); // L: 208 - var39.close(); // L: 209 - var44 = true; // L: 211 - } catch (Exception var27) { // L: 213 - var44 = false; // L: 214 - } - - if (!var44) { // L: 217 - ++var18; // L: 67 - continue label256; - } - } - } - break; - } - - MouseHandler.method1177(JagexCache.cacheDir); // L: 224 - ClientPacket.method3745(); // L: 225 - JagexCache.JagexCache_dat2File = new BufferedFile(new AccessFile(BuddyRankComparator.getFile("main_file_cache.dat2"), "rw", 1048576000L), 5200, 0); // L: 226 - JagexCache.JagexCache_idx255File = new BufferedFile(new AccessFile(BuddyRankComparator.getFile("main_file_cache.idx255"), "rw", 1048576L), 6000, 0); // L: 227 - JagexCache.JagexCache_idxFiles = new BufferedFile[class297.idxCount]; // L: 228 - - for (var18 = 0; var18 < class297.idxCount; ++var18) { // L: 229 - JagexCache.JagexCache_idxFiles[var18] = new BufferedFile(new AccessFile(BuddyRankComparator.getFile("main_file_cache.idx" + var18), "rw", 1048576L), 6000, 0); // L: 230 - } - - } // L: 232 + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "10083789" + ) + public static void method3953() { + FloorUnderlayDefinition.FloorUnderlayDefinition_cached.clear(); + } } diff --git a/runescape-client/src/main/java/MusicTrack.java b/runescape-client/src/main/java/MusicTrack.java index 025e5d31b6..b0cfc9c63a 100644 --- a/runescape-client/src/main/java/MusicTrack.java +++ b/runescape-client/src/main/java/MusicTrack.java @@ -3,130 +3,130 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hj") +@ObfuscatedName("hg") @Implements("MusicTrack") public class MusicTrack extends Node { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Llp;" + descriptor = "Lls;" ) @Export("table") NodeHashTable table; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("midi") byte[] midi; @ObfuscatedSignature( - descriptor = "(Lkb;)V" + descriptor = "(Lkj;)V" ) MusicTrack(Buffer var1) { - var1.offset = var1.array.length - 3; // L: 22 - int var2 = var1.readUnsignedByte(); // L: 23 - int var3 = var1.readUnsignedShort(); // L: 24 - int var4 = var2 * 10 + 14; // L: 25 - var1.offset = 0; // L: 26 - int var5 = 0; // L: 27 - int var6 = 0; // L: 28 - int var7 = 0; // L: 29 - int var8 = 0; // L: 30 - int var9 = 0; // L: 31 - int var10 = 0; // L: 32 - int var11 = 0; // L: 33 - int var12 = 0; // L: 34 + var1.offset = var1.array.length - 3; + int var2 = var1.readUnsignedByte(); + int var3 = var1.readUnsignedShort(); + int var4 = var2 * 10 + 14; + var1.offset = 0; + int var5 = 0; + int var6 = 0; + int var7 = 0; + int var8 = 0; + int var9 = 0; + int var10 = 0; + int var11 = 0; + int var12 = 0; int var13; int var14; int var15; - for (var13 = 0; var13 < var2; ++var13) { // L: 35 - var14 = -1; // L: 36 + for (var13 = 0; var13 < var2; ++var13) { + var14 = -1; while (true) { - var15 = var1.readUnsignedByte(); // L: 38 - if (var15 != var14) { // L: 39 + var15 = var1.readUnsignedByte(); + if (var15 != var14) { ++var4; } - var14 = var15 & 15; // L: 40 - if (var15 == 7) { // L: 41 + var14 = var15 & 15; + if (var15 == 7) { break; } - if (var15 == 23) { // L: 42 - ++var5; // L: 43 - } else if (var14 == 0) { // L: 46 - ++var7; // L: 47 - } else if (var14 == 1) { // L: 50 - ++var8; // L: 51 - } else if (var14 == 2) { // L: 54 - ++var6; // L: 55 - } else if (var14 == 3) { // L: 58 - ++var9; // L: 59 - } else if (var14 == 4) { // L: 62 - ++var10; // L: 63 - } else if (var14 == 5) { // L: 66 - ++var11; // L: 67 + if (var15 == 23) { + ++var5; + } else if (var14 == 0) { + ++var7; + } else if (var14 == 1) { + ++var8; + } else if (var14 == 2) { + ++var6; + } else if (var14 == 3) { + ++var9; + } else if (var14 == 4) { + ++var10; + } else if (var14 == 5) { + ++var11; } else { - if (var14 != 6) { // L: 70 - throw new RuntimeException(); // L: 74 + if (var14 != 6) { + throw new RuntimeException(); } - ++var12; // L: 71 + ++var12; } } } - var4 += var5 * 5; // L: 77 - var4 += (var7 + var8 + var6 + var9 + var11) * 2; // L: 78 - var4 = var4 + var10 + var12; // L: 79 - var13 = var1.offset; // L: 80 - var14 = var2 + var5 + var6 + var7 + var8 + var9 + var10 + var11 + var12; // L: 81 + var4 += var5 * 5; + var4 += (var7 + var8 + var6 + var9 + var11) * 2; + var4 = var4 + var10 + var12; + var13 = var1.offset; + var14 = var2 + var5 + var6 + var7 + var8 + var9 + var10 + var11 + var12; - for (var15 = 0; var15 < var14; ++var15) { // L: 82 + for (var15 = 0; var15 < var14; ++var15) { var1.readVarInt(); } - var4 += var1.offset - var13; // L: 83 - var15 = var1.offset; // L: 84 - int var16 = 0; // L: 85 - int var17 = 0; // L: 86 - int var18 = 0; // L: 87 - int var19 = 0; // L: 88 - int var20 = 0; // L: 89 - int var21 = 0; // L: 90 - int var22 = 0; // L: 91 - int var23 = 0; // L: 92 - int var24 = 0; // L: 93 - int var25 = 0; // L: 94 - int var26 = 0; // L: 95 - int var27 = 0; // L: 96 - int var28 = 0; // L: 97 + var4 += var1.offset - var13; + var15 = var1.offset; + int var16 = 0; + int var17 = 0; + int var18 = 0; + int var19 = 0; + int var20 = 0; + int var21 = 0; + int var22 = 0; + int var23 = 0; + int var24 = 0; + int var25 = 0; + int var26 = 0; + int var27 = 0; + int var28 = 0; int var29; - for (var29 = 0; var29 < var6; ++var29) { // L: 98 - var28 = var28 + var1.readUnsignedByte() & 127; // L: 99 - if (var28 != 0 && var28 != 32) { // L: 100 - if (var28 == 1) { // L: 101 + for (var29 = 0; var29 < var6; ++var29) { + var28 = var28 + var1.readUnsignedByte() & 127; + if (var28 != 0 && var28 != 32) { + if (var28 == 1) { ++var16; - } else if (var28 == 33) { // L: 102 + } else if (var28 == 33) { ++var17; - } else if (var28 == 7) { // L: 103 + } else if (var28 == 7) { ++var18; - } else if (var28 == 39) { // L: 104 + } else if (var28 == 39) { ++var19; - } else if (var28 == 10) { // L: 105 + } else if (var28 == 10) { ++var20; - } else if (var28 == 42) { // L: 106 + } else if (var28 == 42) { ++var21; - } else if (var28 == 99) { // L: 107 + } else if (var28 == 99) { ++var22; - } else if (var28 == 98) { // L: 108 + } else if (var28 == 98) { ++var23; - } else if (var28 == 101) { // L: 109 + } else if (var28 == 101) { ++var24; - } else if (var28 == 100) { // L: 110 + } else if (var28 == 100) { ++var25; - } else if (var28 != 64 && var28 != 65 && var28 != 120 && var28 != 121 && var28 != 123) { // L: 111 - ++var27; // L: 112 + } else if (var28 != 64 && var28 != 65 && var28 != 120 && var28 != 121 && var28 != 123) { + ++var27; } else { ++var26; } @@ -135,153 +135,153 @@ public class MusicTrack extends Node { } } - var29 = 0; // L: 114 - int var30 = var1.offset; // L: 115 - var1.offset += var26; // L: 116 - int var31 = var1.offset; // L: 117 - var1.offset += var11; // L: 118 - int var32 = var1.offset; // L: 119 - var1.offset += var10; // L: 120 - int var33 = var1.offset; // L: 121 - var1.offset += var9; // L: 122 - int var34 = var1.offset; // L: 123 - var1.offset += var16; // L: 124 - int var35 = var1.offset; // L: 125 - var1.offset += var18; // L: 126 - int var36 = var1.offset; // L: 127 - var1.offset += var20; // L: 128 - int var37 = var1.offset; // L: 129 - var1.offset += var7 + var8 + var11; // L: 130 - int var38 = var1.offset; // L: 131 - var1.offset += var7; // L: 132 - int var39 = var1.offset; // L: 133 - var1.offset += var27; // L: 134 - int var40 = var1.offset; // L: 135 - var1.offset += var8; // L: 136 - int var41 = var1.offset; // L: 137 - var1.offset += var17; // L: 138 - int var42 = var1.offset; // L: 139 - var1.offset += var19; // L: 140 - int var43 = var1.offset; // L: 141 - var1.offset += var21; // L: 142 - int var44 = var1.offset; // L: 143 - var1.offset += var12; // L: 144 - int var45 = var1.offset; // L: 145 - var1.offset += var9; // L: 146 - int var46 = var1.offset; // L: 147 - var1.offset += var22; // L: 148 - int var47 = var1.offset; // L: 149 - var1.offset += var23; // L: 150 - int var48 = var1.offset; // L: 151 - var1.offset += var24; // L: 152 - int var49 = var1.offset; // L: 153 - var1.offset += var25; // L: 154 - int var50 = var1.offset; // L: 155 - var1.offset += var5 * 3; // L: 156 - this.midi = new byte[var4]; // L: 157 - Buffer var51 = new Buffer(this.midi); // L: 158 - var51.writeInt(1297377380); // L: 159 - var51.writeInt(6); // L: 160 - var51.writeShort(var2 > 1 ? 1 : 0); // L: 161 - var51.writeShort(var2); // L: 162 - var51.writeShort(var3); // L: 163 - var1.offset = var13; // L: 164 - int var52 = 0; // L: 165 - int var53 = 0; // L: 166 - int var54 = 0; // L: 167 - int var55 = 0; // L: 168 - int var56 = 0; // L: 169 - int var57 = 0; // L: 170 - int var58 = 0; // L: 171 - int[] var59 = new int[128]; // L: 172 - var28 = 0; // L: 173 + var29 = 0; + int var30 = var1.offset; + var1.offset += var26; + int var31 = var1.offset; + var1.offset += var11; + int var32 = var1.offset; + var1.offset += var10; + int var33 = var1.offset; + var1.offset += var9; + int var34 = var1.offset; + var1.offset += var16; + int var35 = var1.offset; + var1.offset += var18; + int var36 = var1.offset; + var1.offset += var20; + int var37 = var1.offset; + var1.offset += var7 + var8 + var11; + int var38 = var1.offset; + var1.offset += var7; + int var39 = var1.offset; + var1.offset += var27; + int var40 = var1.offset; + var1.offset += var8; + int var41 = var1.offset; + var1.offset += var17; + int var42 = var1.offset; + var1.offset += var19; + int var43 = var1.offset; + var1.offset += var21; + int var44 = var1.offset; + var1.offset += var12; + int var45 = var1.offset; + var1.offset += var9; + int var46 = var1.offset; + var1.offset += var22; + int var47 = var1.offset; + var1.offset += var23; + int var48 = var1.offset; + var1.offset += var24; + int var49 = var1.offset; + var1.offset += var25; + int var50 = var1.offset; + var1.offset += var5 * 3; + this.midi = new byte[var4]; + Buffer var51 = new Buffer(this.midi); + var51.writeInt(1297377380); + var51.writeInt(6); + var51.writeShort(var2 > 1 ? 1 : 0); + var51.writeShort(var2); + var51.writeShort(var3); + var1.offset = var13; + int var52 = 0; + int var53 = 0; + int var54 = 0; + int var55 = 0; + int var56 = 0; + int var57 = 0; + int var58 = 0; + int[] var59 = new int[128]; + var28 = 0; - label244: - for (int var60 = 0; var60 < var2; ++var60) { // L: 174 - var51.writeInt(1297379947); // L: 175 - var51.offset += 4; // L: 176 - int var61 = var51.offset; // L: 177 - int var62 = -1; // L: 178 + label243: + for (int var60 = 0; var60 < var2; ++var60) { + var51.writeInt(1297379947); + var51.offset += 4; + int var61 = var51.offset; + int var62 = -1; while (true) { while (true) { - int var63 = var1.readVarInt(); // L: 180 - var51.writeVarInt(var63); // L: 181 - int var64 = var1.array[var29++] & 255; // L: 182 - boolean var65 = var64 != var62; // L: 183 - var62 = var64 & 15; // L: 184 - if (var64 == 7) { // L: 185 - if (var65) { // L: 186 + int var63 = var1.readVarInt(); + var51.writeVarInt(var63); + int var64 = var1.array[var29++] & 255; + boolean var65 = var64 != var62; + var62 = var64 & 15; + if (var64 == 7) { + if (var65) { var51.writeByte(255); } - var51.writeByte(47); // L: 187 - var51.writeByte(0); // L: 188 - var51.writeLengthInt(var51.offset - var61); // L: 269 - continue label244; + var51.writeByte(47); + var51.writeByte(0); + var51.writeLengthInt(var51.offset - var61); + continue label243; } - if (var64 == 23) { // L: 191 - if (var65) { // L: 192 + if (var64 == 23) { + if (var65) { var51.writeByte(255); } - var51.writeByte(81); // L: 193 - var51.writeByte(3); // L: 194 - var51.writeByte(var1.array[var50++]); // L: 195 - var51.writeByte(var1.array[var50++]); // L: 196 - var51.writeByte(var1.array[var50++]); // L: 197 + var51.writeByte(81); + var51.writeByte(3); + var51.writeByte(var1.array[var50++]); + var51.writeByte(var1.array[var50++]); + var51.writeByte(var1.array[var50++]); } else { - var52 ^= var64 >> 4; // L: 200 - if (var62 == 0) { // L: 201 - if (var65) { // L: 202 + var52 ^= var64 >> 4; + if (var62 == 0) { + if (var65) { var51.writeByte(var52 + 144); } - var53 += var1.array[var37++]; // L: 203 - var54 += var1.array[var38++]; // L: 204 - var51.writeByte(var53 & 127); // L: 205 - var51.writeByte(var54 & 127); // L: 206 - } else if (var62 == 1) { // L: 209 - if (var65) { // L: 210 + var53 += var1.array[var37++]; + var54 += var1.array[var38++]; + var51.writeByte(var53 & 127); + var51.writeByte(var54 & 127); + } else if (var62 == 1) { + if (var65) { var51.writeByte(var52 + 128); } - var53 += var1.array[var37++]; // L: 211 - var55 += var1.array[var40++]; // L: 212 - var51.writeByte(var53 & 127); // L: 213 - var51.writeByte(var55 & 127); // L: 214 - } else if (var62 == 2) { // L: 217 - if (var65) { // L: 218 + var53 += var1.array[var37++]; + var55 += var1.array[var40++]; + var51.writeByte(var53 & 127); + var51.writeByte(var55 & 127); + } else if (var62 == 2) { + if (var65) { var51.writeByte(var52 + 176); } - var28 = var28 + var1.array[var15++] & 127; // L: 219 - var51.writeByte(var28); // L: 220 + var28 = var28 + var1.array[var15++] & 127; + var51.writeByte(var28); byte var66; - if (var28 != 0 && var28 != 32) { // L: 222 - if (var28 == 1) { // L: 223 + if (var28 != 0 && var28 != 32) { + if (var28 == 1) { var66 = var1.array[var34++]; - } else if (var28 == 33) { // L: 224 + } else if (var28 == 33) { var66 = var1.array[var41++]; - } else if (var28 == 7) { // L: 225 + } else if (var28 == 7) { var66 = var1.array[var35++]; - } else if (var28 == 39) { // L: 226 + } else if (var28 == 39) { var66 = var1.array[var42++]; - } else if (var28 == 10) { // L: 227 + } else if (var28 == 10) { var66 = var1.array[var36++]; - } else if (var28 == 42) { // L: 228 + } else if (var28 == 42) { var66 = var1.array[var43++]; - } else if (var28 == 99) { // L: 229 + } else if (var28 == 99) { var66 = var1.array[var46++]; - } else if (var28 == 98) { // L: 230 + } else if (var28 == 98) { var66 = var1.array[var47++]; - } else if (var28 == 101) { // L: 231 + } else if (var28 == 101) { var66 = var1.array[var48++]; - } else if (var28 == 100) { // L: 232 + } else if (var28 == 100) { var66 = var1.array[var49++]; - } else if (var28 != 64 && var28 != 65 && var28 != 120 && var28 != 121 && var28 != 123) { // L: 233 - var66 = var1.array[var39++]; // L: 234 + } else if (var28 != 64 && var28 != 65 && var28 != 120 && var28 != 121 && var28 != 123) { + var66 = var1.array[var39++]; } else { var66 = var1.array[var30++]; } @@ -289,146 +289,146 @@ public class MusicTrack extends Node { var66 = var1.array[var44++]; } - int var67 = var66 + var59[var28]; // L: 235 - var59[var28] = var67; // L: 236 - var51.writeByte(var67 & 127); // L: 237 - } else if (var62 == 3) { // L: 240 - if (var65) { // L: 241 + int var67 = var66 + var59[var28]; + var59[var28] = var67; + var51.writeByte(var67 & 127); + } else if (var62 == 3) { + if (var65) { var51.writeByte(var52 + 224); } - var56 += var1.array[var45++]; // L: 242 - var56 += var1.array[var33++] << 7; // L: 243 - var51.writeByte(var56 & 127); // L: 244 - var51.writeByte(var56 >> 7 & 127); // L: 245 - } else if (var62 == 4) { // L: 248 - if (var65) { // L: 249 + var56 += var1.array[var45++]; + var56 += var1.array[var33++] << 7; + var51.writeByte(var56 & 127); + var51.writeByte(var56 >> 7 & 127); + } else if (var62 == 4) { + if (var65) { var51.writeByte(var52 + 208); } - var57 += var1.array[var32++]; // L: 250 - var51.writeByte(var57 & 127); // L: 251 - } else if (var62 == 5) { // L: 254 - if (var65) { // L: 255 + var57 += var1.array[var32++]; + var51.writeByte(var57 & 127); + } else if (var62 == 5) { + if (var65) { var51.writeByte(var52 + 160); } - var53 += var1.array[var37++]; // L: 256 - var58 += var1.array[var31++]; // L: 257 - var51.writeByte(var53 & 127); // L: 258 - var51.writeByte(var58 & 127); // L: 259 + var53 += var1.array[var37++]; + var58 += var1.array[var31++]; + var51.writeByte(var53 & 127); + var51.writeByte(var58 & 127); } else { - if (var62 != 6) { // L: 262 - throw new RuntimeException(); // L: 267 + if (var62 != 6) { + throw new RuntimeException(); } - if (var65) { // L: 263 + if (var65) { var51.writeByte(var52 + 192); } - var51.writeByte(var1.array[var44++]); // L: 264 + var51.writeByte(var1.array[var44++]); } } } } } - } // L: 271 + } - @ObfuscatedName("b") - void method4061() { - if (this.table == null) { // L: 274 - this.table = new NodeHashTable(16); // L: 275 - int[] var1 = new int[16]; // L: 276 - int[] var2 = new int[16]; // L: 277 - var2[9] = 128; // L: 279 - var1[9] = 128; // L: 280 - MidiFileReader var4 = new MidiFileReader(this.midi); // L: 281 - int var5 = var4.trackCount(); // L: 282 + @ObfuscatedName("v") + void method3956() { + if (this.table == null) { + this.table = new NodeHashTable(16); + int[] var1 = new int[16]; + int[] var2 = new int[16]; + var2[9] = 128; + var1[9] = 128; + MidiFileReader var4 = new MidiFileReader(this.midi); + int var5 = var4.trackCount(); int var6; - for (var6 = 0; var6 < var5; ++var6) { // L: 283 - var4.gotoTrack(var6); // L: 284 - var4.readTrackLength(var6); // L: 285 - var4.markTrackPosition(var6); // L: 286 + for (var6 = 0; var6 < var5; ++var6) { + var4.gotoTrack(var6); + var4.readTrackLength(var6); + var4.markTrackPosition(var6); } - label56: + label54: do { while (true) { - var6 = var4.getPrioritizedTrack(); // L: 289 - int var7 = var4.trackLengths[var6]; // L: 290 + var6 = var4.getPrioritizedTrack(); + int var7 = var4.trackLengths[var6]; - while (var7 == var4.trackLengths[var6]) { // L: 291 - var4.gotoTrack(var6); // L: 292 - int var8 = var4.readMessage(var6); // L: 293 - if (var8 == 1) { // L: 294 - var4.setTrackDone(); // L: 295 - var4.markTrackPosition(var6); // L: 296 - continue label56; + while (var7 == var4.trackLengths[var6]) { + var4.gotoTrack(var6); + int var8 = var4.readMessage(var6); + if (var8 == 1) { + var4.setTrackDone(); + var4.markTrackPosition(var6); + continue label54; } - int var9 = var8 & 240; // L: 300 + int var9 = var8 & 240; int var10; int var11; int var12; - if (var9 == 176) { // L: 301 - var10 = var8 & 15; // L: 302 - var11 = var8 >> 8 & 127; // L: 303 - var12 = var8 >> 16 & 127; // L: 304 - if (var11 == 0) { // L: 305 + if (var9 == 176) { + var10 = var8 & 15; + var11 = var8 >> 8 & 127; + var12 = var8 >> 16 & 127; + if (var11 == 0) { var1[var10] = (var12 << 14) + (var1[var10] & -2080769); } - if (var11 == 32) { // L: 306 + if (var11 == 32) { var1[var10] = (var1[var10] & -16257) + (var12 << 7); } } - if (var9 == 192) { // L: 308 - var10 = var8 & 15; // L: 309 - var11 = var8 >> 8 & 127; // L: 310 - var2[var10] = var11 + var1[var10]; // L: 311 + if (var9 == 192) { + var10 = var8 & 15; + var11 = var8 >> 8 & 127; + var2[var10] = var11 + var1[var10]; } - if (var9 == 144) { // L: 313 - var10 = var8 & 15; // L: 314 - var11 = var8 >> 8 & 127; // L: 315 - var12 = var8 >> 16 & 127; // L: 316 - if (var12 > 0) { // L: 317 - int var13 = var2[var10]; // L: 318 - ByteArrayNode var14 = (ByteArrayNode)this.table.get((long)var13); // L: 319 - if (var14 == null) { // L: 320 - var14 = new ByteArrayNode(new byte[128]); // L: 321 - this.table.put(var14, (long)var13); // L: 322 + if (var9 == 144) { + var10 = var8 & 15; + var11 = var8 >> 8 & 127; + var12 = var8 >> 16 & 127; + if (var12 > 0) { + int var13 = var2[var10]; + ByteArrayNode var14 = (ByteArrayNode)this.table.get((long)var13); + if (var14 == null) { + var14 = new ByteArrayNode(new byte[128]); + this.table.put(var14, (long)var13); } - var14.byteArray[var11] = 1; // L: 324 + var14.byteArray[var11] = 1; } } - var4.readTrackLength(var6); // L: 327 - var4.markTrackPosition(var6); // L: 328 + var4.readTrackLength(var6); + var4.markTrackPosition(var6); } } - } while(!var4.isDone()); // L: 297 + } while(!var4.isDone()); } - } // L: 331 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("clear") void clear() { - this.table = null; // L: 334 - } // L: 335 + this.table = null; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Liw;II)Lhj;" + descriptor = "(Lib;II)Lhg;" ) @Export("readTrack") static MusicTrack readTrack(AbstractArchive var0, int var1, int var2) { - byte[] var3 = var0.takeFile(var1, var2); // L: 16 - return var3 == null ? null : new MusicTrack(new Buffer(var3)); // L: 17 + byte[] var3 = var0.takeFile(var1, var2); + return var3 == null ? null : new MusicTrack(new Buffer(var3)); } } diff --git a/runescape-client/src/main/java/NPC.java b/runescape-client/src/main/java/NPC.java index 1cd75f7e9a..f02413ae31 100644 --- a/runescape-client/src/main/java/NPC.java +++ b/runescape-client/src/main/java/NPC.java @@ -1,971 +1,193 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; -import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("ca") +@ObfuscatedName("cf") @Implements("NPC") public final class NPC extends Actor { - @ObfuscatedName("l") - @ObfuscatedGetter( - intValue = -1244171609 - ) - @Export("WorldMapElement_count") - public static int WorldMapElement_count; - @ObfuscatedName("z") - static byte[][][] field1161; - @ObfuscatedName("f") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Ljn;" + descriptor = "Lib;" + ) + @Export("ItemDefinition_archive") + static AbstractArchive ItemDefinition_archive; + @ObfuscatedName("jp") + @ObfuscatedSignature( + descriptor = "Lhe;" + ) + static Widget field1131; + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "Ljd;" ) @Export("definition") NPCDefinition definition; NPC() { - } // L: 12 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(IBI)V", - garbageValue = "-522302894" + garbageValue = "1912112100" ) - final void method2150(int var1, byte var2) { - int var3 = super.pathX[0]; // L: 15 - int var4 = super.pathY[0]; // L: 16 - if (var1 == 0) { // L: 17 - --var3; // L: 18 - ++var4; // L: 19 - } - - if (var1 == 1) { // L: 21 + final void method2102(int var1, byte var2) { + int var3 = super.pathX[0]; + int var4 = super.pathY[0]; + if (var1 == 0) { + --var3; ++var4; } - if (var1 == 2) { // L: 22 - ++var3; // L: 23 - ++var4; // L: 24 + if (var1 == 1) { + ++var4; } - if (var1 == 3) { // L: 26 + if (var1 == 2) { + ++var3; + ++var4; + } + + if (var1 == 3) { --var3; } - if (var1 == 4) { // L: 27 + if (var1 == 4) { ++var3; } - if (var1 == 5) { // L: 28 - --var3; // L: 29 - --var4; // L: 30 - } - - if (var1 == 6) { // L: 32 + if (var1 == 5) { + --var3; --var4; } - if (var1 == 7) { // L: 33 - ++var3; // L: 34 - --var4; // L: 35 + if (var1 == 6) { + --var4; } - if (super.sequence != -1 && class105.SequenceDefinition_get(super.sequence).field3550 == 1) { // L: 37 + if (var1 == 7) { + ++var3; + --var4; + } + + if (super.sequence != -1 && ParamDefinition.SequenceDefinition_get(super.sequence).field3555 == 1) { super.sequence = -1; } - if (super.pathLength < 9) { // L: 38 + if (super.pathLength < 9) { ++super.pathLength; } - for (int var5 = super.pathLength; var5 > 0; --var5) { // L: 39 - super.pathX[var5] = super.pathX[var5 - 1]; // L: 40 - super.pathY[var5] = super.pathY[var5 - 1]; // L: 41 - super.pathTraversed[var5] = super.pathTraversed[var5 - 1]; // L: 42 + for (int var5 = super.pathLength; var5 > 0; --var5) { + super.pathX[var5] = super.pathX[var5 - 1]; + super.pathY[var5] = super.pathY[var5 - 1]; + super.pathTraversed[var5] = super.pathTraversed[var5 - 1]; } super.pathX[0] = var3; super.pathY[0] = var4; super.pathTraversed[0] = var2; - } // L: 47 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IIZB)V", - garbageValue = "124" + descriptor = "(IIZI)V", + garbageValue = "-169739231" ) - final void method2144(int var1, int var2, boolean var3) { - if (super.sequence != -1 && class105.SequenceDefinition_get(super.sequence).field3550 == 1) { // L: 50 + final void method2106(int var1, int var2, boolean var3) { + if (super.sequence != -1 && ParamDefinition.SequenceDefinition_get(super.sequence).field3555 == 1) { super.sequence = -1; } - if (!var3) { // L: 51 - int var4 = var1 - super.pathX[0]; // L: 52 - int var5 = var2 - super.pathY[0]; // L: 53 - if (var4 >= -8 && var4 <= 8 && var5 >= -8 && var5 <= 8) { // L: 54 - if (super.pathLength < 9) { // L: 55 + if (!var3) { + int var4 = var1 - super.pathX[0]; + int var5 = var2 - super.pathY[0]; + if (var4 >= -8 && var4 <= 8 && var5 >= -8 && var5 <= 8) { + if (super.pathLength < 9) { ++super.pathLength; } - for (int var6 = super.pathLength; var6 > 0; --var6) { // L: 56 - super.pathX[var6] = super.pathX[var6 - 1]; // L: 57 - super.pathY[var6] = super.pathY[var6 - 1]; // L: 58 - super.pathTraversed[var6] = super.pathTraversed[var6 - 1]; // L: 59 + for (int var6 = super.pathLength; var6 > 0; --var6) { + super.pathX[var6] = super.pathX[var6 - 1]; + super.pathY[var6] = super.pathY[var6 - 1]; + super.pathTraversed[var6] = super.pathTraversed[var6 - 1]; } - super.pathX[0] = var1; // L: 61 - super.pathY[0] = var2; // L: 62 - super.pathTraversed[0] = 1; // L: 63 - return; // L: 64 + super.pathX[0] = var1; + super.pathY[0] = var2; + super.pathTraversed[0] = 1; + return; } } - super.pathLength = 0; // L: 67 - super.field1034 = 0; // L: 68 - super.field978 = 0; // L: 69 - super.pathX[0] = var1; // L: 70 - super.pathY[0] = var2; // L: 71 - super.x = super.pathX[0] * 128 + super.field1011 * 64; // L: 72 - super.y = super.field1011 * 64 + super.pathY[0] * 128; // L: 73 - } // L: 74 + super.pathLength = 0; + super.field996 = 0; + super.field963 = 0; + super.pathX[0] = var1; + super.pathY[0] = var2; + super.x = super.field941 * 108072960 + super.pathX[0] * 128; + super.y = super.pathY[0] * 128 + super.field941 * 108072960; + } - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( descriptor = "(I)Leh;", - garbageValue = "-2070677844" + garbageValue = "-1814248977" ) @Export("getModel") protected final Model getModel() { - if (this.definition == null) { // L: 77 + if (this.definition == null) { return null; } else { - SequenceDefinition var1 = super.sequence != -1 && super.sequenceDelay == 0 ? class105.SequenceDefinition_get(super.sequence) : null; // L: 78 - SequenceDefinition var2 = super.movementSequence != -1 && (super.idleSequence != super.movementSequence || var1 == null) ? class105.SequenceDefinition_get(super.movementSequence) : null; // L: 79 - Model var3 = this.definition.getModel(var1, super.sequenceFrame, var2, super.movementFrame); // L: 80 - if (var3 == null) { // L: 81 + SequenceDefinition var1 = super.sequence != -1 && super.sequenceDelay == 0 ? ParamDefinition.SequenceDefinition_get(super.sequence) : null; + SequenceDefinition var2 = super.movementSequence != -1 && (super.idleSequence != super.movementSequence || var1 == null) ? ParamDefinition.SequenceDefinition_get(super.movementSequence) : null; + Model var3 = this.definition.getModel(var1, super.sequenceFrame, var2, super.movementFrame); + if (var3 == null) { return null; } else { - var3.calculateBoundsCylinder(); // L: 82 - super.defaultHeight = var3.height; // L: 83 - if (super.spotAnimation != -1 && super.spotAnimationFrame != -1) { // L: 84 - Model var4 = HealthBarUpdate.SpotAnimationDefinition_get(super.spotAnimation).getModel(super.spotAnimationFrame); // L: 85 - if (var4 != null) { // L: 86 - var4.offsetBy(0, -super.field1016, 0); // L: 87 - Model[] var5 = new Model[]{var3, var4}; // L: 88 - var3 = new Model(var5, 2); // L: 89 + var3.calculateBoundsCylinder(); + super.defaultHeight = var3.height; + if (super.spotAnimation != -1 && super.spotAnimationFrame != -1) { + Model var4 = TileItem.SpotAnimationDefinition_get(super.spotAnimation).getModel(super.spotAnimationFrame); + if (var4 != null) { + var4.offsetBy(0, -super.field979, 0); + Model[] var5 = new Model[]{var3, var4}; + var3 = new Model(var5, 2); } } - if (this.definition.size == 1) { // L: 92 + if (this.definition.size == 1) { var3.isSingleTile = true; } - return var3; // L: 93 + return var3; } } } - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "2035007323" + garbageValue = "1661589479" ) @Export("isVisible") final boolean isVisible() { - return this.definition != null; // L: 97 + return this.definition != null; } - @ObfuscatedName("b") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1437281786" + descriptor = "(IIIZIB)J", + garbageValue = "-40" ) - public static void method2146() { - if (MouseHandler.MouseHandler_instance != null) { // L: 43 - synchronized(MouseHandler.MouseHandler_instance) { // L: 44 - MouseHandler.MouseHandler_instance = null; // L: 45 - } // L: 46 + @Export("calculateTag") + public static long calculateTag(int var0, int var1, int var2, boolean var3, int var4) { + long var5 = (long)((var0 & 127) << 0 | (var1 & 127) << 7 | (var2 & 3) << 14) | ((long)var4 & 4294967295L) << 17; + if (var3) { + var5 |= 65536L; } - } // L: 48 - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(IIIIIILef;Lfh;I)V", - garbageValue = "1419271309" - ) - static final void method2160(int var0, int var1, int var2, int var3, int var4, int var5, Scene var6, CollisionMap var7) { - if (!Client.isLowDetail || (Tiles.Tiles_renderFlags[0][var1][var2] & 2) != 0 || (Tiles.Tiles_renderFlags[var0][var1][var2] & 16) == 0) { // L: 155 156 157 - if (var0 < Tiles.Tiles_minPlane) { // L: 160 - Tiles.Tiles_minPlane = var0; - } - - ObjectDefinition var8 = ScriptEvent.getObjectDefinition(var3); // L: 161 - int var9; - int var10; - if (var4 != 1 && var4 != 3) { // L: 164 - var9 = var8.sizeX; // L: 169 - var10 = var8.sizeY; // L: 170 - } else { - var9 = var8.sizeY; // L: 165 - var10 = var8.sizeX; // L: 166 - } - - int var11; - int var12; - if (var9 + var1 <= 104) { // L: 176 - var11 = (var9 >> 1) + var1; // L: 177 - var12 = (var9 + 1 >> 1) + var1; // L: 178 - } else { - var11 = var1; // L: 181 - var12 = var1 + 1; // L: 182 - } - - int var13; - int var14; - if (var10 + var2 <= 104) { // L: 184 - var13 = (var10 >> 1) + var2; // L: 185 - var14 = var2 + (var10 + 1 >> 1); // L: 186 - } else { - var13 = var2; // L: 189 - var14 = var2 + 1; // L: 190 - } - - int[][] var15 = Tiles.Tiles_heights[var0]; // L: 192 - int var16 = var15[var11][var13] + var15[var12][var13] + var15[var11][var14] + var15[var12][var14] >> 2; // L: 193 - int var17 = (var1 << 7) + (var9 << 6); // L: 194 - int var18 = (var2 << 7) + (var10 << 6); // L: 195 - long var19 = GrandExchangeOfferOwnWorldComparator.calculateTag(var1, var2, 2, var8.int1 == 0, var3); // L: 196 - int var21 = var5 + (var4 << 6); // L: 197 - if (var8.int3 == 1) { // L: 198 - var21 += 256; - } - - int var23; - int var24; - if (var8.hasSound()) { // L: 199 - ObjectSound var22 = new ObjectSound(); // L: 200 - var22.plane = var0; // L: 201 - var22.x = var1 * 128; // L: 202 - var22.y = var2 * 128; // L: 203 - var23 = var8.sizeX; // L: 204 - var24 = var8.sizeY; // L: 205 - if (var4 == 1 || var4 == 3) { // L: 206 - var23 = var8.sizeY; // L: 207 - var24 = var8.sizeX; // L: 208 - } - - var22.field1103 = (var23 + var1) * 128; // L: 210 - var22.field1112 = (var24 + var2) * 128; // L: 211 - var22.soundEffectId = var8.ambientSoundId; // L: 212 - var22.field1104 = var8.int4 * 128; // L: 213 - var22.field1107 = var8.int5; // L: 214 - var22.field1109 = var8.int6; // L: 215 - var22.soundEffectIds = var8.soundEffectIds; // L: 216 - if (var8.transforms != null) { // L: 217 - var22.obj = var8; // L: 218 - var22.set(); // L: 219 - } - - ObjectSound.objectSounds.addFirst(var22); // L: 221 - if (var22.soundEffectIds != null) { // L: 222 - var22.field1108 = var22.field1107 + (int)(Math.random() * (double)(var22.field1109 - var22.field1107)); - } - } - - Object var34; - if (var5 == 22) { // L: 224 - if (!Client.isLowDetail || var8.int1 != 0 || var8.interactType == 1 || var8.boolean2) { // L: 225 - if (var8.animationId == -1 && var8.transforms == null) { // L: 227 - var34 = var8.getEntity(22, var4, var15, var17, var16, var18); - } else { - var34 = new DynamicObject(var3, 22, var4, var0, var1, var2, var8.animationId, true, (Entity)null); // L: 228 - } - - var6.newFloorDecoration(var0, var1, var2, var16, (Entity)var34, var19, var21); // L: 229 - if (var8.interactType == 1 && var7 != null) { // L: 230 - var7.setBlockedByFloorDec(var1, var2); - } - - } - } else if (var5 != 10 && var5 != 11) { // L: 233 - int[] var10000; - if (var5 >= 12) { // L: 254 - if (var8.animationId == -1 && var8.transforms == null) { // L: 256 - var34 = var8.getEntity(var5, var4, var15, var17, var16, var18); - } else { - var34 = new DynamicObject(var3, var5, var4, var0, var1, var2, var8.animationId, true, (Entity)null); // L: 257 - } - - var6.method3227(var0, var1, var2, var16, 1, 1, (Entity)var34, 0, var19, var21); // L: 258 - if (var5 >= 12 && var5 <= 17 && var5 != 13 && var0 > 0) { // L: 259 - var10000 = UserComparator10.field2000[var0][var1]; - var10000[var2] |= 2340; - } - - if (var8.interactType != 0 && var7 != null) { // L: 260 - var7.addGameObject(var1, var2, var9, var10, var8.boolean1); - } - - } else if (var5 == 0) { // L: 263 - if (var8.animationId == -1 && var8.transforms == null) { // L: 265 - var34 = var8.getEntity(0, var4, var15, var17, var16, var18); - } else { - var34 = new DynamicObject(var3, 0, var4, var0, var1, var2, var8.animationId, true, (Entity)null); // L: 266 - } - - var6.newBoundaryObject(var0, var1, var2, var16, (Entity)var34, (Entity)null, Tiles.field533[var4], 0, var19, var21); // L: 267 - if (var4 == 0) { // L: 268 - if (var8.clipped) { // L: 269 - class299.field3679[var0][var1][var2] = 50; // L: 270 - class299.field3679[var0][var1][var2 + 1] = 50; // L: 271 - } - - if (var8.modelClipped) { // L: 273 - var10000 = UserComparator10.field2000[var0][var1]; - var10000[var2] |= 585; - } - } else if (var4 == 1) { // L: 275 - if (var8.clipped) { // L: 276 - class299.field3679[var0][var1][var2 + 1] = 50; // L: 277 - class299.field3679[var0][var1 + 1][var2 + 1] = 50; // L: 278 - } - - if (var8.modelClipped) { // L: 280 - var10000 = UserComparator10.field2000[var0][var1]; - var10000[var2 + 1] |= 1170; - } - } else if (var4 == 2) { // L: 282 - if (var8.clipped) { // L: 283 - class299.field3679[var0][var1 + 1][var2] = 50; // L: 284 - class299.field3679[var0][var1 + 1][var2 + 1] = 50; // L: 285 - } - - if (var8.modelClipped) { // L: 287 - var10000 = UserComparator10.field2000[var0][var1 + 1]; - var10000[var2] |= 585; - } - } else if (var4 == 3) { // L: 289 - if (var8.clipped) { // L: 290 - class299.field3679[var0][var1][var2] = 50; // L: 291 - class299.field3679[var0][var1 + 1][var2] = 50; // L: 292 - } - - if (var8.modelClipped) { // L: 294 - var10000 = UserComparator10.field2000[var0][var1]; - var10000[var2] |= 1170; - } - } - - if (var8.interactType != 0 && var7 != null) { // L: 296 - var7.method3683(var1, var2, var5, var4, var8.boolean1); - } - - if (var8.int2 != 16) { // L: 297 - var6.method3233(var0, var1, var2, var8.int2); - } - - } else if (var5 == 1) { // L: 300 - if (var8.animationId == -1 && var8.transforms == null) { // L: 302 - var34 = var8.getEntity(1, var4, var15, var17, var16, var18); - } else { - var34 = new DynamicObject(var3, 1, var4, var0, var1, var2, var8.animationId, true, (Entity)null); // L: 303 - } - - var6.newBoundaryObject(var0, var1, var2, var16, (Entity)var34, (Entity)null, Tiles.field534[var4], 0, var19, var21); // L: 304 - if (var8.clipped) { // L: 305 - if (var4 == 0) { // L: 306 - class299.field3679[var0][var1][var2 + 1] = 50; - } else if (var4 == 1) { // L: 307 - class299.field3679[var0][var1 + 1][var2 + 1] = 50; - } else if (var4 == 2) { // L: 308 - class299.field3679[var0][var1 + 1][var2] = 50; - } else if (var4 == 3) { // L: 309 - class299.field3679[var0][var1][var2] = 50; - } - } - - if (var8.interactType != 0 && var7 != null) { // L: 311 - var7.method3683(var1, var2, var5, var4, var8.boolean1); - } - - } else { - int var28; - if (var5 == 2) { // L: 314 - var28 = var4 + 1 & 3; // L: 315 - Object var31; - Object var32; - if (var8.animationId == -1 && var8.transforms == null) { // L: 318 - var31 = var8.getEntity(2, var4 + 4, var15, var17, var16, var18); // L: 319 - var32 = var8.getEntity(2, var28, var15, var17, var16, var18); // L: 320 - } else { - var31 = new DynamicObject(var3, 2, var4 + 4, var0, var1, var2, var8.animationId, true, (Entity)null); // L: 323 - var32 = new DynamicObject(var3, 2, var28, var0, var1, var2, var8.animationId, true, (Entity)null); // L: 324 - } - - var6.newBoundaryObject(var0, var1, var2, var16, (Entity)var31, (Entity)var32, Tiles.field533[var4], Tiles.field533[var28], var19, var21); // L: 326 - if (var8.modelClipped) { // L: 327 - if (var4 == 0) { // L: 328 - var10000 = UserComparator10.field2000[var0][var1]; // L: 329 - var10000[var2] |= 585; - var10000 = UserComparator10.field2000[var0][var1]; // L: 330 - var10000[var2 + 1] |= 1170; - } else if (var4 == 1) { // L: 332 - var10000 = UserComparator10.field2000[var0][var1]; // L: 333 - var10000[1 + var2] |= 1170; - var10000 = UserComparator10.field2000[var0][var1 + 1]; // L: 334 - var10000[var2] |= 585; - } else if (var4 == 2) { // L: 336 - var10000 = UserComparator10.field2000[var0][var1 + 1]; // L: 337 - var10000[var2] |= 585; - var10000 = UserComparator10.field2000[var0][var1]; // L: 338 - var10000[var2] |= 1170; - } else if (var4 == 3) { // L: 340 - var10000 = UserComparator10.field2000[var0][var1]; // L: 341 - var10000[var2] |= 1170; - var10000 = UserComparator10.field2000[var0][var1]; // L: 342 - var10000[var2] |= 585; - } - } - - if (var8.interactType != 0 && var7 != null) { // L: 345 - var7.method3683(var1, var2, var5, var4, var8.boolean1); - } - - if (var8.int2 != 16) { // L: 346 - var6.method3233(var0, var1, var2, var8.int2); - } - - } else if (var5 == 3) { // L: 349 - if (var8.animationId == -1 && var8.transforms == null) { // L: 351 - var34 = var8.getEntity(3, var4, var15, var17, var16, var18); - } else { - var34 = new DynamicObject(var3, 3, var4, var0, var1, var2, var8.animationId, true, (Entity)null); // L: 352 - } - - var6.newBoundaryObject(var0, var1, var2, var16, (Entity)var34, (Entity)null, Tiles.field534[var4], 0, var19, var21); // L: 353 - if (var8.clipped) { // L: 354 - if (var4 == 0) { // L: 355 - class299.field3679[var0][var1][var2 + 1] = 50; - } else if (var4 == 1) { // L: 356 - class299.field3679[var0][var1 + 1][var2 + 1] = 50; - } else if (var4 == 2) { // L: 357 - class299.field3679[var0][var1 + 1][var2] = 50; - } else if (var4 == 3) { // L: 358 - class299.field3679[var0][var1][var2] = 50; - } - } - - if (var8.interactType != 0 && var7 != null) { // L: 360 - var7.method3683(var1, var2, var5, var4, var8.boolean1); - } - - } else if (var5 == 9) { // L: 363 - if (var8.animationId == -1 && var8.transforms == null) { // L: 365 - var34 = var8.getEntity(var5, var4, var15, var17, var16, var18); - } else { - var34 = new DynamicObject(var3, var5, var4, var0, var1, var2, var8.animationId, true, (Entity)null); // L: 366 - } - - var6.method3227(var0, var1, var2, var16, 1, 1, (Entity)var34, 0, var19, var21); // L: 367 - if (var8.interactType != 0 && var7 != null) { // L: 368 - var7.addGameObject(var1, var2, var9, var10, var8.boolean1); - } - - if (var8.int2 != 16) { // L: 369 - var6.method3233(var0, var1, var2, var8.int2); - } - - } else if (var5 == 4) { // L: 372 - if (var8.animationId == -1 && var8.transforms == null) { // L: 374 - var34 = var8.getEntity(4, var4, var15, var17, var16, var18); - } else { - var34 = new DynamicObject(var3, 4, var4, var0, var1, var2, var8.animationId, true, (Entity)null); // L: 375 - } - - var6.newWallDecoration(var0, var1, var2, var16, (Entity)var34, (Entity)null, Tiles.field533[var4], 0, 0, 0, var19, var21); // L: 376 - } else { - Object var25; - long var29; - if (var5 == 5) { // L: 379 - var28 = 16; // L: 380 - var29 = var6.getBoundaryObjectTag(var0, var1, var2); // L: 381 - if (var29 != 0L) { // L: 382 - var28 = ScriptEvent.getObjectDefinition(ObjectSound.Entity_unpackID(var29)).int2; - } - - if (var8.animationId == -1 && var8.transforms == null) { // L: 384 - var25 = var8.getEntity(4, var4, var15, var17, var16, var18); - } else { - var25 = new DynamicObject(var3, 4, var4, var0, var1, var2, var8.animationId, true, (Entity)null); // L: 385 - } - - var6.newWallDecoration(var0, var1, var2, var16, (Entity)var25, (Entity)null, Tiles.field533[var4], 0, var28 * Tiles.field528[var4], var28 * Tiles.field536[var4], var19, var21); // L: 386 - } else if (var5 == 6) { // L: 389 - var28 = 8; // L: 390 - var29 = var6.getBoundaryObjectTag(var0, var1, var2); // L: 391 - if (0L != var29) { // L: 392 - var28 = ScriptEvent.getObjectDefinition(ObjectSound.Entity_unpackID(var29)).int2 / 2; - } - - if (var8.animationId == -1 && var8.transforms == null) { // L: 394 - var25 = var8.getEntity(4, var4 + 4, var15, var17, var16, var18); - } else { - var25 = new DynamicObject(var3, 4, var4 + 4, var0, var1, var2, var8.animationId, true, (Entity)null); // L: 395 - } - - var6.newWallDecoration(var0, var1, var2, var16, (Entity)var25, (Entity)null, 256, var4, var28 * Tiles.field535[var4], var28 * Tiles.field529[var4], var19, var21); // L: 396 - } else if (var5 == 7) { // L: 399 - var23 = var4 + 2 & 3; // L: 401 - if (var8.animationId == -1 && var8.transforms == null) { // L: 402 - var34 = var8.getEntity(4, var23 + 4, var15, var17, var16, var18); - } else { - var34 = new DynamicObject(var3, 4, var23 + 4, var0, var1, var2, var8.animationId, true, (Entity)null); // L: 403 - } - - var6.newWallDecoration(var0, var1, var2, var16, (Entity)var34, (Entity)null, 256, var23, 0, 0, var19, var21); // L: 404 - } else if (var5 == 8) { // L: 407 - var28 = 8; // L: 408 - var29 = var6.getBoundaryObjectTag(var0, var1, var2); // L: 409 - if (var29 != 0L) { // L: 410 - var28 = ScriptEvent.getObjectDefinition(ObjectSound.Entity_unpackID(var29)).int2 / 2; - } - - int var27 = var4 + 2 & 3; // L: 413 - Object var26; - if (var8.animationId == -1 && var8.transforms == null) { // L: 414 - var25 = var8.getEntity(4, var4 + 4, var15, var17, var16, var18); // L: 415 - var26 = var8.getEntity(4, var27 + 4, var15, var17, var16, var18); // L: 416 - } else { - var25 = new DynamicObject(var3, 4, var4 + 4, var0, var1, var2, var8.animationId, true, (Entity)null); // L: 419 - var26 = new DynamicObject(var3, 4, var27 + 4, var0, var1, var2, var8.animationId, true, (Entity)null); // L: 420 - } - - var6.newWallDecoration(var0, var1, var2, var16, (Entity)var25, (Entity)var26, 256, var4, var28 * Tiles.field535[var4], var28 * Tiles.field529[var4], var19, var21); // L: 422 - } - } - } - } else { - if (var8.animationId == -1 && var8.transforms == null) { // L: 235 - var34 = var8.getEntity(10, var4, var15, var17, var16, var18); - } else { - var34 = new DynamicObject(var3, 10, var4, var0, var1, var2, var8.animationId, true, (Entity)null); // L: 236 - } - - if (var34 != null && var6.method3227(var0, var1, var2, var16, var9, var10, (Entity)var34, var5 == 11 ? 256 : 0, var19, var21) && var8.clipped) { // L: 237 238 - var23 = 15; // L: 239 - if (var34 instanceof Model) { // L: 240 - var23 = ((Model)var34).method3013() / 4; // L: 241 - if (var23 > 30) { // L: 242 - var23 = 30; - } - } - - for (var24 = 0; var24 <= var9; ++var24) { // L: 244 - for (int var33 = 0; var33 <= var10; ++var33) { // L: 245 - if (var23 > class299.field3679[var0][var24 + var1][var33 + var2]) { // L: 246 - class299.field3679[var0][var24 + var1][var33 + var2] = (byte)var23; - } - } - } - } - - if (var8.interactType != 0 && var7 != null) { // L: 251 - var7.addGameObject(var1, var2, var9, var10, var8.boolean1); - } - - } - } - } // L: 231 252 261 298 312 347 361 370 377 387 397 405 423 425 - - @ObfuscatedName("g") - @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "750977522" - ) - static int method2158(int var0, Script var1, boolean var2) { - String var7; - if (var0 == ScriptOpcodes.MES) { // L: 1306 - var7 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 1307 - DevicePcmPlayerProvider.addGameMessage(0, "", var7); // L: 1308 - return 1; // L: 1309 - } else if (var0 == ScriptOpcodes.ANIM) { - MilliClock.Interpreter_intStackSize -= 2; // L: 1312 - Varps.performPlayerAnimation(PlayerType.localPlayer, Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize], Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]); // L: 1313 - return 1; // L: 1314 - } else if (var0 == ScriptOpcodes.IF_CLOSE) { - if (!Interpreter.field1128) { // L: 1317 - Interpreter.field1130 = true; // L: 1318 - } - - return 1; // L: 1320 - } else { - int var15; - if (var0 == ScriptOpcodes.RESUME_COUNTDIALOG) { - var7 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 1323 - var15 = 0; // L: 1324 - if (class195.isNumber(var7)) { // L: 1325 - var15 = ObjectSound.parseInt(var7); - } - - PacketBufferNode var13 = class4.getPacketBufferNode(ClientPacket.field2268, Client.packetWriter.isaacCipher); // L: 1327 - var13.packetBuffer.writeInt(var15); // L: 1328 - Client.packetWriter.addNode(var13); // L: 1329 - return 1; // L: 1330 - } else { - PacketBufferNode var11; - if (var0 == ScriptOpcodes.RESUME_NAMEDIALOG) { - var7 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 1333 - var11 = class4.getPacketBufferNode(ClientPacket.field2241, Client.packetWriter.isaacCipher); // L: 1335 - var11.packetBuffer.writeByte(var7.length() + 1); // L: 1336 - var11.packetBuffer.writeStringCp1252NullTerminated(var7); // L: 1337 - Client.packetWriter.addNode(var11); // L: 1338 - return 1; // L: 1339 - } else if (var0 == ScriptOpcodes.RESUME_STRINGDIALOG) { - var7 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 1342 - var11 = class4.getPacketBufferNode(ClientPacket.field2270, Client.packetWriter.isaacCipher); // L: 1344 - var11.packetBuffer.writeByte(var7.length() + 1); // L: 1345 - var11.packetBuffer.writeStringCp1252NullTerminated(var7); // L: 1346 - Client.packetWriter.addNode(var11); // L: 1347 - return 1; // L: 1348 - } else { - String var4; - int var10; - if (var0 == ScriptOpcodes.OPPLAYER) { - var10 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1351 - var4 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 1352 - FontName.method5458(var10, var4); // L: 1353 - return 1; // L: 1354 - } else if (var0 == ScriptOpcodes.IF_DRAGPICKUP) { - MilliClock.Interpreter_intStackSize -= 3; // L: 1357 - var10 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 1358 - var15 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 1359 - int var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 2]; // L: 1360 - Widget var14 = UserComparator4.getWidget(var9); // L: 1361 - class228.clickWidget(var14, var10, var15); // L: 1362 - return 1; // L: 1363 - } else if (var0 == ScriptOpcodes.CC_DRAGPICKUP) { - MilliClock.Interpreter_intStackSize -= 2; // L: 1366 - var10 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 1367 - var15 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 1368 - Widget var12 = var2 ? MouseRecorder.field621 : Interpreter.field1122; // L: 1369 - class228.clickWidget(var12, var10, var15); // L: 1370 - return 1; // L: 1371 - } else if (var0 == ScriptOpcodes.MOUSECAM) { - MusicPatchNode.mouseCam = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 1374 - return 1; // L: 1375 - } else if (var0 == ScriptOpcodes.GETREMOVEROOFS) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = GrandExchangeOfferAgeComparator.clientPreferences.roofsHidden ? 1 : 0; // L: 1378 - return 1; // L: 1379 - } else if (var0 == ScriptOpcodes.SETREMOVEROOFS) { - GrandExchangeOfferAgeComparator.clientPreferences.roofsHidden = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 1382 - Tile.savePreferences(); // L: 1383 - return 1; // L: 1384 - } else if (var0 == ScriptOpcodes.OPENURL) { - var7 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 1387 - boolean var8 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 1388 - Skeleton.openURL(var7, var8, false); // L: 1389 - return 1; // L: 1390 - } else if (var0 == ScriptOpcodes.RESUME_OBJDIALOG) { - var10 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1393 - var11 = class4.getPacketBufferNode(ClientPacket.field2316, Client.packetWriter.isaacCipher); // L: 1395 - var11.packetBuffer.writeShort(var10); // L: 1396 - Client.packetWriter.addNode(var11); // L: 1397 - return 1; // L: 1398 - } else if (var0 == ScriptOpcodes.BUG_REPORT) { - var10 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1401 - UrlRequester.Interpreter_stringStackSize -= 2; // L: 1402 - var4 = Interpreter.Interpreter_stringStack[UrlRequester.Interpreter_stringStackSize]; // L: 1403 - String var5 = Interpreter.Interpreter_stringStack[UrlRequester.Interpreter_stringStackSize + 1]; // L: 1404 - if (var4.length() > 500) { // L: 1405 - return 1; - } else if (var5.length() > 500) { // L: 1406 - return 1; - } else { - PacketBufferNode var6 = class4.getPacketBufferNode(ClientPacket.field2310, Client.packetWriter.isaacCipher); // L: 1407 - var6.packetBuffer.writeShort(1 + SpriteMask.stringCp1252NullTerminatedByteSize(var4) + SpriteMask.stringCp1252NullTerminatedByteSize(var5)); // L: 1408 - var6.packetBuffer.writeStringCp1252NullTerminated(var5); // L: 1409 - var6.packetBuffer.writeByte(var10); // L: 1410 - var6.packetBuffer.writeStringCp1252NullTerminated(var4); // L: 1411 - Client.packetWriter.addNode(var6); // L: 1412 - return 1; // L: 1413 - } - } else if (var0 == ScriptOpcodes.SETSHIFTCLICKDROP) { - Client.shiftClickDrop = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 1416 - return 1; // L: 1417 - } else if (var0 == ScriptOpcodes.SETSHOWMOUSEOVERTEXT) { - Client.showMouseOverText = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 1420 - return 1; // L: 1421 - } else if (var0 == ScriptOpcodes.RENDERSELF) { - Client.renderSelf = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 1424 - return 1; // L: 1425 - } else if (var0 == 3120) { - if (Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1) { // L: 1428 - Client.drawPlayerNames |= 1; - } else { - Client.drawPlayerNames &= -2; // L: 1429 - } - - return 1; // L: 1430 - } else if (var0 == 3121) { - if (Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1) { // L: 1433 - Client.drawPlayerNames |= 2; - } else { - Client.drawPlayerNames &= -3; // L: 1434 - } - - return 1; // L: 1435 - } else if (var0 == 3122) { - if (Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1) { // L: 1438 - Client.drawPlayerNames |= 4; - } else { - Client.drawPlayerNames &= -5; // L: 1439 - } - - return 1; // L: 1440 - } else if (var0 == 3123) { - if (Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1) { // L: 1443 - Client.drawPlayerNames |= 8; - } else { - Client.drawPlayerNames &= -9; // L: 1444 - } - - return 1; // L: 1445 - } else if (var0 == 3124) { - Client.drawPlayerNames = 0; // L: 1448 - return 1; // L: 1449 - } else if (var0 == ScriptOpcodes.SETSHOWMOUSECROSS) { - Client.showMouseCross = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 1452 - return 1; // L: 1453 - } else if (var0 == ScriptOpcodes.SETSHOWLOADINGMESSAGES) { - Client.showLoadingMessages = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 1456 - return 1; // L: 1457 - } else if (var0 == ScriptOpcodes.SETTAPTODROP) { - Huffman.setTapToDrop(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1); // L: 1460 - return 1; // L: 1461 - } else if (var0 == ScriptOpcodes.GETTAPTODROP) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = ModeWhere.getTapToDrop() ? 1 : 0; // L: 1464 - return 1; // L: 1465 - } else if (var0 == ScriptOpcodes.SETOCULUSORBSPEED) { - MilliClock.Interpreter_intStackSize -= 2; // L: 1468 - Client.oculusOrbNormalSpeed = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 1469 - Client.oculusOrbSlowedSpeed = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 1470 - return 1; // L: 1471 - } else if (var0 == 3130) { - MilliClock.Interpreter_intStackSize -= 2; // L: 1474 - return 1; // L: 1475 - } else if (var0 == 3131) { - --MilliClock.Interpreter_intStackSize; // L: 1478 - return 1; // L: 1479 - } else if (var0 == ScriptOpcodes.GETCANVASSIZE) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = ItemContainer.canvasWidth; // L: 1482 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = HealthBar.canvasHeight; // L: 1483 - return 1; // L: 1484 - } else if (var0 == ScriptOpcodes.MOBILE_SETFPS) { - --MilliClock.Interpreter_intStackSize; // L: 1487 - return 1; // L: 1488 - } else if (var0 == ScriptOpcodes.MOBILE_OPENSTORE) { - return 1; // L: 1491 - } else if (var0 == ScriptOpcodes.MOBILE_OPENSTORECATEGORY) { - MilliClock.Interpreter_intStackSize -= 2; // L: 1494 - return 1; // L: 1495 - } else if (var0 == 3136) { - Client.field843 = 3; // L: 1498 - Client.field844 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1499 - return 1; // L: 1500 - } else if (var0 == 3137) { - Client.field843 = 2; // L: 1503 - Client.field844 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1504 - return 1; // L: 1505 - } else if (var0 == 3138) { - Client.field843 = 0; // L: 1508 - return 1; // L: 1509 - } else if (var0 == 3139) { - Client.field843 = 1; // L: 1512 - return 1; // L: 1513 - } else if (var0 == 3140) { - Client.field843 = 3; // L: 1516 - Client.field844 = var2 ? MouseRecorder.field621.id * -583486671 * -509491759 : Interpreter.field1122.id * -583486671 * -509491759; // L: 1517 - return 1; // L: 1518 - } else { - boolean var3; - if (var0 == ScriptOpcodes.SETHIDEUSERNAME) { - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 1521 - GrandExchangeOfferAgeComparator.clientPreferences.hideUsername = var3; // L: 1522 - Tile.savePreferences(); // L: 1523 - return 1; // L: 1524 - } else if (var0 == ScriptOpcodes.GETHIDEUSERNAME) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = GrandExchangeOfferAgeComparator.clientPreferences.hideUsername ? 1 : 0; // L: 1527 - return 1; // L: 1528 - } else if (var0 == ScriptOpcodes.SETREMEMBERUSERNAME) { - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 1531 - Client.Login_isUsernameRemembered = var3; // L: 1532 - if (!var3) { // L: 1533 - GrandExchangeOfferAgeComparator.clientPreferences.rememberedUsername = ""; // L: 1534 - Tile.savePreferences(); // L: 1535 - } - - return 1; // L: 1537 - } else if (var0 == ScriptOpcodes.GETREMEMBERUSERNAME) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.Login_isUsernameRemembered ? 1 : 0; // L: 1540 - return 1; // L: 1541 - } else if (var0 == 3145) { - return 1; // L: 1544 - } else if (var0 == ScriptOpcodes.SETTITLEMUSICENABLED) { - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 1547 - if (var3 == GrandExchangeOfferAgeComparator.clientPreferences.titleMusicDisabled) { // L: 1548 - GrandExchangeOfferAgeComparator.clientPreferences.titleMusicDisabled = !var3; // L: 1549 - Tile.savePreferences(); // L: 1550 - } - - return 1; // L: 1552 - } else if (var0 == ScriptOpcodes.GETTITLEMUSICENABLED) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = GrandExchangeOfferAgeComparator.clientPreferences.titleMusicDisabled ? 0 : 1; // L: 1555 - return 1; // L: 1556 - } else if (var0 == 3148) { - return 1; // L: 1559 - } else if (var0 == 3149) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1562 - return 1; // L: 1563 - } else if (var0 == 3150) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1566 - return 1; // L: 1567 - } else if (var0 == 3151) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1570 - return 1; // L: 1571 - } else if (var0 == 3152) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1574 - return 1; // L: 1575 - } else if (var0 == 3153) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Login.Login_loadingPercent; // L: 1578 - return 1; // L: 1579 - } else if (var0 == 3154) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = GraphicsObject.method2122(); // L: 1582 - return 1; // L: 1583 - } else if (var0 == 3155) { - --UrlRequester.Interpreter_stringStackSize; // L: 1586 - return 1; // L: 1587 - } else if (var0 == 3156) { - return 1; // L: 1590 - } else if (var0 == 3157) { - MilliClock.Interpreter_intStackSize -= 2; // L: 1593 - return 1; // L: 1594 - } else if (var0 == 3158) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1597 - return 1; // L: 1598 - } else if (var0 == 3159) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1601 - return 1; // L: 1602 - } else if (var0 == 3160) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1605 - return 1; // L: 1606 - } else if (var0 == 3161) { - --MilliClock.Interpreter_intStackSize; // L: 1609 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1610 - return 1; // L: 1611 - } else if (var0 == 3162) { - --MilliClock.Interpreter_intStackSize; // L: 1614 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1615 - return 1; // L: 1616 - } else if (var0 == 3163) { - --UrlRequester.Interpreter_stringStackSize; // L: 1619 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1620 - return 1; // L: 1621 - } else if (var0 == 3164) { - --MilliClock.Interpreter_intStackSize; // L: 1624 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 1625 - return 1; // L: 1626 - } else if (var0 == 3165) { - --MilliClock.Interpreter_intStackSize; // L: 1629 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1630 - return 1; // L: 1631 - } else if (var0 == 3166) { - MilliClock.Interpreter_intStackSize -= 2; // L: 1634 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1635 - return 1; // L: 1636 - } else if (var0 == 3167) { - MilliClock.Interpreter_intStackSize -= 2; // L: 1639 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1640 - return 1; // L: 1641 - } else if (var0 == 3168) { - MilliClock.Interpreter_intStackSize -= 2; // L: 1644 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 1645 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 1646 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 1647 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 1648 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 1649 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 1650 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 1651 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 1652 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 1653 - return 1; // L: 1654 - } else if (var0 == 3169) { - return 1; // L: 1657 - } else if (var0 == 3170) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1660 - return 1; // L: 1661 - } else if (var0 == 3171) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1664 - return 1; // L: 1665 - } else if (var0 == 3172) { - --MilliClock.Interpreter_intStackSize; // L: 1668 - return 1; // L: 1669 - } else if (var0 == 3173) { - --MilliClock.Interpreter_intStackSize; // L: 1672 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1673 - return 1; // L: 1674 - } else if (var0 == 3174) { - --MilliClock.Interpreter_intStackSize; // L: 1677 - return 1; // L: 1678 - } else if (var0 == 3175) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1681 - return 1; // L: 1682 - } else if (var0 == 3176) { - return 1; // L: 1685 - } else if (var0 == 3177) { - return 1; // L: 1688 - } else if (var0 == 3178) { - --UrlRequester.Interpreter_stringStackSize; // L: 1691 - return 1; // L: 1692 - } else if (var0 == 3179) { - return 1; // L: 1695 - } else if (var0 == 3180) { - --UrlRequester.Interpreter_stringStackSize; // L: 1698 - return 1; // L: 1699 - } else { - return 2; // L: 1701 - } - } - } - } - } - } - - @ObfuscatedName("kd") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;ZI)Ljava/lang/String;", - garbageValue = "-1211610671" - ) - static String method2157(String var0, boolean var1) { - String var2 = var1 ? "https://" : "http://"; // L: 11544 - if (Client.gameBuild == 1) { // L: 11545 - var0 = var0 + "-wtrc"; - } else if (Client.gameBuild == 2) { // L: 11546 - var0 = var0 + "-wtqa"; - } else if (Client.gameBuild == 3) { // L: 11547 - var0 = var0 + "-wtwip"; - } else if (Client.gameBuild == 5) { // L: 11548 - var0 = var0 + "-wti"; - } else if (Client.gameBuild == 4) { // L: 11549 - var0 = "local"; - } - - String var3 = ""; // L: 11550 - if (WorldMapRegion.field281 != null) { // L: 11551 - var3 = "/p=" + WorldMapRegion.field281; - } - - String var4 = "runescape.com"; // L: 11552 - return var2 + var0 + "." + var4 + "/l=" + FontName.clientLanguage + "/a=" + TextureProvider.field1561 + var3 + "/"; // L: 11553 + return var5; } } diff --git a/runescape-client/src/main/java/NPCDefinition.java b/runescape-client/src/main/java/NPCDefinition.java index a1b04755ff..3f0ca30c25 100644 --- a/runescape-client/src/main/java/NPCDefinition.java +++ b/runescape-client/src/main/java/NPCDefinition.java @@ -4,580 +4,604 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jn") +@ObfuscatedName("jd") @Implements("NPCDefinition") public class NPCDefinition extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("NpcDefinition_archive") - public static AbstractArchive NpcDefinition_archive; - @ObfuscatedName("b") + static AbstractArchive NpcDefinition_archive; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("NpcDefinition_modelArchive") - public static AbstractArchive NpcDefinition_modelArchive; - @ObfuscatedName("l") + static AbstractArchive NpcDefinition_modelArchive; + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("NpcDefinition_cached") static EvictingDualNodeHashTable NpcDefinition_cached; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("NpcDefinition_cachedModels") static EvictingDualNodeHashTable NpcDefinition_cachedModels; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -241449157 + intValue = 1827419891 ) @Export("id") public int id; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("name") public String name; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = 2022516453 + intValue = 1550442265 ) @Export("size") public int size; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("models") int[] models; - @ObfuscatedName("u") - int[] field3492; - @ObfuscatedName("t") + @ObfuscatedName("l") + int[] field3502; + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = 397566937 + intValue = 336574561 ) @Export("idleSequence") public int idleSequence; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedGetter( - intValue = 1249905269 + intValue = -673738421 ) @Export("turnLeftSequence") public int turnLeftSequence; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedGetter( - intValue = 1539158423 + intValue = -884212635 ) @Export("turnRightSequence") public int turnRightSequence; - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedGetter( - intValue = -1135124357 + intValue = -497441899 ) @Export("walkSequence") public int walkSequence; - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedGetter( - intValue = -1656626847 + intValue = -1479864431 ) @Export("walkBackSequence") public int walkBackSequence; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedGetter( - intValue = 2010823165 + intValue = 1205423787 ) @Export("walkLeftSequence") public int walkLeftSequence; - @ObfuscatedName("r") + @ObfuscatedName("f") @ObfuscatedGetter( - intValue = 1791628875 + intValue = -948681777 ) @Export("walkRightSequence") public int walkRightSequence; - @ObfuscatedName("y") + @ObfuscatedName("a") @Export("recolorFrom") short[] recolorFrom; - @ObfuscatedName("s") + @ObfuscatedName("b") @Export("recolorTo") short[] recolorTo; - @ObfuscatedName("j") + @ObfuscatedName("y") @Export("retextureFrom") short[] retextureFrom; - @ObfuscatedName("w") + @ObfuscatedName("r") @Export("retextureTo") short[] retextureTo; - @ObfuscatedName("v") + @ObfuscatedName("q") @Export("actions") public String[] actions; - @ObfuscatedName("d") + @ObfuscatedName("g") @Export("drawMapDot") public boolean drawMapDot; - @ObfuscatedName("a") + @ObfuscatedName("s") @ObfuscatedGetter( - intValue = 1396717947 + intValue = 1734384763 ) @Export("combatLevel") public int combatLevel; - @ObfuscatedName("g") + @ObfuscatedName("o") @ObfuscatedGetter( - intValue = 9158797 + intValue = 2070711827 ) @Export("widthScale") int widthScale; - @ObfuscatedName("h") + @ObfuscatedName("k") @ObfuscatedGetter( - intValue = -174548931 + intValue = 1419724991 ) @Export("heightScale") int heightScale; - @ObfuscatedName("i") + @ObfuscatedName("d") @Export("isVisible") public boolean isVisible; - @ObfuscatedName("ab") + @ObfuscatedName("an") @ObfuscatedGetter( - intValue = 917052789 + intValue = -493625907 ) @Export("ambient") int ambient; - @ObfuscatedName("ac") + @ObfuscatedName("aj") @ObfuscatedGetter( - intValue = -787194049 + intValue = 1808853841 ) @Export("contrast") int contrast; - @ObfuscatedName("ao") + @ObfuscatedName("ax") @ObfuscatedGetter( - intValue = -1315228899 + intValue = -185118159 ) @Export("headIconPrayer") public int headIconPrayer; - @ObfuscatedName("af") + @ObfuscatedName("ag") @ObfuscatedGetter( - intValue = -2018130609 + intValue = -46619171 ) @Export("rotation") public int rotation; - @ObfuscatedName("av") + @ObfuscatedName("au") @Export("transforms") public int[] transforms; - @ObfuscatedName("ar") + @ObfuscatedName("as") @ObfuscatedGetter( - intValue = -1301084267 + intValue = 1883823959 ) @Export("transformVarbit") int transformVarbit; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @ObfuscatedGetter( - intValue = 281561835 + intValue = -1506306671 ) @Export("transformVarp") int transformVarp; - @ObfuscatedName("ah") + @ObfuscatedName("ac") @Export("isInteractable") public boolean isInteractable; - @ObfuscatedName("az") + @ObfuscatedName("ak") @Export("isClickable") public boolean isClickable; - @ObfuscatedName("ak") + @ObfuscatedName("av") @Export("isFollower") public boolean isFollower; - @ObfuscatedName("au") + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "Lll;" + descriptor = "Lla;" ) @Export("params") IterableNodeHashTable params; static { - NpcDefinition_cached = new EvictingDualNodeHashTable(64); // L: 18 - NpcDefinition_cachedModels = new EvictingDualNodeHashTable(50); // L: 19 + NpcDefinition_cached = new EvictingDualNodeHashTable(64); + NpcDefinition_cachedModels = new EvictingDualNodeHashTable(50); } NPCDefinition() { - this.name = "null"; // L: 21 - this.size = 1; // L: 22 - this.idleSequence = -1; // L: 25 - this.turnLeftSequence = -1; // L: 26 - this.turnRightSequence = -1; // L: 27 - this.walkSequence = -1; // L: 28 - this.walkBackSequence = -1; // L: 29 - this.walkLeftSequence = -1; // L: 30 - this.walkRightSequence = -1; // L: 31 - this.actions = new String[5]; // L: 36 - this.drawMapDot = true; // L: 37 - this.combatLevel = -1; // L: 38 - this.widthScale = 128; // L: 39 - this.heightScale = 128; // L: 40 - this.isVisible = false; // L: 41 - this.ambient = 0; // L: 42 - this.contrast = 0; // L: 43 - this.headIconPrayer = -1; // L: 44 - this.rotation = 32; // L: 45 - this.transformVarbit = -1; // L: 47 - this.transformVarp = -1; // L: 48 - this.isInteractable = true; // L: 49 - this.isClickable = true; // L: 50 - this.isFollower = false; // L: 51 - } // L: 54 + this.name = "null"; + this.size = 1; + this.idleSequence = -1; + this.turnLeftSequence = -1; + this.turnRightSequence = -1; + this.walkSequence = -1; + this.walkBackSequence = -1; + this.walkLeftSequence = -1; + this.walkRightSequence = -1; + this.actions = new String[5]; + this.drawMapDot = true; + this.combatLevel = -1; + this.widthScale = 128; + this.heightScale = 128; + this.isVisible = false; + this.ambient = 0; + this.contrast = 0; + this.headIconPrayer = -1; + this.rotation = 32; + this.transformVarbit = -1; + this.transformVarp = -1; + this.isInteractable = true; + this.isClickable = true; + this.isFollower = false; + } - @ObfuscatedName("b") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "60755671" + garbageValue = "1458839985" ) @Export("postDecode") void postDecode() { - } // L: 68 + } - @ObfuscatedName("l") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lkb;B)V", - garbageValue = "1" + descriptor = "(Lkj;I)V", + garbageValue = "-174515624" ) @Export("decode") void decode(Buffer var1) { while (true) { - int var2 = var1.readUnsignedByte(); // L: 72 - if (var2 == 0) { // L: 73 - return; // L: 76 + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; } - this.decodeNext(var1, var2); // L: 74 + this.decodeNext(var1, var2); } } - @ObfuscatedName("m") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "-1883780506" + descriptor = "(Lkj;IB)V", + garbageValue = "-100" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { int var3; int var4; - if (var2 == 1) { // L: 79 - var3 = var1.readUnsignedByte(); // L: 80 - this.models = new int[var3]; // L: 81 + if (var2 == 1) { + var3 = var1.readUnsignedByte(); + this.models = new int[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 82 + for (var4 = 0; var4 < var3; ++var4) { this.models[var4] = var1.readUnsignedShort(); } - } else if (var2 == 2) { // L: 84 + } else if (var2 == 2) { this.name = var1.readStringCp1252NullTerminated(); - } else if (var2 == 12) { // L: 85 + } else if (var2 == 12) { this.size = var1.readUnsignedByte(); - } else if (var2 == 13) { // L: 86 + } else if (var2 == 13) { this.idleSequence = var1.readUnsignedShort(); - } else if (var2 == 14) { // L: 87 + } else if (var2 == 14) { this.walkSequence = var1.readUnsignedShort(); - } else if (var2 == 15) { // L: 88 + } else if (var2 == 15) { this.turnLeftSequence = var1.readUnsignedShort(); - } else if (var2 == 16) { // L: 89 + } else if (var2 == 16) { this.turnRightSequence = var1.readUnsignedShort(); - } else if (var2 == 17) { // L: 90 - this.walkSequence = var1.readUnsignedShort(); // L: 91 - this.walkBackSequence = var1.readUnsignedShort(); // L: 92 - this.walkLeftSequence = var1.readUnsignedShort(); // L: 93 - this.walkRightSequence = var1.readUnsignedShort(); // L: 94 - } else if (var2 >= 30 && var2 < 35) { // L: 96 - this.actions[var2 - 30] = var1.readStringCp1252NullTerminated(); // L: 97 - if (this.actions[var2 - 30].equalsIgnoreCase("Hidden")) { // L: 98 + } else if (var2 == 17) { + this.walkSequence = var1.readUnsignedShort(); + this.walkBackSequence = var1.readUnsignedShort(); + this.walkLeftSequence = var1.readUnsignedShort(); + this.walkRightSequence = var1.readUnsignedShort(); + } else if (var2 >= 30 && var2 < 35) { + this.actions[var2 - 30] = var1.readStringCp1252NullTerminated(); + if (this.actions[var2 - 30].equalsIgnoreCase("Hidden")) { this.actions[var2 - 30] = null; } - } else if (var2 == 40) { // L: 100 - var3 = var1.readUnsignedByte(); // L: 101 - this.recolorFrom = new short[var3]; // L: 102 - this.recolorTo = new short[var3]; // L: 103 + } else if (var2 == 40) { + var3 = var1.readUnsignedByte(); + this.recolorFrom = new short[var3]; + this.recolorTo = new short[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 104 - this.recolorFrom[var4] = (short)var1.readUnsignedShort(); // L: 105 - this.recolorTo[var4] = (short)var1.readUnsignedShort(); // L: 106 + for (var4 = 0; var4 < var3; ++var4) { + this.recolorFrom[var4] = (short)var1.readUnsignedShort(); + this.recolorTo[var4] = (short)var1.readUnsignedShort(); } - } else if (var2 == 41) { // L: 109 - var3 = var1.readUnsignedByte(); // L: 110 - this.retextureFrom = new short[var3]; // L: 111 - this.retextureTo = new short[var3]; // L: 112 + } else if (var2 == 41) { + var3 = var1.readUnsignedByte(); + this.retextureFrom = new short[var3]; + this.retextureTo = new short[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 113 - this.retextureFrom[var4] = (short)var1.readUnsignedShort(); // L: 114 - this.retextureTo[var4] = (short)var1.readUnsignedShort(); // L: 115 + for (var4 = 0; var4 < var3; ++var4) { + this.retextureFrom[var4] = (short)var1.readUnsignedShort(); + this.retextureTo[var4] = (short)var1.readUnsignedShort(); } - } else if (var2 == 60) { // L: 118 - var3 = var1.readUnsignedByte(); // L: 119 - this.field3492 = new int[var3]; // L: 120 + } else if (var2 == 60) { + var3 = var1.readUnsignedByte(); + this.field3502 = new int[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 121 - this.field3492[var4] = var1.readUnsignedShort(); + for (var4 = 0; var4 < var3; ++var4) { + this.field3502[var4] = var1.readUnsignedShort(); } - } else if (var2 == 93) { // L: 123 + } else if (var2 == 93) { this.drawMapDot = false; - } else if (var2 == 95) { // L: 124 + } else if (var2 == 95) { this.combatLevel = var1.readUnsignedShort(); - } else if (var2 == 97) { // L: 125 + } else if (var2 == 97) { this.widthScale = var1.readUnsignedShort(); - } else if (var2 == 98) { // L: 126 + } else if (var2 == 98) { this.heightScale = var1.readUnsignedShort(); - } else if (var2 == 99) { // L: 127 + } else if (var2 == 99) { this.isVisible = true; - } else if (var2 == 100) { // L: 128 + } else if (var2 == 100) { this.ambient = var1.readByte(); - } else if (var2 == 101) { // L: 129 + } else if (var2 == 101) { this.contrast = var1.readByte() * 5; - } else if (var2 == 102) { // L: 130 + } else if (var2 == 102) { this.headIconPrayer = var1.readUnsignedShort(); - } else if (var2 == 103) { // L: 131 + } else if (var2 == 103) { this.rotation = var1.readUnsignedShort(); - } else if (var2 != 106 && var2 != 118) { // L: 132 - if (var2 == 107) { // L: 150 + } else if (var2 != 106 && var2 != 118) { + if (var2 == 107) { this.isInteractable = false; - } else if (var2 == 109) { // L: 151 + } else if (var2 == 109) { this.isClickable = false; - } else if (var2 == 111) { // L: 152 + } else if (var2 == 111) { this.isFollower = true; - } else if (var2 == 249) { // L: 153 - this.params = InvDefinition.readStringIntParameters(var1, this.params); + } else if (var2 == 249) { + this.params = NetSocket.readStringIntParameters(var1, this.params); } } else { - this.transformVarbit = var1.readUnsignedShort(); // L: 133 - if (this.transformVarbit == 65535) { // L: 134 + this.transformVarbit = var1.readUnsignedShort(); + if (this.transformVarbit == 65535) { this.transformVarbit = -1; } - this.transformVarp = var1.readUnsignedShort(); // L: 135 - if (this.transformVarp == 65535) { // L: 136 + this.transformVarp = var1.readUnsignedShort(); + if (this.transformVarp == 65535) { this.transformVarp = -1; } - var3 = -1; // L: 137 - if (var2 == 118) { // L: 138 - var3 = var1.readUnsignedShort(); // L: 139 - if (var3 == 65535) { // L: 140 + var3 = -1; + if (var2 == 118) { + var3 = var1.readUnsignedShort(); + if (var3 == 65535) { var3 = -1; } } - var4 = var1.readUnsignedByte(); // L: 142 - this.transforms = new int[var4 + 2]; // L: 143 + var4 = var1.readUnsignedByte(); + this.transforms = new int[var4 + 2]; - for (int var5 = 0; var5 <= var4; ++var5) { // L: 144 - this.transforms[var5] = var1.readUnsignedShort(); // L: 145 - if (this.transforms[var5] == 65535) { // L: 146 + for (int var5 = 0; var5 <= var4; ++var5) { + this.transforms[var5] = var1.readUnsignedShort(); + if (this.transforms[var5] == 65535) { this.transforms[var5] = -1; } } - this.transforms[var4 + 1] = var3; // L: 148 + this.transforms[var4 + 1] = var3; } - } // L: 155 + } - @ObfuscatedName("z") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(Ljg;ILjg;II)Leh;", - garbageValue = "2096354381" + descriptor = "(Ljy;ILjy;IB)Leh;", + garbageValue = "86" ) @Export("getModel") public final Model getModel(SequenceDefinition var1, int var2, SequenceDefinition var3, int var4) { - if (this.transforms != null) { // L: 158 - NPCDefinition var12 = this.transform(); // L: 159 - return var12 == null ? null : var12.getModel(var1, var2, var3, var4); // L: 160 161 + if (this.transforms != null) { + NPCDefinition var12 = this.transform(); + return var12 == null ? null : var12.getModel(var1, var2, var3, var4); } else { - Model var5 = (Model)NpcDefinition_cachedModels.get((long)this.id); // L: 163 - if (var5 == null) { // L: 164 - boolean var6 = false; // L: 165 + Model var5 = (Model)NpcDefinition_cachedModels.get((long)this.id); + if (var5 == null) { + boolean var6 = false; - for (int var7 = 0; var7 < this.models.length; ++var7) { // L: 166 + for (int var7 = 0; var7 < this.models.length; ++var7) { if (!NpcDefinition_modelArchive.tryLoadFile(this.models[var7], 0)) { var6 = true; } } - if (var6) { // L: 167 + if (var6) { return null; } - ModelData[] var8 = new ModelData[this.models.length]; // L: 169 + ModelData[] var8 = new ModelData[this.models.length]; int var9; - for (var9 = 0; var9 < this.models.length; ++var9) { // L: 170 + for (var9 = 0; var9 < this.models.length; ++var9) { var8[var9] = ModelData.ModelData_get(NpcDefinition_modelArchive, this.models[var9], 0); } ModelData var10; - if (var8.length == 1) { // L: 171 + if (var8.length == 1) { var10 = var8[0]; } else { - var10 = new ModelData(var8, var8.length); // L: 172 + var10 = new ModelData(var8, var8.length); } - if (this.recolorFrom != null) { // L: 173 - for (var9 = 0; var9 < this.recolorFrom.length; ++var9) { // L: 174 - var10.recolor(this.recolorFrom[var9], this.recolorTo[var9]); // L: 175 + if (this.recolorFrom != null) { + for (var9 = 0; var9 < this.recolorFrom.length; ++var9) { + var10.recolor(this.recolorFrom[var9], this.recolorTo[var9]); } } - if (this.retextureFrom != null) { // L: 178 - for (var9 = 0; var9 < this.retextureFrom.length; ++var9) { // L: 179 - var10.retexture(this.retextureFrom[var9], this.retextureTo[var9]); // L: 180 + if (this.retextureFrom != null) { + for (var9 = 0; var9 < this.retextureFrom.length; ++var9) { + var10.retexture(this.retextureFrom[var9], this.retextureTo[var9]); } } - var5 = var10.toModel(this.ambient + 64, this.contrast + 850, -30, -50, -30); // L: 183 - NpcDefinition_cachedModels.put(var5, (long)this.id); // L: 184 + var5 = var10.toModel(this.ambient + 64, this.contrast + 850, -30, -50, -30); + NpcDefinition_cachedModels.put(var5, (long)this.id); } Model var11; - if (var1 != null && var3 != null) { // L: 187 + if (var1 != null && var3 != null) { var11 = var1.applyTransformations(var5, var2, var3, var4); - } else if (var1 != null) { // L: 188 + } else if (var1 != null) { var11 = var1.transformActorModel(var5, var2); - } else if (var3 != null) { // L: 189 + } else if (var3 != null) { var11 = var3.transformActorModel(var5, var4); } else { - var11 = var5.toSharedSequenceModel(true); // L: 190 + var11 = var5.toSharedSequenceModel(true); } - if (this.widthScale != 128 || this.heightScale != 128) { // L: 191 + if (this.widthScale != 128 || this.heightScale != 128) { var11.scale(this.widthScale, this.heightScale, this.widthScale); } - return var11; // L: 192 + return var11; } } - @ObfuscatedName("q") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(B)Len;", - garbageValue = "17" + descriptor = "(I)Les;", + garbageValue = "-1865075990" ) @Export("getModelData") public final ModelData getModelData() { - if (this.transforms != null) { // L: 196 - NPCDefinition var7 = this.transform(); // L: 197 - return var7 == null ? null : var7.getModelData(); // L: 198 199 - } else if (this.field3492 == null) { // L: 201 + if (this.transforms != null) { + NPCDefinition var7 = this.transform(); + return var7 == null ? null : var7.getModelData(); + } else if (this.field3502 == null) { return null; } else { - boolean var1 = false; // L: 202 + boolean var1 = false; - for (int var2 = 0; var2 < this.field3492.length; ++var2) { // L: 203 - if (!NpcDefinition_modelArchive.tryLoadFile(this.field3492[var2], 0)) { + for (int var2 = 0; var2 < this.field3502.length; ++var2) { + if (!NpcDefinition_modelArchive.tryLoadFile(this.field3502[var2], 0)) { var1 = true; } } - if (var1) { // L: 204 + if (var1) { return null; } else { - ModelData[] var5 = new ModelData[this.field3492.length]; // L: 205 + ModelData[] var5 = new ModelData[this.field3502.length]; - for (int var3 = 0; var3 < this.field3492.length; ++var3) { // L: 206 - var5[var3] = ModelData.ModelData_get(NpcDefinition_modelArchive, this.field3492[var3], 0); + for (int var3 = 0; var3 < this.field3502.length; ++var3) { + var5[var3] = ModelData.ModelData_get(NpcDefinition_modelArchive, this.field3502[var3], 0); } ModelData var6; if (var5.length == 1) { - var6 = var5[0]; // L: 208 + var6 = var5[0]; } else { - var6 = new ModelData(var5, var5.length); // L: 209 + var6 = new ModelData(var5, var5.length); } int var4; - if (this.recolorFrom != null) { // L: 210 - for (var4 = 0; var4 < this.recolorFrom.length; ++var4) { // L: 211 - var6.recolor(this.recolorFrom[var4], this.recolorTo[var4]); // L: 212 + if (this.recolorFrom != null) { + for (var4 = 0; var4 < this.recolorFrom.length; ++var4) { + var6.recolor(this.recolorFrom[var4], this.recolorTo[var4]); } } - if (this.retextureFrom != null) { // L: 215 - for (var4 = 0; var4 < this.retextureFrom.length; ++var4) { // L: 216 - var6.retexture(this.retextureFrom[var4], this.retextureTo[var4]); // L: 217 + if (this.retextureFrom != null) { + for (var4 = 0; var4 < this.retextureFrom.length; ++var4) { + var6.retexture(this.retextureFrom[var4], this.retextureTo[var4]); } } - return var6; // L: 220 + return var6; } } } - @ObfuscatedName("k") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "(I)Ljn;", - garbageValue = "275766044" + descriptor = "(B)Ljd;", + garbageValue = "-51" ) @Export("transform") public final NPCDefinition transform() { - int var1 = -1; // L: 224 - if (this.transformVarbit != -1) { // L: 225 - var1 = ApproximateRouteStrategy.getVarbit(this.transformVarbit); - } else if (this.transformVarp != -1) { // L: 226 + int var1 = -1; + if (this.transformVarbit != -1) { + var1 = Coord.getVarbit(this.transformVarbit); + } else if (this.transformVarp != -1) { var1 = Varps.Varps_main[this.transformVarp]; } int var2; - if (var1 >= 0 && var1 < this.transforms.length - 1) { // L: 228 - var2 = this.transforms[var1]; // L: 229 + if (var1 >= 0 && var1 < this.transforms.length - 1) { + var2 = this.transforms[var1]; } else { var2 = this.transforms[this.transforms.length - 1]; } - return var2 != -1 ? Clock.getNpcDefinition(var2) : null; // L: 230 231 + return var2 != -1 ? WorldMapIcon_0.getNpcDefinition(var2) : null; } - @ObfuscatedName("c") + @ObfuscatedName("l") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "2069847739" + garbageValue = "1926927124" ) @Export("transformIsVisible") public boolean transformIsVisible() { - if (this.transforms == null) { // L: 235 + if (this.transforms == null) { return true; } else { - int var1 = -1; // L: 236 - if (this.transformVarbit != -1) { // L: 237 - var1 = ApproximateRouteStrategy.getVarbit(this.transformVarbit); - } else if (this.transformVarp != -1) { // L: 238 + int var1 = -1; + if (this.transformVarbit != -1) { + var1 = Coord.getVarbit(this.transformVarbit); + } else if (this.transformVarp != -1) { var1 = Varps.Varps_main[this.transformVarp]; } - if (var1 >= 0 && var1 < this.transforms.length) { // L: 239 - return this.transforms[var1] != -1; // L: 240 + if (var1 >= 0 && var1 < this.transforms.length) { + return this.transforms[var1] != -1; } else { return this.transforms[this.transforms.length - 1] != -1; } } } - @ObfuscatedName("u") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "(IIB)I", - garbageValue = "54" + descriptor = "(III)I", + garbageValue = "2117097592" ) @Export("getIntParam") public int getIntParam(int var1, int var2) { - IterableNodeHashTable var4 = this.params; // L: 245 + IterableNodeHashTable var4 = this.params; int var3; - if (var4 == null) { // L: 247 - var3 = var2; // L: 248 + if (var4 == null) { + var3 = var2; } else { - IntegerNode var5 = (IntegerNode)var4.get((long)var1); // L: 251 - if (var5 == null) { // L: 252 - var3 = var2; // L: 253 + IntegerNode var5 = (IntegerNode)var4.get((long)var1); + if (var5 == null) { + var3 = var2; } else { - var3 = var5.integer; // L: 256 + var3 = var5.integer; } } - return var3; // L: 258 + return var3; } - @ObfuscatedName("t") + @ObfuscatedName("u") @ObfuscatedSignature( descriptor = "(ILjava/lang/String;I)Ljava/lang/String;", - garbageValue = "-1966664867" + garbageValue = "-1136396836" ) @Export("getStringParam") public String getStringParam(int var1, String var2) { - return WorldMapSection0.method307(this.params, var1, var2); // L: 262 + IterableNodeHashTable var4 = this.params; + String var3; + if (var4 == null) { + var3 = var2; + } else { + ObjectNode var5 = (ObjectNode)var4.get((long)var1); + if (var5 == null) { + var3 = var2; + } else { + var3 = (String)var5.obj; + } + } + + return var3; + } + + @ObfuscatedName("kt") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-1068618315" + ) + static final void method4759(int var0) { + if (class41.loadInterface(var0)) { + Skeleton.drawModelComponents(class9.Widget_interfaceComponents[var0], -1); + } } } diff --git a/runescape-client/src/main/java/NanoClock.java b/runescape-client/src/main/java/NanoClock.java index 1af9961f66..a19eeca207 100644 --- a/runescape-client/src/main/java/NanoClock.java +++ b/runescape-client/src/main/java/NanoClock.java @@ -4,55 +4,55 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fx") +@ObfuscatedName("fb") @Implements("NanoClock") public class NanoClock extends Clock { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedGetter( - longValue = 531777541003154129L + longValue = 4167164667386910969L ) @Export("lastTimeNano") long lastTimeNano; - NanoClock() { - this.lastTimeNano = System.nanoTime(); // L: 10 - } // L: 11 + public NanoClock() { + this.lastTimeNano = System.nanoTime(); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "345512591" + garbageValue = "2095078818" ) @Export("mark") public void mark() { - this.lastTimeNano = System.nanoTime(); // L: 14 - } // L: 15 + this.lastTimeNano = System.nanoTime(); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(III)I", - garbageValue = "-837141414" + garbageValue = "-680717242" ) @Export("wait") public int wait(int var1, int var2) { - long var3 = 1000000L * (long)var2; // L: 18 - long var5 = this.lastTimeNano - System.nanoTime(); // L: 19 - if (var5 < var3) { // L: 20 + long var3 = 1000000L * (long)var2; + long var5 = this.lastTimeNano - System.nanoTime(); + if (var5 < var3) { var5 = var3; } - WorldMapSection3.sleepExact(var5 / 1000000L); // L: 21 - long var7 = System.nanoTime(); // L: 22 + class236.sleepExact(var5 / 1000000L); + long var7 = System.nanoTime(); int var9; - for (var9 = 0; var9 < 10 && (var9 < 1 || this.lastTimeNano < var7); this.lastTimeNano += 1000000L * (long)var1) { // L: 23 24 26 - ++var9; // L: 25 + for (var9 = 0; var9 < 10 && (var9 < 1 || this.lastTimeNano < var7); this.lastTimeNano += (long)var1 * 1000000L) { + ++var9; } - if (this.lastTimeNano < var7) { // L: 28 + if (this.lastTimeNano < var7) { this.lastTimeNano = var7; } - return var9; // L: 29 + return var9; } } diff --git a/runescape-client/src/main/java/NetCache.java b/runescape-client/src/main/java/NetCache.java index 7039dbac40..8e3a4450de 100644 --- a/runescape-client/src/main/java/NetCache.java +++ b/runescape-client/src/main/java/NetCache.java @@ -1,326 +1,158 @@ -import java.util.Date; import java.util.zip.CRC32; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("ib") +@ObfuscatedName("im") @Implements("NetCache") public class NetCache { - @ObfuscatedName("f") + @ObfuscatedName("se") + @ObfuscatedGetter( + intValue = 761250751 + ) + @Export("foundItemIndex") + static int foundItemIndex; + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Llv;" + descriptor = "Llr;" ) @Export("NetCache_socket") public static AbstractSocket NetCache_socket; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -1001154339 + intValue = 964305567 ) @Export("NetCache_loadTime") public static int NetCache_loadTime; - @ObfuscatedName("m") + @ObfuscatedName("x") + @ObfuscatedGetter( + longValue = 3297605902831572423L + ) + public static long field3195; + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Llp;" + descriptor = "Lls;" ) @Export("NetCache_pendingPriorityWrites") public static NodeHashTable NetCache_pendingPriorityWrites; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 2117538937 + intValue = 1897511423 ) @Export("NetCache_pendingPriorityWritesCount") public static int NetCache_pendingPriorityWritesCount; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Llp;" + descriptor = "Lls;" ) @Export("NetCache_pendingPriorityResponses") public static NodeHashTable NetCache_pendingPriorityResponses; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -1463205401 + intValue = -732248525 ) @Export("NetCache_pendingPriorityResponsesCount") public static int NetCache_pendingPriorityResponsesCount; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "Ljv;" + descriptor = "Lji;" ) @Export("NetCache_pendingWritesQueue") public static DualNodeDeque NetCache_pendingWritesQueue; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "Llp;" + descriptor = "Lls;" ) @Export("NetCache_pendingWrites") public static NodeHashTable NetCache_pendingWrites; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = -479037579 + intValue = -513904171 ) @Export("NetCache_pendingWritesCount") public static int NetCache_pendingWritesCount; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "Llp;" + descriptor = "Lls;" ) @Export("NetCache_pendingResponses") public static NodeHashTable NetCache_pendingResponses; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedGetter( - intValue = -1632634127 + intValue = -370784475 ) @Export("NetCache_pendingResponsesCount") public static int NetCache_pendingResponsesCount; - @ObfuscatedName("n") - static boolean field3200; - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedSignature( - descriptor = "Liz;" + descriptor = "Lia;" ) @Export("NetCache_currentResponse") public static NetFileRequest NetCache_currentResponse; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedSignature( - descriptor = "Lkb;" + descriptor = "Lkj;" ) @Export("NetCache_responseHeaderBuffer") public static Buffer NetCache_responseHeaderBuffer; - @ObfuscatedName("r") - @ObfuscatedSignature( - descriptor = "Lkb;" - ) - @Export("NetCache_responseArchiveBuffer") - public static Buffer NetCache_responseArchiveBuffer; - @ObfuscatedName("y") - @ObfuscatedGetter( - intValue = -795437201 - ) - public static int field3190; - @ObfuscatedName("j") - @Export("NetCache_crc") - static CRC32 NetCache_crc; - @ObfuscatedName("v") - @ObfuscatedSignature( - descriptor = "[Lid;" - ) - @Export("NetCache_archives") - static Archive[] NetCache_archives; - @ObfuscatedName("d") - public static byte field3207; @ObfuscatedName("a") @ObfuscatedGetter( - intValue = 473266479 + intValue = -602672523 + ) + public static int field3207; + @ObfuscatedName("y") + @Export("NetCache_crc") + public static CRC32 NetCache_crc; + @ObfuscatedName("q") + @ObfuscatedSignature( + descriptor = "[Lil;" + ) + @Export("NetCache_archives") + public static Archive[] NetCache_archives; + @ObfuscatedName("g") + public static byte field3210; + @ObfuscatedName("s") + @ObfuscatedGetter( + intValue = -1412570605 ) @Export("NetCache_crcMismatches") public static int NetCache_crcMismatches; - @ObfuscatedName("g") + @ObfuscatedName("o") @ObfuscatedGetter( - intValue = 1034207799 + intValue = -1701913817 ) @Export("NetCache_ioExceptions") public static int NetCache_ioExceptions; static { - NetCache_loadTime = 0; // L: 13 - NetCache_pendingPriorityWrites = new NodeHashTable(4096); // L: 15 - NetCache_pendingPriorityWritesCount = 0; // L: 16 - NetCache_pendingPriorityResponses = new NodeHashTable(32); // L: 17 - NetCache_pendingPriorityResponsesCount = 0; // L: 18 - NetCache_pendingWritesQueue = new DualNodeDeque(); // L: 19 - NetCache_pendingWrites = new NodeHashTable(4096); // L: 20 - NetCache_pendingWritesCount = 0; // L: 21 - NetCache_pendingResponses = new NodeHashTable(4096); // L: 22 - NetCache_pendingResponsesCount = 0; // L: 23 - NetCache_responseHeaderBuffer = new Buffer(8); // L: 26 - field3190 = 0; // L: 28 - NetCache_crc = new CRC32(); // L: 30 - NetCache_archives = new Archive[256]; // L: 32 - field3207 = 0; // L: 33 - NetCache_crcMismatches = 0; // L: 34 - NetCache_ioExceptions = 0; // L: 35 + NetCache_loadTime = 0; + NetCache_pendingPriorityWrites = new NodeHashTable(4096); + NetCache_pendingPriorityWritesCount = 0; + NetCache_pendingPriorityResponses = new NodeHashTable(32); + NetCache_pendingPriorityResponsesCount = 0; + NetCache_pendingWritesQueue = new DualNodeDeque(); + NetCache_pendingWrites = new NodeHashTable(4096); + NetCache_pendingWritesCount = 0; + NetCache_pendingResponses = new NodeHashTable(4096); + NetCache_pendingResponsesCount = 0; + NetCache_responseHeaderBuffer = new Buffer(8); + field3207 = 0; + NetCache_crc = new CRC32(); + NetCache_archives = new Archive[256]; + field3210 = 0; + NetCache_crcMismatches = 0; + NetCache_ioExceptions = 0; } - @ObfuscatedName("ar") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "-979858945" + descriptor = "(CB)Z", + garbageValue = "-111" ) - static int method4461(int var0, Script var1, boolean var2) { - String var3; - int var9; - if (var0 == ScriptOpcodes.APPEND_NUM) { // L: 2575 - var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2576 - var9 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2577 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3 + var9; // L: 2578 - return 1; // L: 2579 - } else { - String var4; - if (var0 == ScriptOpcodes.APPEND) { // L: 2581 - UrlRequester.Interpreter_stringStackSize -= 2; // L: 2582 - var3 = Interpreter.Interpreter_stringStack[UrlRequester.Interpreter_stringStackSize]; // L: 2583 - var4 = Interpreter.Interpreter_stringStack[UrlRequester.Interpreter_stringStackSize + 1]; // L: 2584 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3 + var4; // L: 2585 - return 1; // L: 2586 - } else if (var0 == ScriptOpcodes.APPEND_SIGNNUM) { // L: 2588 - var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2589 - var9 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2590 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3 + class197.intToString(var9, true); // L: 2591 - return 1; // L: 2592 - } else if (var0 == ScriptOpcodes.LOWERCASE) { // L: 2594 - var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2595 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3.toLowerCase(); // L: 2596 - return 1; // L: 2597 - } else { - int var6; - int var10; - if (var0 == ScriptOpcodes.FROMDATE) { // L: 2599 - var10 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2600 - long var13 = ((long)var10 + 11745L) * 86400000L; // L: 2601 - Interpreter.Interpreter_calendar.setTime(new Date(var13)); // L: 2602 - var6 = Interpreter.Interpreter_calendar.get(5); // L: 2603 - int var17 = Interpreter.Interpreter_calendar.get(2); // L: 2604 - int var8 = Interpreter.Interpreter_calendar.get(1); // L: 2605 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var6 + "-" + Interpreter.Interpreter_MONTHS[var17] + "-" + var8; // L: 2606 - return 1; // L: 2607 - } else if (var0 != ScriptOpcodes.TEXT_GENDER) { // L: 2609 - if (var0 == ScriptOpcodes.TOSTRING) { // L: 2617 - var10 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2618 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = Integer.toString(var10); // L: 2619 - return 1; // L: 2620 - } else if (var0 == ScriptOpcodes.COMPARE) { // L: 2622 - UrlRequester.Interpreter_stringStackSize -= 2; // L: 2623 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = EnumDefinition.method4714(DevicePcmPlayerProvider.compareStrings(Interpreter.Interpreter_stringStack[UrlRequester.Interpreter_stringStackSize], Interpreter.Interpreter_stringStack[UrlRequester.Interpreter_stringStackSize + 1], FontName.clientLanguage)); // L: 2624 - return 1; // L: 2625 - } else { - int var5; - byte[] var11; - Font var12; - if (var0 == ScriptOpcodes.PARAHEIGHT) { // L: 2627 - var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2628 - MilliClock.Interpreter_intStackSize -= 2; // L: 2629 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2630 - var5 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2631 - var11 = class8.archive13.takeFile(var5, 0); // L: 2632 - var12 = new Font(var11); // L: 2633 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var12.lineCount(var3, var9); // L: 2634 - return 1; // L: 2635 - } else if (var0 == ScriptOpcodes.PARAWIDTH) { // L: 2637 - var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2638 - MilliClock.Interpreter_intStackSize -= 2; // L: 2639 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2640 - var5 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2641 - var11 = class8.archive13.takeFile(var5, 0); // L: 2642 - var12 = new Font(var11); // L: 2643 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var12.lineWidth(var3, var9); // L: 2644 - return 1; // L: 2645 - } else if (var0 == ScriptOpcodes.TEXT_SWITCH) { // L: 2647 - UrlRequester.Interpreter_stringStackSize -= 2; // L: 2648 - var3 = Interpreter.Interpreter_stringStack[UrlRequester.Interpreter_stringStackSize]; // L: 2649 - var4 = Interpreter.Interpreter_stringStack[UrlRequester.Interpreter_stringStackSize + 1]; // L: 2650 - if (Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1) { // L: 2651 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3; - } else { - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var4; // L: 2652 - } - - return 1; // L: 2653 - } else if (var0 == ScriptOpcodes.ESCAPE) { // L: 2655 - var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2656 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = AbstractFont.escapeBrackets(var3); // L: 2657 - return 1; // L: 2658 - } else if (var0 == ScriptOpcodes.APPEND_CHAR) { // L: 2660 - var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2661 - var9 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2662 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3 + (char)var9; // L: 2663 - return 1; // L: 2664 - } else if (var0 == ScriptOpcodes.CHAR_ISPRINTABLE) { // L: 2666 - var10 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2667 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = PcmPlayer.isCharPrintable((char)var10) ? 1 : 0; // L: 2668 - return 1; // L: 2669 - } else if (var0 == ScriptOpcodes.CHAR_ISALPHANUMERIC) { // L: 2671 - var10 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2672 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = class3.isAlphaNumeric((char)var10) ? 1 : 0; // L: 2673 - return 1; // L: 2674 - } else if (var0 == ScriptOpcodes.CHAR_ISALPHA) { // L: 2676 - var10 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2677 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = AbstractWorldMapData.isCharAlphabetic((char)var10) ? 1 : 0; // L: 2678 - return 1; // L: 2679 - } else if (var0 == ScriptOpcodes.CHAR_ISNUMERIC) { // L: 2681 - var10 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2682 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = class1.isDigit((char)var10) ? 1 : 0; // L: 2683 - return 1; // L: 2684 - } else if (var0 == ScriptOpcodes.STRING_LENGTH) { // L: 2686 - var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2687 - if (var3 != null) { // L: 2688 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.length(); - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 2689 - } - - return 1; // L: 2690 - } else if (var0 == ScriptOpcodes.SUBSTRING) { // L: 2692 - var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2693 - MilliClock.Interpreter_intStackSize -= 2; // L: 2694 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2695 - var5 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2696 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3.substring(var9, var5); // L: 2697 - return 1; // L: 2698 - } else if (var0 == ScriptOpcodes.REMOVETAGS) { // L: 2700 - var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2701 - StringBuilder var15 = new StringBuilder(var3.length()); // L: 2702 - boolean var16 = false; // L: 2703 - - for (var6 = 0; var6 < var3.length(); ++var6) { // L: 2704 - char var7 = var3.charAt(var6); // L: 2705 - if (var7 == '<') { // L: 2706 - var16 = true; - } else if (var7 == '>') { // L: 2707 - var16 = false; - } else if (!var16) { // L: 2708 - var15.append(var7); - } - } - - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var15.toString(); // L: 2710 - return 1; // L: 2711 - } else if (var0 == ScriptOpcodes.STRING_INDEXOF_CHAR) { // L: 2713 - var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2714 - var9 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2715 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.indexOf(var9); // L: 2716 - return 1; // L: 2717 - } else if (var0 == ScriptOpcodes.STRING_INDEXOF_STRING) { // L: 2719 - UrlRequester.Interpreter_stringStackSize -= 2; // L: 2720 - var3 = Interpreter.Interpreter_stringStack[UrlRequester.Interpreter_stringStackSize]; // L: 2721 - var4 = Interpreter.Interpreter_stringStack[UrlRequester.Interpreter_stringStackSize + 1]; // L: 2722 - var5 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2723 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.indexOf(var4, var5); // L: 2724 - return 1; // L: 2725 - } else if (var0 == ScriptOpcodes.UPPERCASE) { // L: 2727 - var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2728 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3.toUpperCase(); // L: 2729 - return 1; // L: 2730 - } else { - return 2; // L: 2732 - } - } - } else { - UrlRequester.Interpreter_stringStackSize -= 2; // L: 2610 - var3 = Interpreter.Interpreter_stringStack[UrlRequester.Interpreter_stringStackSize]; // L: 2611 - var4 = Interpreter.Interpreter_stringStack[UrlRequester.Interpreter_stringStackSize + 1]; // L: 2612 - if (PlayerType.localPlayer.appearance != null && PlayerType.localPlayer.appearance.isFemale) { // L: 2613 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var4; - } else { - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3; // L: 2614 - } - - return 1; // L: 2615 - } - } - } + @Export("isCharAlphabetic") + public static boolean isCharAlphabetic(char var0) { + return var0 >= 'A' && var0 <= 'Z' || var0 >= 'a' && var0 <= 'z'; } } diff --git a/runescape-client/src/main/java/NetFileRequest.java b/runescape-client/src/main/java/NetFileRequest.java index d0ae3b0bd4..0dd5a34ba8 100644 --- a/runescape-client/src/main/java/NetFileRequest.java +++ b/runescape-client/src/main/java/NetFileRequest.java @@ -4,85 +4,65 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("iz") +@ObfuscatedName("ia") @Implements("NetFileRequest") public class NetFileRequest extends DualNode { - @ObfuscatedName("m") - @ObfuscatedGetter( - intValue = 1462127955 - ) - @Export("clientType") - public static int clientType; - @ObfuscatedName("f") + @ObfuscatedName("eu") @ObfuscatedSignature( - descriptor = "Lid;" + descriptor = "Lil;" + ) + @Export("archive20") + static Archive archive20; + @ObfuscatedName("gc") + @ObfuscatedGetter( + intValue = 2065438809 + ) + @Export("baseX") + static int baseX; + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "Lil;" ) @Export("archive") - Archive archive; - @ObfuscatedName("b") + public Archive archive; + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -350124813 + intValue = -257937565 ) @Export("crc") - int crc; - @ObfuscatedName("l") + public int crc; + @ObfuscatedName("x") @Export("padding") - byte padding; + public byte padding; NetFileRequest() { - } // L: 10 - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(II)[B", - garbageValue = "1806020760" - ) - @Export("ByteArrayPool_getArray") - public static synchronized byte[] ByteArrayPool_getArray(int var0) { - return ByteArrayPool.ByteArrayPool_getArrayBool(var0, false); // L: 72 } - @ObfuscatedName("m") + @ObfuscatedName("kw") @ObfuscatedSignature( - descriptor = "(IIII)V", - garbageValue = "1930792528" + descriptor = "(IIII)Lbt;", + garbageValue = "102160869" ) - static final void method4293(int var0, int var1, int var2) { - int var3; - for (var3 = 0; var3 < 8; ++var3) { // L: 97 - for (int var4 = 0; var4 < 8; ++var4) { // L: 98 - Tiles.Tiles_heights[var0][var3 + var1][var4 + var2] = 0; - } + static final InterfaceParent method4189(int var0, int var1, int var2) { + InterfaceParent var3 = new InterfaceParent(); + var3.group = var1; + var3.type = var2; + Client.interfaceParents.put(var3, (long)var0); + class304.Widget_resetModelFrames(var1); + Widget var4 = CollisionMap.getWidget(var0); + CollisionMap.invalidateWidget(var4); + if (Client.meslayerContinueWidget != null) { + CollisionMap.invalidateWidget(Client.meslayerContinueWidget); + Client.meslayerContinueWidget = null; } - if (var1 > 0) { // L: 100 - for (var3 = 1; var3 < 8; ++var3) { // L: 101 - Tiles.Tiles_heights[var0][var1][var3 + var2] = Tiles.Tiles_heights[var0][var1 - 1][var3 + var2]; - } + WorldMapData_1.method767(); + PendingSpawn.revalidateWidgetScroll(class9.Widget_interfaceComponents[var0 >> 16], var4, false); + VarpDefinition.runWidgetOnLoadListener(var1); + if (Client.rootInterface != -1) { + WorldMapRectangle.runIntfCloseListeners(Client.rootInterface, 1); } - if (var2 > 0) { // L: 103 - for (var3 = 1; var3 < 8; ++var3) { // L: 104 - Tiles.Tiles_heights[var0][var3 + var1][var2] = Tiles.Tiles_heights[var0][var3 + var1][var2 - 1]; - } - } - - if (var1 > 0 && Tiles.Tiles_heights[var0][var1 - 1][var2] != 0) { // L: 106 - Tiles.Tiles_heights[var0][var1][var2] = Tiles.Tiles_heights[var0][var1 - 1][var2]; - } else if (var2 > 0 && Tiles.Tiles_heights[var0][var1][var2 - 1] != 0) { // L: 107 - Tiles.Tiles_heights[var0][var1][var2] = Tiles.Tiles_heights[var0][var1][var2 - 1]; - } else if (var1 > 0 && var2 > 0 && Tiles.Tiles_heights[var0][var1 - 1][var2 - 1] != 0) { // L: 108 - Tiles.Tiles_heights[var0][var1][var2] = Tiles.Tiles_heights[var0][var1 - 1][var2 - 1]; - } - - } // L: 109 - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1725199015" - ) - public static void method4292() { - FloorOverlayDefinition.FloorOverlayDefinition_cached.clear(); // L: 94 - } // L: 95 + return var3; + } } diff --git a/runescape-client/src/main/java/NetSocket.java b/runescape-client/src/main/java/NetSocket.java index c1cfabe613..1f2380ca9e 100644 --- a/runescape-client/src/main/java/NetSocket.java +++ b/runescape-client/src/main/java/NetSocket.java @@ -9,223 +9,217 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fa") +@ObfuscatedName("fw") @Implements("NetSocket") public final class NetSocket extends AbstractSocket implements Runnable { - @ObfuscatedName("rx") - @ObfuscatedSignature( - descriptor = "Ldw;" - ) - @Export("decimator") - static Decimator decimator; - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("inputStream") InputStream inputStream; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("outputStream") OutputStream outputStream; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("socket") Socket socket; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("isClosed") boolean isClosed; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lfl;" + descriptor = "Lfa;" ) @Export("taskHandler") TaskHandler taskHandler; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lfu;" + descriptor = "Lfd;" ) @Export("task") Task task; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("outBuffer") byte[] outBuffer; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = -67963133 + intValue = -1457420997 ) @Export("outLength") int outLength; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = -599652531 + intValue = 976468503 ) @Export("outOffset") int outOffset; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("exceptionWriting") boolean exceptionWriting; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedGetter( - intValue = 1080404053 + intValue = 464417007 ) @Export("bufferLength") final int bufferLength; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedGetter( - intValue = -273885437 + intValue = -1893306917 ) @Export("maxPacketLength") final int maxPacketLength; @ObfuscatedSignature( - descriptor = "(Ljava/net/Socket;Lfl;I)V" + descriptor = "(Ljava/net/Socket;Lfa;I)V" ) public NetSocket(Socket var1, TaskHandler var2, int var3) throws IOException { - this.isClosed = false; // L: 16 - this.outLength = 0; // L: 20 - this.outOffset = 0; // L: 21 - this.exceptionWriting = false; // L: 22 - this.taskHandler = var2; // L: 28 - this.socket = var1; // L: 29 - this.bufferLength = var3; // L: 30 - this.maxPacketLength = var3 - 100; // L: 31 - this.socket.setSoTimeout(30000); // L: 32 - this.socket.setTcpNoDelay(true); // L: 33 - this.socket.setReceiveBufferSize(65536); // L: 34 - this.socket.setSendBufferSize(65536); // L: 35 - this.inputStream = this.socket.getInputStream(); // L: 36 - this.outputStream = this.socket.getOutputStream(); // L: 37 - } // L: 38 + this.isClosed = false; + this.outLength = 0; + this.outOffset = 0; + this.exceptionWriting = false; + this.taskHandler = var2; + this.socket = var1; + this.bufferLength = var3; + this.maxPacketLength = var3 - 100; + this.socket.setSoTimeout(30000); + this.socket.setTcpNoDelay(true); + this.socket.setReceiveBufferSize(65536); + this.socket.setSendBufferSize(65536); + this.inputStream = this.socket.getInputStream(); + this.outputStream = this.socket.getOutputStream(); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1983450651" + descriptor = "(B)V", + garbageValue = "-10" ) @Export("close") public void close() { - if (!this.isClosed) { // L: 41 - synchronized(this) { // L: 42 - this.isClosed = true; // L: 43 - this.notifyAll(); // L: 44 - } // L: 45 + if (!this.isClosed) { + synchronized(this) { + this.isClosed = true; + this.notifyAll(); + } - if (this.task != null) { // L: 46 - while (this.task.status == 0) { // L: 47 - WorldMapSection3.sleepExact(1L); // L: 48 + if (this.task != null) { + while (this.task.status == 0) { + class236.sleepExact(1L); } - if (this.task.status == 1) { // L: 50 + if (this.task.status == 1) { try { - ((Thread)this.task.result).join(); // L: 52 - } catch (InterruptedException var3) { // L: 54 + ((Thread)this.task.result).join(); + } catch (InterruptedException var3) { } } } - this.task = null; // L: 57 + this.task = null; } - } // L: 58 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "1" + garbageValue = "0" ) @Export("readUnsignedByte") public int readUnsignedByte() throws IOException { - return this.isClosed ? 0 : this.inputStream.read(); // L: 65 66 + return this.isClosed ? 0 : this.inputStream.read(); } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "933186835" + garbageValue = "1974658106" ) @Export("available") public int available() throws IOException { - return this.isClosed ? 0 : this.inputStream.available(); // L: 70 71 + return this.isClosed ? 0 : this.inputStream.available(); } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-916126565" + descriptor = "(IB)Z", + garbageValue = "-7" ) @Export("isAvailable") public boolean isAvailable(int var1) throws IOException { - if (this.isClosed) { // L: 75 + if (this.isClosed) { return false; } else { - return this.inputStream.available() >= var1; // L: 76 + return this.inputStream.available() >= var1; } } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "([BIII)I", - garbageValue = "1049423117" + descriptor = "([BIIB)I", + garbageValue = "98" ) @Export("read") public int read(byte[] var1, int var2, int var3) throws IOException { - if (this.isClosed) { // L: 80 + if (this.isClosed) { return 0; } else { int var4; int var5; - for (var4 = var3; var3 > 0; var3 -= var5) { // L: 81 82 86 - var5 = this.inputStream.read(var1, var2, var3); // L: 83 - if (var5 <= 0) { // L: 84 + for (var4 = var3; var3 > 0; var3 -= var5) { + var5 = this.inputStream.read(var1, var2, var3); + if (var5 <= 0) { throw new EOFException(); } - var2 += var5; // L: 85 + var2 += var5; } - return var4; // L: 88 + return var4; } } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "([BIIB)V", - garbageValue = "79" + descriptor = "([BIII)V", + garbageValue = "2119529681" ) @Export("write0") void write0(byte[] var1, int var2, int var3) throws IOException { - if (!this.isClosed) { // L: 92 - if (this.exceptionWriting) { // L: 93 - this.exceptionWriting = false; // L: 94 - throw new IOException(); // L: 95 + if (!this.isClosed) { + if (this.exceptionWriting) { + this.exceptionWriting = false; + throw new IOException(); } else { - if (this.outBuffer == null) { // L: 97 + if (this.outBuffer == null) { this.outBuffer = new byte[this.bufferLength]; } - synchronized(this) { // L: 98 - for (int var5 = 0; var5 < var3; ++var5) { // L: 99 - this.outBuffer[this.outOffset] = var1[var5 + var2]; // L: 100 - this.outOffset = (this.outOffset + 1) % this.bufferLength; // L: 101 - if ((this.outLength + this.maxPacketLength) % this.bufferLength == this.outOffset) { // L: 102 - throw new IOException(); // L: 103 + synchronized(this) { + for (int var5 = 0; var5 < var3; ++var5) { + this.outBuffer[this.outOffset] = var1[var5 + var2]; + this.outOffset = (this.outOffset + 1) % this.bufferLength; + if ((this.maxPacketLength + this.outLength) % this.bufferLength == this.outOffset) { + throw new IOException(); } } - if (this.task == null) { // L: 106 - this.task = this.taskHandler.newThreadTask(this, 3); // L: 107 + if (this.task == null) { + this.task = this.taskHandler.newThreadTask(this, 3); } - this.notifyAll(); // L: 109 + this.notifyAll(); } } } - } // L: 111 + } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( descriptor = "([BIII)V", - garbageValue = "1456512196" + garbageValue = "-2028715299" ) @Export("write") public void write(byte[] var1, int var2, int var3) throws IOException { - this.write0(var1, var2, var3); // L: 160 - } // L: 161 + this.write0(var1, var2, var3); + } public void run() { try { @@ -233,73 +227,205 @@ public final class NetSocket extends AbstractSocket implements Runnable { label84: { int var1; int var2; - synchronized(this) { // L: 118 - if (this.outLength == this.outOffset) { // L: 119 - if (this.isClosed) { // L: 120 + synchronized(this) { + if (this.outLength == this.outOffset) { + if (this.isClosed) { break label84; } try { - this.wait(); // L: 122 - } catch (InterruptedException var10) { // L: 124 + this.wait(); + } catch (InterruptedException var10) { } } - var2 = this.outLength; // L: 126 - if (this.outOffset >= this.outLength) { // L: 127 + var2 = this.outLength; + if (this.outOffset >= this.outLength) { var1 = this.outOffset - this.outLength; } else { - var1 = this.bufferLength - this.outLength; // L: 128 + var1 = this.bufferLength - this.outLength; } } - if (var1 <= 0) { // L: 130 + if (var1 <= 0) { continue; } try { - this.outputStream.write(this.outBuffer, var2, var1); // L: 132 - } catch (IOException var9) { // L: 134 - this.exceptionWriting = true; // L: 135 + this.outputStream.write(this.outBuffer, var2, var1); + } catch (IOException var9) { + this.exceptionWriting = true; } - this.outLength = (var1 + this.outLength) % this.bufferLength; // L: 137 + this.outLength = (var1 + this.outLength) % this.bufferLength; try { - if (this.outOffset == this.outLength) { // L: 139 + if (this.outOffset == this.outLength) { this.outputStream.flush(); } - } catch (IOException var8) { // L: 141 - this.exceptionWriting = true; // L: 142 + } catch (IOException var8) { + this.exceptionWriting = true; } continue; } try { - if (this.inputStream != null) { // L: 147 + if (this.inputStream != null) { this.inputStream.close(); } - if (this.outputStream != null) { // L: 148 + if (this.outputStream != null) { this.outputStream.close(); } - if (this.socket != null) { // L: 149 + if (this.socket != null) { this.socket.close(); } - } catch (IOException var7) { // L: 151 + } catch (IOException var7) { } - this.outBuffer = null; // L: 152 + this.outBuffer = null; break; } - } catch (Exception var12) { // L: 154 - PacketWriter.RunException_sendStackTrace((String)null, var12); // L: 155 + } catch (Exception var12) { + PlayerAppearance.RunException_sendStackTrace((String)null, var12); } - } // L: 157 + } protected void finalize() { - this.close(); // L: 61 - } // L: 62 + this.close(); + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Lkj;Lla;I)Lla;", + garbageValue = "-1038873122" + ) + @Export("readStringIntParameters") + static final IterableNodeHashTable readStringIntParameters(Buffer var0, IterableNodeHashTable var1) { + int var2 = var0.readUnsignedByte(); + int var3; + if (var1 == null) { + var3 = World.method1870(var2); + var1 = new IterableNodeHashTable(var3); + } + + for (var3 = 0; var3 < var2; ++var3) { + boolean var4 = var0.readUnsignedByte() == 1; + int var5 = var0.readMedium(); + Object var6; + if (var4) { + var6 = new ObjectNode(var0.readStringCp1252NullTerminated()); + } else { + var6 = new IntegerNode(var0.readInt()); + } + + var1.put((Node)var6, (long)var5); + } + + return var1; + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(B)[Llj;", + garbageValue = "8" + ) + @Export("FillMode_values") + public static class333[] FillMode_values() { + return new class333[]{class333.field3897, class333.field3898, class333.SOLID}; + } + + @ObfuscatedName("gh") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "327738104" + ) + static final void method3608() { + if (GameObject.Client_plane != Client.field874) { + Client.field874 = GameObject.Client_plane; + int var0 = GameObject.Client_plane; + int[] var1 = class25.sceneMinimapSprite.pixels; + int var2 = var1.length; + + int var3; + for (var3 = 0; var3 < var2; ++var3) { + var1[var3] = 0; + } + + int var4; + int var5; + for (var3 = 1; var3 < 103; ++var3) { + var4 = (103 - var3) * 2048 + 24628; + + for (var5 = 1; var5 < 103; ++var5) { + if ((Tiles.Tiles_renderFlags[var0][var5][var3] & 24) == 0) { + ArchiveLoader.scene.drawTileMinimap(var1, var4, 512, var0, var5, var3); + } + + if (var0 < 3 && (Tiles.Tiles_renderFlags[var0 + 1][var5][var3] & 8) != 0) { + ArchiveLoader.scene.drawTileMinimap(var1, var4, 512, var0 + 1, var5, var3); + } + + var4 += 4; + } + } + + var3 = (238 + (int)(Math.random() * 20.0D) - 10 << 16) + (238 + (int)(Math.random() * 20.0D) - 10 << 8) + (238 + (int)(Math.random() * 20.0D) - 10); + var4 = 238 + (int)(Math.random() * 20.0D) - 10 << 16; + class25.sceneMinimapSprite.setRaster(); + + int var6; + for (var5 = 1; var5 < 103; ++var5) { + for (var6 = 1; var6 < 103; ++var6) { + if ((Tiles.Tiles_renderFlags[var0][var6][var5] & 24) == 0) { + class1.drawObject(var0, var6, var5, var3, var4); + } + + if (var0 < 3 && (Tiles.Tiles_renderFlags[var0 + 1][var6][var5] & 8) != 0) { + class1.drawObject(var0 + 1, var6, var5, var3, var4); + } + } + } + + Client.mapIconCount = 0; + + for (var5 = 0; var5 < 104; ++var5) { + for (var6 = 0; var6 < 104; ++var6) { + long var7 = ArchiveLoader.scene.getFloorDecorationTag(GameObject.Client_plane, var5, var6); + if (0L != var7) { + int var9 = Occluder.Entity_unpackID(var7); + int var10 = WorldMapDecoration.getObjectDefinition(var9).mapIconId; + if (var10 >= 0 && UserComparator10.WorldMapElement_get(var10).field3263) { + Client.mapIcons[Client.mapIconCount] = UserComparator10.WorldMapElement_get(var10).getSpriteBool(false); + Client.mapIconXs[Client.mapIconCount] = var5; + Client.mapIconYs[Client.mapIconCount] = var6; + ++Client.mapIconCount; + } + } + } + } + + WorldMapIcon_0.rasterProvider.apply(); + } + + } + + @ObfuscatedName("hc") + @ObfuscatedSignature( + descriptor = "(IIB)I", + garbageValue = "-60" + ) + static int method3587(int var0, int var1) { + int var2 = var1 - 334; + if (var2 < 0) { + var2 = 0; + } else if (var2 > 100) { + var2 = 100; + } + + int var3 = (Client.zoomWidth - Client.zoomHeight) * var2 / 100 + Client.zoomHeight; + return var0 * var3 / 256; + } } diff --git a/runescape-client/src/main/java/Node.java b/runescape-client/src/main/java/Node.java index 88b486f10a..5af853481e 100644 --- a/runescape-client/src/main/java/Node.java +++ b/runescape-client/src/main/java/Node.java @@ -3,39 +3,39 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gn") +@ObfuscatedName("gu") @Implements("Node") public class Node { - @ObfuscatedName("cm") + @ObfuscatedName("cu") @Export("key") public long key; - @ObfuscatedName("cb") + @ObfuscatedName("ct") @ObfuscatedSignature( - descriptor = "Lgn;" + descriptor = "Lgu;" ) @Export("previous") public Node previous; - @ObfuscatedName("ct") + @ObfuscatedName("ck") @ObfuscatedSignature( - descriptor = "Lgn;" + descriptor = "Lgu;" ) @Export("next") public Node next; - @ObfuscatedName("fm") + @ObfuscatedName("fg") @Export("remove") public void remove() { - if (this.next != null) { // L: 9 - this.next.previous = this.previous; // L: 10 - this.previous.next = this.next; // L: 11 - this.previous = null; // L: 12 - this.next = null; // L: 13 + if (this.next != null) { + this.next.previous = this.previous; + this.previous.next = this.next; + this.previous = null; + this.next = null; } - } // L: 14 + } - @ObfuscatedName("fg") + @ObfuscatedName("fd") @Export("hasNext") public boolean hasNext() { - return this.next != null; // L: 17 + return this.next != null; } } diff --git a/runescape-client/src/main/java/NodeDeque.java b/runescape-client/src/main/java/NodeDeque.java index 8efa45c4fb..90f310922a 100644 --- a/runescape-client/src/main/java/NodeDeque.java +++ b/runescape-client/src/main/java/NodeDeque.java @@ -3,181 +3,181 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ja") +@ObfuscatedName("jp") @Implements("NodeDeque") public class NodeDeque { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lgn;" + descriptor = "Lgu;" ) @Export("sentinel") public Node sentinel; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lgn;" + descriptor = "Lgu;" ) @Export("current") Node current; public NodeDeque() { - this.sentinel = new Node(); // L: 6 - this.sentinel.previous = this.sentinel; // L: 10 - this.sentinel.next = this.sentinel; // L: 11 - } // L: 12 + this.sentinel = new Node(); + this.sentinel.previous = this.sentinel; + this.sentinel.next = this.sentinel; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("clear") public void clear() { while (true) { - Node var1 = this.sentinel.previous; // L: 16 - if (var1 == this.sentinel) { // L: 17 - this.current = null; // L: 20 - return; // L: 21 + Node var1 = this.sentinel.previous; + if (var1 == this.sentinel) { + this.current = null; + return; } - var1.remove(); // L: 18 + var1.remove(); } } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lgn;)V" + descriptor = "(Lgu;)V" ) @Export("addFirst") public void addFirst(Node var1) { - if (var1.next != null) { // L: 24 + if (var1.next != null) { var1.remove(); } - var1.next = this.sentinel.next; // L: 25 - var1.previous = this.sentinel; // L: 26 - var1.next.previous = var1; // L: 27 - var1.previous.next = var1; // L: 28 - } // L: 29 + var1.next = this.sentinel.next; + var1.previous = this.sentinel; + var1.next.previous = var1; + var1.previous.next = var1; + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lgn;)V" + descriptor = "(Lgu;)V" ) @Export("addLast") public void addLast(Node var1) { - if (var1.next != null) { // L: 32 + if (var1.next != null) { var1.remove(); } - var1.next = this.sentinel; // L: 33 - var1.previous = this.sentinel.previous; // L: 34 - var1.next.previous = var1; // L: 35 - var1.previous.next = var1; // L: 36 - } // L: 37 - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "()Lgn;" - ) - @Export("removeLast") - public Node removeLast() { - Node var1 = this.sentinel.previous; // L: 48 - if (var1 == this.sentinel) { - return null; // L: 49 - } else { - var1.remove(); // L: 50 - return var1; // L: 51 - } - } - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "()Lgn;" - ) - @Export("removeFirst") - public Node removeFirst() { - Node var1 = this.sentinel.next; // L: 55 - if (var1 == this.sentinel) { - return null; // L: 56 - } else { - var1.remove(); // L: 57 - return var1; // L: 58 - } - } - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "()Lgn;" - ) - @Export("last") - public Node last() { - Node var1 = this.sentinel.previous; // L: 62 - if (var1 == this.sentinel) { // L: 63 - this.current = null; // L: 64 - return null; // L: 65 - } else { - this.current = var1.previous; // L: 67 - return var1; // L: 68 - } - } - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "()Lgn;" - ) - @Export("first") - public Node first() { - Node var1 = this.sentinel.next; // L: 72 - if (var1 == this.sentinel) { // L: 73 - this.current = null; // L: 74 - return null; // L: 75 - } else { - this.current = var1.next; // L: 77 - return var1; // L: 78 - } - } - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "()Lgn;" - ) - @Export("previous") - public Node previous() { - Node var1 = this.current; // L: 82 - if (var1 == this.sentinel) { // L: 83 - this.current = null; // L: 84 - return null; // L: 85 - } else { - this.current = var1.previous; // L: 87 - return var1; // L: 88 - } + var1.next = this.sentinel; + var1.previous = this.sentinel.previous; + var1.next.previous = var1; + var1.previous.next = var1; } @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "()Lgn;" + descriptor = "()Lgu;" ) - @Export("next") - public Node next() { - Node var1 = this.current; // L: 92 - if (var1 == this.sentinel) { // L: 93 - this.current = null; // L: 94 - return null; // L: 95 + @Export("removeLast") + public Node removeLast() { + Node var1 = this.sentinel.previous; + if (var1 == this.sentinel) { + return null; } else { - this.current = var1.next; // L: 97 - return var1; // L: 98 + var1.remove(); + return var1; } } - @ObfuscatedName("m") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(Lgn;Lgn;)V" + descriptor = "()Lgu;" + ) + @Export("removeFirst") + public Node removeFirst() { + Node var1 = this.sentinel.next; + if (var1 == this.sentinel) { + return null; + } else { + var1.remove(); + return var1; + } + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "()Lgu;" + ) + @Export("last") + public Node last() { + Node var1 = this.sentinel.previous; + if (var1 == this.sentinel) { + this.current = null; + return null; + } else { + this.current = var1.previous; + return var1; + } + } + + @ObfuscatedName("p") + @ObfuscatedSignature( + descriptor = "()Lgu;" + ) + @Export("first") + public Node first() { + Node var1 = this.sentinel.next; + if (var1 == this.sentinel) { + this.current = null; + return null; + } else { + this.current = var1.next; + return var1; + } + } + + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "()Lgu;" + ) + @Export("previous") + public Node previous() { + Node var1 = this.current; + if (var1 == this.sentinel) { + this.current = null; + return null; + } else { + this.current = var1.previous; + return var1; + } + } + + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "()Lgu;" + ) + @Export("next") + public Node next() { + Node var1 = this.current; + if (var1 == this.sentinel) { + this.current = null; + return null; + } else { + this.current = var1.next; + return var1; + } + } + + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "(Lgu;Lgu;)V" ) @Export("NodeDeque_addBefore") public static void NodeDeque_addBefore(Node var0, Node var1) { - if (var0.next != null) { // L: 40 + if (var0.next != null) { var0.remove(); } - var0.next = var1.next; // L: 41 - var0.previous = var1; // L: 42 - var0.next.previous = var0; // L: 43 - var0.previous.next = var0; // L: 44 - } // L: 45 + var0.next = var1.next; + var0.previous = var1; + var0.next.previous = var0; + var0.previous.next = var0; + } } diff --git a/runescape-client/src/main/java/NodeHashTable.java b/runescape-client/src/main/java/NodeHashTable.java index 2dc2b7c0c0..fcf120205b 100644 --- a/runescape-client/src/main/java/NodeHashTable.java +++ b/runescape-client/src/main/java/NodeHashTable.java @@ -3,117 +3,117 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lp") +@ObfuscatedName("ls") @Implements("NodeHashTable") public final class NodeHashTable { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("size") int size; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "[Lgn;" + descriptor = "[Lgu;" ) @Export("buckets") Node[] buckets; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lgn;" + descriptor = "Lgu;" ) @Export("currentGet") Node currentGet; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lgn;" + descriptor = "Lgu;" ) @Export("current") Node current; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("index") int index; public NodeHashTable(int var1) { - this.index = 0; // L: 10 - this.size = var1; // L: 13 - this.buckets = new Node[var1]; // L: 14 + this.index = 0; + this.size = var1; + this.buckets = new Node[var1]; - for (int var2 = 0; var2 < var1; ++var2) { // L: 15 - Node var3 = this.buckets[var2] = new Node(); // L: 16 - var3.previous = var3; // L: 17 - var3.next = var3; // L: 18 + for (int var2 = 0; var2 < var1; ++var2) { + Node var3 = this.buckets[var2] = new Node(); + var3.previous = var3; + var3.next = var3; } - } // L: 20 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(J)Lgn;" + descriptor = "(J)Lgu;" ) @Export("get") public Node get(long var1) { - Node var3 = this.buckets[(int)(var1 & (long)(this.size - 1))]; // L: 23 + Node var3 = this.buckets[(int)(var1 & (long)(this.size - 1))]; - for (this.currentGet = var3.previous; var3 != this.currentGet; this.currentGet = this.currentGet.previous) { // L: 24 25 31 - if (this.currentGet.key == var1) { // L: 26 - Node var4 = this.currentGet; // L: 27 - this.currentGet = this.currentGet.previous; // L: 28 - return var4; // L: 29 + for (this.currentGet = var3.previous; var3 != this.currentGet; this.currentGet = this.currentGet.previous) { + if (this.currentGet.key == var1) { + Node var4 = this.currentGet; + this.currentGet = this.currentGet.previous; + return var4; } } - this.currentGet = null; // L: 33 - return null; // L: 34 + this.currentGet = null; + return null; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lgn;J)V" + descriptor = "(Lgu;J)V" ) @Export("put") public void put(Node var1, long var2) { - if (var1.next != null) { // L: 38 + if (var1.next != null) { var1.remove(); } - Node var4 = this.buckets[(int)(var2 & (long)(this.size - 1))]; // L: 39 - var1.next = var4.next; // L: 40 - var1.previous = var4; // L: 41 - var1.next.previous = var1; // L: 42 - var1.previous.next = var1; // L: 43 - var1.key = var2; // L: 44 - } // L: 45 + Node var4 = this.buckets[(int)(var2 & (long)(this.size - 1))]; + var1.next = var4.next; + var1.previous = var4; + var1.next.previous = var1; + var1.previous.next = var1; + var1.key = var2; + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "()Lgn;" + descriptor = "()Lgu;" ) @Export("first") public Node first() { - this.index = 0; // L: 48 - return this.next(); // L: 49 + this.index = 0; + return this.next(); } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "()Lgn;" + descriptor = "()Lgu;" ) @Export("next") public Node next() { Node var1; - if (this.index > 0 && this.buckets[this.index - 1] != this.current) { // L: 53 - var1 = this.current; // L: 54 - this.current = var1.previous; // L: 55 - return var1; // L: 56 + if (this.index > 0 && this.buckets[this.index - 1] != this.current) { + var1 = this.current; + this.current = var1.previous; + return var1; } else { do { - if (this.index >= this.size) { // L: 58 - return null; // L: 65 + if (this.index >= this.size) { + return null; } - var1 = this.buckets[this.index++].previous; // L: 59 - } while(var1 == this.buckets[this.index - 1]); // L: 60 + var1 = this.buckets[this.index++].previous; + } while(var1 == this.buckets[this.index - 1]); - this.current = var1.previous; // L: 61 - return var1; // L: 62 + this.current = var1.previous; + return var1; } } } diff --git a/runescape-client/src/main/java/ObjectDefinition.java b/runescape-client/src/main/java/ObjectDefinition.java index a675fd64a9..f3c32a18eb 100644 --- a/runescape-client/src/main/java/ObjectDefinition.java +++ b/runescape-client/src/main/java/ObjectDefinition.java @@ -4,906 +4,965 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("je") +@ObfuscatedName("jm") @Implements("ObjectDefinition") public class ObjectDefinition extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("ObjectDefinition_isLowDetail") public static boolean ObjectDefinition_isLowDetail; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("ObjectDefinition_archive") public static AbstractArchive ObjectDefinition_archive; - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lib;" + ) + @Export("ObjectDefinition_modelsArchive") + public static AbstractArchive ObjectDefinition_modelsArchive; + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "Lez;" ) @Export("ObjectDefinition_cached") public static EvictingDualNodeHashTable ObjectDefinition_cached; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("ObjectDefinition_cachedModelData") public static EvictingDualNodeHashTable ObjectDefinition_cachedModelData; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("ObjectDefinition_cachedEntities") public static EvictingDualNodeHashTable ObjectDefinition_cachedEntities; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("ObjectDefinition_cachedModels") public static EvictingDualNodeHashTable ObjectDefinition_cachedModels; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "[Len;" + descriptor = "[Les;" ) - static ModelData[] field3379; - @ObfuscatedName("u") + static ModelData[] field3386; + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = 1144020119 + intValue = -719556255 ) @Export("id") public int id; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("modelIds") int[] modelIds; - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("models") int[] models; - @ObfuscatedName("o") + @ObfuscatedName("e") @Export("name") public String name; - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("recolorFrom") short[] recolorFrom; - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("recolorTo") short[] recolorTo; - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("retextureFrom") short[] retextureFrom; - @ObfuscatedName("r") + @ObfuscatedName("f") @Export("retextureTo") short[] retextureTo; - @ObfuscatedName("y") + @ObfuscatedName("a") @ObfuscatedGetter( - intValue = 665688687 + intValue = -1884883837 ) @Export("sizeX") public int sizeX; - @ObfuscatedName("s") + @ObfuscatedName("b") @ObfuscatedGetter( - intValue = 1504043589 + intValue = 1224864347 ) @Export("sizeY") public int sizeY; - @ObfuscatedName("j") + @ObfuscatedName("y") @ObfuscatedGetter( - intValue = -1832733497 + intValue = 2044365805 ) @Export("interactType") public int interactType; - @ObfuscatedName("w") + @ObfuscatedName("r") @Export("boolean1") public boolean boolean1; - @ObfuscatedName("v") + @ObfuscatedName("q") @ObfuscatedGetter( - intValue = -435501345 + intValue = -769318345 ) @Export("int1") public int int1; - @ObfuscatedName("d") + @ObfuscatedName("g") @ObfuscatedGetter( - intValue = -281320601 + intValue = 1480722935 ) @Export("clipType") int clipType; - @ObfuscatedName("a") + @ObfuscatedName("s") @Export("nonFlatShading") boolean nonFlatShading; - @ObfuscatedName("g") + @ObfuscatedName("o") @Export("modelClipped") public boolean modelClipped; - @ObfuscatedName("h") + @ObfuscatedName("k") @ObfuscatedGetter( - intValue = -1258044391 + intValue = -780408595 ) @Export("animationId") public int animationId; - @ObfuscatedName("i") + @ObfuscatedName("d") @ObfuscatedGetter( - intValue = 1153154317 + intValue = -518941775 ) @Export("int2") public int int2; - @ObfuscatedName("ab") + @ObfuscatedName("an") @ObfuscatedGetter( - intValue = -1023450155 + intValue = -1748919543 ) @Export("ambient") int ambient; - @ObfuscatedName("ac") + @ObfuscatedName("aj") @ObfuscatedGetter( - intValue = 1349857007 + intValue = 885999181 ) @Export("contrast") int contrast; - @ObfuscatedName("ao") + @ObfuscatedName("ax") @Export("actions") public String[] actions; - @ObfuscatedName("af") + @ObfuscatedName("ag") @ObfuscatedGetter( - intValue = 331561987 + intValue = -608967805 ) @Export("mapIconId") public int mapIconId; - @ObfuscatedName("av") + @ObfuscatedName("au") @ObfuscatedGetter( - intValue = -752210695 + intValue = 696114967 ) @Export("mapSceneId") public int mapSceneId; - @ObfuscatedName("ar") + @ObfuscatedName("as") @Export("isRotated") boolean isRotated; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("clipped") public boolean clipped; - @ObfuscatedName("ah") + @ObfuscatedName("ac") @ObfuscatedGetter( - intValue = -955663473 + intValue = -1812292835 ) @Export("modelSizeX") int modelSizeX; - @ObfuscatedName("az") + @ObfuscatedName("ak") @ObfuscatedGetter( - intValue = 1573303881 + intValue = -1253539583 ) @Export("modelHeight") int modelHeight; - @ObfuscatedName("ak") + @ObfuscatedName("av") @ObfuscatedGetter( - intValue = -1744645415 + intValue = 572246447 ) @Export("modelSizeY") int modelSizeY; - @ObfuscatedName("au") + @ObfuscatedName("aq") @ObfuscatedGetter( - intValue = -496099153 + intValue = 1976263041 ) @Export("offsetX") int offsetX; - @ObfuscatedName("ai") + @ObfuscatedName("ah") @ObfuscatedGetter( - intValue = -1451477221 + intValue = 1166185667 ) @Export("offsetHeight") int offsetHeight; - @ObfuscatedName("ax") + @ObfuscatedName("am") @ObfuscatedGetter( - intValue = 478900139 + intValue = -1393853851 ) @Export("offsetY") int offsetY; - @ObfuscatedName("ag") + @ObfuscatedName("aa") @Export("boolean2") public boolean boolean2; - @ObfuscatedName("aq") + @ObfuscatedName("ao") @Export("isSolid") boolean isSolid; - @ObfuscatedName("aw") + @ObfuscatedName("ab") @ObfuscatedGetter( - intValue = 442915601 + intValue = -819592679 ) @Export("int3") public int int3; - @ObfuscatedName("an") + @ObfuscatedName("aw") @Export("transforms") public int[] transforms; - @ObfuscatedName("am") + @ObfuscatedName("ap") @ObfuscatedGetter( - intValue = 1763689999 + intValue = -1488066183 ) @Export("transformVarbit") int transformVarbit; - @ObfuscatedName("aa") + @ObfuscatedName("ad") @ObfuscatedGetter( - intValue = -945520639 + intValue = 1558225089 ) @Export("transformVarp") int transformVarp; - @ObfuscatedName("at") + @ObfuscatedName("ai") @ObfuscatedGetter( - intValue = 180816565 + intValue = -1815763753 ) @Export("ambientSoundId") public int ambientSoundId; - @ObfuscatedName("as") + @ObfuscatedName("al") @ObfuscatedGetter( - intValue = 234374357 + intValue = 872359031 ) @Export("int4") public int int4; - @ObfuscatedName("aj") + @ObfuscatedName("ay") @ObfuscatedGetter( - intValue = 1129170229 + intValue = -1122049857 ) @Export("int5") public int int5; - @ObfuscatedName("ae") + @ObfuscatedName("af") @ObfuscatedGetter( - intValue = -434593727 + intValue = 677102575 ) @Export("int6") public int int6; - @ObfuscatedName("al") + @ObfuscatedName("ar") @Export("soundEffectIds") public int[] soundEffectIds; - @ObfuscatedName("ap") + @ObfuscatedName("az") + public boolean field3429; + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lll;" + descriptor = "Lla;" ) @Export("params") IterableNodeHashTable params; static { - ObjectDefinition_isLowDetail = false; // L: 17 - ObjectDefinition_cached = new EvictingDualNodeHashTable(4096); // L: 20 - ObjectDefinition_cachedModelData = new EvictingDualNodeHashTable(500); // L: 21 - ObjectDefinition_cachedEntities = new EvictingDualNodeHashTable(30); // L: 22 - ObjectDefinition_cachedModels = new EvictingDualNodeHashTable(30); // L: 23 - field3379 = new ModelData[4]; // L: 24 + ObjectDefinition_isLowDetail = false; + ObjectDefinition_cached = new EvictingDualNodeHashTable(4096); + ObjectDefinition_cachedModelData = new EvictingDualNodeHashTable(500); + ObjectDefinition_cachedEntities = new EvictingDualNodeHashTable(30); + ObjectDefinition_cachedModels = new EvictingDualNodeHashTable(30); + field3386 = new ModelData[4]; } ObjectDefinition() { - this.name = "null"; // L: 28 - this.sizeX = 1; // L: 33 - this.sizeY = 1; // L: 34 - this.interactType = 2; // L: 35 - this.boolean1 = true; // L: 36 - this.int1 = -1; // L: 37 - this.clipType = -1; // L: 38 - this.nonFlatShading = false; // L: 39 - this.modelClipped = false; // L: 40 - this.animationId = -1; // L: 41 - this.int2 = 16; // L: 42 - this.ambient = 0; // L: 43 - this.contrast = 0; // L: 44 - this.actions = new String[5]; // L: 45 - this.mapIconId = -1; // L: 46 - this.mapSceneId = -1; // L: 47 - this.isRotated = false; // L: 48 - this.clipped = true; // L: 49 - this.modelSizeX = 128; // L: 50 - this.modelHeight = 128; // L: 51 - this.modelSizeY = 128; // L: 52 - this.offsetX = 0; // L: 53 - this.offsetHeight = 0; // L: 54 - this.offsetY = 0; // L: 55 - this.boolean2 = false; // L: 56 - this.isSolid = false; // L: 57 - this.int3 = -1; // L: 58 - this.transformVarbit = -1; // L: 60 - this.transformVarp = -1; // L: 61 - this.ambientSoundId = -1; // L: 62 - this.int4 = 0; // L: 63 - this.int5 = 0; // L: 64 - this.int6 = 0; // L: 65 - } // L: 69 + this.name = "null"; + this.sizeX = 1; + this.sizeY = 1; + this.interactType = 2; + this.boolean1 = true; + this.int1 = -1; + this.clipType = -1; + this.nonFlatShading = false; + this.modelClipped = false; + this.animationId = -1; + this.int2 = 16; + this.ambient = 0; + this.contrast = 0; + this.actions = new String[5]; + this.mapIconId = -1; + this.mapSceneId = -1; + this.isRotated = false; + this.clipped = true; + this.modelSizeX = 128; + this.modelHeight = 128; + this.modelSizeY = 128; + this.offsetX = 0; + this.offsetHeight = 0; + this.offsetY = 0; + this.boolean2 = false; + this.isSolid = false; + this.int3 = -1; + this.transformVarbit = -1; + this.transformVarp = -1; + this.ambientSoundId = -1; + this.int4 = 0; + this.int5 = 0; + this.int6 = 0; + this.field3429 = true; + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(S)V", - garbageValue = "3611" + descriptor = "(I)V", + garbageValue = "-883040110" ) @Export("postDecode") void postDecode() { - if (this.int1 == -1) { // L: 88 - this.int1 = 0; // L: 89 - if (this.modelIds != null && (this.models == null || this.models[0] == 10)) { // L: 90 + if (this.int1 == -1) { + this.int1 = 0; + if (this.modelIds != null && (this.models == null || this.models[0] == 10)) { this.int1 = 1; } - for (int var1 = 0; var1 < 5; ++var1) { // L: 91 + for (int var1 = 0; var1 < 5; ++var1) { if (this.actions[var1] != null) { this.int1 = 1; } } } - if (this.int3 == -1) { // L: 93 + if (this.int3 == -1) { this.int3 = this.interactType != 0 ? 1 : 0; } - } // L: 94 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "330449784" + descriptor = "(Lkj;B)V", + garbageValue = "2" ) @Export("decode") void decode(Buffer var1) { while (true) { - int var2 = var1.readUnsignedByte(); // L: 98 - if (var2 == 0) { // L: 99 - return; // L: 102 + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; } - this.decodeNext(var1, var2); // L: 100 + this.decodeNext(var1, var2); } } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "-1557493109" + descriptor = "(Lkj;II)V", + garbageValue = "1322137078" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { int var3; int var4; - if (var2 == 1) { // L: 105 - var3 = var1.readUnsignedByte(); // L: 106 - if (var3 > 0) { // L: 107 - if (this.modelIds != null && !ObjectDefinition_isLowDetail) { // L: 108 - var1.offset += 3 * var3; // L: 116 + if (var2 == 1) { + var3 = var1.readUnsignedByte(); + if (var3 > 0) { + if (this.modelIds != null && !ObjectDefinition_isLowDetail) { + var1.offset += 3 * var3; } else { - this.models = new int[var3]; // L: 109 - this.modelIds = new int[var3]; // L: 110 + this.models = new int[var3]; + this.modelIds = new int[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 111 - this.modelIds[var4] = var1.readUnsignedShort(); // L: 112 - this.models[var4] = var1.readUnsignedByte(); // L: 113 + for (var4 = 0; var4 < var3; ++var4) { + this.modelIds[var4] = var1.readUnsignedShort(); + this.models[var4] = var1.readUnsignedByte(); } } } - } else if (var2 == 2) { // L: 119 + } else if (var2 == 2) { this.name = var1.readStringCp1252NullTerminated(); - } else if (var2 == 5) { // L: 120 - var3 = var1.readUnsignedByte(); // L: 121 - if (var3 > 0) { // L: 122 - if (this.modelIds != null && !ObjectDefinition_isLowDetail) { // L: 123 - var1.offset += var3 * 2; // L: 128 + } else if (var2 == 5) { + var3 = var1.readUnsignedByte(); + if (var3 > 0) { + if (this.modelIds != null && !ObjectDefinition_isLowDetail) { + var1.offset += 2 * var3; } else { - this.models = null; // L: 124 - this.modelIds = new int[var3]; // L: 125 + this.models = null; + this.modelIds = new int[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 126 + for (var4 = 0; var4 < var3; ++var4) { this.modelIds[var4] = var1.readUnsignedShort(); } } } - } else if (var2 == 14) { // L: 131 + } else if (var2 == 14) { this.sizeX = var1.readUnsignedByte(); - } else if (var2 == 15) { // L: 132 + } else if (var2 == 15) { this.sizeY = var1.readUnsignedByte(); - } else if (var2 == 17) { // L: 133 - this.interactType = 0; // L: 134 - this.boolean1 = false; // L: 135 - } else if (var2 == 18) { // L: 137 + } else if (var2 == 17) { + this.interactType = 0; this.boolean1 = false; - } else if (var2 == 19) { // L: 138 + } else if (var2 == 18) { + this.boolean1 = false; + } else if (var2 == 19) { this.int1 = var1.readUnsignedByte(); - } else if (var2 == 21) { // L: 139 + } else if (var2 == 21) { this.clipType = 0; - } else if (var2 == 22) { // L: 140 + } else if (var2 == 22) { this.nonFlatShading = true; - } else if (var2 == 23) { // L: 141 + } else if (var2 == 23) { this.modelClipped = true; - } else if (var2 == 24) { // L: 142 - this.animationId = var1.readUnsignedShort(); // L: 143 - if (this.animationId == 65535) { // L: 144 + } else if (var2 == 24) { + this.animationId = var1.readUnsignedShort(); + if (this.animationId == 65535) { this.animationId = -1; } - } else if (var2 == 27) { // L: 146 + } else if (var2 == 27) { this.interactType = 1; - } else if (var2 == 28) { // L: 147 + } else if (var2 == 28) { this.int2 = var1.readUnsignedByte(); - } else if (var2 == 29) { // L: 148 + } else if (var2 == 29) { this.ambient = var1.readByte(); - } else if (var2 == 39) { // L: 149 + } else if (var2 == 39) { this.contrast = var1.readByte() * 25; - } else if (var2 >= 30 && var2 < 35) { // L: 150 - this.actions[var2 - 30] = var1.readStringCp1252NullTerminated(); // L: 151 - if (this.actions[var2 - 30].equalsIgnoreCase("Hidden")) { // L: 152 + } else if (var2 >= 30 && var2 < 35) { + this.actions[var2 - 30] = var1.readStringCp1252NullTerminated(); + if (this.actions[var2 - 30].equalsIgnoreCase("Hidden")) { this.actions[var2 - 30] = null; } - } else if (var2 == 40) { // L: 154 - var3 = var1.readUnsignedByte(); // L: 155 - this.recolorFrom = new short[var3]; // L: 156 - this.recolorTo = new short[var3]; // L: 157 + } else if (var2 == 40) { + var3 = var1.readUnsignedByte(); + this.recolorFrom = new short[var3]; + this.recolorTo = new short[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 158 - this.recolorFrom[var4] = (short)var1.readUnsignedShort(); // L: 159 - this.recolorTo[var4] = (short)var1.readUnsignedShort(); // L: 160 + for (var4 = 0; var4 < var3; ++var4) { + this.recolorFrom[var4] = (short)var1.readUnsignedShort(); + this.recolorTo[var4] = (short)var1.readUnsignedShort(); } - } else if (var2 == 41) { // L: 163 - var3 = var1.readUnsignedByte(); // L: 164 - this.retextureFrom = new short[var3]; // L: 165 - this.retextureTo = new short[var3]; // L: 166 + } else if (var2 == 41) { + var3 = var1.readUnsignedByte(); + this.retextureFrom = new short[var3]; + this.retextureTo = new short[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 167 - this.retextureFrom[var4] = (short)var1.readUnsignedShort(); // L: 168 - this.retextureTo[var4] = (short)var1.readUnsignedShort(); // L: 169 + for (var4 = 0; var4 < var3; ++var4) { + this.retextureFrom[var4] = (short)var1.readUnsignedShort(); + this.retextureTo[var4] = (short)var1.readUnsignedShort(); } - } else if (var2 == 62) { // L: 172 + } else if (var2 == 62) { this.isRotated = true; - } else if (var2 == 64) { // L: 173 + } else if (var2 == 64) { this.clipped = false; - } else if (var2 == 65) { // L: 174 + } else if (var2 == 65) { this.modelSizeX = var1.readUnsignedShort(); - } else if (var2 == 66) { // L: 175 + } else if (var2 == 66) { this.modelHeight = var1.readUnsignedShort(); - } else if (var2 == 67) { // L: 176 + } else if (var2 == 67) { this.modelSizeY = var1.readUnsignedShort(); - } else if (var2 == 68) { // L: 177 + } else if (var2 == 68) { this.mapSceneId = var1.readUnsignedShort(); - } else if (var2 == 69) { // L: 178 - var1.readUnsignedByte(); // L: 179 - } else if (var2 == 70) { // L: 181 + } else if (var2 == 69) { + var1.readUnsignedByte(); + } else if (var2 == 70) { this.offsetX = var1.readShort(); - } else if (var2 == 71) { // L: 182 + } else if (var2 == 71) { this.offsetHeight = var1.readShort(); - } else if (var2 == 72) { // L: 183 + } else if (var2 == 72) { this.offsetY = var1.readShort(); - } else if (var2 == 73) { // L: 184 + } else if (var2 == 73) { this.boolean2 = true; - } else if (var2 == 74) { // L: 185 + } else if (var2 == 74) { this.isSolid = true; - } else if (var2 == 75) { // L: 186 + } else if (var2 == 75) { this.int3 = var1.readUnsignedByte(); - } else if (var2 != 77 && var2 != 92) { // L: 187 - if (var2 == 78) { // L: 205 - this.ambientSoundId = var1.readUnsignedShort(); // L: 206 - this.int4 = var1.readUnsignedByte(); // L: 207 - } else if (var2 == 79) { // L: 209 - this.int5 = var1.readUnsignedShort(); // L: 210 - this.int6 = var1.readUnsignedShort(); // L: 211 - this.int4 = var1.readUnsignedByte(); // L: 212 - var3 = var1.readUnsignedByte(); // L: 213 - this.soundEffectIds = new int[var3]; // L: 214 + } else if (var2 != 77 && var2 != 92) { + if (var2 == 78) { + this.ambientSoundId = var1.readUnsignedShort(); + this.int4 = var1.readUnsignedByte(); + } else if (var2 == 79) { + this.int5 = var1.readUnsignedShort(); + this.int6 = var1.readUnsignedShort(); + this.int4 = var1.readUnsignedByte(); + var3 = var1.readUnsignedByte(); + this.soundEffectIds = new int[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 215 + for (var4 = 0; var4 < var3; ++var4) { this.soundEffectIds[var4] = var1.readUnsignedShort(); } - } else if (var2 == 81) { // L: 217 + } else if (var2 == 81) { this.clipType = var1.readUnsignedByte() * 256; - } else if (var2 == 82) { // L: 218 + } else if (var2 == 82) { this.mapIconId = var1.readUnsignedShort(); - } else if (var2 == 249) { // L: 219 - this.params = InvDefinition.readStringIntParameters(var1, this.params); + } else if (var2 == 89) { + this.field3429 = false; + } else if (var2 == 249) { + this.params = NetSocket.readStringIntParameters(var1, this.params); } } else { - this.transformVarbit = var1.readUnsignedShort(); // L: 188 - if (this.transformVarbit == 65535) { // L: 189 + this.transformVarbit = var1.readUnsignedShort(); + if (this.transformVarbit == 65535) { this.transformVarbit = -1; } - this.transformVarp = var1.readUnsignedShort(); // L: 190 - if (this.transformVarp == 65535) { // L: 191 + this.transformVarp = var1.readUnsignedShort(); + if (this.transformVarp == 65535) { this.transformVarp = -1; } - var3 = -1; // L: 192 - if (var2 == 92) { // L: 193 - var3 = var1.readUnsignedShort(); // L: 194 - if (var3 == 65535) { // L: 195 + var3 = -1; + if (var2 == 92) { + var3 = var1.readUnsignedShort(); + if (var3 == 65535) { var3 = -1; } } - var4 = var1.readUnsignedByte(); // L: 197 - this.transforms = new int[var4 + 2]; // L: 198 + var4 = var1.readUnsignedByte(); + this.transforms = new int[var4 + 2]; - for (int var5 = 0; var5 <= var4; ++var5) { // L: 199 - this.transforms[var5] = var1.readUnsignedShort(); // L: 200 - if (this.transforms[var5] == 65535) { // L: 201 + for (int var5 = 0; var5 <= var4; ++var5) { + this.transforms[var5] = var1.readUnsignedShort(); + if (this.transforms[var5] == 65535) { this.transforms[var5] = -1; } } - this.transforms[var4 + 1] = var3; // L: 203 + this.transforms[var4 + 1] = var3; } - } // L: 221 - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-2129482612" - ) - public final boolean method4764(int var1) { - if (this.models != null) { // L: 224 - for (int var4 = 0; var4 < this.models.length; ++var4) { // L: 234 - if (this.models[var4] == var1) { // L: 235 - return GrandExchangeOfferAgeComparator.ObjectDefinition_modelsArchive.tryLoadFile(this.modelIds[var4] & 65535, 0); - } - } - - return true; // L: 237 - } else if (this.modelIds == null) { // L: 225 - return true; - } else if (var1 != 10) { // L: 226 - return true; - } else { - boolean var2 = true; // L: 227 - - for (int var3 = 0; var3 < this.modelIds.length; ++var3) { // L: 228 - var2 &= GrandExchangeOfferAgeComparator.ObjectDefinition_modelsArchive.tryLoadFile(this.modelIds[var3] & 65535, 0); // L: 229 - } - - return var2; // L: 231 - } - } - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-1494902856" - ) - @Export("needsModelFiles") - public final boolean needsModelFiles() { - if (this.modelIds == null) { // L: 242 - return true; - } else { - boolean var1 = true; // L: 243 - - for (int var2 = 0; var2 < this.modelIds.length; ++var2) { // L: 244 - var1 &= GrandExchangeOfferAgeComparator.ObjectDefinition_modelsArchive.tryLoadFile(this.modelIds[var2] & 65535, 0); // L: 245 - } - - return var1; // L: 247 - } - } - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(II[[IIIII)Lej;", - garbageValue = "184382969" - ) - @Export("getEntity") - public final Entity getEntity(int var1, int var2, int[][] var3, int var4, int var5, int var6) { - long var7; - if (this.models == null) { // L: 252 - var7 = (long)(var2 + (this.id << 10)); - } else { - var7 = (long)(var2 + (var1 << 3) + (this.id << 10)); // L: 253 - } - - Object var9 = (Entity)ObjectDefinition_cachedEntities.get(var7); // L: 254 - if (var9 == null) { // L: 255 - ModelData var10 = this.getModelData(var1, var2); // L: 256 - if (var10 == null) { // L: 257 - return null; - } - - if (!this.nonFlatShading) { // L: 258 - var9 = var10.toModel(this.ambient + 64, this.contrast + 768, -50, -10, -50); - } else { - var10.ambient = (short)(this.ambient + 64); // L: 260 - var10.contrast = (short)(this.contrast + 768); // L: 261 - var10.calculateVertexNormals(); // L: 262 - var9 = var10; // L: 263 - } - - ObjectDefinition_cachedEntities.put((DualNode)var9, var7); // L: 265 - } - - if (this.nonFlatShading) { // L: 267 - var9 = ((ModelData)var9).method2932(); // L: 268 - } - - if (this.clipType >= 0) { // L: 270 - if (var9 instanceof Model) { // L: 271 - var9 = ((Model)var9).contourGround(var3, var4, var5, var6, true, this.clipType); - } else if (var9 instanceof ModelData) { - var9 = ((ModelData)var9).method2915(var3, var4, var5, var6, true, this.clipType); // L: 272 - } - } - - return (Entity)var9; // L: 274 - } - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(II[[IIIII)Leh;", - garbageValue = "1500455873" - ) - @Export("getModel") - public final Model getModel(int var1, int var2, int[][] var3, int var4, int var5, int var6) { - long var7; - if (this.models == null) { // L: 279 - var7 = (long)(var2 + (this.id << 10)); - } else { - var7 = (long)(var2 + (var1 << 3) + (this.id << 10)); // L: 280 - } - - Model var9 = (Model)ObjectDefinition_cachedModels.get(var7); // L: 281 - if (var9 == null) { // L: 282 - ModelData var10 = this.getModelData(var1, var2); // L: 283 - if (var10 == null) { // L: 284 - return null; - } - - var9 = var10.toModel(this.ambient + 64, this.contrast + 768, -50, -10, -50); // L: 285 - ObjectDefinition_cachedModels.put(var9, var7); // L: 286 - } - - if (this.clipType >= 0) { - var9 = var9.contourGround(var3, var4, var5, var6, true, this.clipType); // L: 288 - } - - return var9; // L: 289 - } - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(II[[IIIILjg;II)Leh;", - garbageValue = "-1950985762" - ) - @Export("getModelDynamic") - public final Model getModelDynamic(int var1, int var2, int[][] var3, int var4, int var5, int var6, SequenceDefinition var7, int var8) { - long var9; - if (this.models == null) { // L: 294 - var9 = (long)(var2 + (this.id << 10)); - } else { - var9 = (long)(var2 + (var1 << 3) + (this.id << 10)); // L: 295 - } - - Model var11 = (Model)ObjectDefinition_cachedModels.get(var9); // L: 296 - if (var11 == null) { // L: 297 - ModelData var12 = this.getModelData(var1, var2); // L: 298 - if (var12 == null) { // L: 299 - return null; - } - - var11 = var12.toModel(this.ambient + 64, this.contrast + 768, -50, -10, -50); // L: 300 - ObjectDefinition_cachedModels.put(var11, var9); // L: 301 - } - - if (var7 == null && this.clipType == -1) { // L: 303 - return var11; - } else { - if (var7 != null) { // L: 304 - var11 = var7.transformObjectModel(var11, var8, var2); - } else { - var11 = var11.toSharedSequenceModel(true); // L: 305 - } - - if (this.clipType >= 0) { // L: 306 - var11 = var11.contourGround(var3, var4, var5, var6, false, this.clipType); - } - - return var11; // L: 307 - } } @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(III)Len;", - garbageValue = "20375829" + descriptor = "(II)Z", + garbageValue = "1705283608" + ) + public final boolean method4614(int var1) { + if (this.models != null) { + for (int var4 = 0; var4 < this.models.length; ++var4) { + if (this.models[var4] == var1) { + return ObjectDefinition_modelsArchive.tryLoadFile(this.modelIds[var4] & 65535, 0); + } + } + + return true; + } else if (this.modelIds == null) { + return true; + } else if (var1 != 10) { + return true; + } else { + boolean var2 = true; + + for (int var3 = 0; var3 < this.modelIds.length; ++var3) { + var2 &= ObjectDefinition_modelsArchive.tryLoadFile(this.modelIds[var3] & 65535, 0); + } + + return var2; + } + } + + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "-851923890" + ) + @Export("needsModelFiles") + public final boolean needsModelFiles() { + if (this.modelIds == null) { + return true; + } else { + boolean var1 = true; + + for (int var2 = 0; var2 < this.modelIds.length; ++var2) { + var1 &= ObjectDefinition_modelsArchive.tryLoadFile(this.modelIds[var2] & 65535, 0); + } + + return var1; + } + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "(II[[IIIIS)Ler;", + garbageValue = "-18803" + ) + @Export("getEntity") + public final Entity getEntity(int var1, int var2, int[][] var3, int var4, int var5, int var6) { + long var7; + if (this.models == null) { + var7 = (long)(var2 + (this.id << 10)); + } else { + var7 = (long)(var2 + (var1 << 3) + (this.id << 10)); + } + + Object var9 = (Entity)ObjectDefinition_cachedEntities.get(var7); + if (var9 == null) { + ModelData var10 = this.getModelData(var1, var2); + if (var10 == null) { + return null; + } + + if (!this.nonFlatShading) { + var9 = var10.toModel(this.ambient + 64, this.contrast + 768, -50, -10, -50); + } else { + var10.ambient = (short)(this.ambient + 64); + var10.contrast = (short)(this.contrast + 768); + var10.calculateVertexNormals(); + var9 = var10; + } + + ObjectDefinition_cachedEntities.put((DualNode)var9, var7); + } + + if (this.nonFlatShading) { + var9 = ((ModelData)var9).method2857(); + } + + if (this.clipType * 65536 >= 0) { + if (var9 instanceof Model) { + var9 = ((Model)var9).contourGround(var3, var4, var5, var6, true, this.clipType * 65536); + } else if (var9 instanceof ModelData) { + var9 = ((ModelData)var9).method2858(var3, var4, var5, var6, true, this.clipType * 65536); + } + } + + return (Entity)var9; + } + + @ObfuscatedName("p") + @ObfuscatedSignature( + descriptor = "(II[[IIIII)Leh;", + garbageValue = "-1672761222" + ) + @Export("getModel") + public final Model getModel(int var1, int var2, int[][] var3, int var4, int var5, int var6) { + long var7; + if (this.models == null) { + var7 = (long)(var2 + (this.id << 10)); + } else { + var7 = (long)(var2 + (var1 << 3) + (this.id << 10)); + } + + Model var9 = (Model)ObjectDefinition_cachedModels.get(var7); + if (var9 == null) { + ModelData var10 = this.getModelData(var1, var2); + if (var10 == null) { + return null; + } + + var9 = var10.toModel(this.ambient + 64, this.contrast + 768, -50, -10, -50); + ObjectDefinition_cachedModels.put(var9, var7); + } + + if (this.clipType * 65536 >= 0) { + var9 = var9.contourGround(var3, var4, var5, var6, true, this.clipType * 65536); + } + + return var9; + } + + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "(II[[IIIILjy;II)Leh;", + garbageValue = "-1432537935" + ) + @Export("getModelDynamic") + public final Model getModelDynamic(int var1, int var2, int[][] var3, int var4, int var5, int var6, SequenceDefinition var7, int var8) { + long var9; + if (this.models == null) { + var9 = (long)(var2 + (this.id << 10)); + } else { + var9 = (long)(var2 + (var1 << 3) + (this.id << 10)); + } + + Model var11 = (Model)ObjectDefinition_cachedModels.get(var9); + if (var11 == null) { + ModelData var12 = this.getModelData(var1, var2); + if (var12 == null) { + return null; + } + + var11 = var12.toModel(this.ambient + 64, this.contrast + 768, -50, -10, -50); + ObjectDefinition_cachedModels.put(var11, var9); + } + + if (var7 == null && this.clipType * 65536 == -1) { + return var11; + } else { + if (var7 != null) { + var11 = var7.transformObjectModel(var11, var8, var2); + } else { + var11 = var11.toSharedSequenceModel(true); + } + + if (this.clipType * 65536 >= 0) { + var11 = var11.contourGround(var3, var4, var5, var6, false, this.clipType * 65536); + } + + return var11; + } + } + + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(III)Les;", + garbageValue = "2119637200" ) @Export("getModelData") final ModelData getModelData(int var1, int var2) { - ModelData var3 = null; // L: 311 + ModelData var3 = null; boolean var4; int var5; int var7; - if (this.models == null) { // L: 312 - if (var1 != 10) { // L: 313 + if (this.models == null) { + if (var1 != 10) { return null; } - if (this.modelIds == null) { // L: 314 + if (this.modelIds == null) { return null; } - var4 = this.isRotated; // L: 315 - if (var1 == 2 && var2 > 3) { // L: 316 + var4 = this.isRotated; + if (var1 == 2 && var2 > 3) { var4 = !var4; } - var5 = this.modelIds.length; // L: 317 + var5 = this.modelIds.length; - for (int var6 = 0; var6 < var5; ++var6) { // L: 318 - var7 = this.modelIds[var6]; // L: 319 - if (var4) { // L: 320 + for (int var6 = 0; var6 < var5; ++var6) { + var7 = this.modelIds[var6]; + if (var4) { var7 += 65536; } - var3 = (ModelData)ObjectDefinition_cachedModelData.get((long)var7); // L: 321 - if (var3 == null) { // L: 322 - var3 = ModelData.ModelData_get(GrandExchangeOfferAgeComparator.ObjectDefinition_modelsArchive, var7 & 65535, 0); // L: 323 - if (var3 == null) { // L: 324 + var3 = (ModelData)ObjectDefinition_cachedModelData.get((long)var7); + if (var3 == null) { + var3 = ModelData.ModelData_get(ObjectDefinition_modelsArchive, var7 & 65535, 0); + if (var3 == null) { return null; } - if (var4) { // L: 325 - var3.method2927(); + if (var4) { + var3.method2867(); } - ObjectDefinition_cachedModelData.put(var3, (long)var7); // L: 326 + ObjectDefinition_cachedModelData.put(var3, (long)var7); } - if (var5 > 1) { // L: 328 - field3379[var6] = var3; + if (var5 > 1) { + field3386[var6] = var3; } } - if (var5 > 1) { // L: 330 - var3 = new ModelData(field3379, var5); + if (var5 > 1) { + var3 = new ModelData(field3386, var5); } } else { - int var9 = -1; // L: 333 + int var9 = -1; - for (var5 = 0; var5 < this.models.length; ++var5) { // L: 334 - if (this.models[var5] == var1) { // L: 335 - var9 = var5; // L: 336 + for (var5 = 0; var5 < this.models.length; ++var5) { + if (this.models[var5] == var1) { + var9 = var5; break; } } - if (var9 == -1) { // L: 340 + if (var9 == -1) { return null; } - var5 = this.modelIds[var9]; // L: 341 - boolean var10 = this.isRotated ^ var2 > 3; // L: 342 - if (var10) { // L: 343 + var5 = this.modelIds[var9]; + boolean var10 = this.isRotated ^ var2 > 3; + if (var10) { var5 += 65536; } - var3 = (ModelData)ObjectDefinition_cachedModelData.get((long)var5); // L: 344 - if (var3 == null) { // L: 345 - var3 = ModelData.ModelData_get(GrandExchangeOfferAgeComparator.ObjectDefinition_modelsArchive, var5 & 65535, 0); // L: 346 - if (var3 == null) { // L: 347 + var3 = (ModelData)ObjectDefinition_cachedModelData.get((long)var5); + if (var3 == null) { + var3 = ModelData.ModelData_get(ObjectDefinition_modelsArchive, var5 & 65535, 0); + if (var3 == null) { return null; } - if (var10) { // L: 348 - var3.method2927(); + if (var10) { + var3.method2867(); } - ObjectDefinition_cachedModelData.put(var3, (long)var5); // L: 349 + ObjectDefinition_cachedModelData.put(var3, (long)var5); } } - if (this.modelSizeX == 128 && this.modelHeight == 128 && this.modelSizeY == 128) { // L: 353 - var4 = false; // L: 354 + if (this.modelSizeX == 128 && this.modelHeight == 128 && this.modelSizeY == 128) { + var4 = false; } else { var4 = true; } boolean var11; - if (this.offsetX == 0 && this.offsetHeight == 0 && this.offsetY == 0) { // L: 356 - var11 = false; // L: 357 + if (this.offsetX == 0 && this.offsetHeight == 0 && this.offsetY == 0) { + var11 = false; } else { var11 = true; } - ModelData var8 = new ModelData(var3, var2 == 0 && !var4 && !var11, null == this.recolorFrom, null == this.retextureFrom, true); // L: 358 - if (var1 == 4 && var2 > 3) { // L: 359 - var8.method2937(256); // L: 360 - var8.changeOffset(45, 0, -45); // L: 361 + ModelData var8 = new ModelData(var3, var2 == 0 && !var4 && !var11, null == this.recolorFrom, this.retextureFrom == null, true); + if (var1 == 4 && var2 > 3) { + var8.method2871(256); + var8.changeOffset(45, 0, -45); } - var2 &= 3; // L: 363 - if (var2 == 1) { // L: 364 - var8.method2940(); - } else if (var2 == 2) { // L: 365 - var8.method2921(); + var2 &= 3; + if (var2 == 1) { + var8.method2860(); + } else if (var2 == 2) { + var8.method2896(); } else if (var2 == 3) { - var8.method2922(); // L: 366 + var8.method2863(); } - if (this.recolorFrom != null) { // L: 367 - for (var7 = 0; var7 < this.recolorFrom.length; ++var7) { // L: 368 - var8.recolor(this.recolorFrom[var7], this.recolorTo[var7]); // L: 369 + if (this.recolorFrom != null) { + for (var7 = 0; var7 < this.recolorFrom.length; ++var7) { + var8.recolor(this.recolorFrom[var7], this.recolorTo[var7]); } } - if (this.retextureFrom != null) { // L: 372 - for (var7 = 0; var7 < this.retextureFrom.length; ++var7) { // L: 373 - var8.retexture(this.retextureFrom[var7], this.retextureTo[var7]); // L: 374 + if (this.retextureFrom != null) { + for (var7 = 0; var7 < this.retextureFrom.length; ++var7) { + var8.retexture(this.retextureFrom[var7], this.retextureTo[var7]); } } - if (var4) { // L: 377 + if (var4) { var8.resize(this.modelSizeX, this.modelHeight, this.modelSizeY); } - if (var11) { // L: 378 + if (var11) { var8.changeOffset(this.offsetX, this.offsetHeight, this.offsetY); } - return var8; // L: 379 + return var8; } - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "(B)Lje;", - garbageValue = "88" + descriptor = "(I)Ljm;", + garbageValue = "2135439243" ) @Export("transform") public final ObjectDefinition transform() { - int var1 = -1; // L: 383 - if (this.transformVarbit != -1) { // L: 384 - var1 = ApproximateRouteStrategy.getVarbit(this.transformVarbit); - } else if (this.transformVarp != -1) { // L: 385 + int var1 = -1; + if (this.transformVarbit != -1) { + var1 = Coord.getVarbit(this.transformVarbit); + } else if (this.transformVarp != -1) { var1 = Varps.Varps_main[this.transformVarp]; } int var2; - if (var1 >= 0 && var1 < this.transforms.length - 1) { // L: 387 - var2 = this.transforms[var1]; // L: 388 + if (var1 >= 0 && var1 < this.transforms.length - 1) { + var2 = this.transforms[var1]; } else { var2 = this.transforms[this.transforms.length - 1]; } - return var2 != -1 ? ScriptEvent.getObjectDefinition(var2) : null; // L: 389 390 + return var2 != -1 ? WorldMapDecoration.getObjectDefinition(var2) : null; } - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "454435450" + descriptor = "(IIB)I", + garbageValue = "-50" ) @Export("getIntParam") public int getIntParam(int var1, int var2) { - IterableNodeHashTable var4 = this.params; // L: 395 + IterableNodeHashTable var4 = this.params; int var3; - if (var4 == null) { // L: 397 - var3 = var2; // L: 398 + if (var4 == null) { + var3 = var2; } else { - IntegerNode var5 = (IntegerNode)var4.get((long)var1); // L: 401 - if (var5 == null) { // L: 402 - var3 = var2; // L: 403 + IntegerNode var5 = (IntegerNode)var4.get((long)var1); + if (var5 == null) { + var3 = var2; } else { - var3 = var5.integer; // L: 406 + var3 = var5.integer; } } - return var3; // L: 408 + return var3; } - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedSignature( descriptor = "(ILjava/lang/String;I)Ljava/lang/String;", - garbageValue = "-1210418513" + garbageValue = "2059045293" ) @Export("getStringParam") public String getStringParam(int var1, String var2) { - return WorldMapSection0.method307(this.params, var1, var2); // L: 412 + IterableNodeHashTable var4 = this.params; + String var3; + if (var4 == null) { + var3 = var2; + } else { + ObjectNode var5 = (ObjectNode)var4.get((long)var1); + if (var5 == null) { + var3 = var2; + } else { + var3 = (String)var5.obj; + } + } + + return var3; } - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "926091252" + garbageValue = "-2120899422" ) @Export("hasSound") public boolean hasSound() { - if (this.transforms == null) { // L: 416 + if (this.transforms == null) { return this.ambientSoundId != -1 || this.soundEffectIds != null; } else { - for (int var1 = 0; var1 < this.transforms.length; ++var1) { // L: 417 - if (this.transforms[var1] != -1) { // L: 418 - ObjectDefinition var2 = ScriptEvent.getObjectDefinition(this.transforms[var1]); // L: 419 - if (var2.ambientSoundId != -1 || var2.soundEffectIds != null) { // L: 420 + for (int var1 = 0; var1 < this.transforms.length; ++var1) { + if (this.transforms[var1] != -1) { + ObjectDefinition var2 = WorldMapDecoration.getObjectDefinition(this.transforms[var1]); + if (var2.ambientSoundId != -1 || var2.soundEffectIds != null) { return true; } } } - return false; // L: 423 + return false; + } + } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(CI)Z", + garbageValue = "1234402449" + ) + static final boolean method4657(char var0) { + if (Character.isISOControl(var0)) { + return false; + } else if (FriendLoginUpdate.isAlphaNumeric(var0)) { + return true; + } else { + char[] var1 = class349.field4077; + + int var2; + char var3; + for (var2 = 0; var2 < var1.length; ++var2) { + var3 = var1[var2]; + if (var0 == var3) { + return true; + } + } + + var1 = class349.field4079; + + for (var2 = 0; var2 < var1.length; ++var2) { + var3 = var1[var2]; + if (var0 == var3) { + return true; + } + } + + return false; } } } diff --git a/runescape-client/src/main/java/ObjectNode.java b/runescape-client/src/main/java/ObjectNode.java index 077110f590..cf9248285f 100644 --- a/runescape-client/src/main/java/ObjectNode.java +++ b/runescape-client/src/main/java/ObjectNode.java @@ -2,14 +2,14 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("ge") +@ObfuscatedName("gr") @Implements("ObjectNode") public class ObjectNode extends Node { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("obj") public final Object obj; public ObjectNode(Object var1) { - this.obj = var1; // L: 7 - } // L: 8 + this.obj = var1; + } } diff --git a/runescape-client/src/main/java/ObjectSound.java b/runescape-client/src/main/java/ObjectSound.java index 1aa0a365bb..55fe52b5df 100644 --- a/runescape-client/src/main/java/ObjectSound.java +++ b/runescape-client/src/main/java/ObjectSound.java @@ -4,141 +4,136 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cl") +@ObfuscatedName("cz") @Implements("ObjectSound") public final class ObjectSound extends Node { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lja;" + descriptor = "Ljp;" ) @Export("objectSounds") static NodeDeque objectSounds; - @ObfuscatedName("b") + @ObfuscatedName("q") + public static String field1077; + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -1138191805 + intValue = -1758157691 ) @Export("plane") int plane; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1682034251 - ) - @Export("x") - int x; - @ObfuscatedName("m") - @ObfuscatedGetter( - intValue = 2073758619 + intValue = -1615552035 ) @Export("y") int y; - @ObfuscatedName("z") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 1257501441 + intValue = 1091838848 ) - int field1103; - @ObfuscatedName("q") + @Export("x") + int x; + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 1906931409 + intValue = -2006873984 ) - int field1112; - @ObfuscatedName("k") + int field1073; + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -2106963407 + intValue = 744417563 ) - int field1104; - @ObfuscatedName("c") + int field1078; + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = 786656401 + intValue = 417885395 + ) + int field1086; + @ObfuscatedName("p") + @ObfuscatedGetter( + intValue = 736414323 ) @Export("soundEffectId") int soundEffectId; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "Ldx;" + descriptor = "Ldj;" ) @Export("stream1") RawPcmStream stream1; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = -68558045 + intValue = 959647129 ) - int field1107; + int field1085; + @ObfuscatedName("u") + @ObfuscatedGetter( + intValue = 409516173 + ) + int field1083; @ObfuscatedName("e") - @ObfuscatedGetter( - intValue = 151310867 - ) - int field1109; - @ObfuscatedName("o") @Export("soundEffectIds") int[] soundEffectIds; - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedGetter( - intValue = -828996147 + intValue = -1988798929 ) - int field1108; - @ObfuscatedName("x") + int field1081; + @ObfuscatedName("c") @ObfuscatedSignature( - descriptor = "Ldx;" + descriptor = "Ldj;" ) @Export("stream2") RawPcmStream stream2; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedSignature( - descriptor = "Lje;" + descriptor = "Ljm;" ) @Export("obj") ObjectDefinition obj; static { - objectSounds = new NodeDeque(); // L: 11 + objectSounds = new NodeDeque(); } ObjectSound() { - } // L: 27 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "2054247540" + garbageValue = "401252200" ) @Export("set") void set() { - int var1 = this.soundEffectId; // L: 30 - ObjectDefinition var2 = this.obj.transform(); // L: 31 - if (var2 != null) { // L: 32 - this.soundEffectId = var2.ambientSoundId; // L: 33 - this.field1104 = var2.int4 * 128; // L: 34 - this.field1107 = var2.int5; // L: 35 - this.field1109 = var2.int6; // L: 36 - this.soundEffectIds = var2.soundEffectIds; // L: 37 + int var1 = this.soundEffectId; + ObjectDefinition var2 = this.obj.transform(); + if (var2 != null) { + this.soundEffectId = var2.ambientSoundId; + this.field1086 = var2.int4 * 128; + this.field1085 = var2.int5; + this.field1083 = var2.int6; + this.soundEffectIds = var2.soundEffectIds; } else { - this.soundEffectId = -1; // L: 40 - this.field1104 = 0; // L: 41 - this.field1107 = 0; // L: 42 - this.field1109 = 0; // L: 43 - this.soundEffectIds = null; // L: 44 + this.soundEffectId = -1; + this.field1086 = 0; + this.field1085 = 0; + this.field1083 = 0; + this.soundEffectIds = null; } - if (var1 != this.soundEffectId && this.stream1 != null) { // L: 46 - GrandExchangeEvents.pcmStreamMixer.removeSubStream(this.stream1); // L: 47 - this.stream1 = null; // L: 48 + if (var1 != this.soundEffectId && this.stream1 != null) { + WorldMapManager.pcmStreamMixer.removeSubStream(this.stream1); + this.stream1 = null; } - } // L: 50 - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;I)I", - garbageValue = "2057231744" - ) - @Export("parseInt") - public static int parseInt(CharSequence var0) { - return SecureRandomCallable.parseIntCustomRadix(var0, 10, true); // L: 76 } - @ObfuscatedName("k") - @Export("Entity_unpackID") - public static int Entity_unpackID(long var0) { - return (int)(var0 >>> 17 & 4294967295L); // L: 68 + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "725701035" + ) + static final int method1993() { + return ViewportMouse.ViewportMouse_x; } } diff --git a/runescape-client/src/main/java/Occluder.java b/runescape-client/src/main/java/Occluder.java index 3dad9f8558..727b2a2e52 100644 --- a/runescape-client/src/main/java/Occluder.java +++ b/runescape-client/src/main/java/Occluder.java @@ -1,8 +1,3 @@ -import java.io.BufferedReader; -import java.io.IOException; -import java.io.PrintWriter; -import java.io.StringReader; -import java.io.StringWriter; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; @@ -12,397 +7,144 @@ import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("ed") @Implements("Occluder") public final class Occluder { - @ObfuscatedName("f") + @ObfuscatedName("jf") + @ObfuscatedSignature( + descriptor = "Lhe;" + ) + @Export("hoveredItemContainer") + static Widget hoveredItemContainer; + @ObfuscatedName("lf") @ObfuscatedGetter( - intValue = -313882237 + intValue = 1001038233 + ) + @Export("menuWidth") + static int menuWidth; + @ObfuscatedName("h") + @ObfuscatedGetter( + intValue = -961555273 ) @Export("minTileX") int minTileX; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -1872976045 + intValue = -115587993 ) @Export("maxTileX") int maxTileX; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 698541949 + intValue = -2031501137 ) @Export("minTileY") int minTileY; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -1917785735 + intValue = -2011315243 ) @Export("maxTileY") int maxTileY; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 937252763 + intValue = 1543277097 ) @Export("type") int type; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = 307807739 + intValue = 1717742133 ) @Export("minX") int minX; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -706741873 + intValue = -274411845 ) @Export("maxX") int maxX; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 1147462173 + intValue = -698195239 ) @Export("minZ") int minZ; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = -1046615135 + intValue = 1418804225 ) @Export("maxZ") int maxZ; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = -132506543 + intValue = 1159677951 ) @Export("minY") int minY; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedGetter( - intValue = 92389715 + intValue = 253591851 ) @Export("maxY") int maxY; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedGetter( - intValue = -276045913 + intValue = -1918923367 ) - int field1931; - @ObfuscatedName("n") + int field1921; + @ObfuscatedName("m") @ObfuscatedGetter( - intValue = 988545829 + intValue = 1725164325 ) int field1925; - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedGetter( - intValue = 927138423 + intValue = 1353837759 ) - int field1933; - @ObfuscatedName("p") + int field1923; + @ObfuscatedName("i") @ObfuscatedGetter( - intValue = 1152663609 + intValue = -1307252971 ) - int field1920; - @ObfuscatedName("r") + int field1924; + @ObfuscatedName("f") @ObfuscatedGetter( - intValue = 1721087493 + intValue = -164056125 ) - int field1932; - @ObfuscatedName("y") + int field1929; + @ObfuscatedName("a") @ObfuscatedGetter( - intValue = -666576693 + intValue = 635255003 ) - int field1936; - @ObfuscatedName("s") + int field1926; + @ObfuscatedName("b") @ObfuscatedGetter( - intValue = -1378850457 + intValue = -1055944847 ) - int field1937; + int field1927; Occluder() { - } // L: 23 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "22" - ) - public static boolean method3411() { - long var0 = User.currentTimeMillis(); // L: 42 - int var2 = (int)(var0 - JagexCache.field2081); // L: 43 - JagexCache.field2081 = var0; // L: 44 - if (var2 > 200) { // L: 45 - var2 = 200; - } - - NetCache.NetCache_loadTime += var2; // L: 46 - if (NetCache.NetCache_pendingResponsesCount == 0 && NetCache.NetCache_pendingPriorityResponsesCount == 0 && NetCache.NetCache_pendingWritesCount == 0 && NetCache.NetCache_pendingPriorityWritesCount == 0) { // L: 47 - return true; - } else if (NetCache.NetCache_socket == null) { // L: 48 - return false; - } else { - try { - if (NetCache.NetCache_loadTime > 30000) { // L: 50 - throw new IOException(); - } else { - NetFileRequest var3; - Buffer var4; - while (NetCache.NetCache_pendingPriorityResponsesCount < 200 && NetCache.NetCache_pendingPriorityWritesCount > 0) { // L: 51 - var3 = (NetFileRequest)NetCache.NetCache_pendingPriorityWrites.first(); // L: 52 - var4 = new Buffer(4); // L: 53 - var4.writeByte(1); // L: 54 - var4.writeMedium((int)var3.key); // L: 55 - NetCache.NetCache_socket.write(var4.array, 0, 4); // L: 56 - NetCache.NetCache_pendingPriorityResponses.put(var3, var3.key); // L: 57 - --NetCache.NetCache_pendingPriorityWritesCount; // L: 58 - ++NetCache.NetCache_pendingPriorityResponsesCount; // L: 59 - } - - while (NetCache.NetCache_pendingResponsesCount < 200 && NetCache.NetCache_pendingWritesCount > 0) { // L: 61 - var3 = (NetFileRequest)NetCache.NetCache_pendingWritesQueue.removeLast(); // L: 62 - var4 = new Buffer(4); // L: 63 - var4.writeByte(0); // L: 64 - var4.writeMedium((int)var3.key); // L: 65 - NetCache.NetCache_socket.write(var4.array, 0, 4); // L: 66 - var3.removeDual(); - NetCache.NetCache_pendingResponses.put(var3, var3.key); - --NetCache.NetCache_pendingWritesCount; - ++NetCache.NetCache_pendingResponsesCount; - } - - for (int var15 = 0; var15 < 100; ++var15) { - int var16 = NetCache.NetCache_socket.available(); - if (var16 < 0) { - throw new IOException(); - } - - if (var16 == 0) { - break; - } - - NetCache.NetCache_loadTime = 0; - byte var5 = 0; - if (NetCache.NetCache_currentResponse == null) { - var5 = 8; - } else if (NetCache.field3190 == 0) { - var5 = 1; - } - - int var6; - int var7; - int var8; - int var10; - byte[] var10000; - int var10001; - Buffer var22; - if (var5 > 0) { // L: 80 - var6 = var5 - NetCache.NetCache_responseHeaderBuffer.offset; - if (var6 > var16) { - var6 = var16; - } - - NetCache.NetCache_socket.read(NetCache.NetCache_responseHeaderBuffer.array, NetCache.NetCache_responseHeaderBuffer.offset, var6); - if (NetCache.field3207 != 0) { - for (var7 = 0; var7 < var6; ++var7) { - var10000 = NetCache.NetCache_responseHeaderBuffer.array; - var10001 = NetCache.NetCache_responseHeaderBuffer.offset + var7; - var10000[var10001] ^= NetCache.field3207; - } - } - - var22 = NetCache.NetCache_responseHeaderBuffer; - var22.offset += var6; - if (NetCache.NetCache_responseHeaderBuffer.offset < var5) { - break; - } - - if (NetCache.NetCache_currentResponse == null) { - NetCache.NetCache_responseHeaderBuffer.offset = 0; - var7 = NetCache.NetCache_responseHeaderBuffer.readUnsignedByte(); - var8 = NetCache.NetCache_responseHeaderBuffer.readUnsignedShort(); // L: 92 - int var9 = NetCache.NetCache_responseHeaderBuffer.readUnsignedByte(); - var10 = NetCache.NetCache_responseHeaderBuffer.readInt(); // L: 94 - long var11 = (long)(var8 + (var7 << 16)); - NetFileRequest var13 = (NetFileRequest)NetCache.NetCache_pendingPriorityResponses.get(var11); - NetCache.field3200 = true; - if (var13 == null) { - var13 = (NetFileRequest)NetCache.NetCache_pendingResponses.get(var11); // L: 99 - NetCache.field3200 = false; - } - - if (var13 == null) { // L: 102 - throw new IOException(); // L: 103 - } - - int var14 = var9 == 0 ? 5 : 9; // L: 105 - NetCache.NetCache_currentResponse = var13; // L: 106 - NetCache.NetCache_responseArchiveBuffer = new Buffer(var10 + var14 + NetCache.NetCache_currentResponse.padding); // L: 107 - NetCache.NetCache_responseArchiveBuffer.writeByte(var9); // L: 108 - NetCache.NetCache_responseArchiveBuffer.writeInt(var10); // L: 109 - NetCache.field3190 = 8; // L: 110 - NetCache.NetCache_responseHeaderBuffer.offset = 0; // L: 111 - } else if (NetCache.field3190 == 0) { // L: 114 - if (NetCache.NetCache_responseHeaderBuffer.array[0] == -1) { // L: 115 - NetCache.field3190 = 1; // L: 116 - NetCache.NetCache_responseHeaderBuffer.offset = 0; // L: 117 - } else { - NetCache.NetCache_currentResponse = null; // L: 121 - } - } - } else { - var6 = NetCache.NetCache_responseArchiveBuffer.array.length - NetCache.NetCache_currentResponse.padding; // L: 127 - var7 = 512 - NetCache.field3190; // L: 128 - if (var7 > var6 - NetCache.NetCache_responseArchiveBuffer.offset) { // L: 129 - var7 = var6 - NetCache.NetCache_responseArchiveBuffer.offset; - } - - if (var7 > var16) { // L: 130 - var7 = var16; - } - - NetCache.NetCache_socket.read(NetCache.NetCache_responseArchiveBuffer.array, NetCache.NetCache_responseArchiveBuffer.offset, var7); // L: 131 - if (NetCache.field3207 != 0) { // L: 132 - for (var8 = 0; var8 < var7; ++var8) { // L: 133 - var10000 = NetCache.NetCache_responseArchiveBuffer.array; - var10001 = var8 + NetCache.NetCache_responseArchiveBuffer.offset; - var10000[var10001] ^= NetCache.field3207; - } - } - - var22 = NetCache.NetCache_responseArchiveBuffer; // L: 135 - var22.offset += var7; - NetCache.field3190 += var7; // L: 136 - if (var6 == NetCache.NetCache_responseArchiveBuffer.offset) { // L: 137 - if (NetCache.NetCache_currentResponse.key == 16711935L) { // L: 138 - class90.NetCache_reference = NetCache.NetCache_responseArchiveBuffer; // L: 139 - - for (var8 = 0; var8 < 256; ++var8) { // L: 140 - Archive var17 = NetCache.NetCache_archives[var8]; // L: 141 - if (var17 != null) { // L: 142 - class90.NetCache_reference.offset = var8 * 8 + 5; // L: 143 - var10 = class90.NetCache_reference.readInt(); // L: 144 - int var18 = class90.NetCache_reference.readInt(); // L: 145 - var17.loadIndex(var10, var18); // L: 146 - } - } - } else { - NetCache.NetCache_crc.reset(); // L: 151 - NetCache.NetCache_crc.update(NetCache.NetCache_responseArchiveBuffer.array, 0, var6); // L: 152 - var8 = (int)NetCache.NetCache_crc.getValue(); // L: 153 - if (var8 != NetCache.NetCache_currentResponse.crc) { // L: 154 - try { - NetCache.NetCache_socket.close(); // L: 156 - } catch (Exception var20) { // L: 158 - } - - ++NetCache.NetCache_crcMismatches; // L: 159 - NetCache.NetCache_socket = null; // L: 160 - NetCache.field3207 = (byte)((int)(Math.random() * 255.0D + 1.0D)); // L: 161 - return false; // L: 162 - } - - NetCache.NetCache_crcMismatches = 0; // L: 164 - NetCache.NetCache_ioExceptions = 0; // L: 165 - NetCache.NetCache_currentResponse.archive.write((int)(NetCache.NetCache_currentResponse.key & 65535L), NetCache.NetCache_responseArchiveBuffer.array, (NetCache.NetCache_currentResponse.key & 16711680L) == 16711680L, NetCache.field3200); // L: 166 - } - - NetCache.NetCache_currentResponse.remove(); // L: 168 - if (NetCache.field3200) { // L: 169 - --NetCache.NetCache_pendingPriorityResponsesCount; - } else { - --NetCache.NetCache_pendingResponsesCount; // L: 170 - } - - NetCache.field3190 = 0; // L: 171 - NetCache.NetCache_currentResponse = null; // L: 172 - NetCache.NetCache_responseArchiveBuffer = null; // L: 173 - } else { - if (NetCache.field3190 != 512) { // L: 175 - break; - } - - NetCache.field3190 = 0; - } - } - } - - return true; // L: 179 - } - } catch (IOException var21) { - try { - NetCache.NetCache_socket.close(); // L: 183 - } catch (Exception var19) { // L: 185 - } - - ++NetCache.NetCache_ioExceptions; // L: 186 - NetCache.NetCache_socket = null; // L: 187 - return false; // L: 188 - } - } } - @ObfuscatedName("l") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ljava/lang/Throwable;S)Ljava/lang/String;", - garbageValue = "150" + descriptor = "(B)[Lig;", + garbageValue = "79" ) - static String method3413(Throwable var0) throws IOException { - String var1; - if (var0 instanceof RunException) { // L: 67 - RunException var2 = (RunException)var0; // L: 68 - var1 = var2.message + " | "; // L: 69 - var0 = var2.throwable; // L: 70 - } else { - var1 = ""; // L: 72 - } - - StringWriter var12 = new StringWriter(); // L: 73 - PrintWriter var3 = new PrintWriter(var12); // L: 74 - var0.printStackTrace(var3); // L: 75 - var3.close(); // L: 76 - String var4 = var12.toString(); // L: 77 - BufferedReader var5 = new BufferedReader(new StringReader(var4)); // L: 78 - String var6 = var5.readLine(); // L: 79 - - while (true) { - while (true) { - String var7 = var5.readLine(); // L: 81 - if (var7 == null) { // L: 82 - var1 = var1 + "| " + var6; // L: 100 - return var1; // L: 101 - } - - int var8 = var7.indexOf(40); // L: 83 - int var9 = var7.indexOf(41, var8 + 1); // L: 84 - if (var8 >= 0 && var9 >= 0) { // L: 85 - String var10 = var7.substring(var8 + 1, var9); // L: 86 - int var11 = var10.indexOf(".java:"); // L: 87 - if (var11 >= 0) { // L: 88 - var10 = var10.substring(0, var11) + var10.substring(var11 + 5); // L: 89 - var1 = var1 + var10 + ' '; // L: 90 - continue; // L: 91 - } - - var7 = var7.substring(0, var8); // L: 93 - } - - var7 = var7.trim(); // L: 95 - var7 = var7.substring(var7.lastIndexOf(32) + 1); // L: 96 - var7 = var7.substring(var7.lastIndexOf(9) + 1); // L: 97 - var1 = var1 + var7 + ' '; // L: 98 - } - } + static class238[] method3377() { + return new class238[]{class238.field3111, class238.field3114}; } - @ObfuscatedName("k") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "-1048299537" + descriptor = "(I)I", + garbageValue = "1625020333" ) - static final int method3412(int var0, int var1) { - int var2 = DynamicObject.method2357(var0 + 45365, var1 + 91923, 4) - 128 + (DynamicObject.method2357(var0 + 10294, var1 + 37821, 2) - 128 >> 1) + (DynamicObject.method2357(var0, var1, 1) - 128 >> 2); // L: 428 - var2 = (int)(0.3D * (double)var2) + 35; // L: 429 - if (var2 < 10) { // L: 430 - var2 = 10; - } else if (var2 > 60) { // L: 431 - var2 = 60; - } + public static int method3378() { + return ++MouseHandler.MouseHandler_idleCycles - 1; + } - return var2; // L: 432 + @ObfuscatedName("p") + @Export("Entity_unpackID") + public static int Entity_unpackID(long var0) { + return (int)(var0 >>> 17 & 4294967295L); } } diff --git a/runescape-client/src/main/java/PacketBuffer.java b/runescape-client/src/main/java/PacketBuffer.java index 8c42f3b098..4ebe9442a7 100644 --- a/runescape-client/src/main/java/PacketBuffer.java +++ b/runescape-client/src/main/java/PacketBuffer.java @@ -4,157 +4,157 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ks") +@ObfuscatedName("ky") @Implements("PacketBuffer") public class PacketBuffer extends Buffer { - @ObfuscatedName("b") - static final int[] field3736; - @ObfuscatedName("f") + @ObfuscatedName("v") + static final int[] field3747; + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lmh;" + descriptor = "Lmd;" ) @Export("isaacCipher") IsaacCipher isaacCipher; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -195466063 + intValue = -2055902739 ) @Export("bitIndex") int bitIndex; static { - field3736 = new int[]{0, 1, 3, 7, 15, 31, 63, 127, 255, 511, 1023, 2047, 4095, 8191, 16383, 32767, 65535, 131071, 262143, 524287, 1048575, 2097151, 4194303, 8388607, 16777215, 33554431, 67108863, 134217727, 268435455, 536870911, 1073741823, Integer.MAX_VALUE, -1}; // L: 7 + field3747 = new int[]{0, 1, 3, 7, 15, 31, 63, 127, 255, 511, 1023, 2047, 4095, 8191, 16383, 32767, 65535, 131071, 262143, 524287, 1048575, 2097151, 4194303, 8388607, 16777215, 33554431, 67108863, 134217727, 268435455, 536870911, 1073741823, Integer.MAX_VALUE, -1}; } public PacketBuffer(int var1) { - super(var1); // L: 11 - } // L: 12 + super(var1); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "([II)V", - garbageValue = "2133152603" + garbageValue = "-1781705436" ) @Export("newIsaacCipher") public void newIsaacCipher(int[] var1) { - this.isaacCipher = new IsaacCipher(var1); // L: 15 - } // L: 16 + this.isaacCipher = new IsaacCipher(var1); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lmh;I)V", - garbageValue = "-1550186830" + descriptor = "(Lmd;B)V", + garbageValue = "-50" ) @Export("setIsaacCipher") public void setIsaacCipher(IsaacCipher var1) { - this.isaacCipher = var1; // L: 19 - } // L: 20 + this.isaacCipher = var1; + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-1377827513" + garbageValue = "781650330" ) @Export("writeByteIsaac") public void writeByteIsaac(int var1) { - super.array[++super.offset - 1] = (byte)(var1 + this.isaacCipher.nextInt()); // L: 23 - } // L: 24 + super.array[++super.offset - 1] = (byte)(var1 + this.isaacCipher.nextInt()); + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-117" + descriptor = "(I)I", + garbageValue = "-2007530678" ) @Export("readByteIsaac") public int readByteIsaac() { - return super.array[++super.offset - 1] - this.isaacCipher.nextInt() & 255; // L: 27 - } - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-31" - ) - public boolean method5582() { - int var1 = super.array[super.offset] - this.isaacCipher.method6417() & 255; // L: 31 - return var1 >= 128; // L: 32 - } - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "534940999" - ) - @Export("readSmartByteShortIsaac") - public int readSmartByteShortIsaac() { - int var1 = super.array[++super.offset - 1] - this.isaacCipher.nextInt() & 255; // L: 37 - return var1 < 128 ? var1 : (var1 - 128 << 8) + (super.array[++super.offset - 1] - this.isaacCipher.nextInt() & 255); // L: 38 39 - } - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "([BIII)V", - garbageValue = "-84170760" - ) - public void method5584(byte[] var1, int var2, int var3) { - for (int var4 = 0; var4 < var3; ++var4) { // L: 43 - var1[var4 + var2] = (byte)(super.array[++super.offset - 1] - this.isaacCipher.nextInt()); - } - - } // L: 44 - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "46" - ) - @Export("importIndex") - public void importIndex() { - this.bitIndex = super.offset * 8; // L: 47 - } // L: 48 - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "0" - ) - @Export("readBits") - public int readBits(int var1) { - int var2 = this.bitIndex >> 3; // L: 51 - int var3 = 8 - (this.bitIndex & 7); // L: 52 - int var4 = 0; // L: 53 - - for (this.bitIndex += var1; var1 > var3; var3 = 8) { // L: 54 55 58 - var4 += (super.array[var2++] & field3736[var3]) << var1 - var3; // L: 56 - var1 -= var3; // L: 57 - } - - if (var3 == var1) { // L: 60 - var4 += super.array[var2] & field3736[var3]; - } else { - var4 += super.array[var2] >> var3 - var1 & field3736[var1]; // L: 61 - } - - return var4; // L: 62 + return super.array[++super.offset - 1] - this.isaacCipher.nextInt() & 255; } @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "1524437372" + ) + public boolean method5491() { + int var1 = super.array[super.offset] - this.isaacCipher.method6307() & 255; + return var1 >= 128; + } + + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "1" + ) + @Export("readSmartByteShortIsaac") + public int readSmartByteShortIsaac() { + int var1 = super.array[++super.offset - 1] - this.isaacCipher.nextInt() & 255; + return var1 < 128 ? var1 : (var1 - 128 << 8) + (super.array[++super.offset - 1] - this.isaacCipher.nextInt() & 255); + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "([BIII)V", + garbageValue = "1348771898" + ) + public void method5493(byte[] var1, int var2, int var3) { + for (int var4 = 0; var4 < var3; ++var4) { + var1[var4 + var2] = (byte)(super.array[++super.offset - 1] - this.isaacCipher.nextInt()); + } + + } + + @ObfuscatedName("p") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1212001290" + garbageValue = "1090912894" + ) + @Export("importIndex") + public void importIndex() { + this.bitIndex = super.offset * 8; + } + + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "(IB)I", + garbageValue = "-109" + ) + @Export("readBits") + public int readBits(int var1) { + int var2 = this.bitIndex >> 3; + int var3 = 8 - (this.bitIndex & 7); + int var4 = 0; + + for (this.bitIndex += var1; var1 > var3; var3 = 8) { + var4 += (super.array[var2++] & field3747[var3]) << var1 - var3; + var1 -= var3; + } + + if (var3 == var1) { + var4 += super.array[var2] & field3747[var3]; + } else { + var4 += super.array[var2] >> var3 - var1 & field3747[var1]; + } + + return var4; + } + + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "578417910" ) @Export("exportIndex") public void exportIndex() { - super.offset = (this.bitIndex + 7) / 8; // L: 66 - } // L: 67 + super.offset = (this.bitIndex + 7) / 8; + } - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedSignature( descriptor = "(II)I", - garbageValue = "760869568" + garbageValue = "-2129780483" ) @Export("bitsRemaining") public int bitsRemaining(int var1) { - return var1 * 8 - this.bitIndex; // L: 70 + return var1 * 8 - this.bitIndex; } } diff --git a/runescape-client/src/main/java/PacketBufferNode.java b/runescape-client/src/main/java/PacketBufferNode.java index ff32554f46..11268d03ca 100644 --- a/runescape-client/src/main/java/PacketBufferNode.java +++ b/runescape-client/src/main/java/PacketBufferNode.java @@ -4,137 +4,80 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gk") +@ObfuscatedName("gv") @Implements("PacketBufferNode") public class PacketBufferNode extends Node { - @ObfuscatedName("z") + @ObfuscatedName("so") + @ObfuscatedGetter( + intValue = -1389539327 + ) + @Export("foundItemIdCount") + static int foundItemIdCount; + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "[Lgk;" + descriptor = "[Lgv;" ) @Export("PacketBufferNode_packetBufferNodes") static PacketBufferNode[] PacketBufferNode_packetBufferNodes; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = 606603159 + intValue = 388445817 ) @Export("PacketBufferNode_packetBufferNodeCount") static int PacketBufferNode_packetBufferNodeCount; - @ObfuscatedName("f") + @ObfuscatedName("dk") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lil;" + ) + @Export("archive12") + static Archive archive12; + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "Lgb;" ) @Export("clientPacket") ClientPacket clientPacket; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 532342923 + intValue = -1047967593 ) @Export("clientPacketLength") int clientPacketLength; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lks;" + descriptor = "Lky;" ) @Export("packetBuffer") public PacketBuffer packetBuffer; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -690165039 + intValue = -3253035 ) @Export("index") public int index; static { - PacketBufferNode_packetBufferNodes = new PacketBufferNode[300]; // L: 13 - PacketBufferNode_packetBufferNodeCount = 0; // L: 14 + PacketBufferNode_packetBufferNodes = new PacketBufferNode[300]; + PacketBufferNode_packetBufferNodeCount = 0; } PacketBufferNode() { - } // L: 19 + } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1831799327" + descriptor = "(B)V", + garbageValue = "-111" ) @Export("release") public void release() { - if (PacketBufferNode_packetBufferNodeCount < PacketBufferNode_packetBufferNodes.length) { // L: 50 - PacketBufferNode_packetBufferNodes[++PacketBufferNode_packetBufferNodeCount - 1] = this; // L: 51 + if (PacketBufferNode_packetBufferNodeCount < PacketBufferNode_packetBufferNodes.length) { + PacketBufferNode_packetBufferNodes[++PacketBufferNode_packetBufferNodeCount - 1] = this; } - } // L: 52 + } - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1081926235" - ) - static void method3768() { - class248.field3216 = new int[2000]; // L: 25 - int var0 = 0; // L: 26 - int var1 = 240; // L: 27 - - int var3; - for (byte var2 = 12; var0 < 16; var1 -= var2) { // L: 28 - var3 = Player.method1325((double)((float)var1 / 360.0F), 0.9998999834060669D, (double)(0.425F * (float)var0 / 16.0F + 0.075F)); // L: 30 - class248.field3216[var0] = var3; // L: 31 - ++var0; // L: 29 - } - - var1 = 48; // L: 33 - - for (int var5 = var1 / 6; var0 < class248.field3216.length; var1 -= var5) { // L: 34 35 41 - var3 = var0 * 2; // L: 36 - - for (int var4 = Player.method1325((double)((float)var1 / 360.0F), 0.9998999834060669D, 0.5D); var0 < var3 && var0 < class248.field3216.length; ++var0) { // L: 37 38 - class248.field3216[var0] = var4; // L: 39 - } - } - - } // L: 43 - - @ObfuscatedName("ij") - @ObfuscatedSignature( - descriptor = "(Lht;IIIIIIB)V", - garbageValue = "19" - ) - static final void method3759(Widget var0, int var1, int var2, int var3, int var4, int var5, int var6) { - if (Client.field690) { // L: 9940 - Client.alternativeScrollbarWidth = 32; - } else { - Client.alternativeScrollbarWidth = 0; // L: 9941 - } - - Client.field690 = false; // L: 9942 - int var7; - if (MouseHandler.MouseHandler_currentButton == 1 || !MusicPatchNode.mouseCam && MouseHandler.MouseHandler_currentButton == 4) { // L: 9943 - if (var5 >= var1 && var5 < var1 + 16 && var6 >= var2 && var6 < var2 + 16) { // L: 9944 - var0.scrollY -= 4; // L: 9945 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var0); // L: 9946 - } else if (var5 >= var1 && var5 < var1 + 16 && var6 >= var3 + var2 - 16 && var6 < var3 + var2) { // L: 9948 - var0.scrollY += 4; // L: 9949 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var0); // L: 9950 - } else if (var5 >= var1 - Client.alternativeScrollbarWidth && var5 < Client.alternativeScrollbarWidth + var1 + 16 && var6 >= var2 + 16 && var6 < var3 + var2 - 16) { // L: 9952 - var7 = var3 * (var3 - 32) / var4; // L: 9953 - if (var7 < 8) { // L: 9954 - var7 = 8; - } - - int var8 = var6 - var2 - 16 - var7 / 2; // L: 9955 - int var9 = var3 - 32 - var7; // L: 9956 - var0.scrollY = var8 * (var4 - var3) / var9; // L: 9957 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var0); // L: 9958 - Client.field690 = true; // L: 9959 - } - } - - if (Client.mouseWheelRotation != 0) { // L: 9962 - var7 = var0.width; // L: 9963 - if (var5 >= var1 - var7 && var6 >= var2 && var5 < var1 + 16 && var6 <= var3 + var2) { // L: 9964 - var0.scrollY += Client.mouseWheelRotation * 45; // L: 9965 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var0); // L: 9966 - } - } - - } // L: 9969 + @ObfuscatedName("h") + static boolean method3682(long var0) { + return Widget.Entity_unpackSceneX(var0) == 2; + } } diff --git a/runescape-client/src/main/java/PacketWriter.java b/runescape-client/src/main/java/PacketWriter.java index af831ff747..9cb9a95731 100644 --- a/runescape-client/src/main/java/PacketWriter.java +++ b/runescape-client/src/main/java/PacketWriter.java @@ -1,129 +1,143 @@ -import java.io.DataInputStream; import java.io.IOException; -import java.net.URL; 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("dg") +@ObfuscatedName("dh") @Implements("PacketWriter") public class PacketWriter { @ObfuscatedName("f") + @ObfuscatedGetter( + intValue = -1231198347 + ) + @Export("graphicsTickTimeIdx") + static int graphicsTickTimeIdx; + @ObfuscatedName("ge") + @ObfuscatedGetter( + intValue = -840603711 + ) + static int field1331; + @ObfuscatedName("id") + @ObfuscatedGetter( + intValue = 512771779 + ) + static int field1341; + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Llv;" + descriptor = "Llr;" ) @Export("socket") AbstractSocket socket; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Ljs;" + descriptor = "Ljn;" ) @Export("packetBufferNodes") IterableNodeDeque packetBufferNodes; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 921396255 + intValue = -818108241 ) @Export("bufferSize") int bufferSize; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lkb;" + descriptor = "Lkj;" ) @Export("buffer") Buffer buffer; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lmh;" + descriptor = "Lmd;" ) @Export("isaacCipher") public IsaacCipher isaacCipher; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lks;" + descriptor = "Lky;" ) @Export("packetBuffer") PacketBuffer packetBuffer; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) @Export("serverPacket") ServerPacket serverPacket; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 67173535 + intValue = 2012352771 ) @Export("serverPacketLength") int serverPacketLength; - @ObfuscatedName("u") - boolean field1340; - @ObfuscatedName("t") + @ObfuscatedName("l") + boolean field1332; + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = -330616605 + intValue = -1974762033 ) - int field1337; - @ObfuscatedName("e") + int field1333; + @ObfuscatedName("u") @ObfuscatedGetter( - intValue = -708203583 + intValue = 1113999339 ) @Export("pendingWrites") int pendingWrites; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - ServerPacket field1348; - @ObfuscatedName("n") + ServerPacket field1335; + @ObfuscatedName("m") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - ServerPacket field1339; - @ObfuscatedName("x") + ServerPacket field1336; + @ObfuscatedName("c") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - ServerPacket field1350; + ServerPacket field1337; PacketWriter() { this.packetBufferNodes = new IterableNodeDeque(); - this.bufferSize = 0; // L: 16 - this.buffer = new Buffer(5000); // L: 17 - this.packetBuffer = new PacketBuffer(40000); // L: 19 - this.serverPacket = null; // L: 20 - this.serverPacketLength = 0; // L: 21 - this.field1340 = true; // L: 22 - this.field1337 = 0; // L: 23 - this.pendingWrites = 0; // L: 24 - } // L: 29 + this.bufferSize = 0; + this.buffer = new Buffer(5000); + this.packetBuffer = new PacketBuffer(40000); + this.serverPacket = null; + this.serverPacketLength = 0; + this.field1332 = true; + this.field1333 = 0; + this.pendingWrites = 0; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "702095612" + descriptor = "(S)V", + garbageValue = "-15320" ) @Export("clearBuffer") final void clearBuffer() { - this.packetBufferNodes.rsClear(); // L: 32 + this.packetBufferNodes.rsClear(); this.bufferSize = 0; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "73" + descriptor = "(I)V", + garbageValue = "-1507185593" ) @Export("flush") final void flush() throws IOException { if (this.socket != null && this.bufferSize > 0) { - this.buffer.offset = 0; // L: 38 + this.buffer.offset = 0; while (true) { PacketBufferNode var1 = (PacketBufferNode)this.packetBufferNodes.last(); if (var1 == null || var1.index > this.buffer.array.length - this.buffer.offset) { - this.socket.write(this.buffer.array, 0, this.buffer.offset); // L: 49 + this.socket.write(this.buffer.array, 0, this.buffer.offset); this.pendingWrites = 0; break; } @@ -136,242 +150,62 @@ public class PacketWriter { } } - } // L: 52 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lgk;B)V", - garbageValue = "29" + descriptor = "(Lgv;I)V", + garbageValue = "1911016563" ) @Export("addNode") public final void addNode(PacketBufferNode var1) { - this.packetBufferNodes.addFirst(var1); // L: 55 - var1.index = var1.packetBuffer.offset; // L: 56 - var1.packetBuffer.offset = 0; // L: 57 - this.bufferSize += var1.index; // L: 58 - } // L: 59 + this.packetBufferNodes.addFirst(var1); + var1.index = var1.packetBuffer.offset; + var1.packetBuffer.offset = 0; + this.bufferSize += var1.index; + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Llv;I)V", - garbageValue = "-640227269" + descriptor = "(Llr;I)V", + garbageValue = "-412452109" ) @Export("setSocket") void setSocket(AbstractSocket var1) { - this.socket = var1; // L: 62 - } // L: 63 + this.socket = var1; + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1950086546" + garbageValue = "1483874445" ) @Export("close") void close() { - if (this.socket != null) { // L: 66 - this.socket.close(); // L: 67 - this.socket = null; // L: 68 + if (this.socket != null) { + this.socket.close(); + this.socket = null; } - } // L: 70 + } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1804593474" + garbageValue = "210420137" ) @Export("removeSocket") void removeSocket() { - this.socket = null; // L: 73 - } // L: 74 + this.socket = null; + } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(S)Llv;", - garbageValue = "310" + descriptor = "(I)Llr;", + garbageValue = "659174081" ) @Export("getSocket") AbstractSocket getSocket() { - return this.socket; // L: 77 + return this.socket; } - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/Throwable;B)V", - garbageValue = "60" - ) - @Export("RunException_sendStackTrace") - public static void RunException_sendStackTrace(String var0, Throwable var1) { - if (var1 != null) { - var1.printStackTrace(); - } else { - try { - String var2 = ""; // L: 33 - if (var1 != null) { // L: 34 - var2 = Occluder.method3413(var1); - } - - if (var0 != null) { // L: 35 - if (var1 != null) { // L: 36 - var2 = var2 + " | "; - } - - var2 = var2 + var0; // L: 37 - } - - System.out.println("Error: " + var2); // L: 39 - var2 = var2.replace(':', '.'); // L: 40 - var2 = var2.replace('@', '_'); // L: 41 - var2 = var2.replace('&', '_'); // L: 42 - var2 = var2.replace('#', '_'); // L: 43 - if (RunException.RunException_applet == null) { // L: 44 - return; - } - - URL var3 = new URL(RunException.RunException_applet.getCodeBase(), "clienterror.ws?c=" + RunException.RunException_revision + "&u=" + class217.localPlayerName + "&v1=" + TaskHandler.javaVendor + "&v2=" + TaskHandler.javaVersion + "&ct=" + NetFileRequest.clientType + "&e=" + var2); // L: 45 - DataInputStream var4 = new DataInputStream(var3.openStream()); // L: 46 - var4.read(); // L: 47 - var4.close(); // L: 48 - } catch (Exception var5) { // L: 50 - } - - } - } // L: 51 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(I)[Llu;", - garbageValue = "987618759" - ) - @Export("FillMode_values") - public static FillMode[] FillMode_values() { - return new FillMode[]{FillMode.SOLID, FillMode.GRADIENT_ALPHA, FillMode.GRADIENT}; // L: 15 - } - - @ObfuscatedName("go") - @ObfuscatedSignature( - descriptor = "(ZLks;I)V", - garbageValue = "-232306457" - ) - @Export("loadRegions") - static final void loadRegions(boolean var0, PacketBuffer var1) { - Client.isInInstance = var0; // L: 5480 - int var2; - int var3; - int var5; - int var6; - int var7; - int var8; - if (!Client.isInInstance) { // L: 5481 - var2 = var1.method5797(); // L: 5482 - var3 = var1.method5797(); // L: 5483 - int var4 = var1.readUnsignedShort(); // L: 5484 - WorldMapEvent.xteaKeys = new int[var4][4]; // L: 5485 - - for (var5 = 0; var5 < var4; ++var5) { // L: 5486 - for (var6 = 0; var6 < 4; ++var6) { // L: 5487 - WorldMapEvent.xteaKeys[var5][var6] = var1.readInt(); // L: 5488 - } - } - - class52.regions = new int[var4]; // L: 5491 - class22.regionMapArchiveIds = new int[var4]; // L: 5492 - WallDecoration.regionLandArchiveIds = new int[var4]; // L: 5493 - GrandExchangeOffer.regionLandArchives = new byte[var4][]; // L: 5494 - GameShell.regionMapArchives = new byte[var4][]; // L: 5495 - boolean var16 = false; // L: 5496 - if ((var2 / 8 == 48 || var2 / 8 == 49) && var3 / 8 == 48) { // L: 5497 - var16 = true; - } - - if (var2 / 8 == 48 && var3 / 8 == 148) { // L: 5498 - var16 = true; - } - - var4 = 0; // L: 5499 - - for (var6 = (var2 - 6) / 8; var6 <= (var2 + 6) / 8; ++var6) { // L: 5500 - for (var7 = (var3 - 6) / 8; var7 <= (var3 + 6) / 8; ++var7) { // L: 5501 - var8 = var7 + (var6 << 8); // L: 5502 - if (!var16 || var7 != 49 && var7 != 149 && var7 != 147 && var6 != 50 && (var6 != 49 || var7 != 47)) { // L: 5503 - class52.regions[var4] = var8; // L: 5504 - class22.regionMapArchiveIds[var4] = Varcs.archive5.getGroupId("m" + var6 + "_" + var7); // L: 5505 - WallDecoration.regionLandArchiveIds[var4] = Varcs.archive5.getGroupId("l" + var6 + "_" + var7); // L: 5506 - ++var4; // L: 5507 - } - } - } - - Projectile.method2223(var2, var3, true); // L: 5510 - } else { - var2 = var1.method5659(); // L: 5513 - var3 = var1.method5659(); // L: 5514 - boolean var15 = var1.method5668() == 1; // L: 5515 - var5 = var1.readUnsignedShort(); // L: 5516 - var1.importIndex(); // L: 5517 - - int var9; - for (var6 = 0; var6 < 4; ++var6) { // L: 5518 - for (var7 = 0; var7 < 13; ++var7) { // L: 5519 - for (var8 = 0; var8 < 13; ++var8) { // L: 5520 - var9 = var1.readBits(1); // L: 5521 - if (var9 == 1) { - Client.instanceChunkTemplates[var6][var7][var8] = var1.readBits(26); // L: 5522 - } else { - Client.instanceChunkTemplates[var6][var7][var8] = -1; // L: 5523 - } - } - } - } - - var1.exportIndex(); // L: 5527 - WorldMapEvent.xteaKeys = new int[var5][4]; // L: 5528 - - for (var6 = 0; var6 < var5; ++var6) { // L: 5529 - for (var7 = 0; var7 < 4; ++var7) { // L: 5530 - WorldMapEvent.xteaKeys[var6][var7] = var1.readInt(); // L: 5531 - } - } - - class52.regions = new int[var5]; // L: 5534 - class22.regionMapArchiveIds = new int[var5]; // L: 5535 - WallDecoration.regionLandArchiveIds = new int[var5]; // L: 5536 - GrandExchangeOffer.regionLandArchives = new byte[var5][]; // L: 5537 - GameShell.regionMapArchives = new byte[var5][]; // L: 5538 - var5 = 0; // L: 5539 - - for (var6 = 0; var6 < 4; ++var6) { // L: 5540 - for (var7 = 0; var7 < 13; ++var7) { // L: 5541 - for (var8 = 0; var8 < 13; ++var8) { // L: 5542 - var9 = Client.instanceChunkTemplates[var6][var7][var8]; // L: 5543 - if (var9 != -1) { // L: 5544 - int var10 = var9 >> 14 & 1023; // L: 5545 - int var11 = var9 >> 3 & 2047; // L: 5546 - int var12 = (var10 / 8 << 8) + var11 / 8; // L: 5547 - - int var13; - for (var13 = 0; var13 < var5; ++var13) { // L: 5548 - if (class52.regions[var13] == var12) { - var12 = -1; // L: 5549 - break; // L: 5550 - } - } - - if (var12 != -1) { // L: 5552 - class52.regions[var5] = var12; // L: 5553 - var13 = var12 >> 8 & 255; // L: 5554 - int var14 = var12 & 255; // L: 5555 - class22.regionMapArchiveIds[var5] = Varcs.archive5.getGroupId("m" + var13 + "_" + var14); // L: 5556 - WallDecoration.regionLandArchiveIds[var5] = Varcs.archive5.getGroupId("l" + var13 + "_" + var14); // L: 5557 - ++var5; // L: 5558 - } - } - } - } - } - - Projectile.method2223(var3, var2, !var15); // L: 5564 - } - - } // L: 5566 } diff --git a/runescape-client/src/main/java/ParamDefinition.java b/runescape-client/src/main/java/ParamDefinition.java index be0bdd856a..b525c69293 100644 --- a/runescape-client/src/main/java/ParamDefinition.java +++ b/runescape-client/src/main/java/ParamDefinition.java @@ -3,183 +3,181 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("ju") +@ObfuscatedName("jl") @Implements("ParamDefinition") public class ParamDefinition extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("ParamDefinition_archive") - public static AbstractArchive ParamDefinition_archive; - @ObfuscatedName("b") + static AbstractArchive ParamDefinition_archive; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("ParamDefinition_cached") - public static EvictingDualNodeHashTable ParamDefinition_cached; - @ObfuscatedName("l") + static EvictingDualNodeHashTable ParamDefinition_cached; + @ObfuscatedName("x") @Export("type") char type; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 432424679 + intValue = -1005886373 ) @Export("defaultInt") public int defaultInt; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("defaultStr") public String defaultStr; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("autoDisable") boolean autoDisable; static { - ParamDefinition_cached = new EvictingDualNodeHashTable(64); // L: 12 + ParamDefinition_cached = new EvictingDualNodeHashTable(64); } ParamDefinition() { - this.autoDisable = true; // L: 16 - } // L: 18 - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1987481332" - ) - @Export("postDecode") - void postDecode() { - } // L: 31 - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-425218539" - ) - @Export("decode") - void decode(Buffer var1) { - while (true) { - int var2 = var1.readUnsignedByte(); // L: 35 - if (var2 == 0) { // L: 36 - return; // L: 39 - } - - this.decodeNext(var1, var2); // L: 37 - } - } - - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "1961390575" - ) - @Export("decodeNext") - void decodeNext(Buffer var1, int var2) { - if (var2 == 1) { // L: 42 - byte var4 = var1.readByte(); // L: 44 - int var5 = var4 & 255; // L: 46 - if (var5 == 0) { // L: 47 - throw new IllegalArgumentException("" + Integer.toString(var5, 16)); - } - - if (var5 >= 128 && var5 < 160) { // L: 48 - char var6 = class298.cp1252AsciiExtension[var5 - 128]; // L: 49 - if (var6 == 0) { // L: 50 - var6 = '?'; - } - - var5 = var6; // L: 51 - } - - char var3 = (char)var5; // L: 53 - this.type = var3; // L: 55 - } else if (var2 == 2) { // L: 57 - this.defaultInt = var1.readInt(); - } else if (var2 == 4) { // L: 58 - this.autoDisable = false; - } else if (var2 == 5) { // L: 59 - this.defaultStr = var1.readStringCp1252NullTerminated(); - } - - } // L: 61 - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-12" - ) - @Export("isString") - public boolean isString() { - return this.type == 's'; // L: 64 - } - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(Liw;Ljava/lang/String;Ljava/lang/String;I)[Llc;", - garbageValue = "-1513719503" - ) - public static Sprite[] method4677(AbstractArchive var0, String var1, String var2) { - int var3 = var0.getGroupId(var1); // L: 160 - int var4 = var0.getFileId(var3, var2); // L: 161 - return HorizontalAlignment.method4882(var0, var3, var4); // L: 162 + this.autoDisable = true; } @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(ILco;ZB)I", - garbageValue = "6" + descriptor = "(B)V", + garbageValue = "10" ) - static int method4671(int var0, Script var1, boolean var2) { - Widget var3 = var2 ? MouseRecorder.field621 : Interpreter.field1122; // L: 1039 - if (var0 == ScriptOpcodes.CC_GETSCROLLX) { // L: 1040 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.scrollX; // L: 1041 - return 1; // L: 1042 - } else if (var0 == ScriptOpcodes.CC_GETSCROLLY) { // L: 1044 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.scrollY; // L: 1045 - return 1; // L: 1046 - } else if (var0 == ScriptOpcodes.CC_GETTEXT) { // L: 1048 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3.text; // L: 1049 - return 1; // L: 1050 - } else if (var0 == ScriptOpcodes.CC_GETSCROLLWIDTH) { // L: 1052 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.scrollWidth; // L: 1053 - return 1; // L: 1054 - } else if (var0 == ScriptOpcodes.CC_GETSCROLLHEIGHT) { // L: 1056 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.scrollHeight; // L: 1057 - return 1; // L: 1058 - } else if (var0 == ScriptOpcodes.CC_GETMODELZOOM) { // L: 1060 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.modelZoom; // L: 1061 - return 1; // L: 1062 - } else if (var0 == ScriptOpcodes.CC_GETMODELANGLE_X) { // L: 1064 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.modelAngleX; // L: 1065 - return 1; // L: 1066 - } else if (var0 == ScriptOpcodes.CC_GETMODELANGLE_Z) { // L: 1068 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.modelAngleZ; // L: 1069 - return 1; // L: 1070 - } else if (var0 == ScriptOpcodes.CC_GETMODELANGLE_Y) { // L: 1072 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.modelAngleY; // L: 1073 - return 1; // L: 1074 - } else if (var0 == ScriptOpcodes.CC_GETTRANSTOP) { // L: 1076 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.transparencyTop; // L: 1077 - return 1; // L: 1078 - } else if (var0 == ScriptOpcodes.CC_GETTRANSBOT) { // L: 1080 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.transparencyBot; // L: 1081 - return 1; // L: 1082 - } else if (var0 == ScriptOpcodes.CC_GETCOLOUR) { // L: 1084 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.color; // L: 1085 - return 1; // L: 1086 - } else if (var0 == ScriptOpcodes.CC_GETFILLCOLOUR) { // L: 1088 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.color2; // L: 1089 - return 1; // L: 1090 - } else if (var0 == ScriptOpcodes.CC_GETFILLMODE) { // L: 1092 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.fillMode.rsOrdinal(); // L: 1093 - return 1; // L: 1094 - } else if (var0 == ScriptOpcodes.CC_GETMODELTRANSPARENT) { // L: 1096 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.modelTransparency ? 1 : 0; // L: 1097 - return 1; // L: 1098 + @Export("postDecode") + void postDecode() { + } + + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "(Lkj;I)V", + garbageValue = "65535" + ) + @Export("decode") + void decode(Buffer var1) { + while (true) { + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; + } + + this.decodeNext(var1, var2); + } + } + + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "(Lkj;II)V", + garbageValue = "1000544289" + ) + @Export("decodeNext") + void decodeNext(Buffer var1, int var2) { + if (var2 == 1) { + byte var4 = var1.readByte(); + int var5 = var4 & 255; + if (var5 == 0) { + throw new IllegalArgumentException("" + Integer.toString(var5, 16)); + } + + if (var5 >= 128 && var5 < 160) { + char var6 = class298.cp1252AsciiExtension[var5 - 128]; + if (var6 == 0) { + var6 = '?'; + } + + var5 = var6; + } + + char var3 = (char)var5; + this.type = var3; + } else if (var2 == 2) { + this.defaultInt = var1.readInt(); + } else if (var2 == 4) { + this.autoDisable = false; + } else if (var2 == 5) { + this.defaultStr = var1.readStringCp1252NullTerminated(); + } + + } + + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "(B)Z", + garbageValue = "0" + ) + @Export("isString") + public boolean isString() { + return this.type == 's'; + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Lib;I)V", + garbageValue = "1899658312" + ) + public static void method4526(AbstractArchive var0) { + StructDefinition.StructDefinition_archive = var0; + } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(II)Ljy;", + garbageValue = "-1708661851" + ) + @Export("SequenceDefinition_get") + public static SequenceDefinition SequenceDefinition_get(int var0) { + SequenceDefinition var1 = (SequenceDefinition)SequenceDefinition.SequenceDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; } else { - return 2; // L: 1100 + byte[] var2 = SequenceDefinition.SequenceDefinition_archive.takeFile(12, var0); + var1 = new SequenceDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); + } + + var1.postDecode(); + SequenceDefinition.SequenceDefinition_cached.put(var1, (long)var0); + return var1; + } + } + + @ObfuscatedName("x") + @Export("base37DecodeLong") + public static String base37DecodeLong(long var0) { + if (var0 > 0L && var0 < 6582952005840035281L) { + if (var0 % 37L == 0L) { + return null; + } else { + int var2 = 0; + + for (long var3 = var0; var3 != 0L; var3 /= 37L) { + ++var2; + } + + StringBuilder var5; + char var8; + for (var5 = new StringBuilder(var2); 0L != var0; var5.append(var8)) { + long var6 = var0; + var0 /= 37L; + var8 = class299.base37Table[(int)(var6 - var0 * 37L)]; + if (var8 == '_') { + int var9 = var5.length() - 1; + var5.setCharAt(var9, Character.toUpperCase(var5.charAt(var9))); + var8 = 160; + } + } + + var5.reverse(); + var5.setCharAt(0, Character.toUpperCase(var5.charAt(0))); + return var5.toString(); + } + } else { + return null; } } } diff --git a/runescape-client/src/main/java/PcmPlayer.java b/runescape-client/src/main/java/PcmPlayer.java index 93a8e07428..bba6f9e485 100644 --- a/runescape-client/src/main/java/PcmPlayer.java +++ b/runescape-client/src/main/java/PcmPlayer.java @@ -4,516 +4,508 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dh") +@ObfuscatedName("dp") @Implements("PcmPlayer") public class PcmPlayer { - @ObfuscatedName("rb") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 410930349 + intValue = -804003183 ) - static int field1449; - @ObfuscatedName("z") - @ObfuscatedGetter( - intValue = 445943663 - ) - public static int field1442; - @ObfuscatedName("q") + public static int field1443; + @ObfuscatedName("j") @Export("PcmPlayer_stereo") - public static boolean PcmPlayer_stereo; - @ObfuscatedName("be") - @Export("worldListURL") - static String worldListURL; - @ObfuscatedName("x") + protected static boolean PcmPlayer_stereo; + @ObfuscatedName("l") + @ObfuscatedGetter( + intValue = -1343221865 + ) + static int field1424; + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "Ldt;" + ) + @Export("soundSystem") + static SoundSystem soundSystem; + @ObfuscatedName("c") @Export("samples") protected int[] samples; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedSignature( - descriptor = "Lde;" + descriptor = "Ldi;" ) @Export("stream") PcmStream stream; - @ObfuscatedName("r") + @ObfuscatedName("f") @ObfuscatedGetter( - intValue = -420218683 + intValue = 1633759265 ) - int field1438; - @ObfuscatedName("y") + int field1425; + @ObfuscatedName("a") @ObfuscatedGetter( - longValue = -2584674083897744543L + longValue = -8429726973010117483L ) @Export("timeMs") long timeMs; - @ObfuscatedName("s") + @ObfuscatedName("b") @ObfuscatedGetter( - intValue = -2101974297 + intValue = -1292607887 ) @Export("capacity") int capacity; - @ObfuscatedName("j") + @ObfuscatedName("y") @ObfuscatedGetter( - intValue = 1733688779 + intValue = 1569726481 ) - int field1441; - @ObfuscatedName("w") + int field1431; + @ObfuscatedName("r") @ObfuscatedGetter( - intValue = -1246439087 + intValue = -246859759 ) - int field1454; - @ObfuscatedName("v") + int field1432; + @ObfuscatedName("q") @ObfuscatedGetter( - longValue = -2737488179381108627L + longValue = 3904158006998688263L ) - long field1432; - @ObfuscatedName("d") - @ObfuscatedGetter( - intValue = 704933067 - ) - int field1444; - @ObfuscatedName("a") - @ObfuscatedGetter( - intValue = -1488004649 - ) - int field1445; + long field1433; @ObfuscatedName("g") @ObfuscatedGetter( - intValue = 2114790969 + intValue = -1780329359 + ) + int field1427; + @ObfuscatedName("s") + @ObfuscatedGetter( + intValue = -1504765301 ) int field1435; - @ObfuscatedName("h") + @ObfuscatedName("o") @ObfuscatedGetter( - longValue = -7835668176490123993L + intValue = -727818553 ) - long field1456; - @ObfuscatedName("i") - boolean field1448; - @ObfuscatedName("ar") + int field1436; + @ObfuscatedName("k") @ObfuscatedGetter( - intValue = -1431776873 + longValue = -674058996011130719L ) - int field1450; - @ObfuscatedName("ay") + long field1437; + @ObfuscatedName("d") + boolean field1422; + @ObfuscatedName("as") + @ObfuscatedGetter( + intValue = 977089873 + ) + int field1439; + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "[Lde;" + descriptor = "[Ldi;" ) - PcmStream[] field1451; - @ObfuscatedName("ah") + PcmStream[] field1440; + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "[Lde;" + descriptor = "[Ldi;" ) - PcmStream[] field1452; + PcmStream[] field1428; protected PcmPlayer() { - this.field1438 = 32; // L: 22 - this.timeMs = User.currentTimeMillis(); // L: 23 - this.field1432 = 0L; // L: 27 - this.field1444 = 0; // L: 28 - this.field1445 = 0; // L: 29 - this.field1435 = 0; // L: 30 - this.field1456 = 0L; // L: 31 - this.field1448 = true; // L: 32 - this.field1450 = 0; // L: 38 - this.field1451 = new PcmStream[8]; // L: 39 - this.field1452 = new PcmStream[8]; // L: 40 - } // L: 42 + this.field1425 = 32; + this.timeMs = class298.currentTimeMillis(); + this.field1433 = 0L; + this.field1427 = 0; + this.field1435 = 0; + this.field1436 = 0; + this.field1437 = 0L; + this.field1422 = true; + this.field1439 = 0; + this.field1440 = new PcmStream[8]; + this.field1428 = new PcmStream[8]; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-906788639" + descriptor = "(B)V", + garbageValue = "99" ) @Export("init") protected void init() throws Exception { - } // L: 273 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-32" + descriptor = "(IS)V", + garbageValue = "3677" ) @Export("open") protected void open(int var1) throws Exception { - } // L: 274 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-612241013" + descriptor = "(B)I", + garbageValue = "60" ) @Export("position") protected int position() throws Exception { - return this.capacity; // L: 277 + return this.capacity; } - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("write") protected void write() throws Exception { - } // L: 280 + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "0" + descriptor = "(I)V", + garbageValue = "-310479525" ) @Export("close") protected void close() { - } // L: 281 - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1393012391" - ) - @Export("discard") - protected void discard() throws Exception { - } // L: 282 - - @ObfuscatedName("s") - @ObfuscatedSignature( - descriptor = "(Lde;I)V", - garbageValue = "-239504049" - ) - @Export("setStream") - public final synchronized void setStream(PcmStream var1) { - this.stream = var1; // L: 72 - } // L: 73 + } @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "29" + garbageValue = "-7" + ) + @Export("discard") + protected void discard() throws Exception { + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(Ldi;I)V", + garbageValue = "2012600293" + ) + @Export("setStream") + public final synchronized void setStream(PcmStream var1) { + this.stream = var1; + } + + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "2081423658" ) @Export("run") public final synchronized void run() { - if (this.samples != null) { // L: 76 - long var1 = User.currentTimeMillis(); // L: 77 + if (this.samples != null) { + long var1 = class298.currentTimeMillis(); try { - if (0L != this.field1432) { // L: 79 - if (var1 < this.field1432) { // L: 80 + if (this.field1433 != 0L) { + if (var1 < this.field1433) { return; } - this.open(this.capacity); // L: 81 - this.field1432 = 0L; // L: 82 - this.field1448 = true; // L: 83 + this.open(this.capacity); + this.field1433 = 0L; + this.field1422 = true; } - int var3 = this.position(); // L: 85 - if (this.field1435 - var3 > this.field1444) { // L: 86 - this.field1444 = this.field1435 - var3; + int var3 = this.position(); + if (this.field1436 - var3 > this.field1427) { + this.field1427 = this.field1436 - var3; } - int var4 = this.field1441 + this.field1454; // L: 87 - if (var4 + 256 > 16384) { // L: 88 + int var4 = this.field1431 + this.field1432; + if (var4 + 256 > 16384) { var4 = 16128; } - if (var4 + 256 > this.capacity) { // L: 89 - this.capacity += 1024; // L: 90 - if (this.capacity > 16384) { // L: 91 + if (var4 + 256 > this.capacity) { + this.capacity += 1024; + if (this.capacity > 16384) { this.capacity = 16384; } - this.close(); // L: 92 - this.open(this.capacity); // L: 93 - var3 = 0; // L: 94 - this.field1448 = true; // L: 95 - if (var4 + 256 > this.capacity) { // L: 96 - var4 = this.capacity - 256; // L: 97 - this.field1454 = var4 - this.field1441; // L: 98 + this.close(); + this.open(this.capacity); + var3 = 0; + this.field1422 = true; + if (var4 + 256 > this.capacity) { + var4 = this.capacity - 256; + this.field1432 = var4 - this.field1431; } } - while (var3 < var4) { // L: 101 - this.fill(this.samples, 256); // L: 102 - this.write(); // L: 103 - var3 += 256; // L: 104 + while (var3 < var4) { + this.fill(this.samples, 256); + this.write(); + var3 += 256; } - if (var1 > this.field1456) { // L: 106 - if (!this.field1448) { // L: 107 - if (this.field1444 == 0 && this.field1445 == 0) { // L: 108 - this.close(); // L: 109 - this.field1432 = 2000L + var1; // L: 110 - return; // L: 111 + if (var1 > this.field1437) { + if (!this.field1422) { + if (this.field1427 == 0 && this.field1435 == 0) { + this.close(); + this.field1433 = var1 + 2000L; + return; } - this.field1454 = Math.min(this.field1445, this.field1444); // L: 113 - this.field1445 = this.field1444; // L: 114 + this.field1432 = Math.min(this.field1435, this.field1427); + this.field1435 = this.field1427; } else { - this.field1448 = false; // L: 116 + this.field1422 = false; } - this.field1444 = 0; // L: 117 - this.field1456 = 2000L + var1; // L: 118 + this.field1427 = 0; + this.field1437 = var1 + 2000L; } - this.field1435 = var3; // L: 120 - } catch (Exception var7) { // L: 122 - this.close(); // L: 123 - this.field1432 = var1 + 2000L; // L: 124 + this.field1436 = var3; + } catch (Exception var7) { + this.close(); + this.field1433 = var1 + 2000L; } try { - if (var1 > 500000L + this.timeMs) { // L: 127 + if (var1 > this.timeMs + 500000L) { var1 = this.timeMs; } - while (var1 > 5000L + this.timeMs) { // L: 128 - this.skip(256); // L: 129 - this.timeMs += (long)(256000 / field1442); // L: 130 + while (var1 > 5000L + this.timeMs) { + this.skip(256); + this.timeMs += (long)(256000 / field1443); } - } catch (Exception var6) { // L: 133 - this.timeMs = var1; // L: 134 + } catch (Exception var6) { + this.timeMs = var1; } } - } // L: 136 + } - @ObfuscatedName("d") + @ObfuscatedName("ae") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-170851511" + garbageValue = "-764201060" ) - public final void method2562() { - this.field1448 = true; // L: 139 - } // L: 140 + public final void method2485() { + this.field1422 = true; + } - @ObfuscatedName("a") + @ObfuscatedName("ac") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "2091297211" + garbageValue = "1507981291" ) @Export("tryDiscard") public final synchronized void tryDiscard() { - this.field1448 = true; // L: 143 + this.field1422 = true; try { - this.discard(); // L: 145 - } catch (Exception var2) { // L: 147 - this.close(); // L: 148 - this.field1432 = User.currentTimeMillis() + 2000L; // L: 149 + this.discard(); + } catch (Exception var2) { + this.close(); + this.field1433 = class298.currentTimeMillis() + 2000L; } - } // L: 151 + } - @ObfuscatedName("g") + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "115" + descriptor = "(I)V", + garbageValue = "65535" ) @Export("shutdown") public final synchronized void shutdown() { - if (WorldMapDecoration.soundSystem != null) { // L: 154 - boolean var1 = true; // L: 155 + if (soundSystem != null) { + boolean var1 = true; - for (int var2 = 0; var2 < 2; ++var2) { // L: 156 - if (this == WorldMapDecoration.soundSystem.players[var2]) { // L: 157 - WorldMapDecoration.soundSystem.players[var2] = null; + for (int var2 = 0; var2 < 2; ++var2) { + if (this == soundSystem.players[var2]) { + soundSystem.players[var2] = null; } - if (WorldMapDecoration.soundSystem.players[var2] != null) { // L: 158 + if (soundSystem.players[var2] != null) { var1 = false; } } - if (var1) { // L: 160 - RunException.soundSystemExecutor.shutdownNow(); // L: 161 - RunException.soundSystemExecutor = null; // L: 162 - WorldMapDecoration.soundSystem = null; // L: 163 + if (var1) { + InterfaceParent.soundSystemExecutor.shutdownNow(); + InterfaceParent.soundSystemExecutor = null; + soundSystem = null; } } - this.close(); // L: 166 - this.samples = null; // L: 167 - } // L: 168 + this.close(); + this.samples = null; + } - @ObfuscatedName("h") + @ObfuscatedName("av") @ObfuscatedSignature( descriptor = "(IB)V", - garbageValue = "79" + garbageValue = "4" ) @Export("skip") final void skip(int var1) { - this.field1450 -= var1; // L: 171 - if (this.field1450 < 0) { - this.field1450 = 0; // L: 172 + this.field1439 -= var1; + if (this.field1439 < 0) { + this.field1439 = 0; } if (this.stream != null) { - this.stream.skip(var1); // L: 173 + this.stream.skip(var1); } - } // L: 174 + } - @ObfuscatedName("ab") + @ObfuscatedName("aq") @Export("fill") final void fill(int[] var1, int var2) { - int var3 = var2; // L: 178 - if (PcmPlayer_stereo) { // L: 179 + int var3 = var2; + if (PcmPlayer_stereo) { var3 = var2 << 1; } - class311.clearIntArray(var1, 0, var3); // L: 180 - this.field1450 -= var2; // L: 181 - if (this.stream != null && this.field1450 <= 0) { // L: 182 - this.field1450 += field1442 >> 4; // L: 183 - Client.PcmStream_disable(this.stream); - this.method2606(this.stream, this.stream.vmethod2850()); + class311.clearIntArray(var1, 0, var3); + this.field1439 -= var2; + if (this.stream != null && this.field1439 <= 0) { + this.field1439 += field1443 >> 4; + Varcs.PcmStream_disable(this.stream); + this.method2492(this.stream, this.stream.vmethod2800()); int var4 = 0; - int var5 = 255; // L: 187 + int var5 = 255; int var6; PcmStream var10; label108: - for (var6 = 7; var5 != 0; --var6) { // L: 188 + for (var6 = 7; var5 != 0; --var6) { int var7; int var8; - if (var6 < 0) { // L: 191 - var7 = var6 & 3; // L: 192 - var8 = -(var6 >> 2); // L: 193 + if (var6 < 0) { + var7 = var6 & 3; + var8 = -(var6 >> 2); } else { - var7 = var6; // L: 196 - var8 = 0; // L: 197 + var7 = var6; + var8 = 0; } - for (int var9 = var5 >>> var7 & 286331153; var9 != 0; var9 >>>= 4) { // L: 199 201 - if ((var9 & 1) != 0) { // L: 204 - var5 &= ~(1 << var7); // L: 207 - var10 = null; // L: 208 - PcmStream var11 = this.field1451[var7]; // L: 209 + for (int var9 = var5 >>> var7 & 286331153; var9 != 0; var9 >>>= 4) { + if ((var9 & 1) != 0) { + var5 &= ~(1 << var7); + var10 = null; + PcmStream var11 = this.field1440[var7]; label102: while (true) { while (true) { - if (var11 == null) { // L: 210 + if (var11 == null) { break label102; } - AbstractSound var12 = var11.sound; // L: 211 - if (var12 != null && var12.position > var8) { // L: 212 - var5 |= 1 << var7; // L: 213 - var10 = var11; // L: 214 - var11 = var11.after; // L: 215 + AbstractSound var12 = var11.sound; + if (var12 != null && var12.position > var8) { + var5 |= 1 << var7; + var10 = var11; + var11 = var11.after; } else { - var11.active = true; // L: 218 - int var13 = var11.vmethod4043(); // L: 219 - var4 += var13; // L: 220 + var11.active = true; + int var13 = var11.vmethod3927(); + var4 += var13; if (var12 != null) { - var12.position += var13; // L: 221 + var12.position += var13; } - if (var4 >= this.field1438) { // L: 222 + if (var4 >= this.field1425) { break label108; } - PcmStream var14 = var11.firstSubStream(); // L: 223 - if (var14 != null) { // L: 224 - for (int var15 = var11.field1520; var14 != null; var14 = var11.nextSubStream()) { // L: 225 226 228 - this.method2606(var14, var15 * var14.vmethod2850() >> 8); // L: 227 + PcmStream var14 = var11.firstSubStream(); + if (var14 != null) { + for (int var15 = var11.field1508; var14 != null; var14 = var11.nextSubStream()) { + this.method2492(var14, var15 * var14.vmethod2800() >> 8); } } - PcmStream var18 = var11.after; // L: 231 - var11.after = null; // L: 232 - if (var10 == null) { // L: 233 - this.field1451[var7] = var18; + PcmStream var18 = var11.after; + var11.after = null; + if (var10 == null) { + this.field1440[var7] = var18; } else { - var10.after = var18; // L: 234 + var10.after = var18; } - if (var18 == null) { // L: 235 - this.field1452[var7] = var10; + if (var18 == null) { + this.field1428[var7] = var10; } - var11 = var18; // L: 236 + var11 = var18; } } } } - var7 += 4; // L: 200 + var7 += 4; ++var8; } } - for (var6 = 0; var6 < 8; ++var6) { // L: 240 - PcmStream var16 = this.field1451[var6]; // L: 241 - PcmStream[] var17 = this.field1451; // L: 242 - this.field1452[var6] = null; // L: 244 + for (var6 = 0; var6 < 8; ++var6) { + PcmStream var16 = this.field1440[var6]; + PcmStream[] var17 = this.field1440; + this.field1428[var6] = null; - for (var17[var6] = null; var16 != null; var16 = var10) { // L: 245 246 249 - var10 = var16.after; // L: 247 - var16.after = null; // L: 248 + for (var17[var6] = null; var16 != null; var16 = var10) { + var10 = var16.after; + var16.after = null; } } } - if (this.field1450 < 0) { // L: 253 - this.field1450 = 0; + if (this.field1439 < 0) { + this.field1439 = 0; } if (this.stream != null) { - this.stream.fill(var1, 0, var2); // L: 254 + this.stream.fill(var1, 0, var2); } - this.timeMs = User.currentTimeMillis(); // L: 255 - } // L: 256 - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(Lde;II)V", - garbageValue = "750775441" - ) - final void method2606(PcmStream var1, int var2) { - int var3 = var2 >> 5; // L: 265 - PcmStream var4 = this.field1452[var3]; // L: 266 - if (var4 == null) { // L: 267 - this.field1451[var3] = var1; - } else { - var4.after = var1; // L: 268 - } - - this.field1452[var3] = var1; // L: 269 - var1.field1520 = var2; // L: 270 - } // L: 271 - - @ObfuscatedName("x") - @ObfuscatedSignature( - descriptor = "(CI)Z", - garbageValue = "-1294994184" - ) - @Export("isCharPrintable") - public static boolean isCharPrintable(char var0) { - if (var0 >= ' ' && var0 <= '~') { // L: 184 - return true; - } else if (var0 >= 160 && var0 <= 255) { - return true; // L: 185 - } else { - return var0 == 8364 || var0 == 338 || var0 == 8212 || var0 == 339 || var0 == 376; // L: 186 - } + this.timeMs = class298.currentTimeMillis(); } - @ObfuscatedName("au") + @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "(Lje;I)Z", - garbageValue = "-1268197096" + descriptor = "(Ldi;IB)V", + garbageValue = "-108" ) - static boolean method2598(ObjectDefinition var0) { - if (var0.transforms != null) { // L: 633 - int[] var1 = var0.transforms; // L: 635 - - for (int var2 = 0; var2 < var1.length; ++var2) { // L: 636 - int var3 = var1[var2]; // L: 637 - ObjectDefinition var4 = ScriptEvent.getObjectDefinition(var3); // L: 639 - if (var4.mapIconId != -1) { // L: 640 - return true; // L: 641 - } - } - } else if (var0.mapIconId != -1) { // L: 647 - return true; // L: 648 + final void method2492(PcmStream var1, int var2) { + int var3 = var2 >> 5; + PcmStream var4 = this.field1428[var3]; + if (var4 == null) { + this.field1440[var3] = var1; + } else { + var4.after = var1; } - return false; // L: 650 + this.field1428[var3] = var1; + var1.field1508 = var2; + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Lib;Lib;Lib;B)V", + garbageValue = "47" + ) + public static void method2538(AbstractArchive var0, AbstractArchive var1, AbstractArchive var2) { + SequenceDefinition.SequenceDefinition_archive = var0; + SequenceDefinition.SequenceDefinition_animationsArchive = var1; + SequenceDefinition.SequenceDefinition_skeletonsArchive = var2; + } + + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(III)I", + garbageValue = "-1085535536" + ) + static final int method2544(int var0, int var1) { + int var2 = class4.method56(45365 + var0, var1 + 91923, 4) - 128 + (class4.method56(var0 + 10294, 37821 + var1, 2) - 128 >> 1) + (class4.method56(var0, var1, 1) - 128 >> 2); + var2 = (int)(0.3D * (double)var2) + 35; + if (var2 < 10) { + var2 = 10; + } else if (var2 > 60) { + var2 = 60; + } + + return var2; } } diff --git a/runescape-client/src/main/java/PcmStream.java b/runescape-client/src/main/java/PcmStream.java index 2ffee6a5ad..8cf0634aca 100644 --- a/runescape-client/src/main/java/PcmStream.java +++ b/runescape-client/src/main/java/PcmStream.java @@ -3,69 +3,69 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("de") +@ObfuscatedName("di") @Implements("PcmStream") public abstract class PcmStream extends Node { - @ObfuscatedName("r") + @ObfuscatedName("w") + @Export("active") + volatile boolean active; + @ObfuscatedName("a") @ObfuscatedSignature( - descriptor = "Lde;" + descriptor = "Ldi;" ) @Export("after") PcmStream after; + @ObfuscatedName("b") + int field1508; @ObfuscatedName("y") - int field1520; - @ObfuscatedName("s") @ObfuscatedSignature( - descriptor = "Ldn;" + descriptor = "Ldg;" ) @Export("sound") AbstractSound sound; - @ObfuscatedName("j") - @Export("active") - volatile boolean active; protected PcmStream() { - this.active = true; // L: 11 - } // L: 13 + this.active = true; + } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "()Lde;" + descriptor = "()Ldi;" ) @Export("firstSubStream") protected abstract PcmStream firstSubStream(); - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "()Lde;" + descriptor = "()Ldi;" ) @Export("nextSubStream") protected abstract PcmStream nextSubStream(); - @ObfuscatedName("c") - protected abstract int vmethod4043(); + @ObfuscatedName("p") + protected abstract int vmethod3927(); - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("fill") protected abstract void fill(int[] var1, int var2, int var3); - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("skip") protected abstract void skip(int var1); - @ObfuscatedName("aq") - int vmethod2850() { - return 255; // L: 16 + @ObfuscatedName("ay") + int vmethod2800() { + return 255; } - @ObfuscatedName("fb") + @ObfuscatedName("fh") @Export("update") final void update(int[] var1, int var2, int var3) { - if (this.active) { // L: 24 + if (this.active) { this.fill(var1, var2, var3); } else { - this.skip(var3); // L: 25 + this.skip(var3); } - } // L: 26 + } } diff --git a/runescape-client/src/main/java/PcmStreamMixer.java b/runescape-client/src/main/java/PcmStreamMixer.java index 76eb1853d5..df6a7756c4 100644 --- a/runescape-client/src/main/java/PcmStreamMixer.java +++ b/runescape-client/src/main/java/PcmStreamMixer.java @@ -3,201 +3,201 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("df") +@ObfuscatedName("de") @Implements("PcmStreamMixer") public class PcmStreamMixer extends PcmStream { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lja;" + descriptor = "Ljp;" ) @Export("subStreams") NodeDeque subStreams; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lja;" + descriptor = "Ljp;" ) - NodeDeque field1368; - @ObfuscatedName("l") - int field1369; - @ObfuscatedName("m") - int field1367; + NodeDeque field1357; + @ObfuscatedName("x") + int field1356; + @ObfuscatedName("t") + int field1359; public PcmStreamMixer() { - this.subStreams = new NodeDeque(); // L: 9 - this.field1368 = new NodeDeque(); // L: 10 - this.field1369 = 0; // L: 11 - this.field1367 = -1; // L: 12 + this.subStreams = new NodeDeque(); + this.field1357 = new NodeDeque(); + this.field1356 = 0; + this.field1359 = -1; } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lde;)V" + descriptor = "(Ldi;)V" ) @Export("addSubStream") public final synchronized void addSubStream(PcmStream var1) { - this.subStreams.addLast(var1); // L: 15 - } // L: 16 + this.subStreams.addLast(var1); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lde;)V" + descriptor = "(Ldi;)V" ) @Export("removeSubStream") public final synchronized void removeSubStream(PcmStream var1) { - var1.remove(); // L: 19 - } // L: 20 + var1.remove(); + } - @ObfuscatedName("l") - void method2455() { - if (this.field1369 > 0) { // L: 23 - for (PcmStreamMixerListener var1 = (PcmStreamMixerListener)this.field1368.last(); var1 != null; var1 = (PcmStreamMixerListener)this.field1368.previous()) { // L: 24 - var1.field1477 -= this.field1369; // L: 25 + @ObfuscatedName("x") + void method2354() { + if (this.field1356 > 0) { + for (PcmStreamMixerListener var1 = (PcmStreamMixerListener)this.field1357.last(); var1 != null; var1 = (PcmStreamMixerListener)this.field1357.previous()) { + var1.field1464 -= this.field1356; } - this.field1367 -= this.field1369; // L: 27 - this.field1369 = 0; // L: 28 + this.field1359 -= this.field1356; + this.field1356 = 0; } - } // L: 30 + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lgn;Ldy;)V" + descriptor = "(Lgu;Ldd;)V" ) - void method2460(Node var1, PcmStreamMixerListener var2) { - while (this.field1368.sentinel != var1 && ((PcmStreamMixerListener)var1).field1477 <= var2.field1477) { // L: 33 + void method2355(Node var1, PcmStreamMixerListener var2) { + while (this.field1357.sentinel != var1 && ((PcmStreamMixerListener)var1).field1464 <= var2.field1464) { var1 = var1.previous; } - NodeDeque.NodeDeque_addBefore(var2, var1); // L: 34 - this.field1367 = ((PcmStreamMixerListener)this.field1368.sentinel.previous).field1477; // L: 35 - } // L: 36 - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(Ldy;)V" - ) - void method2430(PcmStreamMixerListener var1) { - var1.remove(); // L: 39 - var1.remove2(); // L: 40 - Node var2 = this.field1368.sentinel.previous; // L: 41 - if (var2 == this.field1368.sentinel) { - this.field1367 = -1; // L: 42 - } else { - this.field1367 = ((PcmStreamMixerListener)var2).field1477; // L: 43 - } - - } // L: 44 - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "()Lde;" - ) - @Export("firstSubStream") - protected PcmStream firstSubStream() { - return (PcmStream)this.subStreams.last(); // L: 47 - } - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "()Lde;" - ) - @Export("nextSubStream") - protected PcmStream nextSubStream() { - return (PcmStream)this.subStreams.previous(); // L: 51 - } - - @ObfuscatedName("c") - protected int vmethod4043() { - return 0; // L: 55 - } - - @ObfuscatedName("u") - @Export("fill") - public final synchronized void fill(int[] var1, int var2, int var3) { - do { - if (this.field1367 < 0) { // L: 60 - this.updateSubStreams(var1, var2, var3); // L: 61 - return; // L: 62 - } - - if (var3 + this.field1369 < this.field1367) { // L: 64 - this.field1369 += var3; // L: 65 - this.updateSubStreams(var1, var2, var3); // L: 66 - return; // L: 67 - } - - int var4 = this.field1367 - this.field1369; // L: 69 - this.updateSubStreams(var1, var2, var4); // L: 70 - var2 += var4; // L: 71 - var3 -= var4; // L: 72 - this.field1369 += var4; // L: 73 - this.method2455(); // L: 74 - PcmStreamMixerListener var5 = (PcmStreamMixerListener)this.field1368.last(); // L: 75 - synchronized(var5) { // L: 76 - int var7 = var5.update(); // L: 77 - if (var7 < 0) { // L: 78 - var5.field1477 = 0; // L: 79 - this.method2430(var5); // L: 80 - } else { - var5.field1477 = var7; // L: 83 - this.method2460(var5.previous, var5); // L: 84 - } - } - } while(var3 != 0); // L: 87 - + NodeDeque.NodeDeque_addBefore(var2, var1); + this.field1359 = ((PcmStreamMixerListener)this.field1357.sentinel.previous).field1464; } @ObfuscatedName("t") - @Export("updateSubStreams") - void updateSubStreams(int[] var1, int var2, int var3) { - for (PcmStream var4 = (PcmStream)this.subStreams.last(); var4 != null; var4 = (PcmStream)this.subStreams.previous()) { // L: 92 - var4.update(var1, var2, var3); // L: 93 + @ObfuscatedSignature( + descriptor = "(Ldd;)V" + ) + void method2351(PcmStreamMixerListener var1) { + var1.remove(); + var1.remove2(); + Node var2 = this.field1357.sentinel.previous; + if (var2 == this.field1357.sentinel) { + this.field1359 = -1; + } else { + this.field1359 = ((PcmStreamMixerListener)var2).field1464; } - } // L: 95 - - @ObfuscatedName("e") - @Export("skip") - public final synchronized void skip(int var1) { - do { - if (this.field1367 < 0) { // L: 99 - this.skipSubStreams(var1); // L: 100 - return; // L: 101 - } - - if (this.field1369 + var1 < this.field1367) { // L: 103 - this.field1369 += var1; // L: 104 - this.skipSubStreams(var1); // L: 105 - return; // L: 106 - } - - int var2 = this.field1367 - this.field1369; // L: 108 - this.skipSubStreams(var2); // L: 109 - var1 -= var2; // L: 110 - this.field1369 += var2; // L: 111 - this.method2455(); // L: 112 - PcmStreamMixerListener var3 = (PcmStreamMixerListener)this.field1368.last(); // L: 113 - synchronized(var3) { // L: 114 - int var5 = var3.update(); // L: 115 - if (var5 < 0) { // L: 116 - var3.field1477 = 0; // L: 117 - this.method2430(var3); // L: 118 - } else { - var3.field1477 = var5; // L: 121 - this.method2460(var3.previous, var3); // L: 122 - } - } - } while(var1 != 0); // L: 125 - } - @ObfuscatedName("o") - @Export("skipSubStreams") - void skipSubStreams(int var1) { - for (PcmStream var2 = (PcmStream)this.subStreams.last(); var2 != null; var2 = (PcmStream)this.subStreams.previous()) { // L: 130 - var2.skip(var1); // L: 131 + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "()Ldi;" + ) + @Export("firstSubStream") + protected PcmStream firstSubStream() { + return (PcmStream)this.subStreams.last(); + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "()Ldi;" + ) + @Export("nextSubStream") + protected PcmStream nextSubStream() { + return (PcmStream)this.subStreams.previous(); + } + + @ObfuscatedName("p") + protected int vmethod3927() { + return 0; + } + + @ObfuscatedName("l") + @Export("fill") + public final synchronized void fill(int[] var1, int var2, int var3) { + do { + if (this.field1359 < 0) { + this.updateSubStreams(var1, var2, var3); + return; + } + + if (var3 + this.field1356 < this.field1359) { + this.field1356 += var3; + this.updateSubStreams(var1, var2, var3); + return; + } + + int var4 = this.field1359 - this.field1356; + this.updateSubStreams(var1, var2, var4); + var2 += var4; + var3 -= var4; + this.field1356 += var4; + this.method2354(); + PcmStreamMixerListener var5 = (PcmStreamMixerListener)this.field1357.last(); + synchronized(var5) { + int var7 = var5.update(); + if (var7 < 0) { + var5.field1464 = 0; + this.method2351(var5); + } else { + var5.field1464 = var7; + this.method2355(var5.previous, var5); + } + } + } while(var3 != 0); + + } + + @ObfuscatedName("z") + @Export("updateSubStreams") + void updateSubStreams(int[] var1, int var2, int var3) { + for (PcmStream var4 = (PcmStream)this.subStreams.last(); var4 != null; var4 = (PcmStream)this.subStreams.previous()) { + var4.update(var1, var2, var3); } - } // L: 133 + } + + @ObfuscatedName("u") + @Export("skip") + public final synchronized void skip(int var1) { + do { + if (this.field1359 < 0) { + this.skipSubStreams(var1); + return; + } + + if (this.field1356 + var1 < this.field1359) { + this.field1356 += var1; + this.skipSubStreams(var1); + return; + } + + int var2 = this.field1359 - this.field1356; + this.skipSubStreams(var2); + var1 -= var2; + this.field1356 += var2; + this.method2354(); + PcmStreamMixerListener var3 = (PcmStreamMixerListener)this.field1357.last(); + synchronized(var3) { + int var5 = var3.update(); + if (var5 < 0) { + var3.field1464 = 0; + this.method2351(var3); + } else { + var3.field1464 = var5; + this.method2355(var3.previous, var3); + } + } + } while(var1 != 0); + + } + + @ObfuscatedName("e") + @Export("skipSubStreams") + void skipSubStreams(int var1) { + for (PcmStream var2 = (PcmStream)this.subStreams.last(); var2 != null; var2 = (PcmStream)this.subStreams.previous()) { + var2.skip(var1); + } + + } } diff --git a/runescape-client/src/main/java/PcmStreamMixerListener.java b/runescape-client/src/main/java/PcmStreamMixerListener.java index e6c3f7f9ac..1bef29da6d 100644 --- a/runescape-client/src/main/java/PcmStreamMixerListener.java +++ b/runescape-client/src/main/java/PcmStreamMixerListener.java @@ -3,19 +3,19 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dy") +@ObfuscatedName("dd") @Implements("PcmStreamMixerListener") public abstract class PcmStreamMixerListener extends Node { - @ObfuscatedName("f") - int field1477; + @ObfuscatedName("h") + int field1464; - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("remove2") abstract void remove2(); - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Ldf;)I" + descriptor = "(Lde;)I" ) @Export("update") abstract int update(); diff --git a/runescape-client/src/main/java/PendingSpawn.java b/runescape-client/src/main/java/PendingSpawn.java index 72c7a6789f..17c30a9633 100644 --- a/runescape-client/src/main/java/PendingSpawn.java +++ b/runescape-client/src/main/java/PendingSpawn.java @@ -3,304 +3,106 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("bz") +@ObfuscatedName("bp") @Implements("PendingSpawn") public final class PendingSpawn extends Node { - @ObfuscatedName("sx") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = -1592702363 - ) - @Export("foundItemIdCount") - static int foundItemIdCount; - @ObfuscatedName("ag") - @Export("null_string") - protected static String null_string; - @ObfuscatedName("f") - @ObfuscatedGetter( - intValue = 1035256329 + intValue = -561970277 ) @Export("plane") int plane; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -1164604575 + intValue = 2016613855 ) @Export("type") int type; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 1479469189 - ) - @Export("x") - int x; - @ObfuscatedName("m") - @ObfuscatedGetter( - intValue = 1113436687 + intValue = -1300188483 ) @Export("y") int y; - @ObfuscatedName("z") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 175413889 + intValue = -1005104193 + ) + @Export("x") + int x; + @ObfuscatedName("t") + @ObfuscatedGetter( + intValue = -179134245 ) @Export("objectId") int objectId; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -1951305335 + intValue = 1421473345 ) - int field963; - @ObfuscatedName("k") + int field929; + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -572899859 + intValue = 1135196695 ) - int field959; - @ObfuscatedName("c") + int field935; + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 1254625591 + intValue = 1885792769 ) @Export("id") int id; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = -802321491 + intValue = 281500635 ) @Export("orientation") int orientation; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = 1436097175 + intValue = 1520740959 ) - int field962; - @ObfuscatedName("e") + int field933; + @ObfuscatedName("u") @ObfuscatedGetter( - intValue = -326130097 + intValue = -1918474747 ) @Export("delay") int delay; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedGetter( - intValue = 1413090507 + intValue = -470194177 ) @Export("hitpoints") int hitpoints; PendingSpawn() { - this.delay = 0; // L: 16 - this.hitpoints = -1; // L: 17 - } // L: 19 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(IB)Ljp;", - garbageValue = "25" - ) - public static FloorOverlayDefinition method1839(int var0) { - FloorOverlayDefinition var1 = (FloorOverlayDefinition)FloorOverlayDefinition.FloorOverlayDefinition_cached.get((long)var0); - if (var1 != null) { - return var1; - } else { - byte[] var2 = FloorOverlayDefinition.FloorOverlayDefinition_archive.takeFile(4, var0); - var1 = new FloorOverlayDefinition(); - if (var2 != null) { // L: 30 - var1.decode(new Buffer(var2), var0); - } - - var1.postDecode(); // L: 31 - FloorOverlayDefinition.FloorOverlayDefinition_cached.put(var1, (long)var0); // L: 32 - return var1; // L: 33 - } + this.delay = 0; + this.hitpoints = -1; } - @ObfuscatedName("b") + @ObfuscatedName("jy") @ObfuscatedSignature( - descriptor = "(IB)Lig;", - garbageValue = "88" + descriptor = "([Lhe;Lhe;ZB)V", + garbageValue = "0" ) - @Export("VarpDefinition_get") - public static VarpDefinition VarpDefinition_get(int var0) { - VarpDefinition var1 = (VarpDefinition)VarpDefinition.VarpDefinition_cached.get((long)var0); // L: 23 - if (var1 != null) { // L: 24 - return var1; - } else { - byte[] var2 = class25.VarpDefinition_archive.takeFile(16, var0); // L: 25 - var1 = new VarpDefinition(); // L: 26 - if (var2 != null) { // L: 27 - var1.decode(new Buffer(var2)); - } - - VarpDefinition.VarpDefinition_cached.put(var1, (long)var0); // L: 28 - return var1; // L: 29 + @Export("revalidateWidgetScroll") + static void revalidateWidgetScroll(Widget[] var0, Widget var1, boolean var2) { + int var3 = var1.scrollWidth != 0 ? var1.scrollWidth : var1.width; + int var4 = var1.scrollHeight != 0 ? var1.scrollHeight : var1.height; + Interpreter.resizeInterface(var0, var1.id, var3, var4, var2); + if (var1.children != null) { + Interpreter.resizeInterface(var1.children, var1.id, var3, var4, var2); } - } - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(IIIII)I", - garbageValue = "1776367578" - ) - static final int method1841(int var0, int var1, int var2, int var3) { - int var4 = 65536 - Rasterizer3D.Rasterizer3D_cosine[var2 * 1024 / var3] >> 1; // L: 450 - return ((65536 - var4) * var0 >> 16) + (var4 * var1 >> 16); // L: 451 - } - - @ObfuscatedName("av") - @ObfuscatedSignature( - descriptor = "(ILco;ZB)I", - garbageValue = "-42" - ) - static int method1840(int var0, Script var1, boolean var2) { - int var4; - int var9; - if (var0 == ScriptOpcodes.ADD) { // L: 2416 - MilliClock.Interpreter_intStackSize -= 2; // L: 2417 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2418 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2419 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9 + var4; // L: 2420 - return 1; // L: 2421 - } else if (var0 == ScriptOpcodes.SUB) { // L: 2423 - MilliClock.Interpreter_intStackSize -= 2; // L: 2424 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2425 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2426 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9 - var4; // L: 2427 - return 1; // L: 2428 - } else if (var0 == ScriptOpcodes.MULTIPLY) { // L: 2430 - MilliClock.Interpreter_intStackSize -= 2; // L: 2431 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2432 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2433 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var4 * var9; // L: 2434 - return 1; // L: 2435 - } else if (var0 == ScriptOpcodes.DIV) { // L: 2437 - MilliClock.Interpreter_intStackSize -= 2; // L: 2438 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2439 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2440 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9 / var4; // L: 2441 - return 1; // L: 2442 - } else if (var0 == ScriptOpcodes.RANDOM) { // L: 2444 - var9 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2445 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = (int)(Math.random() * (double)var9); // L: 2446 - return 1; // L: 2447 - } else if (var0 == ScriptOpcodes.RANDOMINC) { // L: 2449 - var9 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2450 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = (int)(Math.random() * (double)(var9 + 1)); // L: 2451 - return 1; // L: 2452 - } else if (var0 == ScriptOpcodes.INTERPOLATE) { // L: 2454 - MilliClock.Interpreter_intStackSize -= 5; // L: 2455 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2456 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2457 - int var10 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 2]; // L: 2458 - int var6 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 3]; // L: 2459 - int var11 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 4]; // L: 2460 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9 + (var4 - var9) * (var11 - var10) / (var6 - var10); // L: 2461 - return 1; // L: 2462 - } else if (var0 == ScriptOpcodes.ADDPERCENT) { // L: 2464 - MilliClock.Interpreter_intStackSize -= 2; // L: 2465 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2466 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2467 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9 + var4 * var9 / 100; // L: 2468 - return 1; // L: 2469 - } else if (var0 == ScriptOpcodes.SETBIT) { // L: 2471 - MilliClock.Interpreter_intStackSize -= 2; // L: 2472 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2473 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2474 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9 | 1 << var4; // L: 2475 - return 1; // L: 2476 - } else if (var0 == ScriptOpcodes.CLEARBIT) { // L: 2478 - MilliClock.Interpreter_intStackSize -= 2; // L: 2479 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2480 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2481 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9 & -1 - (1 << var4); // L: 2482 - return 1; // L: 2483 - } else if (var0 == ScriptOpcodes.TESTBIT) { // L: 2485 - MilliClock.Interpreter_intStackSize -= 2; // L: 2486 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2487 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2488 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = (var9 & 1 << var4) != 0 ? 1 : 0; // L: 2489 - return 1; // L: 2490 - } else if (var0 == ScriptOpcodes.MOD) { // L: 2492 - MilliClock.Interpreter_intStackSize -= 2; // L: 2493 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2494 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2495 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9 % var4; // L: 2496 - return 1; // L: 2497 - } else if (var0 == ScriptOpcodes.POW) { // L: 2499 - MilliClock.Interpreter_intStackSize -= 2; // L: 2500 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2501 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2502 - if (var9 == 0) { // L: 2503 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = (int)Math.pow((double)var9, (double)var4); // L: 2504 - } - - return 1; // L: 2505 - } else if (var0 == ScriptOpcodes.INVPOW) { // L: 2507 - MilliClock.Interpreter_intStackSize -= 2; // L: 2508 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2509 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2510 - if (var9 == 0) { // L: 2511 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 2512 - return 1; // L: 2513 - } else { - switch(var4) { // L: 2515 - case 0: - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Integer.MAX_VALUE; // L: 2538 - break; // L: 2539 - case 1: - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9; // L: 2528 - break; // L: 2529 - case 2: - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = (int)Math.sqrt((double)var9); // L: 2543 - break; - case 3: - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = (int)Math.cbrt((double)var9); // L: 2533 - break; // L: 2534 - case 4: - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = (int)Math.sqrt(Math.sqrt((double)var9)); // L: 2523 - break; // L: 2524 - default: - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = (int)Math.pow((double)var9, 1.0D / (double)var4); // L: 2518 - } - - return 1; // L: 2547 - } - } else if (var0 == ScriptOpcodes.AND) { // L: 2549 - MilliClock.Interpreter_intStackSize -= 2; // L: 2550 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2551 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2552 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9 & var4; // L: 2553 - return 1; // L: 2554 - } else if (var0 == ScriptOpcodes.OR) { // L: 2556 - MilliClock.Interpreter_intStackSize -= 2; // L: 2557 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2558 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2559 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var9 | var4; // L: 2560 - return 1; // L: 2561 - } else if (var0 == ScriptOpcodes.SCALE) { // L: 2563 - MilliClock.Interpreter_intStackSize -= 3; // L: 2564 - long var3 = (long)Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2565 - long var5 = (long)Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2566 - long var7 = (long)Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 2]; // L: 2567 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = (int)(var7 * var3 / var5); // L: 2568 - return 1; // L: 2569 - } else { - return 2; // L: 2571 + InterfaceParent var5 = (InterfaceParent)Client.interfaceParents.get((long)var1.id); + if (var5 != null) { + WorldMapManager.method686(var5.group, var3, var4, var2); } - } - @ObfuscatedName("kz") - @ObfuscatedSignature( - descriptor = "(Lht;B)Ljava/lang/String;", - garbageValue = "-42" - ) - @Export("Widget_getSpellActionName") - static String Widget_getSpellActionName(Widget var0) { - if (JagexCache.Widget_unpackTargetMask(WorldMapData_0.getWidgetFlags(var0)) == 0) { // L: 11536 - return null; - } else { - return var0.spellActionName != null && var0.spellActionName.trim().length() != 0 ? var0.spellActionName : null; // L: 11537 11538 11540 + if (var1.contentType == 1337) { } + } } diff --git a/runescape-client/src/main/java/PlatformInfo.java b/runescape-client/src/main/java/PlatformInfo.java index c4f095f1d0..5a6c9eb638 100644 --- a/runescape-client/src/main/java/PlatformInfo.java +++ b/runescape-client/src/main/java/PlatformInfo.java @@ -4,188 +4,188 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("me") +@ObfuscatedName("mf") @Implements("PlatformInfo") public class PlatformInfo extends Node { - @ObfuscatedName("ay") + @ObfuscatedName("ae") @ObfuscatedGetter( - intValue = -433932703 - ) - int field3961; - @ObfuscatedName("ah") - boolean field3968; - @ObfuscatedName("az") - @ObfuscatedGetter( - intValue = 1848627019 - ) - int field3952; - @ObfuscatedName("ak") - @ObfuscatedGetter( - intValue = -1832118753 - ) - int field3958; - @ObfuscatedName("au") - @ObfuscatedGetter( - intValue = -555698661 - ) - int field3959; - @ObfuscatedName("ai") - @ObfuscatedGetter( - intValue = -970589663 + intValue = -622798091 ) int field3950; - @ObfuscatedName("ax") + @ObfuscatedName("ac") + boolean field3964; + @ObfuscatedName("ak") @ObfuscatedGetter( - intValue = -1243453955 + intValue = -598446107 ) - int field3976; - @ObfuscatedName("ag") - boolean field3962; + int field3970; + @ObfuscatedName("av") + @ObfuscatedGetter( + intValue = 100950821 + ) + int field3956; @ObfuscatedName("aq") @ObfuscatedGetter( - intValue = -668677467 + intValue = 2569291 ) - int field3963; - @ObfuscatedName("aw") + int field3959; + @ObfuscatedName("ah") @ObfuscatedGetter( - intValue = 1196353791 + intValue = -345735103 ) - int field3964; + int field3960; @ObfuscatedName("am") @ObfuscatedGetter( - intValue = 2023487119 + intValue = -1780669889 ) - int field3965; + int field3957; @ObfuscatedName("aa") + boolean field3962; + @ObfuscatedName("ao") @ObfuscatedGetter( - intValue = -1164464565 + intValue = 1651186511 ) - int field3966; - @ObfuscatedName("at") - String field3979; - @ObfuscatedName("as") - String field3953; - @ObfuscatedName("aj") - String field3969; - @ObfuscatedName("ae") - String field3970; - @ObfuscatedName("al") + int field3945; + @ObfuscatedName("ab") @ObfuscatedGetter( - intValue = -1856505343 + intValue = -1652125295 ) - int field3971; + int field3975; @ObfuscatedName("ap") @ObfuscatedGetter( - intValue = -908092979 + intValue = -1267108745 ) - int field3954; + int field3958; @ObfuscatedName("ad") @ObfuscatedGetter( - intValue = -319239105 + intValue = -906951475 + ) + int field3966; + @ObfuscatedName("ai") + String field3967; + @ObfuscatedName("al") + String field3968; + @ObfuscatedName("ay") + String field3949; + @ObfuscatedName("af") + String field3969; + @ObfuscatedName("ar") + @ObfuscatedGetter( + intValue = -1702101169 + ) + int field3971; + @ObfuscatedName("az") + @ObfuscatedGetter( + intValue = 812667753 + ) + int field3961; + @ObfuscatedName("at") + @ObfuscatedGetter( + intValue = -92695857 ) int field3973; - @ObfuscatedName("bb") + @ObfuscatedName("bh") @ObfuscatedGetter( - intValue = -2054037315 + intValue = 293448253 ) - int field3974; - @ObfuscatedName("bf") - String field3975; - @ObfuscatedName("bp") - String field3960; - @ObfuscatedName("bg") + int field3952; + @ObfuscatedName("by") + String field3963; + @ObfuscatedName("bs") + String field3976; + @ObfuscatedName("br") int[] field3977; - @ObfuscatedName("bc") + @ObfuscatedName("bl") @ObfuscatedGetter( - intValue = 173908363 + intValue = -497607943 ) int field3978; - @ObfuscatedName("bj") - String field3955; + @ObfuscatedName("bx") + String field3979; PlatformInfo(int var1, boolean var2, int var3, int var4, int var5, int var6, int var7, boolean var8, int var9, int var10, int var11, int var12, String var13, String var14, String var15, String var16, int var17, int var18, int var19, int var20, String var21, String var22, int[] var23, int var24, String var25) { - this.field3977 = new int[3]; // L: 62 - this.field3961 = var1; // L: 67 - this.field3968 = var2; // L: 68 - this.field3952 = var3; // L: 69 - this.field3958 = var4; // L: 70 - this.field3959 = var5; // L: 71 - this.field3950 = var6; // L: 72 - this.field3976 = var7; // L: 73 - this.field3962 = var8; // L: 74 - this.field3963 = var9; // L: 75 - this.field3964 = var10; // L: 76 - this.field3965 = var11; // L: 77 - this.field3966 = var12; // L: 78 - this.field3979 = var13; // L: 79 - this.field3953 = var14; // L: 80 - this.field3969 = var15; // L: 81 - this.field3970 = var16; // L: 82 - this.field3971 = var17; // L: 83 - this.field3954 = var18; // L: 84 - this.field3973 = var19; // L: 85 - this.field3974 = var20; // L: 86 - this.field3975 = var21; // L: 87 - this.field3960 = var22; // L: 88 - this.field3977 = var23; // L: 89 - this.field3978 = var24; // L: 90 - this.field3955 = var25; // L: 91 - } // L: 92 + this.field3977 = new int[3]; + this.field3950 = var1; + this.field3964 = var2; + this.field3970 = var3; + this.field3956 = var4; + this.field3959 = var5; + this.field3960 = var6; + this.field3957 = var7; + this.field3962 = var8; + this.field3945 = var9; + this.field3975 = var10; + this.field3958 = var11; + this.field3966 = var12; + this.field3967 = var13; + this.field3968 = var14; + this.field3949 = var15; + this.field3969 = var16; + this.field3971 = var17; + this.field3961 = var18; + this.field3973 = var19; + this.field3952 = var20; + this.field3963 = var21; + this.field3976 = var22; + this.field3977 = var23; + this.field3978 = var24; + this.field3979 = var25; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "1047408836" + descriptor = "(Lkj;B)V", + garbageValue = "5" ) @Export("write") public void write(Buffer var1) { - var1.writeByte(8); // L: 95 - var1.writeByte(this.field3961); // L: 96 - var1.writeByte(this.field3968 ? 1 : 0); // L: 97 - var1.writeShort(this.field3952); // L: 98 - var1.writeByte(this.field3958); // L: 99 - var1.writeByte(this.field3959); // L: 100 - var1.writeByte(this.field3950); // L: 101 - var1.writeByte(this.field3976); // L: 102 - var1.writeByte(this.field3962 ? 1 : 0); // L: 103 - var1.writeShort(this.field3963); // L: 104 - var1.writeByte(this.field3964); // L: 105 - var1.writeMedium(this.field3965); // L: 106 - var1.writeShort(this.field3966); // L: 107 - var1.writeStringCp1252NullCircumfixed(this.field3979); // L: 108 - var1.writeStringCp1252NullCircumfixed(this.field3953); // L: 109 - var1.writeStringCp1252NullCircumfixed(this.field3969); // L: 110 - var1.writeStringCp1252NullCircumfixed(this.field3970); // L: 111 - var1.writeByte(this.field3954); // L: 112 - var1.writeShort(this.field3971); // L: 113 - var1.writeStringCp1252NullCircumfixed(this.field3975); // L: 114 - var1.writeStringCp1252NullCircumfixed(this.field3960); // L: 115 - var1.writeByte(this.field3973); // L: 116 - var1.writeByte(this.field3974); // L: 117 + var1.writeByte(8); + var1.writeByte(this.field3950); + var1.writeByte(this.field3964 ? 1 : 0); + var1.writeShort(this.field3970); + var1.writeByte(this.field3956); + var1.writeByte(this.field3959); + var1.writeByte(this.field3960); + var1.writeByte(this.field3957); + var1.writeByte(this.field3962 ? 1 : 0); + var1.writeShort(this.field3945); + var1.writeByte(this.field3975); + var1.writeMedium(this.field3958); + var1.writeShort(this.field3966); + var1.writeStringCp1252NullCircumfixed(this.field3967); + var1.writeStringCp1252NullCircumfixed(this.field3968); + var1.writeStringCp1252NullCircumfixed(this.field3949); + var1.writeStringCp1252NullCircumfixed(this.field3969); + var1.writeByte(this.field3961); + var1.writeShort(this.field3971); + var1.writeStringCp1252NullCircumfixed(this.field3963); + var1.writeStringCp1252NullCircumfixed(this.field3976); + var1.writeByte(this.field3973); + var1.writeByte(this.field3952); - for (int var2 = 0; var2 < this.field3977.length; ++var2) { // L: 118 + for (int var2 = 0; var2 < this.field3977.length; ++var2) { var1.writeInt(this.field3977[var2]); } - var1.writeInt(this.field3978); // L: 119 - var1.writeStringCp1252NullCircumfixed(this.field3955); // L: 120 - } // L: 121 + var1.writeInt(this.field3978); + var1.writeStringCp1252NullCircumfixed(this.field3979); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "2060654992" + descriptor = "(B)I", + garbageValue = "68" ) @Export("size") public int size() { - byte var1 = 39; // L: 124 - int var2 = var1 + class90.method2169(this.field3979); // L: 125 - var2 += class90.method2169(this.field3953); // L: 126 - var2 += class90.method2169(this.field3969); // L: 127 - var2 += class90.method2169(this.field3970); // L: 128 - var2 += class90.method2169(this.field3975); // L: 129 - var2 += class90.method2169(this.field3960); // L: 130 - var2 += class90.method2169(this.field3955); // L: 131 - return var2; // L: 132 + byte var1 = 39; + int var2 = var1 + SoundSystem.method2566(this.field3967); + var2 += SoundSystem.method2566(this.field3968); + var2 += SoundSystem.method2566(this.field3949); + var2 += SoundSystem.method2566(this.field3969); + var2 += SoundSystem.method2566(this.field3963); + var2 += SoundSystem.method2566(this.field3976); + var2 += SoundSystem.method2566(this.field3979); + return var2; } } diff --git a/runescape-client/src/main/java/PlatformInfoProvider.java b/runescape-client/src/main/java/PlatformInfoProvider.java index c73bb1ff62..93f7f50cda 100644 --- a/runescape-client/src/main/java/PlatformInfoProvider.java +++ b/runescape-client/src/main/java/PlatformInfoProvider.java @@ -3,13 +3,13 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("my") +@ObfuscatedName("mi") @Implements("PlatformInfoProvider") public interface PlatformInfoProvider { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)Lme;", - garbageValue = "1154202585" + descriptor = "(I)Lmf;", + garbageValue = "-1820791637" ) @Export("get") PlatformInfo get(); diff --git a/runescape-client/src/main/java/Player.java b/runescape-client/src/main/java/Player.java index 6e04aa5997..0c23266990 100644 --- a/runescape-client/src/main/java/Player.java +++ b/runescape-client/src/main/java/Player.java @@ -3,169 +3,175 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("bi") +@ObfuscatedName("bq") @Implements("Player") public final class Player extends Actor { - @ObfuscatedName("rf") + @ObfuscatedName("hh") @ObfuscatedGetter( - intValue = 130763941 + intValue = 838938309 ) - static int field674; - @ObfuscatedName("f") + @Export("cameraX") + static int cameraX; + @ObfuscatedName("mq") + @ObfuscatedGetter( + intValue = -726280905 + ) + @Export("selectedSpellFlags") + static int selectedSpellFlags; + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lkm;" + descriptor = "Lki;" ) @Export("username") Username username; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lhu;" + descriptor = "Lhh;" ) @Export("appearance") PlayerAppearance appearance; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -135527215 + intValue = -1265111393 ) @Export("headIconPk") int headIconPk; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 290512353 + intValue = 732262151 ) @Export("headIconPrayer") int headIconPrayer; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("actions") String[] actions; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -953649939 + intValue = -818142941 ) @Export("combatLevel") int combatLevel; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 1936137135 + intValue = 906508591 ) @Export("skillLevel") int skillLevel; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = -1383715643 + intValue = 1192790671 ) @Export("tileHeight") int tileHeight; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = -1872616351 + intValue = 1807661199 ) @Export("animationCycleStart") int animationCycleStart; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedGetter( - intValue = 176416391 + intValue = -124646805 ) @Export("animationCycleEnd") int animationCycleEnd; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedGetter( - intValue = 1206566317 + intValue = -508660831 ) - int field654; - @ObfuscatedName("n") + int field634; + @ObfuscatedName("m") @ObfuscatedGetter( - intValue = 72603633 + intValue = -1663722753 ) @Export("tileHeight2") int tileHeight2; - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedGetter( - intValue = 1944024049 + intValue = 89818503 ) - int field656; - @ObfuscatedName("p") + int field626; + @ObfuscatedName("i") @ObfuscatedSignature( descriptor = "Leh;" ) @Export("model0") Model model0; - @ObfuscatedName("r") + @ObfuscatedName("f") @ObfuscatedGetter( - intValue = 1268773483 + intValue = 291010439 ) - int field646; + int field620; + @ObfuscatedName("a") + @ObfuscatedGetter( + intValue = 2101860893 + ) + int field606; + @ObfuscatedName("b") + @ObfuscatedGetter( + intValue = 1794275211 + ) + int field622; @ObfuscatedName("y") @ObfuscatedGetter( - intValue = 1951672955 + intValue = 1140466467 ) - int field669; - @ObfuscatedName("s") - @ObfuscatedGetter( - intValue = 1924513749 - ) - int field660; - @ObfuscatedName("j") - @ObfuscatedGetter( - intValue = 1046092383 - ) - int field661; - @ObfuscatedName("w") + int field623; + @ObfuscatedName("r") @Export("isUnanimated") boolean isUnanimated; - @ObfuscatedName("v") + @ObfuscatedName("q") @ObfuscatedGetter( - intValue = 1668602233 + intValue = -577457335 ) @Export("team") int team; - @ObfuscatedName("d") + @ObfuscatedName("g") @Export("isHidden") boolean isHidden; - @ObfuscatedName("a") + @ObfuscatedName("s") @ObfuscatedGetter( - intValue = -2138277467 + intValue = -285633019 ) @Export("plane") int plane; - @ObfuscatedName("g") + @ObfuscatedName("o") @ObfuscatedGetter( - intValue = -1613823593 + intValue = 1218536575 ) @Export("index") int index; - @ObfuscatedName("h") + @ObfuscatedName("k") @ObfuscatedSignature( - descriptor = "Lkz;" + descriptor = "Lkn;" ) @Export("isFriendTriBool") TriBool isFriendTriBool; - @ObfuscatedName("i") + @ObfuscatedName("d") @ObfuscatedSignature( - descriptor = "Lkz;" + descriptor = "Lkn;" ) @Export("isInClanChat") TriBool isInClanChat; - @ObfuscatedName("ab") - boolean field664; - @ObfuscatedName("ac") + @ObfuscatedName("aj") + boolean field631; + @ObfuscatedName("ax") @ObfuscatedGetter( - intValue = 1561517337 + intValue = 732463017 ) @Export("tileX") int tileX; - @ObfuscatedName("ao") + @ObfuscatedName("ag") @ObfuscatedGetter( - intValue = 844316393 + intValue = -548320531 ) @Export("tileY") int tileY; Player() { this.headIconPk = -1; - this.headIconPrayer = -1; // L: 19 + this.headIconPrayer = -1; this.actions = new String[3]; for (int var1 = 0; var1 < 3; ++var1) { @@ -176,287 +182,758 @@ public final class Player extends Actor { this.skillLevel = 0; this.animationCycleStart = 0; this.animationCycleEnd = 0; - this.isUnanimated = false; // L: 40 - this.team = 0; // L: 41 - this.isHidden = false; // L: 42 - this.isFriendTriBool = TriBool.TriBool_unknown; // L: 45 - this.isInClanChat = TriBool.TriBool_unknown; // L: 46 - this.field664 = false; // L: 47 - } // L: 51 + this.isUnanimated = false; + this.team = 0; + this.isHidden = false; + this.isFriendTriBool = TriBool.TriBool_unknown; + this.isInClanChat = TriBool.TriBool_unknown; + this.field631 = false; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-1251055038" + descriptor = "(Lkj;B)V", + garbageValue = "-58" ) @Export("read") final void read(Buffer var1) { - var1.offset = 0; // L: 54 - int var2 = var1.readUnsignedByte(); // L: 55 - this.headIconPk = var1.readByte(); // L: 56 - this.headIconPrayer = var1.readByte(); // L: 57 - int var3 = -1; // L: 58 - this.team = 0; // L: 59 - int[] var4 = new int[12]; // L: 60 + var1.offset = 0; + int var2 = var1.readUnsignedByte(); + this.headIconPk = var1.readByte(); + this.headIconPrayer = var1.readByte(); + int var3 = -1; + this.team = 0; + int[] var4 = new int[12]; int var6; int var7; - for (int var5 = 0; var5 < 12; ++var5) { // L: 61 - var6 = var1.readUnsignedByte(); // L: 62 - if (var6 == 0) { // L: 63 - var4[var5] = 0; // L: 64 + for (int var5 = 0; var5 < 12; ++var5) { + var6 = var1.readUnsignedByte(); + if (var6 == 0) { + var4[var5] = 0; } else { - var7 = var1.readUnsignedByte(); // L: 67 - var4[var5] = var7 + (var6 << 8); // L: 68 - if (var5 == 0 && var4[0] == 65535) { // L: 69 - var3 = var1.readUnsignedShort(); // L: 70 + var7 = var1.readUnsignedByte(); + var4[var5] = var7 + (var6 << 8); + if (var5 == 0 && var4[0] == 65535) { + var3 = var1.readUnsignedShort(); break; } - if (var4[var5] >= 512) { // L: 73 - int var8 = AbstractWorldMapData.ItemDefinition_get(var4[var5] - 512).team; // L: 74 - if (var8 != 0) { // L: 75 + if (var4[var5] >= 512) { + int var8 = SecureRandomCallable.ItemDefinition_get(var4[var5] - 512).team; + if (var8 != 0) { this.team = var8; } } } } - int[] var9 = new int[5]; // L: 78 + int[] var9 = new int[5]; - for (var6 = 0; var6 < 5; ++var6) { // L: 79 - var7 = var1.readUnsignedByte(); // L: 80 - if (var7 < 0 || var7 >= MouseRecorder.field628[var6].length) { // L: 81 + for (var6 = 0; var6 < 5; ++var6) { + var7 = var1.readUnsignedByte(); + if (var7 < 0 || var7 >= WorldMapScaleHandler.field366[var6].length) { var7 = 0; } - var9[var6] = var7; // L: 82 + var9[var6] = var7; } - super.idleSequence = var1.readUnsignedShort(); // L: 84 - if (super.idleSequence == 65535) { // L: 85 + super.idleSequence = var1.readUnsignedShort(); + if (super.idleSequence == 65535) { super.idleSequence = -1; } - super.turnLeftSequence = var1.readUnsignedShort(); // L: 86 - if (super.turnLeftSequence == 65535) { // L: 87 + super.turnLeftSequence = var1.readUnsignedShort(); + if (super.turnLeftSequence == 65535) { super.turnLeftSequence = -1; } - super.turnRightSequence = super.turnLeftSequence; // L: 88 - super.walkSequence = var1.readUnsignedShort(); // L: 89 - if (super.walkSequence == 65535) { // L: 90 + super.turnRightSequence = super.turnLeftSequence; + super.walkSequence = var1.readUnsignedShort(); + if (super.walkSequence == 65535) { super.walkSequence = -1; } - super.walkBackSequence = var1.readUnsignedShort(); // L: 91 - if (super.walkBackSequence == 65535) { // L: 92 + super.walkBackSequence = var1.readUnsignedShort(); + if (super.walkBackSequence == 65535) { super.walkBackSequence = -1; } - super.walkLeftSequence = var1.readUnsignedShort(); // L: 93 - if (super.walkLeftSequence == 65535) { // L: 94 + super.walkLeftSequence = var1.readUnsignedShort(); + if (super.walkLeftSequence == 65535) { super.walkLeftSequence = -1; } - super.walkRightSequence = var1.readUnsignedShort(); // L: 95 - if (super.walkRightSequence == 65535) { // L: 96 + super.walkRightSequence = var1.readUnsignedShort(); + if (super.walkRightSequence == 65535) { super.walkRightSequence = -1; } - super.runSequence = var1.readUnsignedShort(); // L: 97 - if (super.runSequence == 65535) { // L: 98 + super.runSequence = var1.readUnsignedShort(); + if (super.runSequence == 65535) { super.runSequence = -1; } - this.username = new Username(var1.readStringCp1252NullTerminated(), UserComparator4.loginType); // L: 99 - this.clearIsFriend(); // L: 100 - this.clearIsInClanChat(); // L: 101 - if (this == PlayerType.localPlayer) { // L: 102 - class217.localPlayerName = this.username.getName(); + this.username = new Username(var1.readStringCp1252NullTerminated(), GrandExchangeOfferUnitPriceComparator.loginType); + this.clearIsFriend(); + this.clearIsInClanChat(); + if (this == PlayerAppearance.localPlayer) { + RunException.localPlayerName = this.username.getName(); } - this.combatLevel = var1.readUnsignedByte(); // L: 103 - this.skillLevel = var1.readUnsignedShort(); // L: 104 - this.isHidden = var1.readUnsignedByte() == 1; // L: 105 - if (Client.gameBuild == 0 && Client.staffModLevel >= 2) { // L: 106 + this.combatLevel = var1.readUnsignedByte(); + this.skillLevel = var1.readUnsignedShort(); + this.isHidden = var1.readUnsignedByte() == 1; + if (Client.gameBuild == 0 && Client.staffModLevel >= 2) { this.isHidden = false; } - if (this.appearance == null) { // L: 107 + if (this.appearance == null) { this.appearance = new PlayerAppearance(); } - this.appearance.update(var4, var9, var2 == 1, var3); // L: 108 - } // L: 109 + this.appearance.update(var4, var9, var2 == 1, var3); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "9" + descriptor = "(I)Z", + garbageValue = "338154305" ) @Export("isFriend") boolean isFriend() { - if (this.isFriendTriBool == TriBool.TriBool_unknown) { // L: 112 - this.checkIsFriend(); // L: 113 + if (this.isFriendTriBool == TriBool.TriBool_unknown) { + this.checkIsFriend(); } - return this.isFriendTriBool == TriBool.TriBool_true; // L: 115 + return this.isFriendTriBool == TriBool.TriBool_true; } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1585923406" + garbageValue = "-730921547" ) @Export("clearIsFriend") void clearIsFriend() { - this.isFriendTriBool = TriBool.TriBool_unknown; // L: 119 - } // L: 120 + this.isFriendTriBool = TriBool.TriBool_unknown; + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1534173505" + garbageValue = "886706251" ) @Export("checkIsFriend") void checkIsFriend() { - this.isFriendTriBool = WorldMapLabelSize.friendSystem.isFriendAndHasWorld(this.username) ? TriBool.TriBool_true : TriBool.TriBool_false; // L: 123 - } // L: 124 - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "1" - ) - @Export("isClanMember") - boolean isClanMember() { - if (this.isInClanChat == TriBool.TriBool_unknown) { // L: 127 - this.updateIsInClanChat(); // L: 128 - } - - return this.isInClanChat == TriBool.TriBool_true; // L: 130 - } - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1010398193" - ) - @Export("clearIsInClanChat") - void clearIsInClanChat() { - this.isInClanChat = TriBool.TriBool_unknown; // L: 134 - } // L: 135 - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1596026564" - ) - @Export("updateIsInClanChat") - void updateIsInClanChat() { - this.isInClanChat = DevicePcmPlayerProvider.clanChat != null && DevicePcmPlayerProvider.clanChat.contains(this.username) ? TriBool.TriBool_true : TriBool.TriBool_false; // L: 138 - } // L: 139 - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "255897896" - ) - @Export("transformedSize") - int transformedSize() { - return this.appearance != null && this.appearance.npcTransformId != -1 ? Clock.getNpcDefinition(this.appearance.npcTransformId).size : 1; // L: 142 143 145 - } - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(I)Leh;", - garbageValue = "-2070677844" - ) - @Export("getModel") - protected final Model getModel() { - if (this.appearance == null) { // L: 149 - return null; - } else { - SequenceDefinition var1 = super.sequence != -1 && super.sequenceDelay == 0 ? class105.SequenceDefinition_get(super.sequence) : null; // L: 150 - SequenceDefinition var2 = super.movementSequence == -1 || this.isUnanimated || super.idleSequence == super.movementSequence && var1 != null ? null : class105.SequenceDefinition_get(super.movementSequence); // L: 151 - Model var3 = this.appearance.getModel(var1, super.sequenceFrame, var2, super.movementFrame); // L: 152 - if (var3 == null) { // L: 153 - return null; - } else { - var3.calculateBoundsCylinder(); // L: 154 - super.defaultHeight = var3.height; // L: 155 - Model var4; - Model[] var5; - if (!this.isUnanimated && super.spotAnimation != -1 && super.spotAnimationFrame != -1) { // L: 156 - var4 = HealthBarUpdate.SpotAnimationDefinition_get(super.spotAnimation).getModel(super.spotAnimationFrame); // L: 157 - if (var4 != null) { // L: 158 - var4.offsetBy(0, -super.field1016, 0); // L: 159 - var5 = new Model[]{var3, var4}; // L: 160 - var3 = new Model(var5, 2); // L: 161 - } - } - - if (!this.isUnanimated && this.model0 != null) { // L: 164 - if (Client.cycle >= this.animationCycleEnd) { // L: 165 - this.model0 = null; - } - - if (Client.cycle >= this.animationCycleStart && Client.cycle < this.animationCycleEnd) { // L: 166 - var4 = this.model0; // L: 167 - var4.offsetBy(this.field654 - super.x, this.tileHeight2 - this.tileHeight, this.field656 - super.y); // L: 168 - if (super.orientation == 512) { // L: 169 - var4.rotateY90Ccw(); // L: 170 - var4.rotateY90Ccw(); // L: 171 - var4.rotateY90Ccw(); // L: 172 - } else if (super.orientation == 1024) { // L: 174 - var4.rotateY90Ccw(); // L: 175 - var4.rotateY90Ccw(); // L: 176 - } else if (super.orientation == 1536) { // L: 178 - var4.rotateY90Ccw(); - } - - var5 = new Model[]{var3, var4}; // L: 179 - var3 = new Model(var5, 2); // L: 180 - if (super.orientation == 512) { // L: 181 - var4.rotateY90Ccw(); - } else if (super.orientation == 1024) { // L: 182 - var4.rotateY90Ccw(); // L: 183 - var4.rotateY90Ccw(); // L: 184 - } else if (super.orientation == 1536) { // L: 186 - var4.rotateY90Ccw(); // L: 187 - var4.rotateY90Ccw(); // L: 188 - var4.rotateY90Ccw(); // L: 189 - } - - var4.offsetBy(super.x - this.field654, this.tileHeight - this.tileHeight2, super.y - this.field656); // L: 191 - } - } - - var3.isSingleTile = true; // L: 194 - return var3; // L: 195 - } - } + this.isFriendTriBool = MilliClock.friendSystem.isFriendAndHasWorld(this.username) ? TriBool.TriBool_true : TriBool.TriBool_false; } @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(IIBI)V", - garbageValue = "-645272281" + descriptor = "(B)Z", + garbageValue = "-26" ) - final void method1335(int var1, int var2, byte var3) { - if (super.sequence != -1 && class105.SequenceDefinition_get(super.sequence).field3550 == 1) { // L: 199 + @Export("isClanMember") + boolean isClanMember() { + if (this.isInClanChat == TriBool.TriBool_unknown) { + this.updateIsInClanChat(); + } + + return this.isInClanChat == TriBool.TriBool_true; + } + + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1880119871" + ) + @Export("clearIsInClanChat") + void clearIsInClanChat() { + this.isInClanChat = TriBool.TriBool_unknown; + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "327273294" + ) + @Export("updateIsInClanChat") + void updateIsInClanChat() { + this.isInClanChat = WorldMapArea.clanChat != null && WorldMapArea.clanChat.contains(this.username) ? TriBool.TriBool_true : TriBool.TriBool_false; + } + + @ObfuscatedName("p") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-20" + ) + @Export("transformedSize") + int transformedSize() { + return this.appearance != null && this.appearance.npcTransformId != -1 ? WorldMapIcon_0.getNpcDefinition(this.appearance.npcTransformId).size : 1; + } + + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "(I)Leh;", + garbageValue = "-1814248977" + ) + @Export("getModel") + protected final Model getModel() { + if (this.appearance == null) { + return null; + } else { + SequenceDefinition var1 = super.sequence != -1 && super.sequenceDelay == 0 ? ParamDefinition.SequenceDefinition_get(super.sequence) : null; + SequenceDefinition var2 = super.movementSequence == -1 || this.isUnanimated || super.idleSequence == super.movementSequence && var1 != null ? null : ParamDefinition.SequenceDefinition_get(super.movementSequence); + Model var3 = this.appearance.getModel(var1, super.sequenceFrame, var2, super.movementFrame); + if (var3 == null) { + return null; + } else { + var3.calculateBoundsCylinder(); + super.defaultHeight = var3.height; + Model var4; + Model[] var5; + if (!this.isUnanimated && super.spotAnimation != -1 && super.spotAnimationFrame != -1) { + var4 = TileItem.SpotAnimationDefinition_get(super.spotAnimation).getModel(super.spotAnimationFrame); + if (var4 != null) { + var4.offsetBy(0, -super.field979, 0); + var5 = new Model[]{var3, var4}; + var3 = new Model(var5, 2); + } + } + + if (!this.isUnanimated && this.model0 != null) { + if (Client.cycle >= this.animationCycleEnd) { + this.model0 = null; + } + + if (Client.cycle >= this.animationCycleStart && Client.cycle < this.animationCycleEnd) { + var4 = this.model0; + var4.offsetBy(this.field634 * 4096 - super.x, this.tileHeight2 - this.tileHeight, this.field626 * 4096 - super.y); + if (super.orientation == 512) { + var4.rotateY90Ccw(); + var4.rotateY90Ccw(); + var4.rotateY90Ccw(); + } else if (super.orientation == 1024) { + var4.rotateY90Ccw(); + var4.rotateY90Ccw(); + } else if (super.orientation == 1536) { + var4.rotateY90Ccw(); + } + + var5 = new Model[]{var3, var4}; + var3 = new Model(var5, 2); + if (super.orientation == 512) { + var4.rotateY90Ccw(); + } else if (super.orientation == 1024) { + var4.rotateY90Ccw(); + var4.rotateY90Ccw(); + } else if (super.orientation == 1536) { + var4.rotateY90Ccw(); + var4.rotateY90Ccw(); + var4.rotateY90Ccw(); + } + + var4.offsetBy(super.x - this.field634 * 4096, this.tileHeight - this.tileHeight2, super.y - this.field626 * 4096); + } + } + + var3.isSingleTile = true; + return var3; + } + } + } + + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(IIBI)V", + garbageValue = "1635620178" + ) + final void method1313(int var1, int var2, byte var3) { + if (super.sequence != -1 && ParamDefinition.SequenceDefinition_get(super.sequence).field3555 == 1) { super.sequence = -1; } - super.field1003 = -1; // L: 200 - if (var1 >= 0 && var1 < 104 && var2 >= 0 && var2 < 104) { // L: 201 - if (super.pathX[0] >= 0 && super.pathX[0] < 104 && super.pathY[0] >= 0 && super.pathY[0] < 104) { // L: 202 - if (var3 == 2) { // L: 204 - class281.method5133(this, var1, var2, (byte)2); + super.field959 = -1; + if (var1 >= 0 && var1 < 104 && var2 >= 0 && var2 < 104) { + if (super.pathX[0] >= 0 && super.pathX[0] < 104 && super.pathY[0] >= 0 && super.pathY[0] < 104) { + if (var3 == 2) { + Player var4 = this; + int var5 = super.pathX[0]; + int var6 = super.pathY[0]; + int var7 = this.transformedSize(); + if (var5 >= var7 && var5 < 104 - var7 && var6 >= var7 && var6 < 104 - var7 && var1 >= var7 && var1 < 104 - var7 && var2 >= var7 && var2 < 104 - var7) { + int var9 = this.transformedSize(); + Client.field919.approxDestinationX = var1; + Client.field919.approxDestinationY = var2; + Client.field919.approxDestinationSizeX = 1; + Client.field919.approxDestinationSizeY = 1; + ApproximateRouteStrategy var10 = Client.field919; + ApproximateRouteStrategy var11 = var10; + CollisionMap var12 = Client.collisionMaps[this.plane]; + int[] var13 = Client.field920; + int[] var14 = Client.field921; + int var15 = 0; + + label686: + while (true) { + int var16; + if (var15 >= 128) { + int var17; + int var18; + byte var19; + byte var20; + int var21; + int var22; + byte var23; + int var24; + int[][] var25; + int var26; + int var27; + int var28; + int var29; + boolean var35; + boolean var36; + int var37; + int var38; + int var40; + if (var9 == 1) { + var17 = var5; + var18 = var6; + var19 = 64; + var20 = 64; + var21 = var5 - var19; + var22 = var6 - var20; + class182.directions[var19][var20] = 99; + class182.distances[var19][var20] = 0; + var23 = 0; + var24 = 0; + class182.bufferX[var23] = var5; + var40 = var23 + 1; + class182.bufferY[var23] = var6; + var25 = var12.flags; + + while (true) { + if (var24 == var40) { + class182.field2115 = var17; + class182.field2121 = var18; + var36 = false; + break; + } + + var17 = class182.bufferX[var24]; + var18 = class182.bufferY[var24]; + var24 = var24 + 1 & 4095; + var37 = var17 - var21; + var38 = var18 - var22; + var26 = var17 - var12.xInset; + var27 = var18 - var12.yInset; + if (var11.hasArrived(1, var17, var18, var12)) { + class182.field2115 = var17; + class182.field2121 = var18; + var36 = true; + break; + } + + var28 = class182.distances[var37][var38] + 1; + if (var37 > 0 && class182.directions[var37 - 1][var38] == 0 && (var25[var26 - 1][var27] & 19136776) == 0) { + class182.bufferX[var40] = var17 - 1; + class182.bufferY[var40] = var18; + var40 = var40 + 1 & 4095; + class182.directions[var37 - 1][var38] = 2; + class182.distances[var37 - 1][var38] = var28; + } + + if (var37 < 127 && class182.directions[var37 + 1][var38] == 0 && (var25[var26 + 1][var27] & 19136896) == 0) { + class182.bufferX[var40] = var17 + 1; + class182.bufferY[var40] = var18; + var40 = var40 + 1 & 4095; + class182.directions[var37 + 1][var38] = 8; + class182.distances[var37 + 1][var38] = var28; + } + + if (var38 > 0 && class182.directions[var37][var38 - 1] == 0 && (var25[var26][var27 - 1] & 19136770) == 0) { + class182.bufferX[var40] = var17; + class182.bufferY[var40] = var18 - 1; + var40 = var40 + 1 & 4095; + class182.directions[var37][var38 - 1] = 1; + class182.distances[var37][var38 - 1] = var28; + } + + if (var38 < 127 && class182.directions[var37][var38 + 1] == 0 && (var25[var26][var27 + 1] & 19136800) == 0) { + class182.bufferX[var40] = var17; + class182.bufferY[var40] = var18 + 1; + var40 = var40 + 1 & 4095; + class182.directions[var37][var38 + 1] = 4; + class182.distances[var37][var38 + 1] = var28; + } + + if (var37 > 0 && var38 > 0 && class182.directions[var37 - 1][var38 - 1] == 0 && (var25[var26 - 1][var27 - 1] & 19136782) == 0 && (var25[var26 - 1][var27] & 19136776) == 0 && (var25[var26][var27 - 1] & 19136770) == 0) { + class182.bufferX[var40] = var17 - 1; + class182.bufferY[var40] = var18 - 1; + var40 = var40 + 1 & 4095; + class182.directions[var37 - 1][var38 - 1] = 3; + class182.distances[var37 - 1][var38 - 1] = var28; + } + + if (var37 < 127 && var38 > 0 && class182.directions[var37 + 1][var38 - 1] == 0 && (var25[var26 + 1][var27 - 1] & 19136899) == 0 && (var25[var26 + 1][var27] & 19136896) == 0 && (var25[var26][var27 - 1] & 19136770) == 0) { + class182.bufferX[var40] = var17 + 1; + class182.bufferY[var40] = var18 - 1; + var40 = var40 + 1 & 4095; + class182.directions[var37 + 1][var38 - 1] = 9; + class182.distances[var37 + 1][var38 - 1] = var28; + } + + if (var37 > 0 && var38 < 127 && class182.directions[var37 - 1][var38 + 1] == 0 && (var25[var26 - 1][var27 + 1] & 19136824) == 0 && (var25[var26 - 1][var27] & 19136776) == 0 && (var25[var26][var27 + 1] & 19136800) == 0) { + class182.bufferX[var40] = var17 - 1; + class182.bufferY[var40] = var18 + 1; + var40 = var40 + 1 & 4095; + class182.directions[var37 - 1][var38 + 1] = 6; + class182.distances[var37 - 1][var38 + 1] = var28; + } + + if (var37 < 127 && var38 < 127 && class182.directions[var37 + 1][var38 + 1] == 0 && (var25[var26 + 1][var27 + 1] & 19136992) == 0 && (var25[var26 + 1][var27] & 19136896) == 0 && (var25[var26][var27 + 1] & 19136800) == 0) { + class182.bufferX[var40] = var17 + 1; + class182.bufferY[var40] = var18 + 1; + var40 = var40 + 1 & 4095; + class182.directions[var37 + 1][var38 + 1] = 12; + class182.distances[var37 + 1][var38 + 1] = var28; + } + } + + var35 = var36; + } else if (var9 == 2) { + var35 = class231.method4152(var5, var6, var10, var12); + } else { + var17 = var5; + var18 = var6; + var19 = 64; + var20 = 64; + var21 = var5 - var19; + var22 = var6 - var20; + class182.directions[var19][var20] = 99; + class182.distances[var19][var20] = 0; + var23 = 0; + var24 = 0; + class182.bufferX[var23] = var5; + var40 = var23 + 1; + class182.bufferY[var23] = var6; + var25 = var12.flags; + + label672: + while (true) { + label670: + while (true) { + do { + do { + do { + label647: + do { + if (var24 == var40) { + class182.field2115 = var17; + class182.field2121 = var18; + var36 = false; + break label672; + } + + var17 = class182.bufferX[var24]; + var18 = class182.bufferY[var24]; + var24 = var24 + 1 & 4095; + var37 = var17 - var21; + var38 = var18 - var22; + var26 = var17 - var12.xInset; + var27 = var18 - var12.yInset; + if (var11.hasArrived(var9, var17, var18, var12)) { + class182.field2115 = var17; + class182.field2121 = var18; + var36 = true; + break label672; + } + + var28 = class182.distances[var37][var38] + 1; + if (var37 > 0 && class182.directions[var37 - 1][var38] == 0 && (var25[var26 - 1][var27] & 19136782) == 0 && (var25[var26 - 1][var27 + var9 - 1] & 19136824) == 0) { + var29 = 1; + + while (true) { + if (var29 >= var9 - 1) { + class182.bufferX[var40] = var17 - 1; + class182.bufferY[var40] = var18; + var40 = var40 + 1 & 4095; + class182.directions[var37 - 1][var38] = 2; + class182.distances[var37 - 1][var38] = var28; + break; + } + + if ((var25[var26 - 1][var29 + var27] & 19136830) != 0) { + break; + } + + ++var29; + } + } + + if (var37 < 128 - var9 && class182.directions[var37 + 1][var38] == 0 && (var25[var9 + var26][var27] & 19136899) == 0 && (var25[var26 + var9][var9 + var27 - 1] & 19136992) == 0) { + var29 = 1; + + while (true) { + if (var29 >= var9 - 1) { + class182.bufferX[var40] = var17 + 1; + class182.bufferY[var40] = var18; + var40 = var40 + 1 & 4095; + class182.directions[var37 + 1][var38] = 8; + class182.distances[var37 + 1][var38] = var28; + break; + } + + if ((var25[var26 + var9][var27 + var29] & 19136995) != 0) { + break; + } + + ++var29; + } + } + + if (var38 > 0 && class182.directions[var37][var38 - 1] == 0 && (var25[var26][var27 - 1] & 19136782) == 0 && (var25[var9 + var26 - 1][var27 - 1] & 19136899) == 0) { + var29 = 1; + + while (true) { + if (var29 >= var9 - 1) { + class182.bufferX[var40] = var17; + class182.bufferY[var40] = var18 - 1; + var40 = var40 + 1 & 4095; + class182.directions[var37][var38 - 1] = 1; + class182.distances[var37][var38 - 1] = var28; + break; + } + + if ((var25[var26 + var29][var27 - 1] & 19136911) != 0) { + break; + } + + ++var29; + } + } + + if (var38 < 128 - var9 && class182.directions[var37][var38 + 1] == 0 && (var25[var26][var27 + var9] & 19136824) == 0 && (var25[var9 + var26 - 1][var9 + var27] & 19136992) == 0) { + var29 = 1; + + while (true) { + if (var29 >= var9 - 1) { + class182.bufferX[var40] = var17; + class182.bufferY[var40] = var18 + 1; + var40 = var40 + 1 & 4095; + class182.directions[var37][var38 + 1] = 4; + class182.distances[var37][var38 + 1] = var28; + break; + } + + if ((var25[var29 + var26][var9 + var27] & 19137016) != 0) { + break; + } + + ++var29; + } + } + + if (var37 > 0 && var38 > 0 && class182.directions[var37 - 1][var38 - 1] == 0 && (var25[var26 - 1][var27 - 1] & 19136782) == 0) { + var29 = 1; + + while (true) { + if (var29 >= var9) { + class182.bufferX[var40] = var17 - 1; + class182.bufferY[var40] = var18 - 1; + var40 = var40 + 1 & 4095; + class182.directions[var37 - 1][var38 - 1] = 3; + class182.distances[var37 - 1][var38 - 1] = var28; + break; + } + + if ((var25[var26 - 1][var29 + (var27 - 1)] & 19136830) != 0 || (var25[var29 + (var26 - 1)][var27 - 1] & 19136911) != 0) { + break; + } + + ++var29; + } + } + + if (var37 < 128 - var9 && var38 > 0 && class182.directions[var37 + 1][var38 - 1] == 0 && (var25[var26 + var9][var27 - 1] & 19136899) == 0) { + var29 = 1; + + while (true) { + if (var29 >= var9) { + class182.bufferX[var40] = var17 + 1; + class182.bufferY[var40] = var18 - 1; + var40 = var40 + 1 & 4095; + class182.directions[var37 + 1][var38 - 1] = 9; + class182.distances[var37 + 1][var38 - 1] = var28; + break; + } + + if ((var25[var26 + var9][var29 + (var27 - 1)] & 19136995) != 0 || (var25[var26 + var29][var27 - 1] & 19136911) != 0) { + break; + } + + ++var29; + } + } + + if (var37 > 0 && var38 < 128 - var9 && class182.directions[var37 - 1][var38 + 1] == 0 && (var25[var26 - 1][var9 + var27] & 19136824) == 0) { + for (var29 = 1; var29 < var9; ++var29) { + if ((var25[var26 - 1][var29 + var27] & 19136830) != 0 || (var25[var29 + (var26 - 1)][var27 + var9] & 19137016) != 0) { + continue label647; + } + } + + class182.bufferX[var40] = var17 - 1; + class182.bufferY[var40] = var18 + 1; + var40 = var40 + 1 & 4095; + class182.directions[var37 - 1][var38 + 1] = 6; + class182.distances[var37 - 1][var38 + 1] = var28; + } + } while(var37 >= 128 - var9); + } while(var38 >= 128 - var9); + } while(class182.directions[var37 + 1][var38 + 1] != 0); + } while((var25[var9 + var26][var9 + var27] & 19136992) != 0); + + for (var29 = 1; var29 < var9; ++var29) { + if ((var25[var26 + var29][var9 + var27] & 19137016) != 0 || (var25[var9 + var26][var29 + var27] & 19136995) != 0) { + continue label670; + } + } + + class182.bufferX[var40] = var17 + 1; + class182.bufferY[var40] = var18 + 1; + var40 = var40 + 1 & 4095; + class182.directions[var37 + 1][var38 + 1] = 12; + class182.distances[var37 + 1][var38 + 1] = var28; + } + } + + var35 = var36; + } + + int var8; + label727: { + var16 = var5 - 64; + var17 = var6 - 64; + var18 = class182.field2115; + var37 = class182.field2121; + if (!var35) { + var38 = Integer.MAX_VALUE; + var21 = Integer.MAX_VALUE; + byte var39 = 10; + var40 = var11.approxDestinationX; + var24 = var11.approxDestinationY; + int var34 = var11.approxDestinationSizeX; + var26 = var11.approxDestinationSizeY; + + for (var27 = var40 - var39; var27 <= var39 + var40; ++var27) { + for (var28 = var24 - var39; var28 <= var39 + var24; ++var28) { + var29 = var27 - var16; + int var30 = var28 - var17; + if (var29 >= 0 && var30 >= 0 && var29 < 128 && var30 < 128 && class182.distances[var29][var30] < 100) { + int var31 = 0; + if (var27 < var40) { + var31 = var40 - var27; + } else if (var27 > var40 + var34 - 1) { + var31 = var27 - (var40 + var34 - 1); + } + + int var32 = 0; + if (var28 < var24) { + var32 = var24 - var28; + } else if (var28 > var26 + var24 - 1) { + var32 = var28 - (var24 + var26 - 1); + } + + int var33 = var31 * var31 + var32 * var32; + if (var33 < var38 || var38 == var33 && class182.distances[var29][var30] < var21) { + var38 = var33; + var21 = class182.distances[var29][var30]; + var18 = var27; + var37 = var28; + } + } + } + } + + if (var38 == Integer.MAX_VALUE) { + var8 = -1; + break label727; + } + } + + if (var18 == var5 && var37 == var6) { + var8 = 0; + } else { + var20 = 0; + class182.bufferX[var20] = var18; + var38 = var20 + 1; + class182.bufferY[var20] = var37; + + for (var21 = var22 = class182.directions[var18 - var16][var37 - var17]; var18 != var5 || var37 != var6; var21 = class182.directions[var18 - var16][var37 - var17]) { + if (var22 != var21) { + var22 = var21; + class182.bufferX[var38] = var18; + class182.bufferY[var38++] = var37; + } + + if ((var21 & 2) != 0) { + ++var18; + } else if ((var21 & 8) != 0) { + --var18; + } + + if ((var21 & 1) != 0) { + ++var37; + } else if ((var21 & 4) != 0) { + --var37; + } + } + + var40 = 0; + + while (var38-- > 0) { + var13[var40] = class182.bufferX[var38]; + var14[var40++] = class182.bufferY[var38]; + if (var40 >= var13.length) { + break; + } + } + + var8 = var40; + } + } + + var15 = var8; + if (var8 < 1) { + break; + } + + var16 = 0; + + while (true) { + if (var16 >= var15 - 1) { + break label686; + } + + var4.method1315(Client.field920[var16], Client.field921[var16], (byte)2); + ++var16; + } + } + + for (var16 = 0; var16 < 128; ++var16) { + class182.directions[var15][var16] = 0; + class182.distances[var15][var16] = 99999999; + } + + ++var15; + } + } } - this.method1337(var1, var2, var3); // L: 205 + this.method1315(var1, var2, var3); } else { this.resetPath(var1, var2); } @@ -464,242 +941,108 @@ public final class Player extends Actor { this.resetPath(var1, var2); } - } // L: 207 + } - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "-1359568653" + garbageValue = "273949660" ) @Export("resetPath") void resetPath(int var1, int var2) { - super.pathLength = 0; // L: 210 - super.field1034 = 0; // L: 211 - super.field978 = 0; // L: 212 - super.pathX[0] = var1; // L: 213 - super.pathY[0] = var2; // L: 214 - int var3 = this.transformedSize(); // L: 215 - super.x = var3 * 64 + super.pathX[0] * 128; // L: 216 - super.y = super.pathY[0] * 128 + var3 * 64; // L: 217 - } // L: 218 + super.pathLength = 0; + super.field996 = 0; + super.field963 = 0; + super.pathX[0] = var1; + super.pathY[0] = var2; + int var3 = this.transformedSize(); + super.x = var3 * 64 + super.pathX[0] * 128; + super.y = super.pathY[0] * 128 + var3 * 64; + } - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedSignature( descriptor = "(IIBI)V", - garbageValue = "1011126819" + garbageValue = "-52932388" ) - final void method1337(int var1, int var2, byte var3) { - if (super.pathLength < 9) { // L: 221 + final void method1315(int var1, int var2, byte var3) { + if (super.pathLength < 9) { ++super.pathLength; } - for (int var4 = super.pathLength; var4 > 0; --var4) { // L: 222 - super.pathX[var4] = super.pathX[var4 - 1]; // L: 223 - super.pathY[var4] = super.pathY[var4 - 1]; // L: 224 - super.pathTraversed[var4] = super.pathTraversed[var4 - 1]; // L: 225 + for (int var4 = super.pathLength; var4 > 0; --var4) { + super.pathX[var4] = super.pathX[var4 - 1]; + super.pathY[var4] = super.pathY[var4 - 1]; + super.pathTraversed[var4] = super.pathTraversed[var4 - 1]; } - super.pathX[0] = var1; // L: 227 - super.pathY[0] = var2; // L: 228 - super.pathTraversed[0] = var3; // L: 229 - } // L: 230 + super.pathX[0] = var1; + super.pathY[0] = var2; + super.pathTraversed[0] = var3; + } - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "2035007323" + garbageValue = "1661589479" ) @Export("isVisible") final boolean isVisible() { - return this.appearance != null; // L: 233 + return this.appearance != null; } - @ObfuscatedName("f") - public static final int method1325(double var0, double var2, double var4) { - double var6 = var4; // L: 9 - double var8 = var4; // L: 10 - double var10 = var4; // L: 11 - if (0.0D != var2) { // L: 12 - double var12; - if (var4 < 0.5D) { // L: 14 - var12 = var4 * (var2 + 1.0D); - } else { - var12 = var4 + var2 - var4 * var2; // L: 15 - } - - double var14 = 2.0D * var4 - var12; // L: 16 - double var16 = var0 + 0.3333333333333333D; // L: 17 - if (var16 > 1.0D) { // L: 18 - --var16; - } - - double var20 = var0 - 0.3333333333333333D; // L: 20 - if (var20 < 0.0D) { // L: 21 - ++var20; - } - - if (var16 * 6.0D < 1.0D) { // L: 22 - var6 = (var12 - var14) * 6.0D * var16 + var14; - } else if (var16 * 2.0D < 1.0D) { // L: 23 - var6 = var12; - } else if (var16 * 3.0D < 2.0D) { // L: 24 - var6 = 6.0D * (var12 - var14) * (0.6666666666666666D - var16) + var14; - } else { - var6 = var14; // L: 25 - } - - if (6.0D * var0 < 1.0D) { // L: 26 - var8 = var14 + (var12 - var14) * 6.0D * var0; - } else if (var0 * 2.0D < 1.0D) { // L: 27 - var8 = var12; - } else if (3.0D * var0 < 2.0D) { // L: 28 - var8 = var14 + (var12 - var14) * (0.6666666666666666D - var0) * 6.0D; - } else { - var8 = var14; // L: 29 - } - - if (var20 * 6.0D < 1.0D) { // L: 30 - var10 = (var12 - var14) * 6.0D * var20 + var14; - } else if (var20 * 2.0D < 1.0D) { // L: 31 - var10 = var12; - } else if (3.0D * var20 < 2.0D) { // L: 32 - var10 = var14 + 6.0D * (0.6666666666666666D - var20) * (var12 - var14); - } else { - var10 = var14; // L: 33 - } - } - - int var22 = (int)(var6 * 256.0D); // L: 35 - int var13 = (int)(256.0D * var8); // L: 36 - int var23 = (int)(var10 * 256.0D); // L: 37 - int var15 = var23 + (var13 << 8) + (var22 << 16); // L: 38 - return var15; // L: 39 - } - - @ObfuscatedName("ac") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "(ILco;ZB)I", - garbageValue = "122" + descriptor = "(Lhe;IIII)V", + garbageValue = "715521473" ) - static int method1354(int var0, Script var1, boolean var2) { - int var3; - int var6; - int var9; - if (var0 == ScriptOpcodes.ENUM_STRING) { // L: 1861 - MilliClock.Interpreter_intStackSize -= 2; // L: 1862 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 1863 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 1864 - EnumDefinition var10 = Decimator.getEnum(var3); // L: 1865 - if (var10.outputType != 's') { // L: 1866 - } + @Export("Widget_setKeyRate") + static final void Widget_setKeyRate(Widget var0, int var1, int var2, int var3) { + if (var0.field2679 == null) { + throw new RuntimeException(); + } else { + var0.field2679[var1] = var2; + var0.field2664[var1] = var3; + } + } - for (var6 = 0; var6 < var10.outputCount; ++var6) { // L: 1867 - if (var9 == var10.keys[var6]) { // L: 1868 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var10.strVals[var6]; // L: 1869 - var10 = null; // L: 1870 + @ObfuscatedName("ki") + @ObfuscatedSignature( + descriptor = "(Lhe;I)Lhe;", + garbageValue = "1020097317" + ) + static Widget method1351(Widget var0) { + Widget var2 = var0; + int var4 = FaceNormal.getWidgetFlags(var0); + int var3 = var4 >> 17 & 7; + int var5 = var3; + Widget var1; + if (var3 == 0) { + var1 = null; + } else { + int var6 = 0; + + while (true) { + if (var6 >= var5) { + var1 = var2; break; } - } - if (var10 != null) { // L: 1874 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var10.defaultStr; - } - - return 1; // L: 1875 - } else if (var0 != ScriptOpcodes.ENUM) { // L: 1877 - if (var0 == ScriptOpcodes.ENUM_GETOUTPUTCOUNT) { // L: 1903 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1904 - EnumDefinition var4 = Decimator.getEnum(var3); // L: 1905 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var4.size(); // L: 1906 - return 1; // L: 1907 - } else { - return 2; // L: 1909 - } - } else { - MilliClock.Interpreter_intStackSize -= 4; // L: 1878 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 1879 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 1880 - int var5 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 2]; // L: 1881 - var6 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 3]; // L: 1882 - EnumDefinition var7 = Decimator.getEnum(var5); // L: 1883 - if (var3 == var7.inputType && var9 == var7.outputType) { // L: 1884 - for (int var8 = 0; var8 < var7.outputCount; ++var8) { // L: 1889 - if (var6 == var7.keys[var8]) { // L: 1890 - if (var9 == 115) { // L: 1891 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var7.strVals[var8]; - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var7.intVals[var8]; // L: 1892 - } - - var7 = null; // L: 1893 - break; - } + var2 = CollisionMap.getWidget(var2.parentId); + if (var2 == null) { + var1 = null; + break; } - if (var7 != null) { // L: 1897 - if (var9 == 115) { // L: 1898 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var7.defaultStr; - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var7.defaultInt; // L: 1899 - } - } - - return 1; // L: 1901 - } else { - if (var9 == 115) { // L: 1885 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = "null"; - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1886 - } - - return 1; // L: 1887 + ++var6; } } + + Widget var7 = var1; + if (var1 == null) { + var7 = var0.parent; + } + + return var7; } - - @ObfuscatedName("ji") - @ObfuscatedSignature( - descriptor = "(Lbs;ZI)V", - garbageValue = "-669963127" - ) - @Export("closeInterface") - static final void closeInterface(InterfaceParent var0, boolean var1) { - int var2 = var0.group; // L: 11299 - int var3 = (int)var0.key; // L: 11300 - var0.remove(); // L: 11301 - if (var1) { // L: 11302 - class206.method3852(var2); - } - - UserComparator2.method6067(var2); // L: 11303 - Widget var4 = UserComparator4.getWidget(var3); // L: 11304 - if (var4 != null) { // L: 11305 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var4); - } - - for (int var5 = 0; var5 < Client.menuOptionsCount; ++var5) { // L: 11307 - if (DynamicObject.method2362(Client.menuOpcodes[var5])) { // L: 11308 - if (var5 < Client.menuOptionsCount - 1) { // L: 11309 - for (int var6 = var5; var6 < Client.menuOptionsCount - 1; ++var6) { // L: 11310 - Client.menuActions[var6] = Client.menuActions[var6 + 1]; // L: 11311 - Client.menuTargets[var6] = Client.menuTargets[var6 + 1]; // L: 11312 - Client.menuOpcodes[var6] = Client.menuOpcodes[var6 + 1]; // L: 11313 - Client.menuIdentifiers[var6] = Client.menuIdentifiers[var6 + 1]; // L: 11314 - Client.menuArguments1[var6] = Client.menuArguments1[var6 + 1]; // L: 11315 - Client.menuArguments2[var6] = Client.menuArguments2[var6 + 1]; // L: 11316 - Client.menuShiftClick[var6] = Client.menuShiftClick[var6 + 1]; // L: 11317 - } - } - - --var5; // L: 11320 - --Client.menuOptionsCount; // L: 11321 - } - } - - TileItemPile.method2908(); // L: 11324 - if (Client.rootInterface != -1) { // L: 11326 - WorldMapAreaData.runIntfCloseListeners(Client.rootInterface, 1); - } - - } // L: 11327 } diff --git a/runescape-client/src/main/java/PlayerAppearance.java b/runescape-client/src/main/java/PlayerAppearance.java index 16c28ef98d..6e94f91b89 100644 --- a/runescape-client/src/main/java/PlayerAppearance.java +++ b/runescape-client/src/main/java/PlayerAppearance.java @@ -1,427 +1,529 @@ +import java.io.BufferedReader; +import java.io.DataInputStream; +import java.io.PrintWriter; +import java.io.StringReader; +import java.io.StringWriter; +import java.net.URL; 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("hu") +@ObfuscatedName("hh") @Implements("PlayerAppearance") public class PlayerAppearance { - @ObfuscatedName("k") - public static short[] field2559; - @ObfuscatedName("e") + @ObfuscatedName("n") + public static short[] field2551; + @ObfuscatedName("l") + public static short[] field2557; + @ObfuscatedName("u") @Export("equipmentIndices") static final int[] equipmentIndices; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("PlayerAppearance_cachedModels") - static EvictingDualNodeHashTable PlayerAppearance_cachedModels; + public static EvictingDualNodeHashTable PlayerAppearance_cachedModels; + @ObfuscatedName("i") + @ObfuscatedSignature( + descriptor = "[Lmz;" + ) + @Export("JagexCache_idxFiles") + public static BufferedFile[] JagexCache_idxFiles; @ObfuscatedName("f") + @ObfuscatedSignature( + descriptor = "Lhe;" + ) + static Widget field2561; + @ObfuscatedName("kn") + @ObfuscatedSignature( + descriptor = "Lbq;" + ) + @Export("localPlayer") + static Player localPlayer; + @ObfuscatedName("h") @Export("equipment") int[] equipment; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("bodyColors") int[] bodyColors; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("isFemale") public boolean isFemale; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 1998131209 + intValue = 1354767305 ) @Export("npcTransformId") public int npcTransformId; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - longValue = -3297432427762095127L + longValue = 4237745926834105329L ) @Export("hash") long hash; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - longValue = -3842356906884846791L + longValue = -9032621896431904669L ) - long field2564; + long field2555; static { - equipmentIndices = new int[]{8, 11, 4, 6, 9, 7, 10}; // L: 23 - PlayerAppearance_cachedModels = new EvictingDualNodeHashTable(260); // L: 24 + equipmentIndices = new int[]{8, 11, 4, 6, 9, 7, 10}; + PlayerAppearance_cachedModels = new EvictingDualNodeHashTable(260); } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "([I[IZIB)V", - garbageValue = "124" + descriptor = "([I[IZII)V", + garbageValue = "1899379562" ) @Export("update") public void update(int[] var1, int[] var2, boolean var3, int var4) { - if (var1 == null) { // L: 27 - var1 = new int[12]; // L: 28 + if (var1 == null) { + var1 = new int[12]; - for (int var5 = 0; var5 < 7; ++var5) { // L: 29 - for (int var6 = 0; var6 < KitDefinition.KitDefinition_fileCount; ++var6) { // L: 30 - KitDefinition var7 = WorldMapIcon_0.KitDefinition_get(var6); // L: 31 - if (var7 != null && !var7.nonSelectable && var7.bodypartID == var5 + (var3 ? 7 : 0)) { // L: 32 - var1[equipmentIndices[var5]] = var6 + 256; // L: 33 - break; // L: 34 + for (int var5 = 0; var5 < 7; ++var5) { + for (int var6 = 0; var6 < KitDefinition.KitDefinition_fileCount; ++var6) { + KitDefinition var7 = WorldMapData_1.KitDefinition_get(var6); + if (var7 != null && !var7.nonSelectable && var7.bodypartID == var5 + (var3 ? 7 : 0)) { + var1[equipmentIndices[var5]] = var6 + 256; + break; } } } } - this.equipment = var1; // L: 39 - this.bodyColors = var2; // L: 40 - this.isFemale = var3; // L: 41 - this.npcTransformId = var4; // L: 42 - this.setHash(); // L: 43 - } // L: 44 + this.equipment = var1; + this.bodyColors = var2; + this.isFemale = var3; + this.npcTransformId = var4; + this.setHash(); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(IZI)V", - garbageValue = "2030071885" + garbageValue = "-1452083272" ) @Export("changeAppearance") public void changeAppearance(int var1, boolean var2) { - if (var1 != 1 || !this.isFemale) { // L: 47 - int var3 = this.equipment[equipmentIndices[var1]]; // L: 48 - if (var3 != 0) { // L: 49 - var3 -= 256; // L: 50 + if (var1 != 1 || !this.isFemale) { + int var3 = this.equipment[equipmentIndices[var1]]; + if (var3 != 0) { + var3 -= 256; KitDefinition var4; do { - if (!var2) { // L: 52 - --var3; // L: 53 - if (var3 < 0) { // L: 54 + if (!var2) { + --var3; + if (var3 < 0) { var3 = KitDefinition.KitDefinition_fileCount - 1; } } else { - ++var3; // L: 57 + ++var3; if (var3 >= KitDefinition.KitDefinition_fileCount) { - var3 = 0; // L: 58 + var3 = 0; } } - var4 = WorldMapIcon_0.KitDefinition_get(var3); // L: 60 - } while(var4 == null || var4.nonSelectable || (this.isFemale ? 7 : 0) + var1 != var4.bodypartID); // L: 61 + var4 = WorldMapData_1.KitDefinition_get(var3); + } while(var4 == null || var4.nonSelectable || var4.bodypartID != (this.isFemale ? 7 : 0) + var1); - this.equipment[equipmentIndices[var1]] = var3 + 256; // L: 63 - this.setHash(); // L: 64 + this.equipment[equipmentIndices[var1]] = var3 + 256; + this.setHash(); } } - } // L: 65 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(IZI)V", - garbageValue = "1266192115" + garbageValue = "-1113913855" ) - public void method4148(int var1, boolean var2) { - int var3 = this.bodyColors[var1]; // L: 68 - boolean var4; - if (!var2) { // L: 69 + public void method4043(int var1, boolean var2) { + int var3 = this.bodyColors[var1]; + if (!var2) { do { - --var3; // L: 71 - if (var3 < 0) { // L: 72 - var3 = MouseRecorder.field628[var1].length - 1; // L: 73 + --var3; + if (var3 < 0) { + var3 = WorldMapScaleHandler.field366[var1].length - 1; } - - if (var1 == 4 && var3 >= 8) { // L: 77 - var4 = false; // L: 78 - } else { - var4 = true; // L: 81 - } - } while(!var4); // L: 83 + } while(!class171.method3535(var1, var3)); } else { do { - ++var3; // L: 88 - if (var3 >= MouseRecorder.field628[var1].length) { // L: 89 + ++var3; + if (var3 >= WorldMapScaleHandler.field366[var1].length) { var3 = 0; } - - if (var1 == 4 && var3 >= 8) { // L: 92 - var4 = false; // L: 93 - } else { - var4 = true; // L: 96 - } - } while(!var4); // L: 98 + } while(!class171.method3535(var1, var3)); } - this.bodyColors[var1] = var3; // L: 101 - this.setHash(); // L: 102 - } // L: 103 + this.bodyColors[var1] = var3; + this.setHash(); + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(ZB)V", - garbageValue = "-48" + garbageValue = "77" ) @Export("changeSex") public void changeSex(boolean var1) { - if (this.isFemale != var1) { // L: 106 - this.update((int[])null, this.bodyColors, var1, -1); // L: 107 + if (this.isFemale != var1) { + this.update((int[])null, this.bodyColors, var1, -1); } - } // L: 108 + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-406740524" + descriptor = "(Lkj;I)V", + garbageValue = "1256612207" ) @Export("write") public void write(Buffer var1) { - var1.writeByte(this.isFemale ? 1 : 0); // L: 111 + var1.writeByte(this.isFemale ? 1 : 0); int var2; - for (var2 = 0; var2 < 7; ++var2) { // L: 112 - int var3 = this.equipment[equipmentIndices[var2]]; // L: 113 - if (var3 == 0) { // L: 114 + for (var2 = 0; var2 < 7; ++var2) { + int var3 = this.equipment[equipmentIndices[var2]]; + if (var3 == 0) { var1.writeByte(-1); } else { - var1.writeByte(var3 - 256); // L: 115 + var1.writeByte(var3 - 256); } } - for (var2 = 0; var2 < 5; ++var2) { // L: 117 + for (var2 = 0; var2 < 5; ++var2) { var1.writeByte(this.bodyColors[var2]); } - } // L: 118 + } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-993461341" + garbageValue = "-1623503155" ) @Export("setHash") void setHash() { - long var1 = this.hash; // L: 121 - int var3 = this.equipment[5]; // L: 122 - int var4 = this.equipment[9]; // L: 123 - this.equipment[5] = var4; // L: 124 - this.equipment[9] = var3; // L: 125 - this.hash = 0L; // L: 126 + long var1 = this.hash; + int var3 = this.equipment[5]; + int var4 = this.equipment[9]; + this.equipment[5] = var4; + this.equipment[9] = var3; + this.hash = 0L; int var5; - for (var5 = 0; var5 < 12; ++var5) { // L: 127 - this.hash <<= 4; // L: 128 - if (this.equipment[var5] >= 256) { // L: 129 + for (var5 = 0; var5 < 12; ++var5) { + this.hash <<= 4; + if (this.equipment[var5] >= 256) { this.hash += (long)(this.equipment[var5] - 256); } } - if (this.equipment[0] >= 256) { // L: 131 + if (this.equipment[0] >= 256) { this.hash += (long)(this.equipment[0] - 256 >> 4); } - if (this.equipment[1] >= 256) { // L: 132 + if (this.equipment[1] >= 256) { this.hash += (long)(this.equipment[1] - 256 >> 8); } - for (var5 = 0; var5 < 5; ++var5) { // L: 133 - this.hash <<= 3; // L: 134 - this.hash += (long)this.bodyColors[var5]; // L: 135 + for (var5 = 0; var5 < 5; ++var5) { + this.hash <<= 3; + this.hash += (long)this.bodyColors[var5]; } - this.hash <<= 1; // L: 137 - this.hash += (long)(this.isFemale ? 1 : 0); // L: 138 - this.equipment[5] = var3; // L: 139 - this.equipment[9] = var4; // L: 140 - if (var1 != 0L && var1 != this.hash) { // L: 141 + this.hash <<= 1; + this.hash += (long)(this.isFemale ? 1 : 0); + this.equipment[5] = var3; + this.equipment[9] = var4; + if (0L != var1 && this.hash != var1) { PlayerAppearance_cachedModels.remove(var1); } - } // L: 142 + } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(Ljg;ILjg;II)Leh;", - garbageValue = "1516185298" + descriptor = "(Ljy;ILjy;II)Leh;", + garbageValue = "-344109414" ) @Export("getModel") public Model getModel(SequenceDefinition var1, int var2, SequenceDefinition var3, int var4) { - if (this.npcTransformId != -1) { // L: 145 - return Clock.getNpcDefinition(this.npcTransformId).getModel(var1, var2, var3, var4); // L: 146 + if (this.npcTransformId != -1) { + return WorldMapIcon_0.getNpcDefinition(this.npcTransformId).getModel(var1, var2, var3, var4); } else { - long var5 = this.hash; // L: 148 - int[] var7 = this.equipment; // L: 149 - if (var1 != null && (var1.shield >= 0 || var1.weapon >= 0)) { // L: 150 - var7 = new int[12]; // L: 151 + long var5 = this.hash; + int[] var7 = this.equipment; + if (var1 != null && (var1.shield >= 0 || var1.weapon >= 0)) { + var7 = new int[12]; - for (int var8 = 0; var8 < 12; ++var8) { // L: 152 + for (int var8 = 0; var8 < 12; ++var8) { var7[var8] = this.equipment[var8]; } - if (var1.shield >= 0) { // L: 153 - var5 += (long)(var1.shield - this.equipment[5] << 40); // L: 154 - var7[5] = var1.shield; // L: 155 + if (var1.shield >= 0) { + var5 += (long)(var1.shield - this.equipment[5] << 40); + var7[5] = var1.shield; } - if (var1.weapon >= 0) { // L: 157 - var5 += (long)(var1.weapon - this.equipment[3] << 48); // L: 158 - var7[3] = var1.weapon; // L: 159 + if (var1.weapon >= 0) { + var5 += (long)(var1.weapon - this.equipment[3] << 48); + var7[3] = var1.weapon; } } - Model var15 = (Model)PlayerAppearance_cachedModels.get(var5); // L: 162 - if (var15 == null) { // L: 163 - boolean var9 = false; // L: 164 + Model var15 = (Model)PlayerAppearance_cachedModels.get(var5); + if (var15 == null) { + boolean var9 = false; int var11; - for (int var10 = 0; var10 < 12; ++var10) { // L: 165 - var11 = var7[var10]; // L: 166 - if (var11 >= 256 && var11 < 512 && !WorldMapIcon_0.KitDefinition_get(var11 - 256).ready()) { // L: 167 168 + for (int var10 = 0; var10 < 12; ++var10) { + var11 = var7[var10]; + if (var11 >= 256 && var11 < 512 && !WorldMapData_1.KitDefinition_get(var11 - 256).ready()) { var9 = true; } - if (var11 >= 512 && !AbstractWorldMapData.ItemDefinition_get(var11 - 512).hasNoValidModel(this.isFemale)) { // L: 170 171 + if (var11 >= 512 && !SecureRandomCallable.ItemDefinition_get(var11 - 512).hasNoValidModel(this.isFemale)) { var9 = true; } } - if (var9) { // L: 174 - if (this.field2564 != -1L) { // L: 175 - var15 = (Model)PlayerAppearance_cachedModels.get(this.field2564); + if (var9) { + if (-1L != this.field2555) { + var15 = (Model)PlayerAppearance_cachedModels.get(this.field2555); } - if (var15 == null) { // L: 176 + if (var15 == null) { return null; } } - if (var15 == null) { // L: 178 - ModelData[] var16 = new ModelData[12]; // L: 179 - var11 = 0; // L: 180 + if (var15 == null) { + ModelData[] var16 = new ModelData[12]; + var11 = 0; int var13; - for (int var12 = 0; var12 < 12; ++var12) { // L: 181 - var13 = var7[var12]; // L: 182 + for (int var12 = 0; var12 < 12; ++var12) { + var13 = var7[var12]; ModelData var14; - if (var13 >= 256 && var13 < 512) { // L: 183 - var14 = WorldMapIcon_0.KitDefinition_get(var13 - 256).getModelData(); // L: 184 - if (var14 != null) { // L: 185 + if (var13 >= 256 && var13 < 512) { + var14 = WorldMapData_1.KitDefinition_get(var13 - 256).getModelData(); + if (var14 != null) { var16[var11++] = var14; } } - if (var13 >= 512) { // L: 187 - var14 = AbstractWorldMapData.ItemDefinition_get(var13 - 512).method4820(this.isFemale); // L: 188 - if (var14 != null) { // L: 189 + if (var13 >= 512) { + var14 = SecureRandomCallable.ItemDefinition_get(var13 - 512).method4669(this.isFemale); + if (var14 != null) { var16[var11++] = var14; } } } - ModelData var17 = new ModelData(var16, var11); // L: 192 + ModelData var17 = new ModelData(var16, var11); - for (var13 = 0; var13 < 5; ++var13) { // L: 193 - if (this.bodyColors[var13] < MouseRecorder.field628[var13].length) { // L: 194 - var17.recolor(field2559[var13], MouseRecorder.field628[var13][this.bodyColors[var13]]); + for (var13 = 0; var13 < 5; ++var13) { + if (this.bodyColors[var13] < WorldMapScaleHandler.field366[var13].length) { + var17.recolor(field2551[var13], WorldMapScaleHandler.field366[var13][this.bodyColors[var13]]); } - if (this.bodyColors[var13] < MusicPatchPcmStream.field2516[var13].length) { // L: 195 - var17.recolor(FriendLoginUpdate.field3671[var13], MusicPatchPcmStream.field2516[var13][this.bodyColors[var13]]); + if (this.bodyColors[var13] < WorldMapCacheName.field331[var13].length) { + var17.recolor(field2557[var13], WorldMapCacheName.field331[var13][this.bodyColors[var13]]); } } - var15 = var17.toModel(64, 850, -30, -50, -30); // L: 197 - PlayerAppearance_cachedModels.put(var15, var5); // L: 198 - this.field2564 = var5; // L: 199 + var15 = var17.toModel(64, 850, -30, -50, -30); + PlayerAppearance_cachedModels.put(var15, var5); + this.field2555 = var5; } } - if (var1 == null && var3 == null) { // L: 203 + if (var1 == null && var3 == null) { return var15; } else { Model var18; - if (var1 != null && var3 != null) { // L: 204 + if (var1 != null && var3 != null) { var18 = var1.applyTransformations(var15, var2, var3, var4); - } else if (var1 != null) { // L: 205 + } else if (var1 != null) { var18 = var1.transformActorModel(var15, var2); } else { - var18 = var3.transformActorModel(var15, var4); // L: 206 + var18 = var3.transformActorModel(var15, var4); } - return var18; // L: 207 + return var18; } } } - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "(B)Len;", - garbageValue = "-99" + descriptor = "(I)Les;", + garbageValue = "1602412572" ) @Export("getModelData") ModelData getModelData() { - if (this.npcTransformId != -1) { // L: 211 - return Clock.getNpcDefinition(this.npcTransformId).getModelData(); // L: 212 + if (this.npcTransformId != -1) { + return WorldMapIcon_0.getNpcDefinition(this.npcTransformId).getModelData(); } else { - boolean var1 = false; // L: 214 + boolean var1 = false; int var3; - for (int var2 = 0; var2 < 12; ++var2) { // L: 215 - var3 = this.equipment[var2]; // L: 216 - if (var3 >= 256 && var3 < 512 && !WorldMapIcon_0.KitDefinition_get(var3 - 256).method4620()) { // L: 217 218 + for (int var2 = 0; var2 < 12; ++var2) { + var3 = this.equipment[var2]; + if (var3 >= 256 && var3 < 512 && !WorldMapData_1.KitDefinition_get(var3 - 256).method4488()) { var1 = true; } - if (var3 >= 512 && !AbstractWorldMapData.ItemDefinition_get(var3 - 512).method4809(this.isFemale)) { // L: 220 221 + if (var3 >= 512 && !SecureRandomCallable.ItemDefinition_get(var3 - 512).method4660(this.isFemale)) { var1 = true; } } - if (var1) { // L: 224 + if (var1) { return null; } else { - ModelData[] var7 = new ModelData[12]; // L: 225 - var3 = 0; // L: 226 + ModelData[] var7 = new ModelData[12]; + var3 = 0; int var5; - for (int var4 = 0; var4 < 12; ++var4) { // L: 227 - var5 = this.equipment[var4]; // L: 228 + for (int var4 = 0; var4 < 12; ++var4) { + var5 = this.equipment[var4]; ModelData var6; - if (var5 >= 256 && var5 < 512) { // L: 229 - var6 = WorldMapIcon_0.KitDefinition_get(var5 - 256).getKitDefinitionModels(); // L: 230 - if (var6 != null) { // L: 231 + if (var5 >= 256 && var5 < 512) { + var6 = WorldMapData_1.KitDefinition_get(var5 - 256).getKitDefinitionModels(); + if (var6 != null) { var7[var3++] = var6; } } - if (var5 >= 512) { // L: 233 - var6 = AbstractWorldMapData.ItemDefinition_get(var5 - 512).method4822(this.isFemale); // L: 234 - if (var6 != null) { // L: 235 + if (var5 >= 512) { + var6 = SecureRandomCallable.ItemDefinition_get(var5 - 512).method4671(this.isFemale); + if (var6 != null) { var7[var3++] = var6; } } } - ModelData var8 = new ModelData(var7, var3); // L: 238 + ModelData var8 = new ModelData(var7, var3); - for (var5 = 0; var5 < 5; ++var5) { // L: 239 - if (this.bodyColors[var5] < MouseRecorder.field628[var5].length) { // L: 240 - var8.recolor(field2559[var5], MouseRecorder.field628[var5][this.bodyColors[var5]]); + for (var5 = 0; var5 < 5; ++var5) { + if (this.bodyColors[var5] < WorldMapScaleHandler.field366[var5].length) { + var8.recolor(field2551[var5], WorldMapScaleHandler.field366[var5][this.bodyColors[var5]]); } - if (this.bodyColors[var5] < MusicPatchPcmStream.field2516[var5].length) { // L: 241 - var8.recolor(FriendLoginUpdate.field3671[var5], MusicPatchPcmStream.field2516[var5][this.bodyColors[var5]]); + if (this.bodyColors[var5] < WorldMapCacheName.field331[var5].length) { + var8.recolor(field2557[var5], WorldMapCacheName.field331[var5][this.bodyColors[var5]]); } } - return var8; // L: 243 + return var8; } } } - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1510142127" + garbageValue = "-2065578262" ) @Export("getChatHeadId") public int getChatHeadId() { - return this.npcTransformId == -1 ? (this.equipment[0] << 15) + this.equipment[1] + (this.equipment[11] << 5) + (this.equipment[8] << 10) + (this.bodyColors[0] << 25) + (this.bodyColors[4] << 20) : 305419896 + Clock.getNpcDefinition(this.npcTransformId).id; // L: 247 248 + return this.npcTransformId == -1 ? (this.equipment[0] << 15) + this.equipment[1] + (this.equipment[11] << 5) + (this.equipment[8] << 10) + (this.bodyColors[0] << 25) + (this.bodyColors[4] << 20) : 305419896 + WorldMapIcon_0.getNpcDefinition(this.npcTransformId).id; + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;Ljava/lang/Throwable;I)V", + garbageValue = "2079924758" + ) + @Export("RunException_sendStackTrace") + public static void RunException_sendStackTrace(String var0, Throwable var1) { + if (var1 != null) { + var1.printStackTrace(); + } else { + try { + String var2 = ""; + if (var1 != null) { + Throwable var4 = var1; + String var5; + if (var1 instanceof RunException) { + RunException var6 = (RunException)var1; + var5 = var6.message + " | "; + var4 = var6.throwable; + } else { + var5 = ""; + } + + StringWriter var18 = new StringWriter(); + PrintWriter var7 = new PrintWriter(var18); + var4.printStackTrace(var7); + var7.close(); + String var8 = var18.toString(); + BufferedReader var9 = new BufferedReader(new StringReader(var8)); + String var10 = var9.readLine(); + + label62: + while (true) { + while (true) { + String var11 = var9.readLine(); + if (var11 == null) { + var5 = var5 + "| " + var10; + var2 = var5; + break label62; + } + + int var12 = var11.indexOf(40); + int var13 = var11.indexOf(41, var12 + 1); + if (var12 >= 0 && var13 >= 0) { + String var14 = var11.substring(var12 + 1, var13); + int var15 = var14.indexOf(".java:"); + if (var15 >= 0) { + var14 = var14.substring(0, var15) + var14.substring(var15 + 5); + var5 = var5 + var14 + ' '; + continue; + } + + var11 = var11.substring(0, var12); + } + + var11 = var11.trim(); + var11 = var11.substring(var11.lastIndexOf(32) + 1); + var11 = var11.substring(var11.lastIndexOf(9) + 1); + var5 = var5 + var11 + ' '; + } + } + } + + if (var0 != null) { + if (var1 != null) { + var2 = var2 + " | "; + } + + var2 = var2 + var0; + } + + System.out.println("Error: " + var2); + var2 = var2.replace(':', '.'); + var2 = var2.replace('@', '_'); + var2 = var2.replace('&', '_'); + var2 = var2.replace('#', '_'); + if (RunException.RunException_applet == null) { + return; + } + + URL var3 = new URL(RunException.RunException_applet.getCodeBase(), "clienterror.ws?c=" + RunException.RunException_revision + "&u=" + RunException.localPlayerName + "&v1=" + TaskHandler.javaVendor + "&v2=" + TaskHandler.javaVersion + "&ct=" + class39.clientType + "&e=" + var2); + DataInputStream var17 = new DataInputStream(var3.openStream()); + var17.read(); + var17.close(); + } catch (Exception var16) { + } + + } } } diff --git a/runescape-client/src/main/java/PlayerProvider.java b/runescape-client/src/main/java/PlayerProvider.java index 1dda43ff82..a55f1b2596 100644 --- a/runescape-client/src/main/java/PlayerProvider.java +++ b/runescape-client/src/main/java/PlayerProvider.java @@ -3,13 +3,13 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dd") +@ObfuscatedName("dw") @Implements("PlayerProvider") public interface PlayerProvider { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)Ldh;", - garbageValue = "1306134642" + descriptor = "(I)Ldp;", + garbageValue = "-2011148953" ) @Export("player") PcmPlayer player(); diff --git a/runescape-client/src/main/java/PlayerType.java b/runescape-client/src/main/java/PlayerType.java index 8a48c9a024..6c2acdb5ba 100644 --- a/runescape-client/src/main/java/PlayerType.java +++ b/runescape-client/src/main/java/PlayerType.java @@ -3,124 +3,96 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; @ObfuscatedName("in") @Implements("PlayerType") public enum PlayerType implements Enumerated { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "Lin;" ) @Export("PlayerType_normal") PlayerType_normal(0, -1, true, false, true), - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "Lin;" ) @Export("PlayerType_playerModerator") PlayerType_playerModerator(1, 0, true, true, true), - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "Lin;" ) @Export("PlayerType_jagexModerator") PlayerType_jagexModerator(2, 1, true, true, false), - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "Lin;" ) @Export("PlayerType_ironman") PlayerType_ironman(3, 2, false, false, true), - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "Lin;" ) @Export("PlayerType_ultimateIronman") PlayerType_ultimateIronman(4, 3, false, false, true), - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "Lin;" ) @Export("PlayerType_hardcoreIronman") PlayerType_hardcoreIronman(5, 10, false, false, true), - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( descriptor = "Lin;" ) - field3125(6, 22, false, false, true); + field3124(6, 22, false, false, true); - @ObfuscatedName("kz") - @ObfuscatedSignature( - descriptor = "Lbi;" - ) - @Export("localPlayer") - static Player localPlayer; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = -933718651 + intValue = 1249989015 ) @Export("id") final int id; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = 1124234319 + intValue = 597925501 ) @Export("modIcon") public final int modIcon; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("isPrivileged") public final boolean isPrivileged; - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("isUser") public final boolean isUser; PlayerType(int var3, int var4, boolean var5, boolean var6, boolean var7) { - this.id = var3; // L: 24 - this.modIcon = var4; // L: 25 - this.isPrivileged = var6; // L: 26 - this.isUser = var7; // L: 27 - } // L: 28 + this.id = var3; + this.modIcon = var4; + this.isPrivileged = var6; + this.isUser = var7; + } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "23" + descriptor = "(I)I", + garbageValue = "-275768542" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.id; // L: 31 + return this.id; } - @ObfuscatedName("y") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "-2138223094" + descriptor = "(IIII)Llm;", + garbageValue = "-320192439" ) - static int method4274(int var0, Script var1, boolean var2) { - Widget var3; - if (var0 >= 2000) { // L: 1144 - var0 -= 1000; // L: 1145 - var3 = UserComparator4.getWidget(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 1146 - } else { - var3 = var2 ? MouseRecorder.field621 : Interpreter.field1122; // L: 1148 - } - - if (var0 == ScriptOpcodes.CC_CALLONRESIZE) { // L: 1149 - if (Interpreter.field1119 >= 10) { // L: 1150 - throw new RuntimeException(); // L: 1151 - } else if (var3.onResize == null) { // L: 1153 - return 0; - } else { - ScriptEvent var4 = new ScriptEvent(); // L: 1154 - var4.widget = var3; // L: 1155 - var4.args = var3.onResize; // L: 1156 - var4.field600 = Interpreter.field1119 + 1; // L: 1157 - Client.scriptEvents.addFirst(var4); // L: 1158 - return 1; // L: 1159 - } - } else { - return 2; // L: 1161 - } + static Sprite method4170(int var0, int var1, int var2) { + DemotingHashTable var3 = WorldMapRegion.WorldMapRegion_cachedSprites; + long var4 = (long)(var2 << 16 | var0 << 8 | var1); + return (Sprite)var3.get(var4); } } diff --git a/runescape-client/src/main/java/Players.java b/runescape-client/src/main/java/Players.java index 9eb058e307..0e3699ba8f 100644 --- a/runescape-client/src/main/java/Players.java +++ b/runescape-client/src/main/java/Players.java @@ -4,73 +4,799 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cv") +@ObfuscatedName("cy") @Implements("Players") public class Players { - @ObfuscatedName("l") - static byte[] field1282; - @ObfuscatedName("m") - static byte[] field1295; - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "[Lkb;" - ) - static Buffer[] field1284; - @ObfuscatedName("q") + @ObfuscatedName("ry") @ObfuscatedGetter( - intValue = 1488243341 + intValue = -1480705449 + ) + static int field1267; + @ObfuscatedName("x") + static byte[] field1252; + @ObfuscatedName("w") + static byte[] field1253; + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "[Lkj;" + ) + static Buffer[] field1254; + @ObfuscatedName("j") + @ObfuscatedGetter( + intValue = 2141619955 ) @Export("Players_count") static int Players_count; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("Players_indices") static int[] Players_indices; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = -745504319 + intValue = 377595229 ) @Export("Players_emptyIdxCount") static int Players_emptyIdxCount; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("Players_emptyIndices") static int[] Players_emptyIndices; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("Players_regions") static int[] Players_regions; - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("Players_orientations") static int[] Players_orientations; - @ObfuscatedName("o") + @ObfuscatedName("e") @Export("Players_targetIndices") static int[] Players_targetIndices; - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedGetter( - intValue = 568889217 + intValue = 1362134323 ) @Export("Players_pendingUpdateCount") static int Players_pendingUpdateCount; - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("Players_pendingUpdateIndices") static int[] Players_pendingUpdateIndices; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedSignature( - descriptor = "Lkb;" + descriptor = "Lkj;" ) - static Buffer field1280; + static Buffer field1264; + @ObfuscatedName("af") + @ObfuscatedGetter( + intValue = 565306891 + ) + static int field1260; + @ObfuscatedName("ev") + @ObfuscatedGetter( + intValue = -1518369629 + ) + @Export("port2") + static int port2; static { - field1282 = new byte[2048]; // L: 18 - field1295 = new byte[2048]; // L: 19 - field1284 = new Buffer[2048]; // L: 20 - Players_count = 0; // L: 21 - Players_indices = new int[2048]; // L: 22 - Players_emptyIdxCount = 0; // L: 23 - Players_emptyIndices = new int[2048]; // L: 24 - Players_regions = new int[2048]; // L: 25 - Players_orientations = new int[2048]; // L: 26 - Players_targetIndices = new int[2048]; // L: 27 - Players_pendingUpdateCount = 0; // L: 28 - Players_pendingUpdateIndices = new int[2048]; // L: 29 - field1280 = new Buffer(new byte[5000]); // L: 30 + field1252 = new byte[2048]; + field1253 = new byte[2048]; + field1254 = new Buffer[2048]; + Players_count = 0; + Players_indices = new int[2048]; + Players_emptyIdxCount = 0; + Players_emptyIndices = new int[2048]; + Players_regions = new int[2048]; + Players_orientations = new int[2048]; + Players_targetIndices = new int[2048]; + Players_pendingUpdateCount = 0; + Players_pendingUpdateIndices = new int[2048]; + field1264 = new Buffer(new byte[5000]); + } + + @ObfuscatedName("fg") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1916239177" + ) + static void method2208() { + Client.mouseLastLastPressedTimeMillis = 1L; + SoundCache.mouseRecorder.index = 0; + ScriptEvent.hasFocus = true; + Client.hadFocus = true; + Client.field817 = -1L; + class105.reflectionChecks = new IterableNodeDeque(); + Client.packetWriter.clearBuffer(); + Client.packetWriter.packetBuffer.offset = 0; + Client.packetWriter.serverPacket = null; + Client.packetWriter.field1335 = null; + Client.packetWriter.field1336 = null; + Client.packetWriter.field1337 = null; + Client.packetWriter.serverPacketLength = 0; + Client.packetWriter.field1333 = 0; + Client.rebootTimer = 0; + Client.logoutTimer = 0; + Client.hintArrowType = 0; + Client.menuOptionsCount = 0; + Client.isMenuOpen = false; + ChatChannel.method2317(0); + Tiles.method1203(); + Client.isItemSelected = 0; + Client.isSpellSelected = false; + Client.soundEffectCount = 0; + Client.camAngleY = 0; + Client.oculusOrbState = 0; + WorldMapIcon_0.field148 = null; + Client.minimapState = 0; + Client.field874 = -1; + Client.destinationX = 0; + Client.destinationY = 0; + Client.playerAttackOption = AttackOption.AttackOption_hidden; + Client.npcAttackOption = AttackOption.AttackOption_hidden; + Client.npcCount = 0; + Players_count = 0; + + int var0; + for (var0 = 0; var0 < 2048; ++var0) { + field1254[var0] = null; + field1253[var0] = 1; + } + + for (var0 = 0; var0 < 2048; ++var0) { + Client.players[var0] = null; + } + + for (var0 = 0; var0 < 32768; ++var0) { + Client.npcs[var0] = null; + } + + Client.combatTargetPlayerIndex = -1; + Client.projectiles.clear(); + Client.graphicsObjects.clear(); + + int var2; + for (var0 = 0; var0 < 4; ++var0) { + for (int var1 = 0; var1 < 104; ++var1) { + for (var2 = 0; var2 < 104; ++var2) { + Client.groundItems[var0][var1][var2] = null; + } + } + } + + Client.pendingSpawns = new NodeDeque(); + MilliClock.friendSystem.clear(); + + for (var0 = 0; var0 < VarpDefinition.VarpDefinition_fileCount; ++var0) { + VarpDefinition var4 = class219.VarpDefinition_get(var0); + if (var4 != null) { + Varps.Varps_temp[var0] = 0; + Varps.Varps_main[var0] = 0; + } + } + + Varcs.varcs.clearTransient(); + Client.followerIndex = -1; + if (Client.rootInterface != -1) { + var0 = Client.rootInterface; + if (var0 != -1 && class195.Widget_loadedInterfaces[var0]) { + class58.Widget_archive.clearFilesGroup(var0); + if (class9.Widget_interfaceComponents[var0] != null) { + boolean var5 = true; + + for (var2 = 0; var2 < class9.Widget_interfaceComponents[var0].length; ++var2) { + if (class9.Widget_interfaceComponents[var0][var2] != null) { + if (class9.Widget_interfaceComponents[var0][var2].type != 2) { + class9.Widget_interfaceComponents[var0][var2] = null; + } else { + var5 = false; + } + } + } + + if (var5) { + class9.Widget_interfaceComponents[var0] = null; + } + + class195.Widget_loadedInterfaces[var0] = false; + } + } + } + + for (InterfaceParent var3 = (InterfaceParent)Client.interfaceParents.first(); var3 != null; var3 = (InterfaceParent)Client.interfaceParents.next()) { + MouseRecorder.closeInterface(var3, true); + } + + Client.rootInterface = -1; + Client.interfaceParents = new NodeHashTable(8); + Client.meslayerContinueWidget = null; + Client.menuOptionsCount = 0; + Client.isMenuOpen = false; + Client.playerAppearance.update((int[])null, new int[]{0, 0, 0, 0, 0}, false, -1); + + for (var0 = 0; var0 < 8; ++var0) { + Client.playerMenuActions[var0] = null; + Client.playerOptionsPriorities[var0] = false; + } + + ItemContainer.itemContainers = new NodeHashTable(32); + Client.isLoading = true; + + for (var0 = 0; var0 < 100; ++var0) { + Client.field901[var0] = true; + } + + MouseRecorder.method1264(); + WorldMapArea.clanChat = null; + + for (var0 = 0; var0 < 8; ++var0) { + Client.grandExchangeOffers[var0] = new GrandExchangeOffer(); + } + + AbstractUserComparator.grandExchangeEvents = null; + } + + @ObfuscatedName("ia") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "-871973097" + ) + static final boolean method2225(int var0) { + if (var0 < 0) { + return false; + } else { + int var1 = Client.menuOpcodes[var0]; + if (var1 >= 2000) { + var1 -= 2000; + } + + return var1 == 1007; + } + } + + @ObfuscatedName("jr") + @ObfuscatedSignature( + descriptor = "([Lhe;IIIIIIII)V", + garbageValue = "-2127436431" + ) + @Export("updateInterface") + static final void updateInterface(Widget[] var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { + for (int var8 = 0; var8 < var0.length; ++var8) { + Widget var9 = var0[var8]; + if (var9 != null && var9.parentId == var1 && (!var9.isIf3 || var9.type == 0 || var9.hasListener || FaceNormal.getWidgetFlags(var9) != 0 || var9 == Client.clickedWidgetParent || var9.contentType == 1338)) { + if (var9.isIf3) { + if (DevicePcmPlayerProvider.isComponentHidden(var9)) { + continue; + } + } else if (var9.type == 0 && var9 != EnumDefinition.mousedOverWidgetIf1 && DevicePcmPlayerProvider.isComponentHidden(var9)) { + continue; + } + + int var10 = var9.x + var6; + int var11 = var7 + var9.y; + int var12; + int var13; + int var14; + int var15; + int var17; + int var18; + if (var9.type == 2) { + var12 = var2; + var13 = var3; + var14 = var4; + var15 = var5; + } else { + int var16; + if (var9.type == 9) { + var16 = var10; + var17 = var11; + var18 = var10 + var9.width; + int var19 = var11 + var9.height; + if (var18 < var10) { + var16 = var18; + var18 = var10; + } + + if (var19 < var11) { + var17 = var19; + var19 = var11; + } + + ++var18; + ++var19; + var12 = var16 > var2 ? var16 : var2; + var13 = var17 > var3 ? var17 : var3; + var14 = var18 < var4 ? var18 : var4; + var15 = var19 < var5 ? var19 : var5; + } else { + var16 = var10 + var9.width; + var17 = var11 + var9.height; + var12 = var10 > var2 ? var10 : var2; + var13 = var11 > var3 ? var11 : var3; + var14 = var16 < var4 ? var16 : var4; + var15 = var17 < var5 ? var17 : var5; + } + } + + if (var9 == Client.clickedWidget) { + Client.field829 = true; + Client.field853 = var10; + Client.field862 = var11; + } + + boolean var32 = false; + if (var9.field2590) { + switch(Client.field810) { + case 0: + var32 = true; + case 1: + default: + break; + case 2: + if (Client.field811 == var9.id >>> 16) { + var32 = true; + } + break; + case 3: + if (var9.id == Client.field811) { + var32 = true; + } + } + } + + if (var32 || !var9.isIf3 || var12 < var14 && var13 < var15) { + if (var9.isIf3) { + ScriptEvent var26; + if (var9.noClickThrough) { + if (MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { + for (var26 = (ScriptEvent)Client.scriptEvents.last(); var26 != null; var26 = (ScriptEvent)Client.scriptEvents.previous()) { + if (var26.isMouseInputEvent) { + var26.remove(); + var26.widget.containsMouse = false; + } + } + + if (ScriptFrame.widgetDragDuration == 0) { + Client.clickedWidget = null; + Client.clickedWidgetParent = null; + } + + if (!Client.isMenuOpen) { + ApproximateRouteStrategy.addCancelMenuEntry(); + } + } + } else if (var9.noScrollThrough && MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { + for (var26 = (ScriptEvent)Client.scriptEvents.last(); var26 != null; var26 = (ScriptEvent)Client.scriptEvents.previous()) { + if (var26.isMouseInputEvent && var26.widget.onScroll == var26.args) { + var26.remove(); + } + } + } + } + + var17 = MouseHandler.MouseHandler_x; + var18 = MouseHandler.MouseHandler_y; + if (MouseHandler.MouseHandler_lastButton != 0) { + var17 = MouseHandler.MouseHandler_lastPressedX; + var18 = MouseHandler.MouseHandler_lastPressedY; + } + + boolean var33 = var17 >= var12 && var18 >= var13 && var17 < var14 && var18 < var15; + if (var9.contentType == 1337) { + if (!Client.isLoading && !Client.isMenuOpen && var33) { + InvDefinition.addSceneMenuOptions(var17, var18, var12, var13); + } + } else if (var9.contentType == 1338) { + UserComparator5.checkIfMinimapClicked(var9, var10, var11); + } else { + if (var9.contentType == 1400) { + WorldMapRectangle.worldMap.onCycle(MouseHandler.MouseHandler_x, MouseHandler.MouseHandler_y, var33, var10, var11, var9.width, var9.height); + } + + if (!Client.isMenuOpen && var33) { + if (var9.contentType == 1400) { + WorldMapRectangle.worldMap.addElementMenuOptions(var10, var11, var9.width, var9.height, var17, var18); + } else { + WorldMapRegion.Widget_addToMenu(var9, var17 - var10, var18 - var11); + } + } + + boolean var21; + int var23; + if (var32) { + for (int var20 = 0; var20 < var9.field2649.length; ++var20) { + var21 = false; + boolean var27 = false; + if (!var21 && var9.field2649[var20] != null) { + for (var23 = 0; var23 < var9.field2649[var20].length; ++var23) { + boolean var24 = false; + if (var9.field2684 != null) { + var24 = KeyHandler.KeyHandler_pressedKeys[var9.field2649[var20][var23]]; + } + + if (Canvas.method911(var9.field2649[var20][var23]) || var24) { + var21 = true; + if (var9.field2684 != null && var9.field2684[var20] > Client.cycle) { + break; + } + + byte var31 = var9.field2637[var20][var23]; + if (var31 == 0 || ((var31 & 8) == 0 || !KeyHandler.KeyHandler_pressedKeys[86] && !KeyHandler.KeyHandler_pressedKeys[82] && !KeyHandler.KeyHandler_pressedKeys[81]) && ((var31 & 2) == 0 || KeyHandler.KeyHandler_pressedKeys[86]) && ((var31 & 1) == 0 || KeyHandler.KeyHandler_pressedKeys[82]) && ((var31 & 4) == 0 || KeyHandler.KeyHandler_pressedKeys[81])) { + var27 = true; + break; + } + } + } + } + + if (var27) { + if (var20 < 10) { + class3.widgetDefaultMenuAction(var20 + 1, var9.id, var9.childIndex, var9.itemId, ""); + } else if (var20 == 10) { + WorldMapManager.Widget_runOnTargetLeave(); + class194.selectSpell(var9.id, var9.childIndex, ServerPacket.Widget_unpackTargetMask(FaceNormal.getWidgetFlags(var9)), var9.itemId); + Client.selectedSpellActionName = StudioGame.Widget_getSpellActionName(var9); + if (Client.selectedSpellActionName == null) { + Client.selectedSpellActionName = "null"; + } + + Client.selectedSpellName = var9.dataText + class23.colorStartTag(16777215); + } + + var23 = var9.field2679[var20]; + if (var9.field2684 == null) { + var9.field2684 = new int[var9.field2649.length]; + } + + if (var9.field2664 == null) { + var9.field2664 = new int[var9.field2649.length]; + } + + if (var23 != 0) { + if (var9.field2684[var20] == 0) { + var9.field2684[var20] = var23 + Client.cycle + var9.field2664[var20]; + } else { + var9.field2684[var20] = var23 + Client.cycle; + } + } else { + var9.field2684[var20] = Integer.MAX_VALUE; + } + } + + if (!var21 && var9.field2684 != null) { + var9.field2684[var20] = 0; + } + } + } + + if (var9.isIf3) { + if (MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { + var33 = true; + } else { + var33 = false; + } + + boolean var34 = false; + if ((MouseHandler.MouseHandler_currentButton == 1 || !UserComparator9.mouseCam && MouseHandler.MouseHandler_currentButton == 4) && var33) { + var34 = true; + } + + var21 = false; + if ((MouseHandler.MouseHandler_lastButton == 1 || !UserComparator9.mouseCam && MouseHandler.MouseHandler_lastButton == 4) && MouseHandler.MouseHandler_lastPressedX >= var12 && MouseHandler.MouseHandler_lastPressedY >= var13 && MouseHandler.MouseHandler_lastPressedX < var14 && MouseHandler.MouseHandler_lastPressedY < var15) { + var21 = true; + } + + if (var21) { + class13.clickWidget(var9, MouseHandler.MouseHandler_lastPressedX - var10, MouseHandler.MouseHandler_lastPressedY - var11); + } + + if (var9.contentType == 1400) { + WorldMapRectangle.worldMap.method6362(var17, var18, var33 & var34, var33 & var21); + } + + if (Client.clickedWidget != null && var9 != Client.clickedWidget && var33 && SecureRandomCallable.method1216(FaceNormal.getWidgetFlags(var9))) { + Client.draggedOnWidget = var9; + } + + if (var9 == Client.clickedWidgetParent) { + Client.field859 = true; + Client.field827 = var10; + Client.field716 = var11; + } + + if (var9.hasListener) { + ScriptEvent var22; + if (var33 && Client.mouseWheelRotation != 0 && var9.onScroll != null) { + var22 = new ScriptEvent(); + var22.isMouseInputEvent = true; + var22.widget = var9; + var22.mouseY = Client.mouseWheelRotation; + var22.args = var9.onScroll; + Client.scriptEvents.addFirst(var22); + } + + if (Client.clickedWidget != null || class171.dragInventoryWidget != null || Client.isMenuOpen) { + var21 = false; + var34 = false; + var33 = false; + } + + if (!var9.isClicked && var21) { + var9.isClicked = true; + if (var9.onClick != null) { + var22 = new ScriptEvent(); + var22.isMouseInputEvent = true; + var22.widget = var9; + var22.mouseX = MouseHandler.MouseHandler_lastPressedX - var10; + var22.mouseY = MouseHandler.MouseHandler_lastPressedY - var11; + var22.args = var9.onClick; + Client.scriptEvents.addFirst(var22); + } + } + + if (var9.isClicked && var34 && var9.onClickRepeat != null) { + var22 = new ScriptEvent(); + var22.isMouseInputEvent = true; + var22.widget = var9; + var22.mouseX = MouseHandler.MouseHandler_x - var10; + var22.mouseY = MouseHandler.MouseHandler_y - var11; + var22.args = var9.onClickRepeat; + Client.scriptEvents.addFirst(var22); + } + + if (var9.isClicked && !var34) { + var9.isClicked = false; + if (var9.onRelease != null) { + var22 = new ScriptEvent(); + var22.isMouseInputEvent = true; + var22.widget = var9; + var22.mouseX = MouseHandler.MouseHandler_x - var10; + var22.mouseY = MouseHandler.MouseHandler_y - var11; + var22.args = var9.onRelease; + Client.field849.addFirst(var22); + } + } + + if (var34 && var9.onHold != null) { + var22 = new ScriptEvent(); + var22.isMouseInputEvent = true; + var22.widget = var9; + var22.mouseX = MouseHandler.MouseHandler_x - var10; + var22.mouseY = MouseHandler.MouseHandler_y - var11; + var22.args = var9.onHold; + Client.scriptEvents.addFirst(var22); + } + + if (!var9.containsMouse && var33) { + var9.containsMouse = true; + if (var9.onMouseOver != null) { + var22 = new ScriptEvent(); + var22.isMouseInputEvent = true; + var22.widget = var9; + var22.mouseX = MouseHandler.MouseHandler_x - var10; + var22.mouseY = MouseHandler.MouseHandler_y - var11; + var22.args = var9.onMouseOver; + Client.scriptEvents.addFirst(var22); + } + } + + if (var9.containsMouse && var33 && var9.onMouseRepeat != null) { + var22 = new ScriptEvent(); + var22.isMouseInputEvent = true; + var22.widget = var9; + var22.mouseX = MouseHandler.MouseHandler_x - var10; + var22.mouseY = MouseHandler.MouseHandler_y - var11; + var22.args = var9.onMouseRepeat; + Client.scriptEvents.addFirst(var22); + } + + if (var9.containsMouse && !var33) { + var9.containsMouse = false; + if (var9.onMouseLeave != null) { + var22 = new ScriptEvent(); + var22.isMouseInputEvent = true; + var22.widget = var9; + var22.mouseX = MouseHandler.MouseHandler_x - var10; + var22.mouseY = MouseHandler.MouseHandler_y - var11; + var22.args = var9.onMouseLeave; + Client.field849.addFirst(var22); + } + } + + if (var9.onTimer != null) { + var22 = new ScriptEvent(); + var22.widget = var9; + var22.args = var9.onTimer; + Client.field715.addFirst(var22); + } + + ScriptEvent var25; + int var35; + int var36; + if (var9.onVarTransmit != null && Client.field835 > var9.field2645) { + if (var9.varTransmitTriggers != null && Client.field835 - var9.field2645 <= 32) { + label777: + for (var36 = var9.field2645; var36 < Client.field835; ++var36) { + var23 = Client.field834[var36 & 31]; + + for (var35 = 0; var35 < var9.varTransmitTriggers.length; ++var35) { + if (var23 == var9.varTransmitTriggers[var35]) { + var25 = new ScriptEvent(); + var25.widget = var9; + var25.args = var9.onVarTransmit; + Client.scriptEvents.addFirst(var25); + break label777; + } + } + } + } else { + var22 = new ScriptEvent(); + var22.widget = var9; + var22.args = var9.onVarTransmit; + Client.scriptEvents.addFirst(var22); + } + + var9.field2645 = Client.field835; + } + + if (var9.onInvTransmit != null && Client.field837 > var9.field2721) { + if (var9.invTransmitTriggers != null && Client.field837 - var9.field2721 <= 32) { + label753: + for (var36 = var9.field2721; var36 < Client.field837; ++var36) { + var23 = Client.changedItemContainers[var36 & 31]; + + for (var35 = 0; var35 < var9.invTransmitTriggers.length; ++var35) { + if (var23 == var9.invTransmitTriggers[var35]) { + var25 = new ScriptEvent(); + var25.widget = var9; + var25.args = var9.onInvTransmit; + Client.scriptEvents.addFirst(var25); + break label753; + } + } + } + } else { + var22 = new ScriptEvent(); + var22.widget = var9; + var22.args = var9.onInvTransmit; + Client.scriptEvents.addFirst(var22); + } + + var9.field2721 = Client.field837; + } + + if (var9.onStatTransmit != null && Client.changedSkillsCount > var9.field2725) { + if (var9.statTransmitTriggers != null && Client.changedSkillsCount - var9.field2725 <= 32) { + label729: + for (var36 = var9.field2725; var36 < Client.changedSkillsCount; ++var36) { + var23 = Client.changedSkills[var36 & 31]; + + for (var35 = 0; var35 < var9.statTransmitTriggers.length; ++var35) { + if (var23 == var9.statTransmitTriggers[var35]) { + var25 = new ScriptEvent(); + var25.widget = var9; + var25.args = var9.onStatTransmit; + Client.scriptEvents.addFirst(var25); + break label729; + } + } + } + } else { + var22 = new ScriptEvent(); + var22.widget = var9; + var22.args = var9.onStatTransmit; + Client.scriptEvents.addFirst(var22); + } + + var9.field2725 = Client.changedSkillsCount; + } + + if (Client.chatCycle > var9.field2719 && var9.onChatTransmit != null) { + var22 = new ScriptEvent(); + var22.widget = var9; + var22.args = var9.onChatTransmit; + Client.scriptEvents.addFirst(var22); + } + + if (Client.field879 > var9.field2719 && var9.onFriendTransmit != null) { + var22 = new ScriptEvent(); + var22.widget = var9; + var22.args = var9.onFriendTransmit; + Client.scriptEvents.addFirst(var22); + } + + if (Client.field842 > var9.field2719 && var9.onClanTransmit != null) { + var22 = new ScriptEvent(); + var22.widget = var9; + var22.args = var9.onClanTransmit; + Client.scriptEvents.addFirst(var22); + } + + if (Client.field685 > var9.field2719 && var9.onStockTransmit != null) { + var22 = new ScriptEvent(); + var22.widget = var9; + var22.args = var9.onStockTransmit; + Client.scriptEvents.addFirst(var22); + } + + if (Client.field680 > var9.field2719 && var9.field2703 != null) { + var22 = new ScriptEvent(); + var22.widget = var9; + var22.args = var9.field2703; + Client.scriptEvents.addFirst(var22); + } + + if (Client.field845 > var9.field2719 && var9.onMiscTransmit != null) { + var22 = new ScriptEvent(); + var22.widget = var9; + var22.args = var9.onMiscTransmit; + Client.scriptEvents.addFirst(var22); + } + + var9.field2719 = Client.cycleCntr; + if (var9.onKey != null) { + for (var36 = 0; var36 < Client.field870; ++var36) { + ScriptEvent var30 = new ScriptEvent(); + var30.widget = var9; + var30.keyTyped = Client.field693[var36]; + var30.keyPressed = Client.field661[var36]; + var30.args = var9.onKey; + Client.scriptEvents.addFirst(var30); + } + } + } + } + + if (!var9.isIf3) { + if (Client.clickedWidget != null || class171.dragInventoryWidget != null || Client.isMenuOpen) { + continue; + } + + if ((var9.mouseOverRedirect >= 0 || var9.mouseOverColor != 0) && MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { + if (var9.mouseOverRedirect >= 0) { + EnumDefinition.mousedOverWidgetIf1 = var0[var9.mouseOverRedirect]; + } else { + EnumDefinition.mousedOverWidgetIf1 = var9; + } + } + + if (var9.type == 8 && MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { + CollisionMap.field2092 = var9; + } + + if (var9.scrollHeight > var9.height) { + SequenceDefinition.method4797(var9, var10 + var9.width, var11, var9.height, var9.scrollHeight, MouseHandler.MouseHandler_x, MouseHandler.MouseHandler_y); + } + } + + if (var9.type == 0) { + updateInterface(var0, var9.id, var12, var13, var14, var15, var10 - var9.scrollX, var11 - var9.scrollY); + if (var9.children != null) { + updateInterface(var9.children, var9.id, var12, var13, var14, var15, var10 - var9.scrollX, var11 - var9.scrollY); + } + + InterfaceParent var28 = (InterfaceParent)Client.interfaceParents.get((long)var9.id); + if (var28 != null) { + if (var28.type == 0 && MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15 && !Client.isMenuOpen) { + for (ScriptEvent var29 = (ScriptEvent)Client.scriptEvents.last(); var29 != null; var29 = (ScriptEvent)Client.scriptEvents.previous()) { + if (var29.isMouseInputEvent) { + var29.remove(); + var29.widget.containsMouse = false; + } + } + + if (ScriptFrame.widgetDragDuration == 0) { + Client.clickedWidget = null; + Client.clickedWidgetParent = null; + } + + if (!Client.isMenuOpen) { + ApproximateRouteStrategy.addCancelMenuEntry(); + } + } + + class51.updateRootInterface(var28.group, var12, var13, var14, var15, var10, var11); + } + } + } + } + } + } + } } diff --git a/runescape-client/src/main/java/PrivateChatMode.java b/runescape-client/src/main/java/PrivateChatMode.java index ee8b100a4f..edc02d31c3 100644 --- a/runescape-client/src/main/java/PrivateChatMode.java +++ b/runescape-client/src/main/java/PrivateChatMode.java @@ -1,48 +1,106 @@ +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("lb") +@ObfuscatedName("lw") @Implements("PrivateChatMode") public class PrivateChatMode { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Llb;" + descriptor = "Llw;" ) - static final PrivateChatMode field3827; - @ObfuscatedName("b") + static final PrivateChatMode field3833; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Llb;" + descriptor = "Llw;" ) - public static final PrivateChatMode field3824; - @ObfuscatedName("l") + public static final PrivateChatMode field3832; + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Llb;" + descriptor = "Llw;" ) - static final PrivateChatMode field3826; - @ObfuscatedName("m") + static final PrivateChatMode field3834; + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 1809257021 + intValue = -976230065 ) - public final int field3825; + public final int field3835; static { - field3827 = new PrivateChatMode(0); // L: 5 - field3824 = new PrivateChatMode(1); // L: 6 - field3826 = new PrivateChatMode(2); - } // L: 7 + field3833 = new PrivateChatMode(0); + field3832 = new PrivateChatMode(1); + field3834 = new PrivateChatMode(2); + } PrivateChatMode(int var1) { - this.field3825 = var1; // L: 15 - } // L: 16 + this.field3835 = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(II)Ljava/lang/String;", - garbageValue = "250205673" + descriptor = "(Lib;Lib;III)Lku;", + garbageValue = "1224864347" ) - static String method6034(int var0) { - return ""; // L: 18 + public static Font method5934(AbstractArchive var0, AbstractArchive var1, int var2, int var3) { + return !class304.method5363(var0, var2, var3) ? null : class308.method5482(var1.takeFile(var2, var3)); + } + + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "(B)Llo;", + garbageValue = "64" + ) + static IndexedSprite method5937() { + IndexedSprite var0 = new IndexedSprite(); + var0.width = DirectByteArrayCopier.SpriteBuffer_spriteWidth; + var0.height = class336.SpriteBuffer_spriteHeight; + var0.xOffset = class336.SpriteBuffer_xOffsets[0]; + var0.yOffset = class336.SpriteBuffer_yOffsets[0]; + var0.subWidth = class336.SpriteBuffer_spriteWidths[0]; + var0.subHeight = class336.SpriteBuffer_spriteHeights[0]; + var0.palette = class336.SpriteBuffer_spritePalette; + var0.pixels = GrandExchangeEvents.SpriteBuffer_pixels[0]; + class336.SpriteBuffer_xOffsets = null; + class336.SpriteBuffer_yOffsets = null; + class336.SpriteBuffer_spriteWidths = null; + class336.SpriteBuffer_spriteHeights = null; + class336.SpriteBuffer_spritePalette = null; + GrandExchangeEvents.SpriteBuffer_pixels = null; + return var0; + } + + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "([BB)[B", + garbageValue = "1" + ) + @Export("decompressBytes") + static final byte[] decompressBytes(byte[] var0) { + Buffer var1 = new Buffer(var0); + int var2 = var1.readUnsignedByte(); + int var3 = var1.readInt(); + if (var3 < 0 || AbstractArchive.field3171 != 0 && var3 > AbstractArchive.field3171) { + throw new RuntimeException(); + } else if (var2 == 0) { + byte[] var6 = new byte[var3]; + var1.readBytes(var6, 0, var3); + return var6; + } else { + int var4 = var1.readInt(); + if (var4 >= 0 && (AbstractArchive.field3171 == 0 || var4 <= AbstractArchive.field3171)) { + byte[] var5 = new byte[var4]; + if (var2 == 1) { + BZip2Decompressor.BZip2Decompressor_decompress(var5, var4, var0, var3, 9); + } else { + AbstractArchive.gzipDecompressor.decompress(var1, var5); + } + + return var5; + } else { + throw new RuntimeException(); + } + } } } diff --git a/runescape-client/src/main/java/Projectile.java b/runescape-client/src/main/java/Projectile.java index 12f5ebab71..c36a187740 100644 --- a/runescape-client/src/main/java/Projectile.java +++ b/runescape-client/src/main/java/Projectile.java @@ -4,129 +4,129 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cm") +@ObfuscatedName("cu") @Implements("Projectile") public final class Projectile extends Entity { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 127950911 + intValue = -1007905183 ) @Export("id") int id; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 1863046985 + intValue = -1937509115 ) @Export("plane") int plane; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1665161409 + intValue = -1125805555 ) @Export("sourceX") int sourceX; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -893343909 + intValue = -1326748081 ) @Export("sourceY") int sourceY; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -263031347 + intValue = 2116079029 ) @Export("sourceZ") int sourceZ; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -2028575857 + intValue = -2122039085 ) @Export("endHeight") int endHeight; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = 982684035 + intValue = -1053007733 ) @Export("cycleStart") int cycleStart; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 628428817 + intValue = 355829279 ) @Export("cycleEnd") int cycleEnd; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = 941880901 + intValue = -669638867 ) @Export("slope") int slope; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = 1476235573 + intValue = 40350499 ) @Export("startHeight") int startHeight; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedGetter( - intValue = -1149707689 + intValue = 1973654015 ) @Export("targetIndex") int targetIndex; - @ObfuscatedName("o") + @ObfuscatedName("e") @Export("isMoving") boolean isMoving; - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("x") double x; - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("y") double y; - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("z") double z; - @ObfuscatedName("r") + @ObfuscatedName("f") @Export("speedX") double speedX; - @ObfuscatedName("y") + @ObfuscatedName("a") @Export("speedY") double speedY; - @ObfuscatedName("s") + @ObfuscatedName("b") @Export("speed") double speed; - @ObfuscatedName("j") + @ObfuscatedName("y") @Export("speedZ") double speedZ; - @ObfuscatedName("w") + @ObfuscatedName("r") @Export("accelerationZ") double accelerationZ; - @ObfuscatedName("v") + @ObfuscatedName("q") @ObfuscatedGetter( - intValue = 424232085 + intValue = 1429674929 ) @Export("yaw") int yaw; - @ObfuscatedName("d") + @ObfuscatedName("g") @ObfuscatedGetter( - intValue = -833335819 + intValue = 1912315299 ) @Export("pitch") int pitch; - @ObfuscatedName("a") + @ObfuscatedName("s") @ObfuscatedSignature( - descriptor = "Ljg;" + descriptor = "Ljy;" ) @Export("sequenceDefinition") SequenceDefinition sequenceDefinition; - @ObfuscatedName("g") + @ObfuscatedName("o") @ObfuscatedGetter( - intValue = 795159959 + intValue = -564817743 ) @Export("frame") int frame; - @ObfuscatedName("h") + @ObfuscatedName("k") @ObfuscatedGetter( - intValue = 529023201 + intValue = 849010023 ) @Export("frameCycle") int frameCycle; @@ -136,295 +136,179 @@ public final class Projectile extends Entity { this.frame = 0; this.frameCycle = 0; this.id = var1; - this.plane = var2; // L: 37 - this.sourceX = var3; // L: 38 - this.sourceY = var4; // L: 39 - this.sourceZ = var5; // L: 40 - this.cycleStart = var6; // L: 41 - this.cycleEnd = var7; // L: 42 - this.slope = var8; // L: 43 - this.startHeight = var9; // L: 44 - this.targetIndex = var10; // L: 45 - this.endHeight = var11; // L: 46 - this.isMoving = false; // L: 47 - int var12 = HealthBarUpdate.SpotAnimationDefinition_get(this.id).sequence; // L: 48 - if (var12 != -1) { // L: 49 - this.sequenceDefinition = class105.SequenceDefinition_get(var12); + this.plane = var2; + this.sourceX = var3; + this.sourceY = var4; + this.sourceZ = var5; + this.cycleStart = var6; + this.cycleEnd = var7; + this.slope = var8; + this.startHeight = var9; + this.targetIndex = var10; + this.endHeight = var11; + this.isMoving = false; + int var12 = TileItem.SpotAnimationDefinition_get(this.id).sequence; + if (var12 != -1) { + this.sequenceDefinition = ParamDefinition.SequenceDefinition_get(var12); } else { - this.sequenceDefinition = null; // L: 50 + this.sequenceDefinition = null; } - } // L: 51 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(IIIII)V", - garbageValue = "-968797731" + garbageValue = "595136450" ) @Export("setDestination") final void setDestination(int var1, int var2, int var3, int var4) { double var5; - if (!this.isMoving) { // L: 54 - var5 = (double)(var1 - this.sourceX); // L: 55 - double var7 = (double)(var2 - this.sourceY); // L: 56 - double var9 = Math.sqrt(var5 * var5 + var7 * var7); // L: 57 - this.x = (double)this.sourceX + (double)this.startHeight * var5 / var9; // L: 58 - this.y = (double)this.sourceY + (double)this.startHeight * var7 / var9; // L: 59 - this.z = (double)this.sourceZ; // L: 60 + if (!this.isMoving) { + var5 = (double)(var1 - this.sourceX); + double var7 = (double)(var2 - this.sourceY); + double var9 = Math.sqrt(var5 * var5 + var7 * var7); + this.x = (double)this.sourceX + var5 * (double)this.startHeight / var9; + this.y = (double)this.sourceY + (double)this.startHeight * var7 / var9; + this.z = (double)this.sourceZ; } - var5 = (double)(this.cycleEnd + 1 - var4); // L: 62 - this.speedX = ((double)var1 - this.x) / var5; // L: 63 - this.speedY = ((double)var2 - this.y) / var5; // L: 64 - this.speed = Math.sqrt(this.speedY * this.speedY + this.speedX * this.speedX); // L: 65 - if (!this.isMoving) { // L: 66 + var5 = (double)(this.cycleEnd + 1 - var4); + this.speedX = ((double)var1 - this.x) / var5; + this.speedY = ((double)var2 - this.y) / var5; + this.speed = Math.sqrt(this.speedX * this.speedX + this.speedY * this.speedY); + if (!this.isMoving) { this.speedZ = -this.speed * Math.tan((double)this.slope * 0.02454369D); } - this.accelerationZ = ((double)var3 - this.z - var5 * this.speedZ) * 2.0D / (var5 * var5); // L: 67 - } // L: 68 + this.accelerationZ = 2.0D * ((double)var3 - this.z - var5 * this.speedZ) / (var5 * var5); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1771638026" + descriptor = "(IB)V", + garbageValue = "-20" ) @Export("advance") final void advance(int var1) { - this.isMoving = true; // L: 71 - this.x += (double)var1 * this.speedX; // L: 72 - this.y += (double)var1 * this.speedY; // L: 73 - this.z += this.speedZ * (double)var1 + 0.5D * this.accelerationZ * (double)var1 * (double)var1; // L: 74 - this.speedZ += this.accelerationZ * (double)var1; // L: 75 - this.yaw = (int)(Math.atan2(this.speedX, this.speedY) * 325.949D) + 1024 & 2047; // L: 76 - this.pitch = (int)(Math.atan2(this.speedZ, this.speed) * 325.949D) & 2047; // L: 77 - if (this.sequenceDefinition != null) { // L: 78 - this.frameCycle += var1; // L: 79 + this.isMoving = true; + this.x += (double)var1 * this.speedX; + this.y += this.speedY * (double)var1; + this.z += (double)var1 * (double)var1 * 0.5D * this.accelerationZ + (double)var1 * this.speedZ; + this.speedZ += (double)var1 * this.accelerationZ; + this.yaw = (int)(Math.atan2(this.speedX, this.speedY) * 325.949D) + 1024 & 2047; + this.pitch = (int)(Math.atan2(this.speedZ, this.speed) * 325.949D) & 2047; + if (this.sequenceDefinition != null) { + this.frameCycle += var1; while (true) { do { do { - if (this.frameCycle <= this.sequenceDefinition.frameLengths[this.frame]) { // L: 80 - return; // L: 89 + if (this.frameCycle <= this.sequenceDefinition.frameLengths[this.frame]) { + return; } - this.frameCycle -= this.sequenceDefinition.frameLengths[this.frame]; // L: 81 - ++this.frame; // L: 82 - } while(this.frame < this.sequenceDefinition.frameIds.length); // L: 83 + this.frameCycle -= this.sequenceDefinition.frameLengths[this.frame]; + ++this.frame; + } while(this.frame < this.sequenceDefinition.frameIds.length); - this.frame -= this.sequenceDefinition.frameCount; // L: 84 - } while(this.frame >= 0 && this.frame < this.sequenceDefinition.frameIds.length); // L: 85 + this.frame -= this.sequenceDefinition.frameCount; + } while(this.frame >= 0 && this.frame < this.sequenceDefinition.frameIds.length); this.frame = 0; } } } - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( descriptor = "(I)Leh;", - garbageValue = "-2070677844" + garbageValue = "-1814248977" ) @Export("getModel") protected final Model getModel() { - SpotAnimationDefinition var1 = HealthBarUpdate.SpotAnimationDefinition_get(this.id); // L: 92 - Model var2 = var1.getModel(this.frame); // L: 93 - if (var2 == null) { // L: 94 + SpotAnimationDefinition var1 = TileItem.SpotAnimationDefinition_get(this.id); + Model var2 = var1.getModel(this.frame); + if (var2 == null) { return null; } else { - var2.rotateZ(this.pitch); // L: 95 - return var2; // L: 96 + var2.rotateZ(this.pitch); + return var2; } } - @ObfuscatedName("f") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "([Ljava/lang/String;[SIII)V", - garbageValue = "-809557598" + descriptor = "(Ljava/lang/CharSequence;I)[B", + garbageValue = "251926976" ) - @Export("sortItemsByName") - public static void sortItemsByName(String[] var0, short[] var1, int var2, int var3) { - if (var2 < var3) { // L: 9 - int var4 = (var3 + var2) / 2; // L: 10 - int var5 = var2; // L: 11 - String var6 = var0[var4]; // L: 12 - var0[var4] = var0[var3]; // L: 13 - var0[var3] = var6; // L: 14 - short var7 = var1[var4]; // L: 15 - var1[var4] = var1[var3]; // L: 16 - var1[var3] = var7; // L: 17 + public static byte[] method2171(CharSequence var0) { + int var1 = var0.length(); + byte[] var2 = new byte[var1]; - for (int var8 = var2; var8 < var3; ++var8) { // L: 18 - if (var6 == null || var0[var8] != null && var0[var8].compareTo(var6) < (var8 & 1)) { // L: 19 - String var9 = var0[var8]; // L: 20 - var0[var8] = var0[var5]; // L: 21 - var0[var5] = var9; // L: 22 - short var10 = var1[var8]; // L: 23 - var1[var8] = var1[var5]; // L: 24 - var1[var5++] = var10; // L: 25 - } + for (int var3 = 0; var3 < var1; ++var3) { + char var4 = var0.charAt(var3); + if (var4 > 0 && var4 < 128 || var4 >= 160 && var4 <= 255) { + var2[var3] = (byte)var4; + } else if (var4 == 8364) { + var2[var3] = -128; + } else if (var4 == 8218) { + var2[var3] = -126; + } else if (var4 == 402) { + var2[var3] = -125; + } else if (var4 == 8222) { + var2[var3] = -124; + } else if (var4 == 8230) { + var2[var3] = -123; + } else if (var4 == 8224) { + var2[var3] = -122; + } else if (var4 == 8225) { + var2[var3] = -121; + } else if (var4 == 710) { + var2[var3] = -120; + } else if (var4 == 8240) { + var2[var3] = -119; + } else if (var4 == 352) { + var2[var3] = -118; + } else if (var4 == 8249) { + var2[var3] = -117; + } else if (var4 == 338) { + var2[var3] = -116; + } else if (var4 == 381) { + var2[var3] = -114; + } else if (var4 == 8216) { + var2[var3] = -111; + } else if (var4 == 8217) { + var2[var3] = -110; + } else if (var4 == 8220) { + var2[var3] = -109; + } else if (var4 == 8221) { + var2[var3] = -108; + } else if (var4 == 8226) { + var2[var3] = -107; + } else if (var4 == 8211) { + var2[var3] = -106; + } else if (var4 == 8212) { + var2[var3] = -105; + } else if (var4 == 732) { + var2[var3] = -104; + } else if (var4 == 8482) { + var2[var3] = -103; + } else if (var4 == 353) { + var2[var3] = -102; + } else if (var4 == 8250) { + var2[var3] = -101; + } else if (var4 == 339) { + var2[var3] = -100; + } else if (var4 == 382) { + var2[var3] = -98; + } else if (var4 == 376) { + var2[var3] = -97; + } else { + var2[var3] = 63; } - - var0[var3] = var0[var5]; // L: 29 - var0[var5] = var6; // L: 30 - var1[var3] = var1[var5]; // L: 31 - var1[var5] = var7; // L: 32 - sortItemsByName(var0, var1, var2, var5 - 1); // L: 33 - sortItemsByName(var0, var1, var5 + 1, var3); // L: 34 } - } // L: 36 - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1613642703" - ) - public static void method2228() { - SpotAnimationDefinition.SpotAnimationDefinition_cached.clear(); // L: 122 - SpotAnimationDefinition.SpotAnimationDefinition_cachedModels.clear(); // L: 123 - } // L: 124 - - @ObfuscatedName("ff") - @ObfuscatedSignature( - descriptor = "(IIB)V", - garbageValue = "-73" - ) - @Export("playSoundJingle") - static void playSoundJingle(int var0, int var1) { - if (Client.musicVolume != 0 && var0 != -1) { // L: 3605 - Canvas.method952(AbstractByteArrayCopier.archive11, var0, 0, Client.musicVolume, false); // L: 3606 - Client.field916 = true; // L: 3607 - } - - } // L: 3609 - - @ObfuscatedName("ge") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-206735455" - ) - static void method2226() { - if (Client.combatTargetPlayerIndex >= 0 && Client.players[Client.combatTargetPlayerIndex] != null) { // L: 4815 - ArchiveLoader.addPlayerToScene(Client.players[Client.combatTargetPlayerIndex], false); // L: 4816 - } - - } // L: 4818 - - @ObfuscatedName("ga") - @ObfuscatedSignature( - descriptor = "(IIZI)V", - garbageValue = "506267788" - ) - static final void method2223(int var0, int var1, boolean var2) { - if (!var2 || var0 != GrandExchangeEvent.field78 || AbstractWorldMapData.field198 != var1) { // L: 5569 - GrandExchangeEvent.field78 = var0; // L: 5572 - AbstractWorldMapData.field198 = var1; // L: 5573 - BuddyRankComparator.updateGameState(25); // L: 5574 - AbstractWorldMapData.drawLoadingMessage("Loading - please wait.", true); // L: 5575 - int var3 = FloorDecoration.baseX; // L: 5576 - int var4 = WorldMapData_0.baseY; // L: 5577 - FloorDecoration.baseX = (var0 - 6) * 8; // L: 5578 - WorldMapData_0.baseY = (var1 - 6) * 8; // L: 5579 - int var5 = FloorDecoration.baseX - var3; // L: 5580 - int var6 = WorldMapData_0.baseY - var4; // L: 5581 - var3 = FloorDecoration.baseX; // L: 5582 - var4 = WorldMapData_0.baseY; // L: 5583 - - int var7; - int var9; - int[] var10000; - for (var7 = 0; var7 < 32768; ++var7) { // L: 5584 - NPC var19 = Client.npcs[var7]; // L: 5585 - if (var19 != null) { // L: 5586 - for (var9 = 0; var9 < 10; ++var9) { // L: 5587 - var10000 = var19.pathX; // L: 5588 - var10000[var9] -= var5; - var10000 = var19.pathY; // L: 5589 - var10000[var9] -= var6; - } - - var19.x -= var5 * 128; // L: 5591 - var19.y -= var6 * 128; // L: 5592 - } - } - - for (var7 = 0; var7 < 2048; ++var7) { // L: 5595 - Player var22 = Client.players[var7]; // L: 5596 - if (var22 != null) { // L: 5597 - for (var9 = 0; var9 < 10; ++var9) { // L: 5598 - var10000 = var22.pathX; // L: 5599 - var10000[var9] -= var5; - var10000 = var22.pathY; // L: 5600 - var10000[var9] -= var6; - } - - var22.x -= var5 * 128; // L: 5602 - var22.y -= var6 * 128; // L: 5603 - } - } - - byte var20 = 0; // L: 5606 - byte var8 = 104; // L: 5607 - byte var21 = 1; // L: 5608 - if (var5 < 0) { // L: 5609 - var20 = 103; // L: 5610 - var8 = -1; // L: 5611 - var21 = -1; // L: 5612 - } - - byte var10 = 0; // L: 5614 - byte var11 = 104; // L: 5615 - byte var12 = 1; // L: 5616 - if (var6 < 0) { // L: 5617 - var10 = 103; // L: 5618 - var11 = -1; // L: 5619 - var12 = -1; // L: 5620 - } - - int var14; - for (int var13 = var20; var13 != var8; var13 += var21) { // L: 5622 - for (var14 = var10; var14 != var11; var14 += var12) { // L: 5623 - int var15 = var13 + var5; // L: 5624 - int var16 = var14 + var6; // L: 5625 - - for (int var17 = 0; var17 < 4; ++var17) { // L: 5626 - if (var15 >= 0 && var16 >= 0 && var15 < 104 && var16 < 104) { - Client.groundItems[var17][var13][var14] = Client.groundItems[var17][var15][var16]; // L: 5627 - } else { - Client.groundItems[var17][var13][var14] = null; // L: 5628 - } - } - } - } - - for (PendingSpawn var18 = (PendingSpawn)Client.pendingSpawns.last(); var18 != null; var18 = (PendingSpawn)Client.pendingSpawns.previous()) { // L: 5632 5633 5637 - var18.x -= var5; // L: 5634 - var18.y -= var6; // L: 5635 - if (var18.x < 0 || var18.y < 0 || var18.x >= 104 || var18.y >= 104) { // L: 5636 - var18.remove(); - } - } - - if (Client.destinationX != 0) { // L: 5639 - Client.destinationX -= var5; // L: 5640 - Client.destinationY -= var6; // L: 5641 - } - - Client.soundEffectCount = 0; // L: 5643 - Client.isCameraLocked = false; // L: 5644 - ItemContainer.cameraX -= var5 << 7; // L: 5645 - WorldMapManager.cameraZ -= var6 << 7; // L: 5646 - TileItem.oculusOrbFocalPointX -= var5 << 7; // L: 5647 - Interpreter.oculusOrbFocalPointY -= var6 << 7; // L: 5648 - Client.field906 = -1; // L: 5649 - Client.graphicsObjects.clear(); // L: 5650 - Client.projectiles.clear(); // L: 5651 - - for (var14 = 0; var14 < 4; ++var14) { // L: 5652 - Client.collisionMaps[var14].clear(); - } - - } - } // L: 5570 5653 + return var2; + } } diff --git a/runescape-client/src/main/java/RasterProvider.java b/runescape-client/src/main/java/RasterProvider.java index f1f78280b6..aa4a61e79f 100644 --- a/runescape-client/src/main/java/RasterProvider.java +++ b/runescape-client/src/main/java/RasterProvider.java @@ -14,88 +14,88 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("be") +@ObfuscatedName("bn") @Implements("RasterProvider") public final class RasterProvider extends AbstractRasterProvider { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("component") Component component; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("image") Image image; RasterProvider(int var1, int var2, Component var3) { - super.width = var1; // L: 23 - super.height = var2; // L: 24 - super.pixels = new int[var2 * var1 + 1]; // L: 25 - DataBufferInt var4 = new DataBufferInt(super.pixels, super.pixels.length); // L: 26 - DirectColorModel var5 = new DirectColorModel(32, 16711680, 65280, 255); // L: 27 - WritableRaster var6 = Raster.createWritableRaster(var5.createCompatibleSampleModel(super.width, super.height), var4, (Point)null); // L: 28 - this.image = new BufferedImage(var5, var6, false, new Hashtable()); // L: 29 - this.setComponent(var3); // L: 30 - this.apply(); // L: 31 - } // L: 32 + super.width = var1; + super.height = var2; + super.pixels = new int[var2 * var1 + 1]; + DataBufferInt var4 = new DataBufferInt(super.pixels, super.pixels.length); + DirectColorModel var5 = new DirectColorModel(32, 16711680, 65280, 255); + WritableRaster var6 = Raster.createWritableRaster(var5.createCompatibleSampleModel(super.width, super.height), var4, (Point)null); + this.image = new BufferedImage(var5, var6, false, new Hashtable()); + this.setComponent(var3); + this.apply(); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(Ljava/awt/Component;B)V", - garbageValue = "118" + garbageValue = "93" ) @Export("setComponent") final void setComponent(Component var1) { - this.component = var1; // L: 35 - } // L: 36 + this.component = var1; + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "-1818523436" + garbageValue = "1343964035" ) @Export("drawFull") public final void drawFull(int var1, int var2) { - this.drawFull0(this.component.getGraphics(), var1, var2); // L: 39 - } // L: 40 + this.drawFull0(this.component.getGraphics(), var1, var2); + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "868198553" + descriptor = "(IIIIB)V", + garbageValue = "-8" ) @Export("draw") public final void draw(int var1, int var2, int var3, int var4) { - this.draw0(this.component.getGraphics(), var1, var2, var3, var4); // L: 43 - } // L: 44 + this.draw0(this.component.getGraphics(), var1, var2, var3, var4); + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(Ljava/awt/Graphics;III)V", - garbageValue = "-2098710805" + garbageValue = "1396932744" ) @Export("drawFull0") final void drawFull0(Graphics var1, int var2, int var3) { try { - var1.drawImage(this.image, var2, var3, this.component); // L: 48 - } catch (Exception var5) { // L: 50 - this.component.repaint(); // L: 51 + var1.drawImage(this.image, var2, var3, this.component); + } catch (Exception var5) { + this.component.repaint(); } - } // L: 53 + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(Ljava/awt/Graphics;IIIII)V", - garbageValue = "-206364767" + garbageValue = "-1924846250" ) @Export("draw0") final void draw0(Graphics var1, int var2, int var3, int var4, int var5) { try { - Shape var6 = var1.getClip(); // L: 57 - var1.clipRect(var2, var3, var4, var5); // L: 58 - var1.drawImage(this.image, 0, 0, this.component); // L: 59 - var1.setClip(var6); // L: 60 - } catch (Exception var7) { // L: 62 - this.component.repaint(); // L: 63 + Shape var6 = var1.getClip(); + var1.clipRect(var2, var3, var4, var5); + var1.drawImage(this.image, 0, 0, this.component); + var1.setClip(var6); + } catch (Exception var7) { + this.component.repaint(); } - } // L: 65 + } } diff --git a/runescape-client/src/main/java/Rasterizer2D.java b/runescape-client/src/main/java/Rasterizer2D.java index e7daaddb4b..80db798f15 100644 --- a/runescape-client/src/main/java/Rasterizer2D.java +++ b/runescape-client/src/main/java/Rasterizer2D.java @@ -3,171 +3,171 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lm") +@ObfuscatedName("lq") @Implements("Rasterizer2D") public class Rasterizer2D extends DualNode { - @ObfuscatedName("ac") + @ObfuscatedName("aj") @Export("Rasterizer2D_pixels") public static int[] Rasterizer2D_pixels; - @ObfuscatedName("ao") + @ObfuscatedName("ax") @Export("Rasterizer2D_width") public static int Rasterizer2D_width; - @ObfuscatedName("af") + @ObfuscatedName("ag") @Export("Rasterizer2D_height") public static int Rasterizer2D_height; - @ObfuscatedName("av") + @ObfuscatedName("au") @Export("Rasterizer2D_yClipStart") public static int Rasterizer2D_yClipStart; - @ObfuscatedName("ar") + @ObfuscatedName("as") @Export("Rasterizer2D_yClipEnd") public static int Rasterizer2D_yClipEnd; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("Rasterizer2D_xClipStart") public static int Rasterizer2D_xClipStart; - @ObfuscatedName("ah") + @ObfuscatedName("ac") @Export("Rasterizer2D_xClipEnd") public static int Rasterizer2D_xClipEnd; static { - Rasterizer2D_yClipStart = 0; // L: 11 - Rasterizer2D_yClipEnd = 0; // L: 12 - Rasterizer2D_xClipStart = 0; // L: 13 - Rasterizer2D_xClipEnd = 0; // L: 14 + Rasterizer2D_yClipStart = 0; + Rasterizer2D_yClipEnd = 0; + Rasterizer2D_xClipStart = 0; + Rasterizer2D_xClipEnd = 0; } protected Rasterizer2D() { - } // L: 16 + } - @ObfuscatedName("cz") + @ObfuscatedName("dr") @Export("Rasterizer2D_replace") public static void Rasterizer2D_replace(int[] var0, int var1, int var2) { - Rasterizer2D_pixels = var0; // L: 19 - Rasterizer2D_width = var1; // L: 20 - Rasterizer2D_height = var2; // L: 21 - Rasterizer2D_setClip(0, 0, var1, var2); // L: 22 - } // L: 23 + Rasterizer2D_pixels = var0; + Rasterizer2D_width = var1; + Rasterizer2D_height = var2; + Rasterizer2D_setClip(0, 0, var1, var2); + } - @ObfuscatedName("ch") + @ObfuscatedName("dt") @Export("Rasterizer2D_resetClip") public static void Rasterizer2D_resetClip() { - Rasterizer2D_xClipStart = 0; // L: 26 - Rasterizer2D_yClipStart = 0; // L: 27 - Rasterizer2D_xClipEnd = Rasterizer2D_width; // L: 28 - Rasterizer2D_yClipEnd = Rasterizer2D_height; // L: 29 - } // L: 30 + Rasterizer2D_xClipStart = 0; + Rasterizer2D_yClipStart = 0; + Rasterizer2D_xClipEnd = Rasterizer2D_width; + Rasterizer2D_yClipEnd = Rasterizer2D_height; + } - @ObfuscatedName("co") + @ObfuscatedName("ds") @Export("Rasterizer2D_setClip") public static void Rasterizer2D_setClip(int var0, int var1, int var2, int var3) { - if (var0 < 0) { // L: 33 + if (var0 < 0) { var0 = 0; } - if (var1 < 0) { // L: 34 + if (var1 < 0) { var1 = 0; } - if (var2 > Rasterizer2D_width) { // L: 35 + if (var2 > Rasterizer2D_width) { var2 = Rasterizer2D_width; } if (var3 > Rasterizer2D_height) { - var3 = Rasterizer2D_height; // L: 36 + var3 = Rasterizer2D_height; } - Rasterizer2D_xClipStart = var0; // L: 37 - Rasterizer2D_yClipStart = var1; // L: 38 - Rasterizer2D_xClipEnd = var2; // L: 39 - Rasterizer2D_yClipEnd = var3; // L: 40 - } // L: 41 + Rasterizer2D_xClipStart = var0; + Rasterizer2D_yClipStart = var1; + Rasterizer2D_xClipEnd = var2; + Rasterizer2D_yClipEnd = var3; + } - @ObfuscatedName("ck") + @ObfuscatedName("dv") @Export("Rasterizer2D_expandClip") public static void Rasterizer2D_expandClip(int var0, int var1, int var2, int var3) { - if (Rasterizer2D_xClipStart < var0) { // L: 44 + if (Rasterizer2D_xClipStart < var0) { Rasterizer2D_xClipStart = var0; } - if (Rasterizer2D_yClipStart < var1) { // L: 45 + if (Rasterizer2D_yClipStart < var1) { Rasterizer2D_yClipStart = var1; } - if (Rasterizer2D_xClipEnd > var2) { // L: 46 + if (Rasterizer2D_xClipEnd > var2) { Rasterizer2D_xClipEnd = var2; } - if (Rasterizer2D_yClipEnd > var3) { // L: 47 + if (Rasterizer2D_yClipEnd > var3) { Rasterizer2D_yClipEnd = var3; } - } // L: 48 + } - @ObfuscatedName("cr") + @ObfuscatedName("dd") @Export("Rasterizer2D_getClipArray") public static void Rasterizer2D_getClipArray(int[] var0) { - var0[0] = Rasterizer2D_xClipStart; // L: 51 - var0[1] = Rasterizer2D_yClipStart; // L: 52 - var0[2] = Rasterizer2D_xClipEnd; // L: 53 - var0[3] = Rasterizer2D_yClipEnd; // L: 54 - } // L: 55 + var0[0] = Rasterizer2D_xClipStart; + var0[1] = Rasterizer2D_yClipStart; + var0[2] = Rasterizer2D_xClipEnd; + var0[3] = Rasterizer2D_yClipEnd; + } - @ObfuscatedName("dg") + @ObfuscatedName("dy") @Export("Rasterizer2D_setClipArray") public static void Rasterizer2D_setClipArray(int[] var0) { - Rasterizer2D_xClipStart = var0[0]; // L: 58 - Rasterizer2D_yClipStart = var0[1]; // L: 59 - Rasterizer2D_xClipEnd = var0[2]; // L: 60 - Rasterizer2D_yClipEnd = var0[3]; // L: 61 - } // L: 62 + Rasterizer2D_xClipStart = var0[0]; + Rasterizer2D_yClipStart = var0[1]; + Rasterizer2D_xClipEnd = var0[2]; + Rasterizer2D_yClipEnd = var0[3]; + } - @ObfuscatedName("db") + @ObfuscatedName("dn") @Export("Rasterizer2D_clear") public static void Rasterizer2D_clear() { - int var0 = 0; // L: 65 + int var0 = 0; int var1; - for (var1 = Rasterizer2D_width * Rasterizer2D_height - 7; var0 < var1; Rasterizer2D_pixels[var0++] = 0) { // L: 66 67 75 - Rasterizer2D_pixels[var0++] = 0; // L: 68 - Rasterizer2D_pixels[var0++] = 0; // L: 69 - Rasterizer2D_pixels[var0++] = 0; // L: 70 - Rasterizer2D_pixels[var0++] = 0; // L: 71 - Rasterizer2D_pixels[var0++] = 0; // L: 72 - Rasterizer2D_pixels[var0++] = 0; // L: 73 - Rasterizer2D_pixels[var0++] = 0; // L: 74 + for (var1 = Rasterizer2D_width * Rasterizer2D_height - 7; var0 < var1; Rasterizer2D_pixels[var0++] = 0) { + Rasterizer2D_pixels[var0++] = 0; + Rasterizer2D_pixels[var0++] = 0; + Rasterizer2D_pixels[var0++] = 0; + Rasterizer2D_pixels[var0++] = 0; + Rasterizer2D_pixels[var0++] = 0; + Rasterizer2D_pixels[var0++] = 0; + Rasterizer2D_pixels[var0++] = 0; } - for (var1 += 7; var0 < var1; Rasterizer2D_pixels[var0++] = 0) { // L: 77 78 + for (var1 += 7; var0 < var1; Rasterizer2D_pixels[var0++] = 0) { } - } // L: 79 + } - @ObfuscatedName("dv") + @ObfuscatedName("dj") @Export("drawCircle") static void drawCircle(int var0, int var1, int var2, int var3) { - if (var2 == 0) { // L: 82 - Rasterizer2D_setPixel(var0, var1, var3); // L: 83 + if (var2 == 0) { + Rasterizer2D_setPixel(var0, var1, var3); } else { - if (var2 < 0) { // L: 86 + if (var2 < 0) { var2 = -var2; } - int var4 = var1 - var2; // L: 87 - if (var4 < Rasterizer2D_yClipStart) { // L: 88 + int var4 = var1 - var2; + if (var4 < Rasterizer2D_yClipStart) { var4 = Rasterizer2D_yClipStart; } - int var5 = var2 + var1 + 1; // L: 89 - if (var5 > Rasterizer2D_yClipEnd) { // L: 90 + int var5 = var2 + var1 + 1; + if (var5 > Rasterizer2D_yClipEnd) { var5 = Rasterizer2D_yClipEnd; } - int var6 = var4; // L: 91 - int var7 = var2 * var2; // L: 92 - int var8 = 0; // L: 93 - int var9 = var1 - var4; // L: 94 - int var10 = var9 * var9; // L: 95 - int var11 = var10 - var9; // L: 96 - if (var1 > var5) { // L: 97 + int var6 = var4; + int var7 = var2 * var2; + int var8 = 0; + int var9 = var1 - var4; + int var10 = var9 * var9; + int var11 = var10 - var9; + if (var1 > var5) { var1 = var5; } @@ -175,99 +175,99 @@ public class Rasterizer2D extends DualNode { int var13; int var14; int var15; - while (var6 < var1) { // L: 98 - while (var11 <= var7 || var10 <= var7) { // L: 99 - var10 = var10 + var8 + var8; // L: 100 - var11 += var8++ + var8; // L: 101 + while (var6 < var1) { + while (var11 <= var7 || var10 <= var7) { + var10 = var10 + var8 + var8; + var11 += var8++ + var8; } - var12 = var0 - var8 + 1; // L: 103 - if (var12 < Rasterizer2D_xClipStart) { // L: 104 + var12 = var0 - var8 + 1; + if (var12 < Rasterizer2D_xClipStart) { var12 = Rasterizer2D_xClipStart; } - var13 = var0 + var8; // L: 105 - if (var13 > Rasterizer2D_xClipEnd) { // L: 106 + var13 = var0 + var8; + if (var13 > Rasterizer2D_xClipEnd) { var13 = Rasterizer2D_xClipEnd; } - var14 = var12 + var6 * Rasterizer2D_width; // L: 107 + var14 = var12 + var6 * Rasterizer2D_width; - for (var15 = var12; var15 < var13; ++var15) { // L: 108 + for (var15 = var12; var15 < var13; ++var15) { Rasterizer2D_pixels[var14++] = var3; } - ++var6; // L: 109 - var10 -= var9-- + var9; // L: 110 - var11 -= var9 + var9; // L: 111 + ++var6; + var10 -= var9-- + var9; + var11 -= var9 + var9; } - var8 = var2; // L: 113 - var9 = var6 - var1; // L: 114 - var11 = var7 + var9 * var9; // L: 115 - var10 = var11 - var2; // L: 116 + var8 = var2; + var9 = var6 - var1; + var11 = var7 + var9 * var9; + var10 = var11 - var2; - for (var11 -= var9; var6 < var5; var10 += var9++ + var9) { // L: 117 118 131 - while (var11 > var7 && var10 > var7) { // L: 119 - var11 -= var8-- + var8; // L: 120 - var10 -= var8 + var8; // L: 121 + for (var11 -= var9; var6 < var5; var10 += var9++ + var9) { + while (var11 > var7 && var10 > var7) { + var11 -= var8-- + var8; + var10 -= var8 + var8; } - var12 = var0 - var8; // L: 123 - if (var12 < Rasterizer2D_xClipStart) { // L: 124 + var12 = var0 - var8; + if (var12 < Rasterizer2D_xClipStart) { var12 = Rasterizer2D_xClipStart; } - var13 = var0 + var8; // L: 125 - if (var13 > Rasterizer2D_xClipEnd - 1) { // L: 126 + var13 = var0 + var8; + if (var13 > Rasterizer2D_xClipEnd - 1) { var13 = Rasterizer2D_xClipEnd - 1; } - var14 = var12 + var6 * Rasterizer2D_width; // L: 127 + var14 = var12 + var6 * Rasterizer2D_width; for (var15 = var12; var15 <= var13; ++var15) { - Rasterizer2D_pixels[var14++] = var3; // L: 128 + Rasterizer2D_pixels[var14++] = var3; } - ++var6; // L: 129 - var11 = var11 + var9 + var9; // L: 130 + ++var6; + var11 = var11 + var9 + var9; } } - } // L: 84 133 + } - @ObfuscatedName("df") + @ObfuscatedName("da") @Export("Rasterizer2D_drawCircleAlpha") public static void Rasterizer2D_drawCircleAlpha(int var0, int var1, int var2, int var3, int var4) { - if (var4 != 0) { // L: 136 - if (var4 == 256) { // L: 137 - drawCircle(var0, var1, var2, var3); // L: 138 + if (var4 != 0) { + if (var4 == 256) { + drawCircle(var0, var1, var2, var3); } else { - if (var2 < 0) { // L: 141 + if (var2 < 0) { var2 = -var2; } - int var5 = 256 - var4; // L: 142 - int var6 = (var3 >> 16 & 255) * var4; // L: 143 - int var7 = (var3 >> 8 & 255) * var4; // L: 144 - int var8 = var4 * (var3 & 255); // L: 145 - int var12 = var1 - var2; // L: 149 - if (var12 < Rasterizer2D_yClipStart) { // L: 150 + int var5 = 256 - var4; + int var6 = (var3 >> 16 & 255) * var4; + int var7 = (var3 >> 8 & 255) * var4; + int var8 = var4 * (var3 & 255); + int var12 = var1 - var2; + if (var12 < Rasterizer2D_yClipStart) { var12 = Rasterizer2D_yClipStart; } - int var13 = var2 + var1 + 1; // L: 151 - if (var13 > Rasterizer2D_yClipEnd) { // L: 152 + int var13 = var2 + var1 + 1; + if (var13 > Rasterizer2D_yClipEnd) { var13 = Rasterizer2D_yClipEnd; } - int var14 = var12; // L: 153 - int var15 = var2 * var2; // L: 154 - int var16 = 0; // L: 155 - int var17 = var1 - var12; // L: 156 - int var18 = var17 * var17; // L: 157 - int var19 = var18 - var17; // L: 158 - if (var1 > var13) { // L: 159 + int var14 = var12; + int var15 = var2 * var2; + int var16 = 0; + int var17 = var1 - var12; + int var18 = var17 * var17; + int var19 = var18 - var17; + if (var1 > var13) { var1 = var13; } @@ -279,561 +279,561 @@ public class Rasterizer2D extends DualNode { int var22; int var23; int var24; - while (var14 < var1) { // L: 160 - while (var19 <= var15 || var18 <= var15) { // L: 161 - var18 = var18 + var16 + var16; // L: 162 - var19 += var16++ + var16; // L: 163 + while (var14 < var1) { + while (var19 <= var15 || var18 <= var15) { + var18 = var18 + var16 + var16; + var19 += var16++ + var16; } - var20 = var0 - var16 + 1; // L: 165 - if (var20 < Rasterizer2D_xClipStart) { // L: 166 + var20 = var0 - var16 + 1; + if (var20 < Rasterizer2D_xClipStart) { var20 = Rasterizer2D_xClipStart; } - var21 = var0 + var16; // L: 167 - if (var21 > Rasterizer2D_xClipEnd) { // L: 168 + var21 = var0 + var16; + if (var21 > Rasterizer2D_xClipEnd) { var21 = Rasterizer2D_xClipEnd; } - var22 = var20 + var14 * Rasterizer2D_width; // L: 169 + var22 = var20 + var14 * Rasterizer2D_width; - for (var23 = var20; var23 < var21; ++var23) { // L: 170 - var9 = var5 * (Rasterizer2D_pixels[var22] >> 16 & 255); // L: 171 - var10 = (Rasterizer2D_pixels[var22] >> 8 & 255) * var5; // L: 172 - var11 = var5 * (Rasterizer2D_pixels[var22] & 255); // L: 173 - var24 = (var8 + var11 >> 8) + (var6 + var9 >> 8 << 16) + (var7 + var10 >> 8 << 8); // L: 174 - Rasterizer2D_pixels[var22++] = var24; // L: 175 + for (var23 = var20; var23 < var21; ++var23) { + var9 = var5 * (Rasterizer2D_pixels[var22] >> 16 & 255); + var10 = (Rasterizer2D_pixels[var22] >> 8 & 255) * var5; + var11 = var5 * (Rasterizer2D_pixels[var22] & 255); + var24 = (var8 + var11 >> 8) + (var6 + var9 >> 8 << 16) + (var7 + var10 >> 8 << 8); + Rasterizer2D_pixels[var22++] = var24; } - ++var14; // L: 177 - var18 -= var17-- + var17; // L: 178 - var19 -= var17 + var17; // L: 179 + ++var14; + var18 -= var17-- + var17; + var19 -= var17 + var17; } - var16 = var2; // L: 181 - var17 = -var17; // L: 182 - var19 = var15 + var17 * var17; // L: 183 - var18 = var19 - var2; // L: 184 + var16 = var2; + var17 = -var17; + var19 = var15 + var17 * var17; + var18 = var19 - var2; - for (var19 -= var17; var14 < var13; var18 += var17++ + var17) { // L: 185 186 205 - while (var19 > var15 && var18 > var15) { // L: 187 - var19 -= var16-- + var16; // L: 188 - var18 -= var16 + var16; // L: 189 + for (var19 -= var17; var14 < var13; var18 += var17++ + var17) { + while (var19 > var15 && var18 > var15) { + var19 -= var16-- + var16; + var18 -= var16 + var16; } - var20 = var0 - var16; // L: 191 - if (var20 < Rasterizer2D_xClipStart) { // L: 192 + var20 = var0 - var16; + if (var20 < Rasterizer2D_xClipStart) { var20 = Rasterizer2D_xClipStart; } - var21 = var0 + var16; // L: 193 - if (var21 > Rasterizer2D_xClipEnd - 1) { // L: 194 + var21 = var0 + var16; + if (var21 > Rasterizer2D_xClipEnd - 1) { var21 = Rasterizer2D_xClipEnd - 1; } - var22 = var20 + var14 * Rasterizer2D_width; // L: 195 + var22 = var20 + var14 * Rasterizer2D_width; - for (var23 = var20; var23 <= var21; ++var23) { // L: 196 - var9 = var5 * (Rasterizer2D_pixels[var22] >> 16 & 255); // L: 197 - var10 = (Rasterizer2D_pixels[var22] >> 8 & 255) * var5; // L: 198 - var11 = var5 * (Rasterizer2D_pixels[var22] & 255); // L: 199 - var24 = (var8 + var11 >> 8) + (var6 + var9 >> 8 << 16) + (var7 + var10 >> 8 << 8); // L: 200 - Rasterizer2D_pixels[var22++] = var24; // L: 201 + for (var23 = var20; var23 <= var21; ++var23) { + var9 = var5 * (Rasterizer2D_pixels[var22] >> 16 & 255); + var10 = (Rasterizer2D_pixels[var22] >> 8 & 255) * var5; + var11 = var5 * (Rasterizer2D_pixels[var22] & 255); + var24 = (var8 + var11 >> 8) + (var6 + var9 >> 8 << 16) + (var7 + var10 >> 8 << 8); + Rasterizer2D_pixels[var22++] = var24; } - ++var14; // L: 203 - var19 = var19 + var17 + var17; // L: 204 + ++var14; + var19 = var19 + var17 + var17; } } } - } // L: 139 207 + } - @ObfuscatedName("dd") + @ObfuscatedName("di") @Export("Rasterizer2D_fillRectangleAlpha") public static void Rasterizer2D_fillRectangleAlpha(int var0, int var1, int var2, int var3, int var4, int var5) { - if (var0 < Rasterizer2D_xClipStart) { // L: 210 - var2 -= Rasterizer2D_xClipStart - var0; // L: 211 - var0 = Rasterizer2D_xClipStart; // L: 212 + if (var0 < Rasterizer2D_xClipStart) { + var2 -= Rasterizer2D_xClipStart - var0; + var0 = Rasterizer2D_xClipStart; } - if (var1 < Rasterizer2D_yClipStart) { // L: 214 - var3 -= Rasterizer2D_yClipStart - var1; // L: 215 - var1 = Rasterizer2D_yClipStart; // L: 216 + if (var1 < Rasterizer2D_yClipStart) { + var3 -= Rasterizer2D_yClipStart - var1; + var1 = Rasterizer2D_yClipStart; } - if (var0 + var2 > Rasterizer2D_xClipEnd) { // L: 218 - var2 = Rasterizer2D_xClipEnd - var0; - } - - if (var3 + var1 > Rasterizer2D_yClipEnd) { // L: 219 - var3 = Rasterizer2D_yClipEnd - var1; - } - - var4 = (var5 * (var4 & 16711935) >> 8 & 16711935) + (var5 * (var4 & 65280) >> 8 & 65280); // L: 220 - int var6 = 256 - var5; // L: 221 - int var7 = Rasterizer2D_width - var2; // L: 222 - int var8 = var0 + Rasterizer2D_width * var1; // L: 223 - - for (int var9 = 0; var9 < var3; ++var9) { // L: 224 - for (int var10 = -var2; var10 < 0; ++var10) { // L: 225 - int var11 = Rasterizer2D_pixels[var8]; // L: 226 - var11 = ((var11 & 16711935) * var6 >> 8 & 16711935) + (var6 * (var11 & 65280) >> 8 & 65280); // L: 227 - Rasterizer2D_pixels[var8++] = var11 + var4; // L: 228 - } - - var8 += var7; // L: 230 - } - - } // L: 232 - - @ObfuscatedName("dl") - @Export("Rasterizer2D_fillRectangle") - public static void Rasterizer2D_fillRectangle(int var0, int var1, int var2, int var3, int var4) { - if (var0 < Rasterizer2D_xClipStart) { // L: 235 - var2 -= Rasterizer2D_xClipStart - var0; // L: 236 - var0 = Rasterizer2D_xClipStart; // L: 237 - } - - if (var1 < Rasterizer2D_yClipStart) { // L: 239 - var3 -= Rasterizer2D_yClipStart - var1; // L: 240 - var1 = Rasterizer2D_yClipStart; // L: 241 - } - - if (var0 + var2 > Rasterizer2D_xClipEnd) { // L: 243 + if (var0 + var2 > Rasterizer2D_xClipEnd) { var2 = Rasterizer2D_xClipEnd - var0; } if (var3 + var1 > Rasterizer2D_yClipEnd) { - var3 = Rasterizer2D_yClipEnd - var1; // L: 244 + var3 = Rasterizer2D_yClipEnd - var1; } - int var5 = Rasterizer2D_width - var2; // L: 245 - int var6 = var0 + Rasterizer2D_width * var1; // L: 246 + var4 = (var5 * (var4 & 16711935) >> 8 & 16711935) + (var5 * (var4 & 65280) >> 8 & 65280); + int var6 = 256 - var5; + int var7 = Rasterizer2D_width - var2; + int var8 = var0 + Rasterizer2D_width * var1; - for (int var7 = -var3; var7 < 0; ++var7) { // L: 247 - for (int var8 = -var2; var8 < 0; ++var8) { // L: 248 - Rasterizer2D_pixels[var6++] = var4; // L: 249 + for (int var9 = 0; var9 < var3; ++var9) { + for (int var10 = -var2; var10 < 0; ++var10) { + int var11 = Rasterizer2D_pixels[var8]; + var11 = ((var11 & 16711935) * var6 >> 8 & 16711935) + (var6 * (var11 & 65280) >> 8 & 65280); + Rasterizer2D_pixels[var8++] = var11 + var4; } - var6 += var5; // L: 251 + var8 += var7; } - } // L: 253 + } - @ObfuscatedName("dq") + @ObfuscatedName("do") + @Export("Rasterizer2D_fillRectangle") + public static void Rasterizer2D_fillRectangle(int var0, int var1, int var2, int var3, int var4) { + if (var0 < Rasterizer2D_xClipStart) { + var2 -= Rasterizer2D_xClipStart - var0; + var0 = Rasterizer2D_xClipStart; + } + + if (var1 < Rasterizer2D_yClipStart) { + var3 -= Rasterizer2D_yClipStart - var1; + var1 = Rasterizer2D_yClipStart; + } + + if (var0 + var2 > Rasterizer2D_xClipEnd) { + var2 = Rasterizer2D_xClipEnd - var0; + } + + if (var3 + var1 > Rasterizer2D_yClipEnd) { + var3 = Rasterizer2D_yClipEnd - var1; + } + + int var5 = Rasterizer2D_width - var2; + int var6 = var0 + Rasterizer2D_width * var1; + + for (int var7 = -var3; var7 < 0; ++var7) { + for (int var8 = -var2; var8 < 0; ++var8) { + Rasterizer2D_pixels[var6++] = var4; + } + + var6 += var5; + } + + } + + @ObfuscatedName("dc") @Export("Rasterizer2D_fillRectangleGradient") public static void Rasterizer2D_fillRectangleGradient(int var0, int var1, int var2, int var3, int var4, int var5) { - if (var2 > 0 && var3 > 0) { // L: 256 - int var6 = 0; // L: 257 - int var7 = 65536 / var3; // L: 258 - if (var0 < Rasterizer2D_xClipStart) { // L: 259 - var2 -= Rasterizer2D_xClipStart - var0; // L: 260 - var0 = Rasterizer2D_xClipStart; // L: 261 + if (var2 > 0 && var3 > 0) { + int var6 = 0; + int var7 = 65536 / var3; + if (var0 < Rasterizer2D_xClipStart) { + var2 -= Rasterizer2D_xClipStart - var0; + var0 = Rasterizer2D_xClipStart; } - if (var1 < Rasterizer2D_yClipStart) { // L: 263 - var6 += (Rasterizer2D_yClipStart - var1) * var7; // L: 264 - var3 -= Rasterizer2D_yClipStart - var1; // L: 265 - var1 = Rasterizer2D_yClipStart; // L: 266 + if (var1 < Rasterizer2D_yClipStart) { + var6 += (Rasterizer2D_yClipStart - var1) * var7; + var3 -= Rasterizer2D_yClipStart - var1; + var1 = Rasterizer2D_yClipStart; } - if (var0 + var2 > Rasterizer2D_xClipEnd) { // L: 268 + if (var0 + var2 > Rasterizer2D_xClipEnd) { var2 = Rasterizer2D_xClipEnd - var0; } - if (var3 + var1 > Rasterizer2D_yClipEnd) { // L: 269 + if (var3 + var1 > Rasterizer2D_yClipEnd) { var3 = Rasterizer2D_yClipEnd - var1; } - int var8 = Rasterizer2D_width - var2; // L: 270 - int var9 = var0 + Rasterizer2D_width * var1; // L: 271 + int var8 = Rasterizer2D_width - var2; + int var9 = var0 + Rasterizer2D_width * var1; - for (int var10 = -var3; var10 < 0; ++var10) { // L: 272 - int var11 = 65536 - var6 >> 8; // L: 273 - int var12 = var6 >> 8; // L: 274 - int var13 = (var12 * (var5 & 16711935) + var11 * (var4 & 16711935) & -16711936) + (var12 * (var5 & 65280) + var11 * (var4 & 65280) & 16711680) >>> 8; // L: 275 + for (int var10 = -var3; var10 < 0; ++var10) { + int var11 = 65536 - var6 >> 8; + int var12 = var6 >> 8; + int var13 = (var12 * (var5 & 16711935) + var11 * (var4 & 16711935) & -16711936) + (var12 * (var5 & 65280) + var11 * (var4 & 65280) & 16711680) >>> 8; - for (int var14 = -var2; var14 < 0; ++var14) { // L: 276 - Rasterizer2D_pixels[var9++] = var13; // L: 277 + for (int var14 = -var2; var14 < 0; ++var14) { + Rasterizer2D_pixels[var9++] = var13; } - var9 += var8; // L: 279 - var6 += var7; // L: 280 + var9 += var8; + var6 += var7; } } - } // L: 282 + } - @ObfuscatedName("dp") + @ObfuscatedName("dg") @Export("Rasterizer2D_fillRectangleGradientAlpha") public static void Rasterizer2D_fillRectangleGradientAlpha(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { - if (var2 > 0 && var3 > 0) { // L: 285 - int var8 = 0; // L: 286 - int var9 = 65536 / var3; // L: 287 - if (var0 < Rasterizer2D_xClipStart) { // L: 288 - var2 -= Rasterizer2D_xClipStart - var0; // L: 289 - var0 = Rasterizer2D_xClipStart; // L: 290 + if (var2 > 0 && var3 > 0) { + int var8 = 0; + int var9 = 65536 / var3; + if (var0 < Rasterizer2D_xClipStart) { + var2 -= Rasterizer2D_xClipStart - var0; + var0 = Rasterizer2D_xClipStart; } - if (var1 < Rasterizer2D_yClipStart) { // L: 292 - var8 += (Rasterizer2D_yClipStart - var1) * var9; // L: 293 - var3 -= Rasterizer2D_yClipStart - var1; // L: 294 - var1 = Rasterizer2D_yClipStart; // L: 295 + if (var1 < Rasterizer2D_yClipStart) { + var8 += (Rasterizer2D_yClipStart - var1) * var9; + var3 -= Rasterizer2D_yClipStart - var1; + var1 = Rasterizer2D_yClipStart; } - if (var0 + var2 > Rasterizer2D_xClipEnd) { // L: 297 + if (var0 + var2 > Rasterizer2D_xClipEnd) { var2 = Rasterizer2D_xClipEnd - var0; } - if (var3 + var1 > Rasterizer2D_yClipEnd) { // L: 298 + if (var3 + var1 > Rasterizer2D_yClipEnd) { var3 = Rasterizer2D_yClipEnd - var1; } - int var10 = Rasterizer2D_width - var2; // L: 299 - int var11 = var0 + Rasterizer2D_width * var1; // L: 300 + int var10 = Rasterizer2D_width - var2; + int var11 = var0 + Rasterizer2D_width * var1; - for (int var12 = -var3; var12 < 0; ++var12) { // L: 301 - int var13 = 65536 - var8 >> 8; // L: 302 - int var14 = var8 >> 8; // L: 303 - int var15 = (var13 * var6 + var14 * var7 & 65280) >>> 8; // L: 304 - if (var15 == 0) { // L: 305 - var11 += Rasterizer2D_width; // L: 306 - var8 += var9; // L: 307 + for (int var12 = -var3; var12 < 0; ++var12) { + int var13 = 65536 - var8 >> 8; + int var14 = var8 >> 8; + int var15 = (var13 * var6 + var14 * var7 & 65280) >>> 8; + if (var15 == 0) { + var11 += Rasterizer2D_width; + var8 += var9; } else { - int var16 = (var14 * (var5 & 16711935) + var13 * (var4 & 16711935) & -16711936) + (var14 * (var5 & 65280) + var13 * (var4 & 65280) & 16711680) >>> 8; // L: 310 - int var17 = 255 - var15; // L: 311 - int var18 = ((var16 & 16711935) * var15 >> 8 & 16711935) + (var15 * (var16 & 65280) >> 8 & 65280); // L: 312 + int var16 = (var14 * (var5 & 16711935) + var13 * (var4 & 16711935) & -16711936) + (var14 * (var5 & 65280) + var13 * (var4 & 65280) & 16711680) >>> 8; + int var17 = 255 - var15; + int var18 = ((var16 & 16711935) * var15 >> 8 & 16711935) + (var15 * (var16 & 65280) >> 8 & 65280); - for (int var19 = -var2; var19 < 0; ++var19) { // L: 313 - int var20 = Rasterizer2D_pixels[var11]; // L: 314 - if (var20 == 0) { // L: 315 - Rasterizer2D_pixels[var11++] = var18; // L: 316 + for (int var19 = -var2; var19 < 0; ++var19) { + int var20 = Rasterizer2D_pixels[var11]; + if (var20 == 0) { + Rasterizer2D_pixels[var11++] = var18; } else { - var20 = ((var20 & 16711935) * var17 >> 8 & 16711935) + (var17 * (var20 & 65280) >> 8 & 65280); // L: 319 - Rasterizer2D_pixels[var11++] = var18 + var20; // L: 320 + var20 = ((var20 & 16711935) * var17 >> 8 & 16711935) + (var17 * (var20 & 65280) >> 8 & 65280); + Rasterizer2D_pixels[var11++] = var18 + var20; } } - var11 += var10; // L: 323 - var8 += var9; // L: 324 + var11 += var10; + var8 += var9; } } } - } // L: 326 + } - @ObfuscatedName("do") + @ObfuscatedName("dk") @ObfuscatedSignature( descriptor = "(IIIIII[BIZ)V", garbageValue = "1" ) @Export("Rasterizer2D_drawGradientPixels") public static void Rasterizer2D_drawGradientPixels(int var0, int var1, int var2, int var3, int var4, int var5, byte[] var6, int var7) { - if (var0 + var2 >= 0 && var3 + var1 >= 0) { // L: 329 - if (var0 < Rasterizer2D_width && var1 < Rasterizer2D_height) { // L: 330 - int var8 = 0; // L: 331 - int var9 = 0; // L: 332 - if (var0 < 0) { // L: 333 - var8 -= var0; // L: 334 - var2 += var0; // L: 335 + if (var0 + var2 >= 0 && var3 + var1 >= 0) { + if (var0 < Rasterizer2D_width && var1 < Rasterizer2D_height) { + int var8 = 0; + int var9 = 0; + if (var0 < 0) { + var8 -= var0; + var2 += var0; } - if (var1 < 0) { // L: 337 - var9 -= var1; // L: 338 - var3 += var1; // L: 339 + if (var1 < 0) { + var9 -= var1; + var3 += var1; } - if (var0 + var2 > Rasterizer2D_width) { // L: 341 - var2 = Rasterizer2D_width - var0; // L: 342 + if (var0 + var2 > Rasterizer2D_width) { + var2 = Rasterizer2D_width - var0; } - if (var3 + var1 > Rasterizer2D_height) { // L: 344 - var3 = Rasterizer2D_height - var1; // L: 345 + if (var3 + var1 > Rasterizer2D_height) { + var3 = Rasterizer2D_height - var1; } - int var10 = var6.length / var7; // L: 347 - int var11 = Rasterizer2D_width - var2; // L: 348 - int var12 = var4 >>> 24; // L: 349 - int var13 = var5 >>> 24; // L: 350 + int var10 = var6.length / var7; + int var11 = Rasterizer2D_width - var2; + int var12 = var4 >>> 24; + int var13 = var5 >>> 24; int var14; int var15; int var16; int var17; int var18; - if (var12 == 255 && var13 == 255) { // L: 351 - var14 = var0 + var8 + (var9 + var1) * Rasterizer2D_width; // L: 352 + if (var12 == 255 && var13 == 255) { + var14 = var0 + var8 + (var9 + var1) * Rasterizer2D_width; - for (var15 = var9 + var1; var15 < var3 + var9 + var1; ++var15) { // L: 353 - for (var16 = var0 + var8; var16 < var0 + var8 + var2; ++var16) { // L: 354 - var17 = (var15 - var1) % var10; // L: 355 - var18 = (var16 - var0) % var7; // L: 356 - if (var6[var18 + var17 * var7] != 0) { // L: 357 + for (var15 = var9 + var1; var15 < var3 + var9 + var1; ++var15) { + for (var16 = var0 + var8; var16 < var0 + var8 + var2; ++var16) { + var17 = (var15 - var1) % var10; + var18 = (var16 - var0) % var7; + if (var6[var18 + var17 * var7] != 0) { Rasterizer2D_pixels[var14++] = var5; } else { - Rasterizer2D_pixels[var14++] = var4; // L: 358 + Rasterizer2D_pixels[var14++] = var4; } } - var14 += var11; // L: 360 + var14 += var11; } } else { - var14 = var0 + var8 + (var9 + var1) * Rasterizer2D_width; // L: 364 + var14 = var0 + var8 + (var9 + var1) * Rasterizer2D_width; - for (var15 = var9 + var1; var15 < var3 + var9 + var1; ++var15) { // L: 365 - for (var16 = var0 + var8; var16 < var0 + var8 + var2; ++var16) { // L: 366 - var17 = (var15 - var1) % var10; // L: 367 - var18 = (var16 - var0) % var7; // L: 368 - int var19 = var4; // L: 369 - if (var6[var18 + var17 * var7] != 0) { // L: 370 + for (var15 = var9 + var1; var15 < var3 + var9 + var1; ++var15) { + for (var16 = var0 + var8; var16 < var0 + var8 + var2; ++var16) { + var17 = (var15 - var1) % var10; + var18 = (var16 - var0) % var7; + int var19 = var4; + if (var6[var18 + var17 * var7] != 0) { var19 = var5; } - int var20 = var19 >>> 24; // L: 371 - int var21 = 255 - var20; // L: 372 - int var22 = Rasterizer2D_pixels[var14]; // L: 373 - int var23 = ((var19 & 16711935) * var20 + (var22 & 16711935) * var21 & -16711936) + (var20 * (var19 & 65280) + var21 * (var22 & 65280) & 16711680) >> 8; // L: 374 - Rasterizer2D_pixels[var14++] = var23; // L: 375 + int var20 = var19 >>> 24; + int var21 = 255 - var20; + int var22 = Rasterizer2D_pixels[var14]; + int var23 = ((var19 & 16711935) * var20 + (var22 & 16711935) * var21 & -16711936) + (var20 * (var19 & 65280) + var21 * (var22 & 65280) & 16711680) >> 8; + Rasterizer2D_pixels[var14++] = var23; } - var14 += var11; // L: 377 + var14 += var11; } } } } - } // L: 380 + } - @ObfuscatedName("dm") + @ObfuscatedName("dz") @Export("Rasterizer2D_drawRectangle") public static void Rasterizer2D_drawRectangle(int var0, int var1, int var2, int var3, int var4) { - Rasterizer2D_drawHorizontalLine(var0, var1, var2, var4); // L: 383 - Rasterizer2D_drawHorizontalLine(var0, var3 + var1 - 1, var2, var4); // L: 384 - Rasterizer2D_drawVerticalLine(var0, var1, var3, var4); // L: 385 - Rasterizer2D_drawVerticalLine(var0 + var2 - 1, var1, var3, var4); // L: 386 - } // L: 387 + Rasterizer2D_drawHorizontalLine(var0, var1, var2, var4); + Rasterizer2D_drawHorizontalLine(var0, var3 + var1 - 1, var2, var4); + Rasterizer2D_drawVerticalLine(var0, var1, var3, var4); + Rasterizer2D_drawVerticalLine(var0 + var2 - 1, var1, var3, var4); + } - @ObfuscatedName("dh") + @ObfuscatedName("es") @Export("Rasterizer2D_drawRectangleAlpha") public static void Rasterizer2D_drawRectangleAlpha(int var0, int var1, int var2, int var3, int var4, int var5) { - Rasterizer2D_drawHorizontalLineAlpha(var0, var1, var2, var4, var5); // L: 390 - Rasterizer2D_drawHorizontalLineAlpha(var0, var3 + var1 - 1, var2, var4, var5); // L: 391 - if (var3 >= 3) { // L: 392 - Rasterizer2D_drawVerticalLineAlpha(var0, var1 + 1, var3 - 2, var4, var5); // L: 393 - Rasterizer2D_drawVerticalLineAlpha(var0 + var2 - 1, var1 + 1, var3 - 2, var4, var5); // L: 394 + Rasterizer2D_drawHorizontalLineAlpha(var0, var1, var2, var4, var5); + Rasterizer2D_drawHorizontalLineAlpha(var0, var3 + var1 - 1, var2, var4, var5); + if (var3 >= 3) { + Rasterizer2D_drawVerticalLineAlpha(var0, var1 + 1, var3 - 2, var4, var5); + Rasterizer2D_drawVerticalLineAlpha(var0 + var2 - 1, var1 + 1, var3 - 2, var4, var5); } - } // L: 396 + } - @ObfuscatedName("da") + @ObfuscatedName("eq") @Export("Rasterizer2D_drawHorizontalLine") public static void Rasterizer2D_drawHorizontalLine(int var0, int var1, int var2, int var3) { - if (var1 >= Rasterizer2D_yClipStart && var1 < Rasterizer2D_yClipEnd) { // L: 399 - if (var0 < Rasterizer2D_xClipStart) { // L: 400 - var2 -= Rasterizer2D_xClipStart - var0; // L: 401 - var0 = Rasterizer2D_xClipStart; // L: 402 + if (var1 >= Rasterizer2D_yClipStart && var1 < Rasterizer2D_yClipEnd) { + if (var0 < Rasterizer2D_xClipStart) { + var2 -= Rasterizer2D_xClipStart - var0; + var0 = Rasterizer2D_xClipStart; } - if (var0 + var2 > Rasterizer2D_xClipEnd) { // L: 404 + if (var0 + var2 > Rasterizer2D_xClipEnd) { var2 = Rasterizer2D_xClipEnd - var0; } - int var4 = var0 + Rasterizer2D_width * var1; // L: 405 + int var4 = var0 + Rasterizer2D_width * var1; - for (int var5 = 0; var5 < var2; ++var5) { // L: 406 + for (int var5 = 0; var5 < var2; ++var5) { Rasterizer2D_pixels[var4 + var5] = var3; } } - } // L: 407 + } - @ObfuscatedName("dz") + @ObfuscatedName("em") @Export("Rasterizer2D_drawHorizontalLineAlpha") static void Rasterizer2D_drawHorizontalLineAlpha(int var0, int var1, int var2, int var3, int var4) { - if (var1 >= Rasterizer2D_yClipStart && var1 < Rasterizer2D_yClipEnd) { // L: 410 - if (var0 < Rasterizer2D_xClipStart) { // L: 411 - var2 -= Rasterizer2D_xClipStart - var0; // L: 412 - var0 = Rasterizer2D_xClipStart; // L: 413 + if (var1 >= Rasterizer2D_yClipStart && var1 < Rasterizer2D_yClipEnd) { + if (var0 < Rasterizer2D_xClipStart) { + var2 -= Rasterizer2D_xClipStart - var0; + var0 = Rasterizer2D_xClipStart; } - if (var0 + var2 > Rasterizer2D_xClipEnd) { // L: 415 + if (var0 + var2 > Rasterizer2D_xClipEnd) { var2 = Rasterizer2D_xClipEnd - var0; } - int var5 = 256 - var4; // L: 416 - int var6 = (var3 >> 16 & 255) * var4; // L: 417 - int var7 = (var3 >> 8 & 255) * var4; // L: 418 - int var8 = var4 * (var3 & 255); // L: 419 - int var12 = var0 + Rasterizer2D_width * var1; // L: 423 + int var5 = 256 - var4; + int var6 = (var3 >> 16 & 255) * var4; + int var7 = (var3 >> 8 & 255) * var4; + int var8 = var4 * (var3 & 255); + int var12 = var0 + Rasterizer2D_width * var1; - for (int var13 = 0; var13 < var2; ++var13) { // L: 424 - int var9 = var5 * (Rasterizer2D_pixels[var12] >> 16 & 255); // L: 425 - int var10 = (Rasterizer2D_pixels[var12] >> 8 & 255) * var5; // L: 426 - int var11 = var5 * (Rasterizer2D_pixels[var12] & 255); // L: 427 - int var14 = (var8 + var11 >> 8) + (var6 + var9 >> 8 << 16) + (var7 + var10 >> 8 << 8); // L: 428 - Rasterizer2D_pixels[var12++] = var14; // L: 429 + for (int var13 = 0; var13 < var2; ++var13) { + int var9 = var5 * (Rasterizer2D_pixels[var12] >> 16 & 255); + int var10 = (Rasterizer2D_pixels[var12] >> 8 & 255) * var5; + int var11 = var5 * (Rasterizer2D_pixels[var12] & 255); + int var14 = (var8 + var11 >> 8) + (var6 + var9 >> 8 << 16) + (var7 + var10 >> 8 << 8); + Rasterizer2D_pixels[var12++] = var14; } } - } // L: 431 + } - @ObfuscatedName("ds") + @ObfuscatedName("eg") @Export("Rasterizer2D_drawVerticalLine") public static void Rasterizer2D_drawVerticalLine(int var0, int var1, int var2, int var3) { - if (var0 >= Rasterizer2D_xClipStart && var0 < Rasterizer2D_xClipEnd) { // L: 434 - if (var1 < Rasterizer2D_yClipStart) { // L: 435 - var2 -= Rasterizer2D_yClipStart - var1; // L: 436 - var1 = Rasterizer2D_yClipStart; // L: 437 + if (var0 >= Rasterizer2D_xClipStart && var0 < Rasterizer2D_xClipEnd) { + if (var1 < Rasterizer2D_yClipStart) { + var2 -= Rasterizer2D_yClipStart - var1; + var1 = Rasterizer2D_yClipStart; } - if (var2 + var1 > Rasterizer2D_yClipEnd) { // L: 439 + if (var2 + var1 > Rasterizer2D_yClipEnd) { var2 = Rasterizer2D_yClipEnd - var1; } - int var4 = var0 + Rasterizer2D_width * var1; // L: 440 + int var4 = var0 + Rasterizer2D_width * var1; - for (int var5 = 0; var5 < var2; ++var5) { // L: 441 + for (int var5 = 0; var5 < var2; ++var5) { Rasterizer2D_pixels[var4 + var5 * Rasterizer2D_width] = var3; } } - } // L: 442 + } - @ObfuscatedName("dc") + @ObfuscatedName("eu") @Export("Rasterizer2D_drawVerticalLineAlpha") static void Rasterizer2D_drawVerticalLineAlpha(int var0, int var1, int var2, int var3, int var4) { - if (var0 >= Rasterizer2D_xClipStart && var0 < Rasterizer2D_xClipEnd) { // L: 445 - if (var1 < Rasterizer2D_yClipStart) { // L: 446 - var2 -= Rasterizer2D_yClipStart - var1; // L: 447 - var1 = Rasterizer2D_yClipStart; // L: 448 + if (var0 >= Rasterizer2D_xClipStart && var0 < Rasterizer2D_xClipEnd) { + if (var1 < Rasterizer2D_yClipStart) { + var2 -= Rasterizer2D_yClipStart - var1; + var1 = Rasterizer2D_yClipStart; } - if (var2 + var1 > Rasterizer2D_yClipEnd) { // L: 450 + if (var2 + var1 > Rasterizer2D_yClipEnd) { var2 = Rasterizer2D_yClipEnd - var1; } - int var5 = 256 - var4; // L: 451 - int var6 = (var3 >> 16 & 255) * var4; // L: 452 - int var7 = (var3 >> 8 & 255) * var4; // L: 453 - int var8 = var4 * (var3 & 255); // L: 454 - int var12 = var0 + Rasterizer2D_width * var1; // L: 458 + int var5 = 256 - var4; + int var6 = (var3 >> 16 & 255) * var4; + int var7 = (var3 >> 8 & 255) * var4; + int var8 = var4 * (var3 & 255); + int var12 = var0 + Rasterizer2D_width * var1; - for (int var13 = 0; var13 < var2; ++var13) { // L: 459 - int var9 = var5 * (Rasterizer2D_pixels[var12] >> 16 & 255); // L: 460 - int var10 = (Rasterizer2D_pixels[var12] >> 8 & 255) * var5; // L: 461 - int var11 = var5 * (Rasterizer2D_pixels[var12] & 255); // L: 462 - int var14 = (var8 + var11 >> 8) + (var6 + var9 >> 8 << 16) + (var7 + var10 >> 8 << 8); // L: 463 - Rasterizer2D_pixels[var12] = var14; // L: 464 - var12 += Rasterizer2D_width; // L: 465 + for (int var13 = 0; var13 < var2; ++var13) { + int var9 = var5 * (Rasterizer2D_pixels[var12] >> 16 & 255); + int var10 = (Rasterizer2D_pixels[var12] >> 8 & 255) * var5; + int var11 = var5 * (Rasterizer2D_pixels[var12] & 255); + int var14 = (var8 + var11 >> 8) + (var6 + var9 >> 8 << 16) + (var7 + var10 >> 8 << 8); + Rasterizer2D_pixels[var12] = var14; + var12 += Rasterizer2D_width; } } - } // L: 467 + } - @ObfuscatedName("dy") + @ObfuscatedName("ec") @Export("Rasterizer2D_drawLine") public static void Rasterizer2D_drawLine(int var0, int var1, int var2, int var3, int var4) { - var2 -= var0; // L: 470 - var3 -= var1; // L: 471 - if (var3 == 0) { // L: 472 - if (var2 >= 0) { // L: 473 + var2 -= var0; + var3 -= var1; + if (var3 == 0) { + if (var2 >= 0) { Rasterizer2D_drawHorizontalLine(var0, var1, var2 + 1, var4); } else { - Rasterizer2D_drawHorizontalLine(var0 + var2, var1, -var2 + 1, var4); // L: 474 + Rasterizer2D_drawHorizontalLine(var0 + var2, var1, -var2 + 1, var4); } - } else if (var2 == 0) { // L: 477 - if (var3 >= 0) { // L: 478 + } else if (var2 == 0) { + if (var3 >= 0) { Rasterizer2D_drawVerticalLine(var0, var1, var3 + 1, var4); } else { - Rasterizer2D_drawVerticalLine(var0, var3 + var1, -var3 + 1, var4); // L: 479 + Rasterizer2D_drawVerticalLine(var0, var3 + var1, -var3 + 1, var4); } } else { - if (var3 + var2 < 0) { // L: 482 - var0 += var2; // L: 483 - var2 = -var2; // L: 484 - var1 += var3; // L: 485 - var3 = -var3; // L: 486 + if (var3 + var2 < 0) { + var0 += var2; + var2 = -var2; + var1 += var3; + var3 = -var3; } int var5; int var6; - if (var2 > var3) { // L: 488 - var1 <<= 16; // L: 489 - var1 += 32768; // L: 490 - var3 <<= 16; // L: 491 - var5 = (int)Math.floor((double)var3 / (double)var2 + 0.5D); // L: 492 - var2 += var0; // L: 493 - if (var0 < Rasterizer2D_xClipStart) { // L: 494 - var1 += var5 * (Rasterizer2D_xClipStart - var0); // L: 495 - var0 = Rasterizer2D_xClipStart; // L: 496 + if (var2 > var3) { + var1 <<= 16; + var1 += 32768; + var3 <<= 16; + var5 = (int)Math.floor((double)var3 / (double)var2 + 0.5D); + var2 += var0; + if (var0 < Rasterizer2D_xClipStart) { + var1 += var5 * (Rasterizer2D_xClipStart - var0); + var0 = Rasterizer2D_xClipStart; } - if (var2 >= Rasterizer2D_xClipEnd) { // L: 498 + if (var2 >= Rasterizer2D_xClipEnd) { var2 = Rasterizer2D_xClipEnd - 1; } - while (var0 <= var2) { // L: 499 - var6 = var1 >> 16; // L: 500 - if (var6 >= Rasterizer2D_yClipStart && var6 < Rasterizer2D_yClipEnd) { // L: 501 + while (var0 <= var2) { + var6 = var1 >> 16; + if (var6 >= Rasterizer2D_yClipStart && var6 < Rasterizer2D_yClipEnd) { Rasterizer2D_pixels[var0 + var6 * Rasterizer2D_width] = var4; } - var1 += var5; // L: 502 - ++var0; // L: 503 + var1 += var5; + ++var0; } } else { - var0 <<= 16; // L: 507 - var0 += 32768; // L: 508 - var2 <<= 16; // L: 509 - var5 = (int)Math.floor((double)var2 / (double)var3 + 0.5D); // L: 510 - var3 += var1; // L: 511 - if (var1 < Rasterizer2D_yClipStart) { // L: 512 - var0 += (Rasterizer2D_yClipStart - var1) * var5; // L: 513 - var1 = Rasterizer2D_yClipStart; // L: 514 + var0 <<= 16; + var0 += 32768; + var2 <<= 16; + var5 = (int)Math.floor((double)var2 / (double)var3 + 0.5D); + var3 += var1; + if (var1 < Rasterizer2D_yClipStart) { + var0 += (Rasterizer2D_yClipStart - var1) * var5; + var1 = Rasterizer2D_yClipStart; } - if (var3 >= Rasterizer2D_yClipEnd) { // L: 516 + if (var3 >= Rasterizer2D_yClipEnd) { var3 = Rasterizer2D_yClipEnd - 1; } - while (var1 <= var3) { // L: 517 - var6 = var0 >> 16; // L: 518 - if (var6 >= Rasterizer2D_xClipStart && var6 < Rasterizer2D_xClipEnd) { // L: 519 + while (var1 <= var3) { + var6 = var0 >> 16; + if (var6 >= Rasterizer2D_xClipStart && var6 < Rasterizer2D_xClipEnd) { Rasterizer2D_pixels[var6 + Rasterizer2D_width * var1] = var4; } - var0 += var5; // L: 520 - ++var1; // L: 521 + var0 += var5; + ++var1; } } } - } // L: 475 480 524 + } - @ObfuscatedName("dj") + @ObfuscatedName("eh") @Export("Rasterizer2D_setPixel") static void Rasterizer2D_setPixel(int var0, int var1, int var2) { - if (var0 >= Rasterizer2D_xClipStart && var1 >= Rasterizer2D_yClipStart && var0 < Rasterizer2D_xClipEnd && var1 < Rasterizer2D_yClipEnd) { // L: 527 - Rasterizer2D_pixels[var0 + Rasterizer2D_width * var1] = var2; // L: 528 + if (var0 >= Rasterizer2D_xClipStart && var1 >= Rasterizer2D_yClipStart && var0 < Rasterizer2D_xClipEnd && var1 < Rasterizer2D_yClipEnd) { + Rasterizer2D_pixels[var0 + Rasterizer2D_width * var1] = var2; } - } // L: 529 + } - @ObfuscatedName("dw") + @ObfuscatedName("ee") @Export("Rasterizer2D_fillMaskedRectangle") public static void Rasterizer2D_fillMaskedRectangle(int var0, int var1, int var2, int[] var3, int[] var4) { - int var5 = var0 + Rasterizer2D_width * var1; // L: 532 + int var5 = var0 + Rasterizer2D_width * var1; - for (var1 = 0; var1 < var3.length; ++var1) { // L: 533 - int var6 = var5 + var3[var1]; // L: 534 + for (var1 = 0; var1 < var3.length; ++var1) { + int var6 = var5 + var3[var1]; - for (var0 = -var4[var1]; var0 < 0; ++var0) { // L: 535 + for (var0 = -var4[var1]; var0 < 0; ++var0) { Rasterizer2D_pixels[var6++] = var2; } - var5 += Rasterizer2D_width; // L: 536 + var5 += Rasterizer2D_width; } - } // L: 538 + } } diff --git a/runescape-client/src/main/java/Rasterizer3D.java b/runescape-client/src/main/java/Rasterizer3D.java index 8dcdd7272b..db77efd007 100644 --- a/runescape-client/src/main/java/Rasterizer3D.java +++ b/runescape-client/src/main/java/Rasterizer3D.java @@ -3,763 +3,763 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("et") +@ObfuscatedName("ek") @Implements("Rasterizer3D") public class Rasterizer3D extends Rasterizer2D { - @ObfuscatedName("f") - static boolean field1800; - @ObfuscatedName("b") - static boolean field1811; - @ObfuscatedName("l") + @ObfuscatedName("h") + static boolean field1791; + @ObfuscatedName("v") + static boolean field1779; + @ObfuscatedName("x") @Export("Rasterizer3D_isLowDetailTexture") static boolean Rasterizer3D_isLowDetailTexture; - @ObfuscatedName("m") - public static boolean field1794; - @ObfuscatedName("z") + @ObfuscatedName("w") + public static boolean field1782; + @ObfuscatedName("t") @Export("Rasterizer3D_alpha") static int Rasterizer3D_alpha; - @ObfuscatedName("o") + @ObfuscatedName("e") @Export("Rasterizer3D_zoom") public static int Rasterizer3D_zoom; - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("Rasterizer3D_clipMidX") static int Rasterizer3D_clipMidX; - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("Rasterizer3D_clipMidY") static int Rasterizer3D_clipMidY; - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("Rasterizer3D_clipWidth") static int Rasterizer3D_clipWidth; - @ObfuscatedName("r") + @ObfuscatedName("f") @Export("Rasterizer3D_clipHeight") static int Rasterizer3D_clipHeight; - @ObfuscatedName("y") + @ObfuscatedName("a") @Export("Rasterizer3D_clipNegativeMidX") static int Rasterizer3D_clipNegativeMidX; - @ObfuscatedName("s") + @ObfuscatedName("b") @Export("Rasterizer3D_clipMidX2") static int Rasterizer3D_clipMidX2; - @ObfuscatedName("j") + @ObfuscatedName("y") @Export("Rasterizer3D_clipNegativeMidY") static int Rasterizer3D_clipNegativeMidY; - @ObfuscatedName("w") + @ObfuscatedName("r") @Export("Rasterizer3D_clipMidY2") static int Rasterizer3D_clipMidY2; - @ObfuscatedName("v") + @ObfuscatedName("q") @Export("Rasterizer3D_rowOffsets") static int[] Rasterizer3D_rowOffsets; - @ObfuscatedName("d") + @ObfuscatedName("g") @Export("Rasterizer3D_colorPalette") public static int[] Rasterizer3D_colorPalette; - @ObfuscatedName("a") + @ObfuscatedName("s") @ObfuscatedSignature( - descriptor = "Lea;" + descriptor = "Lex;" ) @Export("Rasterizer3D_textureLoader") public static TextureLoader Rasterizer3D_textureLoader; - @ObfuscatedName("g") - static int[] field1812; - @ObfuscatedName("h") - static int[] field1813; - @ObfuscatedName("i") + @ObfuscatedName("o") + static int[] field1802; + @ObfuscatedName("k") + static int[] field1803; + @ObfuscatedName("d") @Export("Rasterizer3D_sine") public static int[] Rasterizer3D_sine; - @ObfuscatedName("ab") + @ObfuscatedName("an") @Export("Rasterizer3D_cosine") public static int[] Rasterizer3D_cosine; static { - field1800 = false; // L: 8 - field1811 = false; // L: 9 - Rasterizer3D_isLowDetailTexture = false; // L: 10 - field1794 = true; // L: 11 - Rasterizer3D_alpha = 0; // L: 12 - Rasterizer3D_zoom = 512; // L: 19 - Rasterizer3D_rowOffsets = new int[1024]; // L: 28 - Rasterizer3D_colorPalette = new int[65536]; // L: 29 - field1812 = new int[512]; // L: 31 - field1813 = new int[2048]; // L: 32 - Rasterizer3D_sine = new int[2048]; // L: 33 - Rasterizer3D_cosine = new int[2048]; // L: 34 + field1791 = false; + field1779 = false; + Rasterizer3D_isLowDetailTexture = false; + field1782 = true; + Rasterizer3D_alpha = 0; + Rasterizer3D_zoom = 512; + Rasterizer3D_rowOffsets = new int[1024]; + Rasterizer3D_colorPalette = new int[65536]; + field1802 = new int[512]; + field1803 = new int[2048]; + Rasterizer3D_sine = new int[2048]; + Rasterizer3D_cosine = new int[2048]; int var0; - for (var0 = 1; var0 < 512; ++var0) { // L: 37 - field1812[var0] = 32768 / var0; // L: 38 + for (var0 = 1; var0 < 512; ++var0) { + field1802[var0] = 32768 / var0; } - for (var0 = 1; var0 < 2048; ++var0) { // L: 40 - field1813[var0] = 65536 / var0; // L: 41 + for (var0 = 1; var0 < 2048; ++var0) { + field1803[var0] = 65536 / var0; } - for (var0 = 0; var0 < 2048; ++var0) { // L: 43 - Rasterizer3D_sine[var0] = (int)(65536.0D * Math.sin((double)var0 * 0.0030679615D)); // L: 44 - Rasterizer3D_cosine[var0] = (int)(65536.0D * Math.cos((double)var0 * 0.0030679615D)); // L: 45 + for (var0 = 0; var0 < 2048; ++var0) { + Rasterizer3D_sine[var0] = (int)(65536.0D * Math.sin((double)var0 * 0.0030679615D)); + Rasterizer3D_cosine[var0] = (int)(65536.0D * Math.cos((double)var0 * 0.0030679615D)); } - } // L: 47 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("Rasterizer3D_setClipFromRasterizer2D") public static final void Rasterizer3D_setClipFromRasterizer2D() { - Rasterizer3D_setClip(Rasterizer2D.Rasterizer2D_xClipStart, Rasterizer2D.Rasterizer2D_yClipStart, Rasterizer2D.Rasterizer2D_xClipEnd, Rasterizer2D.Rasterizer2D_yClipEnd); // L: 54 - } // L: 55 + Rasterizer3D_setClip(Rasterizer2D.Rasterizer2D_xClipStart, Rasterizer2D.Rasterizer2D_yClipStart, Rasterizer2D.Rasterizer2D_xClipEnd, Rasterizer2D.Rasterizer2D_yClipEnd); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("Rasterizer3D_setClip") static final void Rasterizer3D_setClip(int var0, int var1, int var2, int var3) { - Rasterizer3D_clipWidth = var2 - var0; // L: 58 - Rasterizer3D_clipHeight = var3 - var1; // L: 59 - Rasterizer3D_method3(); // L: 60 - if (Rasterizer3D_rowOffsets.length < Rasterizer3D_clipHeight) { // L: 61 - Rasterizer3D_rowOffsets = new int[WorldMapData_0.method266(Rasterizer3D_clipHeight)]; + Rasterizer3D_clipWidth = var2 - var0; + Rasterizer3D_clipHeight = var3 - var1; + Rasterizer3D_method3(); + if (Rasterizer3D_rowOffsets.length < Rasterizer3D_clipHeight) { + Rasterizer3D_rowOffsets = new int[World.method1870(Rasterizer3D_clipHeight)]; } - int var4 = var0 + Rasterizer2D.Rasterizer2D_width * var1; // L: 62 + int var4 = var0 + Rasterizer2D.Rasterizer2D_width * var1; - for (int var5 = 0; var5 < Rasterizer3D_clipHeight; ++var5) { // L: 63 - Rasterizer3D_rowOffsets[var5] = var4; // L: 64 - var4 += Rasterizer2D.Rasterizer2D_width; // L: 65 + for (int var5 = 0; var5 < Rasterizer3D_clipHeight; ++var5) { + Rasterizer3D_rowOffsets[var5] = var4; + var4 += Rasterizer2D.Rasterizer2D_width; } - } // L: 67 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("Rasterizer3D_method3") public static final void Rasterizer3D_method3() { - Rasterizer3D_clipMidX = Rasterizer3D_clipWidth / 2; // L: 70 - Rasterizer3D_clipMidY = Rasterizer3D_clipHeight / 2; // L: 71 - Rasterizer3D_clipNegativeMidX = -Rasterizer3D_clipMidX; // L: 72 - Rasterizer3D_clipMidX2 = Rasterizer3D_clipWidth - Rasterizer3D_clipMidX; // L: 73 - Rasterizer3D_clipNegativeMidY = -Rasterizer3D_clipMidY; // L: 74 - Rasterizer3D_clipMidY2 = Rasterizer3D_clipHeight - Rasterizer3D_clipMidY; // L: 75 - } // L: 76 + Rasterizer3D_clipMidX = Rasterizer3D_clipWidth / 2; + Rasterizer3D_clipMidY = Rasterizer3D_clipHeight / 2; + Rasterizer3D_clipNegativeMidX = -Rasterizer3D_clipMidX; + Rasterizer3D_clipMidX2 = Rasterizer3D_clipWidth - Rasterizer3D_clipMidX; + Rasterizer3D_clipNegativeMidY = -Rasterizer3D_clipMidY; + Rasterizer3D_clipMidY2 = Rasterizer3D_clipHeight - Rasterizer3D_clipMidY; + } - @ObfuscatedName("m") - public static final void method3174(int var0, int var1) { - int var2 = Rasterizer3D_rowOffsets[0]; // L: 79 - int var3 = var2 / Rasterizer2D.Rasterizer2D_width; // L: 80 - int var4 = var2 - var3 * Rasterizer2D.Rasterizer2D_width; // L: 81 - Rasterizer3D_clipMidX = var0 - var4; // L: 82 - Rasterizer3D_clipMidY = var1 - var3; // L: 83 - Rasterizer3D_clipNegativeMidX = -Rasterizer3D_clipMidX; // L: 84 - Rasterizer3D_clipMidX2 = Rasterizer3D_clipWidth - Rasterizer3D_clipMidX; // L: 85 - Rasterizer3D_clipNegativeMidY = -Rasterizer3D_clipMidY; // L: 86 - Rasterizer3D_clipMidY2 = Rasterizer3D_clipHeight - Rasterizer3D_clipMidY; // L: 87 - } // L: 88 + @ObfuscatedName("w") + public static final void method3138(int var0, int var1) { + int var2 = Rasterizer3D_rowOffsets[0]; + int var3 = var2 / Rasterizer2D.Rasterizer2D_width; + int var4 = var2 - var3 * Rasterizer2D.Rasterizer2D_width; + Rasterizer3D_clipMidX = var0 - var4; + Rasterizer3D_clipMidY = var1 - var3; + Rasterizer3D_clipNegativeMidX = -Rasterizer3D_clipMidX; + Rasterizer3D_clipMidX2 = Rasterizer3D_clipWidth - Rasterizer3D_clipMidX; + Rasterizer3D_clipNegativeMidY = -Rasterizer3D_clipMidY; + Rasterizer3D_clipMidY2 = Rasterizer3D_clipHeight - Rasterizer3D_clipMidY; + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(Lea;)V" + descriptor = "(Lex;)V" ) @Export("Rasterizer3D_setTextureLoader") public static final void Rasterizer3D_setTextureLoader(TextureLoader var0) { - Rasterizer3D_textureLoader = var0; // L: 91 - } // L: 92 + Rasterizer3D_textureLoader = var0; + } - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("Rasterizer3D_setBrightness") public static final void Rasterizer3D_setBrightness(double var0) { - Rasterizer3D_buildPalette(var0, 0, 512); // L: 95 - } // L: 96 + Rasterizer3D_buildPalette(var0, 0, 512); + } - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("Rasterizer3D_buildPalette") static final void Rasterizer3D_buildPalette(double var0, int var2, int var3) { - int var4 = var2 * 128; // L: 99 + int var4 = var2 * 128; - for (int var5 = var2; var5 < var3; ++var5) { // L: 100 - double var6 = (double)(var5 >> 3) / 64.0D + 0.0078125D; // L: 101 - double var8 = (double)(var5 & 7) / 8.0D + 0.0625D; // L: 102 + for (int var5 = var2; var5 < var3; ++var5) { + double var6 = (double)(var5 >> 3) / 64.0D + 0.0078125D; + double var8 = (double)(var5 & 7) / 8.0D + 0.0625D; - for (int var10 = 0; var10 < 128; ++var10) { // L: 103 - double var11 = (double)var10 / 128.0D; // L: 104 - double var13 = var11; // L: 105 - double var15 = var11; // L: 106 - double var17 = var11; // L: 107 - if (var8 != 0.0D) { // L: 108 + for (int var10 = 0; var10 < 128; ++var10) { + double var11 = (double)var10 / 128.0D; + double var13 = var11; + double var15 = var11; + double var17 = var11; + if (var8 != 0.0D) { double var19; - if (var11 < 0.5D) { // L: 110 + if (var11 < 0.5D) { var19 = var11 * (1.0D + var8); } else { - var19 = var11 + var8 - var11 * var8; // L: 111 + var19 = var11 + var8 - var11 * var8; } - double var21 = 2.0D * var11 - var19; // L: 112 - double var23 = var6 + 0.3333333333333333D; // L: 113 - if (var23 > 1.0D) { // L: 114 + double var21 = 2.0D * var11 - var19; + double var23 = var6 + 0.3333333333333333D; + if (var23 > 1.0D) { --var23; } - double var27 = var6 - 0.3333333333333333D; // L: 116 - if (var27 < 0.0D) { // L: 117 + double var27 = var6 - 0.3333333333333333D; + if (var27 < 0.0D) { ++var27; } - if (6.0D * var23 < 1.0D) { // L: 118 + if (6.0D * var23 < 1.0D) { var13 = var21 + (var19 - var21) * 6.0D * var23; - } else if (2.0D * var23 < 1.0D) { // L: 119 + } else if (2.0D * var23 < 1.0D) { var13 = var19; - } else if (3.0D * var23 < 2.0D) { // L: 120 + } else if (3.0D * var23 < 2.0D) { var13 = var21 + (var19 - var21) * (0.6666666666666666D - var23) * 6.0D; } else { - var13 = var21; // L: 121 + var13 = var21; } - if (6.0D * var6 < 1.0D) { // L: 122 + if (6.0D * var6 < 1.0D) { var15 = var21 + (var19 - var21) * 6.0D * var6; - } else if (2.0D * var6 < 1.0D) { // L: 123 + } else if (2.0D * var6 < 1.0D) { var15 = var19; - } else if (3.0D * var6 < 2.0D) { // L: 124 + } else if (3.0D * var6 < 2.0D) { var15 = var21 + (var19 - var21) * (0.6666666666666666D - var6) * 6.0D; } else { - var15 = var21; // L: 125 + var15 = var21; } - if (6.0D * var27 < 1.0D) { // L: 126 + if (6.0D * var27 < 1.0D) { var17 = var21 + (var19 - var21) * 6.0D * var27; - } else if (2.0D * var27 < 1.0D) { // L: 127 + } else if (2.0D * var27 < 1.0D) { var17 = var19; - } else if (3.0D * var27 < 2.0D) { // L: 128 + } else if (3.0D * var27 < 2.0D) { var17 = var21 + (var19 - var21) * (0.6666666666666666D - var27) * 6.0D; } else { - var17 = var21; // L: 129 + var17 = var21; } } - int var29 = (int)(var13 * 256.0D); // L: 131 - int var20 = (int)(var15 * 256.0D); // L: 132 - int var30 = (int)(var17 * 256.0D); // L: 133 - int var22 = var30 + (var20 << 8) + (var29 << 16); // L: 134 - var22 = Rasterizer3D_brighten(var22, var0); // L: 135 - if (var22 == 0) { // L: 136 + int var29 = (int)(var13 * 256.0D); + int var20 = (int)(var15 * 256.0D); + int var30 = (int)(var17 * 256.0D); + int var22 = var30 + (var20 << 8) + (var29 << 16); + var22 = Rasterizer3D_brighten(var22, var0); + if (var22 == 0) { var22 = 1; } - Rasterizer3D_colorPalette[var4++] = var22; // L: 137 + Rasterizer3D_colorPalette[var4++] = var22; } } - } // L: 140 - - @ObfuscatedName("c") - @Export("Rasterizer3D_brighten") - static int Rasterizer3D_brighten(int var0, double var1) { - double var3 = (double)(var0 >> 16) / 256.0D; // L: 143 - double var5 = (double)(var0 >> 8 & 255) / 256.0D; // L: 144 - double var7 = (double)(var0 & 255) / 256.0D; // L: 145 - var3 = Math.pow(var3, var1); // L: 146 - var5 = Math.pow(var5, var1); // L: 147 - var7 = Math.pow(var7, var1); // L: 148 - int var9 = (int)(var3 * 256.0D); // L: 149 - int var10 = (int)(var5 * 256.0D); // L: 150 - int var11 = (int)(var7 * 256.0D); // L: 151 - return var11 + (var10 << 8) + (var9 << 16); // L: 152 } - @ObfuscatedName("u") - public static void method3137(int var0, int var1, int var2) { - field1800 = var0 < 0 || var0 > Rasterizer3D_clipWidth || var1 < 0 || var1 > Rasterizer3D_clipWidth || var2 < 0 || var2 > Rasterizer3D_clipWidth; // L: 156 - } // L: 157 + @ObfuscatedName("p") + @Export("Rasterizer3D_brighten") + static int Rasterizer3D_brighten(int var0, double var1) { + double var3 = (double)(var0 >> 16) / 256.0D; + double var5 = (double)(var0 >> 8 & 255) / 256.0D; + double var7 = (double)(var0 & 255) / 256.0D; + var3 = Math.pow(var3, var1); + var5 = Math.pow(var5, var1); + var7 = Math.pow(var7, var1); + int var9 = (int)(var3 * 256.0D); + int var10 = (int)(var5 * 256.0D); + int var11 = (int)(var7 * 256.0D); + return var11 + (var10 << 8) + (var9 << 16); + } - @ObfuscatedName("t") - static final void method3155(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { - int var9 = var4 - var3; // L: 160 - int var10 = var1 - var0; // L: 161 - int var11 = var5 - var3; // L: 162 - int var12 = var2 - var0; // L: 163 - int var13 = var7 - var6; // L: 164 - int var14 = var8 - var6; // L: 165 + @ObfuscatedName("l") + public static void method3078(int var0, int var1, int var2) { + field1791 = var0 < 0 || var0 > Rasterizer3D_clipWidth || var1 < 0 || var1 > Rasterizer3D_clipWidth || var2 < 0 || var2 > Rasterizer3D_clipWidth; + } + + @ObfuscatedName("z") + static final void method3079(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { + int var9 = var4 - var3; + int var10 = var1 - var0; + int var11 = var5 - var3; + int var12 = var2 - var0; + int var13 = var7 - var6; + int var14 = var8 - var6; int var15; - if (var2 != var1) { // L: 167 + if (var2 != var1) { var15 = (var5 - var4 << 14) / (var2 - var1); } else { - var15 = 0; // L: 168 + var15 = 0; } int var16; - if (var0 != var1) { // L: 170 + if (var0 != var1) { var16 = (var9 << 14) / var10; } else { - var16 = 0; // L: 171 + var16 = 0; } int var17; - if (var0 != var2) { // L: 173 + if (var0 != var2) { var17 = (var11 << 14) / var12; } else { - var17 = 0; // L: 174 + var17 = 0; } - int var18 = var9 * var12 - var11 * var10; // L: 175 - if (var18 != 0) { // L: 176 - int var19 = (var13 * var12 - var14 * var10 << 8) / var18; // L: 177 - int var20 = (var14 * var9 - var13 * var11 << 8) / var18; // L: 178 - if (var0 <= var1 && var0 <= var2) { // L: 179 - if (var0 < Rasterizer3D_clipHeight) { // L: 180 - if (var1 > Rasterizer3D_clipHeight) { // L: 181 + int var18 = var9 * var12 - var11 * var10; + if (var18 != 0) { + int var19 = (var13 * var12 - var14 * var10 << 8) / var18; + int var20 = (var14 * var9 - var13 * var11 << 8) / var18; + if (var0 <= var1 && var0 <= var2) { + if (var0 < Rasterizer3D_clipHeight) { + if (var1 > Rasterizer3D_clipHeight) { var1 = Rasterizer3D_clipHeight; } - if (var2 > Rasterizer3D_clipHeight) { // L: 182 + if (var2 > Rasterizer3D_clipHeight) { var2 = Rasterizer3D_clipHeight; } - var6 = var19 + ((var6 << 8) - var3 * var19); // L: 183 - if (var1 < var2) { // L: 184 - var5 = var3 <<= 14; // L: 185 - if (var0 < 0) { // L: 186 - var5 -= var0 * var17; // L: 187 - var3 -= var0 * var16; // L: 188 - var6 -= var0 * var20; // L: 189 - var0 = 0; // L: 190 + var6 = var19 + ((var6 << 8) - var3 * var19); + if (var1 < var2) { + var5 = var3 <<= 14; + if (var0 < 0) { + var5 -= var0 * var17; + var3 -= var0 * var16; + var6 -= var0 * var20; + var0 = 0; } - var4 <<= 14; // L: 192 - if (var1 < 0) { // L: 193 - var4 -= var15 * var1; // L: 194 - var1 = 0; // L: 195 + var4 <<= 14; + if (var1 < 0) { + var4 -= var15 * var1; + var1 = 0; } - if ((var0 == var1 || var17 >= var16) && (var0 != var1 || var17 <= var15)) { // L: 197 - var2 -= var1; // L: 218 - var1 -= var0; // L: 219 - var0 = Rasterizer3D_rowOffsets[var0]; // L: 220 + if ((var0 == var1 || var17 >= var16) && (var0 != var1 || var17 <= var15)) { + var2 -= var1; + var1 -= var0; + var0 = Rasterizer3D_rowOffsets[var0]; while (true) { - --var1; // L: 221 + --var1; if (var1 < 0) { while (true) { - --var2; // L: 228 + --var2; if (var2 < 0) { - return; // L: 235 + return; } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, 0, 0, var4 >> 14, var5 >> 14, var6, var19); // L: 229 - var5 += var17; // L: 230 - var4 += var15; // L: 231 - var6 += var20; // L: 232 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 233 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, 0, 0, var4 >> 14, var5 >> 14, var6, var19); + var5 += var17; + var4 += var15; + var6 += var20; + var0 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, 0, 0, var3 >> 14, var5 >> 14, var6, var19); // L: 222 - var5 += var17; // L: 223 - var3 += var16; // L: 224 - var6 += var20; // L: 225 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 226 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, 0, 0, var3 >> 14, var5 >> 14, var6, var19); + var5 += var17; + var3 += var16; + var6 += var20; + var0 += Rasterizer2D.Rasterizer2D_width; } } else { - var2 -= var1; // L: 198 - var1 -= var0; // L: 199 - var0 = Rasterizer3D_rowOffsets[var0]; // L: 200 + var2 -= var1; + var1 -= var0; + var0 = Rasterizer3D_rowOffsets[var0]; while (true) { - --var1; // L: 201 + --var1; if (var1 < 0) { while (true) { - --var2; // L: 208 + --var2; if (var2 < 0) { - return; // L: 215 + return; } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, 0, 0, var5 >> 14, var4 >> 14, var6, var19); // L: 209 - var5 += var17; // L: 210 - var4 += var15; // L: 211 - var6 += var20; // L: 212 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 213 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, 0, 0, var5 >> 14, var4 >> 14, var6, var19); + var5 += var17; + var4 += var15; + var6 += var20; + var0 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, 0, 0, var5 >> 14, var3 >> 14, var6, var19); // L: 202 - var5 += var17; // L: 203 - var3 += var16; // L: 204 - var6 += var20; // L: 205 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 206 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, 0, 0, var5 >> 14, var3 >> 14, var6, var19); + var5 += var17; + var3 += var16; + var6 += var20; + var0 += Rasterizer2D.Rasterizer2D_width; } } } else { - var4 = var3 <<= 14; // L: 239 - if (var0 < 0) { // L: 240 - var4 -= var0 * var17; // L: 241 - var3 -= var0 * var16; // L: 242 - var6 -= var0 * var20; // L: 243 - var0 = 0; // L: 244 + var4 = var3 <<= 14; + if (var0 < 0) { + var4 -= var0 * var17; + var3 -= var0 * var16; + var6 -= var0 * var20; + var0 = 0; } - var5 <<= 14; // L: 246 - if (var2 < 0) { // L: 247 - var5 -= var15 * var2; // L: 248 - var2 = 0; // L: 249 + var5 <<= 14; + if (var2 < 0) { + var5 -= var15 * var2; + var2 = 0; } - if (var0 != var2 && var17 < var16 || var0 == var2 && var15 > var16) { // L: 251 - var1 -= var2; // L: 252 - var2 -= var0; // L: 253 - var0 = Rasterizer3D_rowOffsets[var0]; // L: 254 + if (var0 != var2 && var17 < var16 || var0 == var2 && var15 > var16) { + var1 -= var2; + var2 -= var0; + var0 = Rasterizer3D_rowOffsets[var0]; while (true) { - --var2; // L: 255 + --var2; if (var2 < 0) { while (true) { - --var1; // L: 262 + --var1; if (var1 < 0) { - return; // L: 269 + return; } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, 0, 0, var5 >> 14, var3 >> 14, var6, var19); // L: 263 - var5 += var15; // L: 264 - var3 += var16; // L: 265 - var6 += var20; // L: 266 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 267 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, 0, 0, var5 >> 14, var3 >> 14, var6, var19); + var5 += var15; + var3 += var16; + var6 += var20; + var0 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, 0, 0, var4 >> 14, var3 >> 14, var6, var19); // L: 256 - var4 += var17; // L: 257 - var3 += var16; // L: 258 - var6 += var20; // L: 259 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 260 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, 0, 0, var4 >> 14, var3 >> 14, var6, var19); + var4 += var17; + var3 += var16; + var6 += var20; + var0 += Rasterizer2D.Rasterizer2D_width; } } else { - var1 -= var2; // L: 272 - var2 -= var0; // L: 273 - var0 = Rasterizer3D_rowOffsets[var0]; // L: 274 + var1 -= var2; + var2 -= var0; + var0 = Rasterizer3D_rowOffsets[var0]; while (true) { - --var2; // L: 275 + --var2; if (var2 < 0) { while (true) { - --var1; // L: 282 + --var1; if (var1 < 0) { - return; // L: 289 + return; } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, 0, 0, var3 >> 14, var5 >> 14, var6, var19); // L: 283 - var5 += var15; // L: 284 - var3 += var16; // L: 285 - var6 += var20; // L: 286 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 287 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, 0, 0, var3 >> 14, var5 >> 14, var6, var19); + var5 += var15; + var3 += var16; + var6 += var20; + var0 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, 0, 0, var3 >> 14, var4 >> 14, var6, var19); // L: 276 - var4 += var17; // L: 277 - var3 += var16; // L: 278 - var6 += var20; // L: 279 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 280 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, 0, 0, var3 >> 14, var4 >> 14, var6, var19); + var4 += var17; + var3 += var16; + var6 += var20; + var0 += Rasterizer2D.Rasterizer2D_width; } } } } - } else if (var1 <= var2) { // L: 293 - if (var1 < Rasterizer3D_clipHeight) { // L: 294 - if (var2 > Rasterizer3D_clipHeight) { // L: 295 + } else if (var1 <= var2) { + if (var1 < Rasterizer3D_clipHeight) { + if (var2 > Rasterizer3D_clipHeight) { var2 = Rasterizer3D_clipHeight; } - if (var0 > Rasterizer3D_clipHeight) { // L: 296 + if (var0 > Rasterizer3D_clipHeight) { var0 = Rasterizer3D_clipHeight; } - var7 = var19 + ((var7 << 8) - var19 * var4); // L: 297 - if (var2 < var0) { // L: 298 - var3 = var4 <<= 14; // L: 299 - if (var1 < 0) { // L: 300 - var3 -= var16 * var1; // L: 301 - var4 -= var15 * var1; // L: 302 - var7 -= var20 * var1; // L: 303 - var1 = 0; // L: 304 + var7 = var19 + ((var7 << 8) - var19 * var4); + if (var2 < var0) { + var3 = var4 <<= 14; + if (var1 < 0) { + var3 -= var16 * var1; + var4 -= var15 * var1; + var7 -= var20 * var1; + var1 = 0; } - var5 <<= 14; // L: 306 - if (var2 < 0) { // L: 307 - var5 -= var17 * var2; // L: 308 - var2 = 0; // L: 309 + var5 <<= 14; + if (var2 < 0) { + var5 -= var17 * var2; + var2 = 0; } - if ((var2 == var1 || var16 >= var15) && (var2 != var1 || var16 <= var17)) { // L: 311 - var0 -= var2; // L: 332 - var2 -= var1; // L: 333 - var1 = Rasterizer3D_rowOffsets[var1]; // L: 334 + if ((var2 == var1 || var16 >= var15) && (var2 != var1 || var16 <= var17)) { + var0 -= var2; + var2 -= var1; + var1 = Rasterizer3D_rowOffsets[var1]; while (true) { - --var2; // L: 335 + --var2; if (var2 < 0) { while (true) { - --var0; // L: 342 + --var0; if (var0 < 0) { - return; // L: 349 + return; } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var5 >> 14, var3 >> 14, var7, var19); // L: 343 - var3 += var16; // L: 344 - var5 += var17; // L: 345 - var7 += var20; // L: 346 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 347 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var5 >> 14, var3 >> 14, var7, var19); + var3 += var16; + var5 += var17; + var7 += var20; + var1 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var3 >> 14, var7, var19); // L: 336 - var3 += var16; // L: 337 - var4 += var15; // L: 338 - var7 += var20; // L: 339 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 340 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var3 >> 14, var7, var19); + var3 += var16; + var4 += var15; + var7 += var20; + var1 += Rasterizer2D.Rasterizer2D_width; } } else { - var0 -= var2; // L: 312 - var2 -= var1; // L: 313 - var1 = Rasterizer3D_rowOffsets[var1]; // L: 314 + var0 -= var2; + var2 -= var1; + var1 = Rasterizer3D_rowOffsets[var1]; while (true) { - --var2; // L: 315 + --var2; if (var2 < 0) { while (true) { - --var0; // L: 322 + --var0; if (var0 < 0) { - return; // L: 329 + return; } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var3 >> 14, var5 >> 14, var7, var19); // L: 323 - var3 += var16; // L: 324 - var5 += var17; // L: 325 - var7 += var20; // L: 326 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 327 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var3 >> 14, var5 >> 14, var7, var19); + var3 += var16; + var5 += var17; + var7 += var20; + var1 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var3 >> 14, var4 >> 14, var7, var19); // L: 316 - var3 += var16; // L: 317 - var4 += var15; // L: 318 - var7 += var20; // L: 319 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 320 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var3 >> 14, var4 >> 14, var7, var19); + var3 += var16; + var4 += var15; + var7 += var20; + var1 += Rasterizer2D.Rasterizer2D_width; } } } else { - var5 = var4 <<= 14; // L: 353 - if (var1 < 0) { // L: 354 - var5 -= var16 * var1; // L: 355 - var4 -= var15 * var1; // L: 356 - var7 -= var20 * var1; // L: 357 - var1 = 0; // L: 358 + var5 = var4 <<= 14; + if (var1 < 0) { + var5 -= var16 * var1; + var4 -= var15 * var1; + var7 -= var20 * var1; + var1 = 0; } - var3 <<= 14; // L: 360 - if (var0 < 0) { // L: 361 - var3 -= var0 * var17; // L: 362 - var0 = 0; // L: 363 + var3 <<= 14; + if (var0 < 0) { + var3 -= var0 * var17; + var0 = 0; } - if (var16 < var15) { // L: 365 - var2 -= var0; // L: 366 - var0 -= var1; // L: 367 - var1 = Rasterizer3D_rowOffsets[var1]; // L: 368 + if (var16 < var15) { + var2 -= var0; + var0 -= var1; + var1 = Rasterizer3D_rowOffsets[var1]; while (true) { - --var0; // L: 369 + --var0; if (var0 < 0) { while (true) { - --var2; // L: 376 + --var2; if (var2 < 0) { - return; // L: 383 + return; } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var3 >> 14, var4 >> 14, var7, var19); // L: 377 - var3 += var17; // L: 378 - var4 += var15; // L: 379 - var7 += var20; // L: 380 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 381 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var3 >> 14, var4 >> 14, var7, var19); + var3 += var17; + var4 += var15; + var7 += var20; + var1 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var5 >> 14, var4 >> 14, var7, var19); // L: 370 - var5 += var16; // L: 371 - var4 += var15; // L: 372 - var7 += var20; // L: 373 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 374 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var5 >> 14, var4 >> 14, var7, var19); + var5 += var16; + var4 += var15; + var7 += var20; + var1 += Rasterizer2D.Rasterizer2D_width; } } else { - var2 -= var0; // L: 386 - var0 -= var1; // L: 387 - var1 = Rasterizer3D_rowOffsets[var1]; // L: 388 + var2 -= var0; + var0 -= var1; + var1 = Rasterizer3D_rowOffsets[var1]; while (true) { - --var0; // L: 389 + --var0; if (var0 < 0) { while (true) { - --var2; // L: 396 + --var2; if (var2 < 0) { - return; // L: 403 + return; } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var3 >> 14, var7, var19); // L: 397 - var3 += var17; // L: 398 - var4 += var15; // L: 399 - var7 += var20; // L: 400 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 401 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var3 >> 14, var7, var19); + var3 += var17; + var4 += var15; + var7 += var20; + var1 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var5 >> 14, var7, var19); // L: 390 - var5 += var16; // L: 391 - var4 += var15; // L: 392 - var7 += var20; // L: 393 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 394 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var5 >> 14, var7, var19); + var5 += var16; + var4 += var15; + var7 += var20; + var1 += Rasterizer2D.Rasterizer2D_width; } } } } - } else if (var2 < Rasterizer3D_clipHeight) { // L: 408 - if (var0 > Rasterizer3D_clipHeight) { // L: 409 + } else if (var2 < Rasterizer3D_clipHeight) { + if (var0 > Rasterizer3D_clipHeight) { var0 = Rasterizer3D_clipHeight; } - if (var1 > Rasterizer3D_clipHeight) { // L: 410 + if (var1 > Rasterizer3D_clipHeight) { var1 = Rasterizer3D_clipHeight; } - var8 = var19 + ((var8 << 8) - var5 * var19); // L: 411 - if (var0 < var1) { // L: 412 - var4 = var5 <<= 14; // L: 413 - if (var2 < 0) { // L: 414 - var4 -= var15 * var2; // L: 415 - var5 -= var17 * var2; // L: 416 - var8 -= var20 * var2; // L: 417 - var2 = 0; // L: 418 + var8 = var19 + ((var8 << 8) - var5 * var19); + if (var0 < var1) { + var4 = var5 <<= 14; + if (var2 < 0) { + var4 -= var15 * var2; + var5 -= var17 * var2; + var8 -= var20 * var2; + var2 = 0; } - var3 <<= 14; // L: 420 - if (var0 < 0) { // L: 421 - var3 -= var0 * var16; // L: 422 - var0 = 0; // L: 423 + var3 <<= 14; + if (var0 < 0) { + var3 -= var0 * var16; + var0 = 0; } - if (var15 < var17) { // L: 425 - var1 -= var0; // L: 426 - var0 -= var2; // L: 427 - var2 = Rasterizer3D_rowOffsets[var2]; // L: 428 + if (var15 < var17) { + var1 -= var0; + var0 -= var2; + var2 = Rasterizer3D_rowOffsets[var2]; while (true) { - --var0; // L: 429 + --var0; if (var0 < 0) { while (true) { - --var1; // L: 436 + --var1; if (var1 < 0) { - return; // L: 443 + return; } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var3 >> 14, var8, var19); // L: 437 - var4 += var15; // L: 438 - var3 += var16; // L: 439 - var8 += var20; // L: 440 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 441 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var3 >> 14, var8, var19); + var4 += var15; + var3 += var16; + var8 += var20; + var2 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var5 >> 14, var8, var19); // L: 430 - var4 += var15; // L: 431 - var5 += var17; // L: 432 - var8 += var20; // L: 433 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 434 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var5 >> 14, var8, var19); + var4 += var15; + var5 += var17; + var8 += var20; + var2 += Rasterizer2D.Rasterizer2D_width; } } else { - var1 -= var0; // L: 446 - var0 -= var2; // L: 447 - var2 = Rasterizer3D_rowOffsets[var2]; // L: 448 + var1 -= var0; + var0 -= var2; + var2 = Rasterizer3D_rowOffsets[var2]; while (true) { - --var0; // L: 449 + --var0; if (var0 < 0) { while (true) { - --var1; // L: 456 + --var1; if (var1 < 0) { - return; // L: 463 + return; } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var3 >> 14, var4 >> 14, var8, var19); // L: 457 - var4 += var15; // L: 458 - var3 += var16; // L: 459 - var8 += var20; // L: 460 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 461 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var3 >> 14, var4 >> 14, var8, var19); + var4 += var15; + var3 += var16; + var8 += var20; + var2 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var4 >> 14, var8, var19); // L: 450 - var4 += var15; // L: 451 - var5 += var17; // L: 452 - var8 += var20; // L: 453 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 454 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var4 >> 14, var8, var19); + var4 += var15; + var5 += var17; + var8 += var20; + var2 += Rasterizer2D.Rasterizer2D_width; } } } else { - var3 = var5 <<= 14; // L: 467 - if (var2 < 0) { // L: 468 - var3 -= var15 * var2; // L: 469 - var5 -= var17 * var2; // L: 470 - var8 -= var20 * var2; // L: 471 - var2 = 0; // L: 472 + var3 = var5 <<= 14; + if (var2 < 0) { + var3 -= var15 * var2; + var5 -= var17 * var2; + var8 -= var20 * var2; + var2 = 0; } - var4 <<= 14; // L: 474 - if (var1 < 0) { // L: 475 - var4 -= var16 * var1; // L: 476 - var1 = 0; // L: 477 + var4 <<= 14; + if (var1 < 0) { + var4 -= var16 * var1; + var1 = 0; } - if (var15 < var17) { // L: 479 - var0 -= var1; // L: 480 - var1 -= var2; // L: 481 - var2 = Rasterizer3D_rowOffsets[var2]; // L: 482 + if (var15 < var17) { + var0 -= var1; + var1 -= var2; + var2 = Rasterizer3D_rowOffsets[var2]; while (true) { - --var1; // L: 483 + --var1; if (var1 < 0) { while (true) { - --var0; // L: 490 + --var0; if (var0 < 0) { - return; // L: 497 + return; } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var5 >> 14, var8, var19); // L: 491 - var4 += var16; // L: 492 - var5 += var17; // L: 493 - var8 += var20; // L: 494 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 495 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var5 >> 14, var8, var19); + var4 += var16; + var5 += var17; + var8 += var20; + var2 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var3 >> 14, var5 >> 14, var8, var19); // L: 484 - var3 += var15; // L: 485 - var5 += var17; // L: 486 - var8 += var20; // L: 487 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 488 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var3 >> 14, var5 >> 14, var8, var19); + var3 += var15; + var5 += var17; + var8 += var20; + var2 += Rasterizer2D.Rasterizer2D_width; } } else { - var0 -= var1; // L: 500 - var1 -= var2; // L: 501 - var2 = Rasterizer3D_rowOffsets[var2]; // L: 502 + var0 -= var1; + var1 -= var2; + var2 = Rasterizer3D_rowOffsets[var2]; while (true) { - --var1; // L: 503 + --var1; if (var1 < 0) { while (true) { - --var0; // L: 510 + --var0; if (var0 < 0) { - return; // L: 517 + return; } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var4 >> 14, var8, var19); // L: 511 - var4 += var16; // L: 512 - var5 += var17; // L: 513 - var8 += var20; // L: 514 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 515 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var4 >> 14, var8, var19); + var4 += var16; + var5 += var17; + var8 += var20; + var2 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var3 >> 14, var8, var19); // L: 504 - var3 += var15; // L: 505 - var5 += var17; // L: 506 - var8 += var20; // L: 507 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 508 + Rasterizer3D_vertAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var3 >> 14, var8, var19); + var3 += var15; + var5 += var17; + var8 += var20; + var2 += Rasterizer2D.Rasterizer2D_width; } } } @@ -767,1298 +767,1298 @@ public class Rasterizer3D extends Rasterizer2D { } } + @ObfuscatedName("u") + @Export("Rasterizer3D_vertAlpha") + static final void Rasterizer3D_vertAlpha(int[] var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { + if (field1791) { + if (var5 > Rasterizer3D_clipWidth) { + var5 = Rasterizer3D_clipWidth; + } + + if (var4 < 0) { + var4 = 0; + } + } + + if (var4 < var5) { + var1 += var4; + var6 += var4 * var7; + int var8; + int var9; + int var10; + if (field1782) { + var3 = var5 - var4 >> 2; + var7 <<= 2; + if (Rasterizer3D_alpha == 0) { + if (var3 > 0) { + do { + var2 = Rasterizer3D_colorPalette[var6 >> 8]; + var6 += var7; + var0[var1++] = var2; + var0[var1++] = var2; + var0[var1++] = var2; + var0[var1++] = var2; + --var3; + } while(var3 > 0); + } + + var3 = var5 - var4 & 3; + if (var3 > 0) { + var2 = Rasterizer3D_colorPalette[var6 >> 8]; + + do { + var0[var1++] = var2; + --var3; + } while(var3 > 0); + } + } else { + var8 = Rasterizer3D_alpha; + var9 = 256 - Rasterizer3D_alpha; + if (var3 > 0) { + do { + var2 = Rasterizer3D_colorPalette[var6 >> 8]; + var6 += var7; + var2 = (var9 * (var2 & 65280) >> 8 & 65280) + (var9 * (var2 & 16711935) >> 8 & 16711935); + var10 = var0[var1]; + var0[var1++] = ((var10 & 16711935) * var8 >> 8 & 16711935) + var2 + (var8 * (var10 & 65280) >> 8 & 65280); + var10 = var0[var1]; + var0[var1++] = ((var10 & 16711935) * var8 >> 8 & 16711935) + var2 + (var8 * (var10 & 65280) >> 8 & 65280); + var10 = var0[var1]; + var0[var1++] = ((var10 & 16711935) * var8 >> 8 & 16711935) + var2 + (var8 * (var10 & 65280) >> 8 & 65280); + var10 = var0[var1]; + var0[var1++] = ((var10 & 16711935) * var8 >> 8 & 16711935) + var2 + (var8 * (var10 & 65280) >> 8 & 65280); + --var3; + } while(var3 > 0); + } + + var3 = var5 - var4 & 3; + if (var3 > 0) { + var2 = Rasterizer3D_colorPalette[var6 >> 8]; + var2 = (var9 * (var2 & 65280) >> 8 & 65280) + (var9 * (var2 & 16711935) >> 8 & 16711935); + + do { + var10 = var0[var1]; + var0[var1++] = ((var10 & 16711935) * var8 >> 8 & 16711935) + var2 + (var8 * (var10 & 65280) >> 8 & 65280); + --var3; + } while(var3 > 0); + } + } + + } else { + var3 = var5 - var4; + if (Rasterizer3D_alpha == 0) { + do { + var0[var1++] = Rasterizer3D_colorPalette[var6 >> 8]; + var6 += var7; + --var3; + } while(var3 > 0); + } else { + var8 = Rasterizer3D_alpha; + var9 = 256 - Rasterizer3D_alpha; + + do { + var2 = Rasterizer3D_colorPalette[var6 >> 8]; + var6 += var7; + var2 = (var9 * (var2 & 65280) >> 8 & 65280) + (var9 * (var2 & 16711935) >> 8 & 16711935); + var10 = var0[var1]; + var0[var1++] = ((var10 & 16711935) * var8 >> 8 & 16711935) + var2 + (var8 * (var10 & 65280) >> 8 & 65280); + --var3; + } while(var3 > 0); + } + + } + } + } + @ObfuscatedName("e") - @Export("Rasterizer3D_vertAlpha") - static final void Rasterizer3D_vertAlpha(int[] var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { - if (field1800) { // L: 524 - if (var5 > Rasterizer3D_clipWidth) { // L: 525 - var5 = Rasterizer3D_clipWidth; - } - - if (var4 < 0) { // L: 526 - var4 = 0; - } - } - - if (var4 < var5) { // L: 528 - var1 += var4; // L: 529 - var6 += var4 * var7; // L: 530 - int var8; - int var9; - int var10; - if (field1794) { // L: 531 - var3 = var5 - var4 >> 2; // L: 532 - var7 <<= 2; // L: 533 - if (Rasterizer3D_alpha == 0) { // L: 534 - if (var3 > 0) { // L: 535 - do { - var2 = Rasterizer3D_colorPalette[var6 >> 8]; // L: 537 - var6 += var7; // L: 538 - var0[var1++] = var2; // L: 539 - var0[var1++] = var2; // L: 540 - var0[var1++] = var2; // L: 541 - var0[var1++] = var2; // L: 542 - --var3; // L: 543 - } while(var3 > 0); - } - - var3 = var5 - var4 & 3; // L: 545 - if (var3 > 0) { // L: 546 - var2 = Rasterizer3D_colorPalette[var6 >> 8]; // L: 547 - - do { - var0[var1++] = var2; // L: 549 - --var3; // L: 550 - } while(var3 > 0); - } - } else { - var8 = Rasterizer3D_alpha; // L: 554 - var9 = 256 - Rasterizer3D_alpha; // L: 555 - if (var3 > 0) { // L: 556 - do { - var2 = Rasterizer3D_colorPalette[var6 >> 8]; // L: 558 - var6 += var7; // L: 559 - var2 = (var9 * (var2 & 65280) >> 8 & 65280) + (var9 * (var2 & 16711935) >> 8 & 16711935); // L: 560 - var10 = var0[var1]; // L: 561 - var0[var1++] = ((var10 & 16711935) * var8 >> 8 & 16711935) + var2 + (var8 * (var10 & 65280) >> 8 & 65280); // L: 562 - var10 = var0[var1]; // L: 563 - var0[var1++] = ((var10 & 16711935) * var8 >> 8 & 16711935) + var2 + (var8 * (var10 & 65280) >> 8 & 65280); // L: 564 - var10 = var0[var1]; // L: 565 - var0[var1++] = ((var10 & 16711935) * var8 >> 8 & 16711935) + var2 + (var8 * (var10 & 65280) >> 8 & 65280); // L: 566 - var10 = var0[var1]; // L: 567 - var0[var1++] = ((var10 & 16711935) * var8 >> 8 & 16711935) + var2 + (var8 * (var10 & 65280) >> 8 & 65280); // L: 568 - --var3; // L: 569 - } while(var3 > 0); - } - - var3 = var5 - var4 & 3; // L: 571 - if (var3 > 0) { // L: 572 - var2 = Rasterizer3D_colorPalette[var6 >> 8]; // L: 573 - var2 = (var9 * (var2 & 65280) >> 8 & 65280) + (var9 * (var2 & 16711935) >> 8 & 16711935); // L: 574 - - do { - var10 = var0[var1]; // L: 576 - var0[var1++] = ((var10 & 16711935) * var8 >> 8 & 16711935) + var2 + (var8 * (var10 & 65280) >> 8 & 65280); // L: 577 - --var3; // L: 578 - } while(var3 > 0); - } - } - - } else { - var3 = var5 - var4; // L: 584 - if (Rasterizer3D_alpha == 0) { // L: 585 - do { - var0[var1++] = Rasterizer3D_colorPalette[var6 >> 8]; // L: 587 - var6 += var7; // L: 588 - --var3; // L: 589 - } while(var3 > 0); - } else { - var8 = Rasterizer3D_alpha; // L: 592 - var9 = 256 - Rasterizer3D_alpha; // L: 593 - - do { - var2 = Rasterizer3D_colorPalette[var6 >> 8]; // L: 595 - var6 += var7; // L: 596 - var2 = (var9 * (var2 & 65280) >> 8 & 65280) + (var9 * (var2 & 16711935) >> 8 & 16711935); // L: 597 - var10 = var0[var1]; // L: 598 - var0[var1++] = ((var10 & 16711935) * var8 >> 8 & 16711935) + var2 + (var8 * (var10 & 65280) >> 8 & 65280); // L: 599 - --var3; // L: 600 - } while(var3 > 0); - } - - } - } - } // L: 581 602 - - @ObfuscatedName("o") - public static final void method3149(int var0, int var1, int var2, int var3, int var4, int var5, int var6) { - int var7 = 0; // L: 607 - if (var0 != var1) { // L: 608 + public static final void method3081(int var0, int var1, int var2, int var3, int var4, int var5, int var6) { + int var7 = 0; + if (var0 != var1) { var7 = (var4 - var3 << 14) / (var1 - var0); } - int var8 = 0; // L: 609 - if (var2 != var1) { // L: 610 + int var8 = 0; + if (var2 != var1) { var8 = (var5 - var4 << 14) / (var2 - var1); } - int var9 = 0; // L: 611 - if (var0 != var2) { // L: 612 + int var9 = 0; + if (var0 != var2) { var9 = (var3 - var5 << 14) / (var0 - var2); } - if (var0 <= var1 && var0 <= var2) { // L: 613 - if (var0 < Rasterizer3D_clipHeight) { // L: 614 - if (var1 > Rasterizer3D_clipHeight) { // L: 615 + if (var0 <= var1 && var0 <= var2) { + if (var0 < Rasterizer3D_clipHeight) { + if (var1 > Rasterizer3D_clipHeight) { var1 = Rasterizer3D_clipHeight; } - if (var2 > Rasterizer3D_clipHeight) { // L: 616 + if (var2 > Rasterizer3D_clipHeight) { var2 = Rasterizer3D_clipHeight; } - if (var1 < var2) { // L: 617 - var5 = var3 <<= 14; // L: 618 - if (var0 < 0) { // L: 619 - var5 -= var0 * var9; // L: 620 - var3 -= var0 * var7; // L: 621 - var0 = 0; // L: 622 + if (var1 < var2) { + var5 = var3 <<= 14; + if (var0 < 0) { + var5 -= var0 * var9; + var3 -= var0 * var7; + var0 = 0; } - var4 <<= 14; // L: 624 - if (var1 < 0) { // L: 625 - var4 -= var8 * var1; // L: 626 - var1 = 0; // L: 627 + var4 <<= 14; + if (var1 < 0) { + var4 -= var8 * var1; + var1 = 0; } - if (var0 != var1 && var9 < var7 || var0 == var1 && var9 > var8) { // L: 629 - var2 -= var1; // L: 630 - var1 -= var0; // L: 631 - var0 = Rasterizer3D_rowOffsets[var0]; // L: 632 + if (var0 != var1 && var9 < var7 || var0 == var1 && var9 > var8) { + var2 -= var1; + var1 -= var0; + var0 = Rasterizer3D_rowOffsets[var0]; while (true) { - --var1; // L: 633 + --var1; if (var1 < 0) { while (true) { - --var2; // L: 639 + --var2; if (var2 < 0) { - return; // L: 645 + return; } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var6, 0, var5 >> 14, var4 >> 14); // L: 640 - var5 += var9; // L: 641 - var4 += var8; // L: 642 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 643 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var6, 0, var5 >> 14, var4 >> 14); + var5 += var9; + var4 += var8; + var0 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var6, 0, var5 >> 14, var3 >> 14); // L: 634 - var5 += var9; // L: 635 - var3 += var7; // L: 636 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 637 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var6, 0, var5 >> 14, var3 >> 14); + var5 += var9; + var3 += var7; + var0 += Rasterizer2D.Rasterizer2D_width; } } else { - var2 -= var1; // L: 648 - var1 -= var0; // L: 649 - var0 = Rasterizer3D_rowOffsets[var0]; // L: 650 + var2 -= var1; + var1 -= var0; + var0 = Rasterizer3D_rowOffsets[var0]; while (true) { - --var1; // L: 651 + --var1; if (var1 < 0) { while (true) { - --var2; // L: 657 + --var2; if (var2 < 0) { - return; // L: 663 + return; } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var6, 0, var4 >> 14, var5 >> 14); // L: 658 - var5 += var9; // L: 659 - var4 += var8; // L: 660 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 661 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var6, 0, var4 >> 14, var5 >> 14); + var5 += var9; + var4 += var8; + var0 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var6, 0, var3 >> 14, var5 >> 14); // L: 652 - var5 += var9; // L: 653 - var3 += var7; // L: 654 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 655 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var6, 0, var3 >> 14, var5 >> 14); + var5 += var9; + var3 += var7; + var0 += Rasterizer2D.Rasterizer2D_width; } } } else { - var4 = var3 <<= 14; // L: 667 - if (var0 < 0) { // L: 668 - var4 -= var0 * var9; // L: 669 - var3 -= var0 * var7; // L: 670 - var0 = 0; // L: 671 + var4 = var3 <<= 14; + if (var0 < 0) { + var4 -= var0 * var9; + var3 -= var0 * var7; + var0 = 0; } - var5 <<= 14; // L: 673 - if (var2 < 0) { // L: 674 - var5 -= var8 * var2; // L: 675 - var2 = 0; // L: 676 + var5 <<= 14; + if (var2 < 0) { + var5 -= var8 * var2; + var2 = 0; } - if (var0 != var2 && var9 < var7 || var0 == var2 && var8 > var7) { // L: 678 - var1 -= var2; // L: 679 - var2 -= var0; // L: 680 - var0 = Rasterizer3D_rowOffsets[var0]; // L: 681 + if ((var0 == var2 || var9 >= var7) && (var0 != var2 || var8 <= var7)) { + var1 -= var2; + var2 -= var0; + var0 = Rasterizer3D_rowOffsets[var0]; while (true) { - --var2; // L: 682 + --var2; if (var2 < 0) { while (true) { - --var1; // L: 688 + --var1; if (var1 < 0) { - return; // L: 694 + return; } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var6, 0, var5 >> 14, var3 >> 14); // L: 689 - var5 += var8; // L: 690 - var3 += var7; // L: 691 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 692 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var6, 0, var3 >> 14, var5 >> 14); + var5 += var8; + var3 += var7; + var0 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var6, 0, var4 >> 14, var3 >> 14); // L: 683 - var4 += var9; // L: 684 - var3 += var7; // L: 685 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 686 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var6, 0, var3 >> 14, var4 >> 14); + var4 += var9; + var3 += var7; + var0 += Rasterizer2D.Rasterizer2D_width; } } else { - var1 -= var2; // L: 697 - var2 -= var0; // L: 698 - var0 = Rasterizer3D_rowOffsets[var0]; // L: 699 + var1 -= var2; + var2 -= var0; + var0 = Rasterizer3D_rowOffsets[var0]; while (true) { - --var2; // L: 700 + --var2; if (var2 < 0) { while (true) { - --var1; // L: 706 + --var1; if (var1 < 0) { - return; // L: 712 + return; } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var6, 0, var3 >> 14, var5 >> 14); // L: 707 - var5 += var8; // L: 708 - var3 += var7; // L: 709 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 710 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var6, 0, var5 >> 14, var3 >> 14); + var5 += var8; + var3 += var7; + var0 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var6, 0, var3 >> 14, var4 >> 14); // L: 701 - var4 += var9; // L: 702 - var3 += var7; // L: 703 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 704 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var6, 0, var4 >> 14, var3 >> 14); + var4 += var9; + var3 += var7; + var0 += Rasterizer2D.Rasterizer2D_width; } } } } - } else if (var1 <= var2) { // L: 716 - if (var1 < Rasterizer3D_clipHeight) { // L: 717 - if (var2 > Rasterizer3D_clipHeight) { // L: 718 + } else if (var1 <= var2) { + if (var1 < Rasterizer3D_clipHeight) { + if (var2 > Rasterizer3D_clipHeight) { var2 = Rasterizer3D_clipHeight; } - if (var0 > Rasterizer3D_clipHeight) { // L: 719 + if (var0 > Rasterizer3D_clipHeight) { var0 = Rasterizer3D_clipHeight; } - if (var2 < var0) { // L: 720 - var3 = var4 <<= 14; // L: 721 - if (var1 < 0) { // L: 722 - var3 -= var7 * var1; // L: 723 - var4 -= var8 * var1; // L: 724 - var1 = 0; // L: 725 + if (var2 < var0) { + var3 = var4 <<= 14; + if (var1 < 0) { + var3 -= var7 * var1; + var4 -= var8 * var1; + var1 = 0; } - var5 <<= 14; // L: 727 - if (var2 < 0) { // L: 728 - var5 -= var9 * var2; // L: 729 - var2 = 0; // L: 730 + var5 <<= 14; + if (var2 < 0) { + var5 -= var9 * var2; + var2 = 0; } - if (var2 != var1 && var7 < var8 || var2 == var1 && var7 > var9) { // L: 732 - var0 -= var2; // L: 733 - var2 -= var1; // L: 734 - var1 = Rasterizer3D_rowOffsets[var1]; // L: 735 + if (var2 != var1 && var7 < var8 || var2 == var1 && var7 > var9) { + var0 -= var2; + var2 -= var1; + var1 = Rasterizer3D_rowOffsets[var1]; while (true) { - --var2; // L: 736 + --var2; if (var2 < 0) { while (true) { - --var0; // L: 742 + --var0; if (var0 < 0) { - return; // L: 748 + return; } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, 0, var3 >> 14, var5 >> 14); // L: 743 - var3 += var7; // L: 744 - var5 += var9; // L: 745 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 746 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, 0, var3 >> 14, var5 >> 14); + var3 += var7; + var5 += var9; + var1 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, 0, var3 >> 14, var4 >> 14); // L: 737 - var3 += var7; // L: 738 - var4 += var8; // L: 739 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 740 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, 0, var3 >> 14, var4 >> 14); + var3 += var7; + var4 += var8; + var1 += Rasterizer2D.Rasterizer2D_width; } } else { - var0 -= var2; // L: 751 - var2 -= var1; // L: 752 - var1 = Rasterizer3D_rowOffsets[var1]; // L: 753 + var0 -= var2; + var2 -= var1; + var1 = Rasterizer3D_rowOffsets[var1]; while (true) { - --var2; // L: 754 + --var2; if (var2 < 0) { while (true) { - --var0; // L: 760 + --var0; if (var0 < 0) { - return; // L: 766 + return; } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, 0, var5 >> 14, var3 >> 14); // L: 761 - var3 += var7; // L: 762 - var5 += var9; // L: 763 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 764 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, 0, var5 >> 14, var3 >> 14); + var3 += var7; + var5 += var9; + var1 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, 0, var4 >> 14, var3 >> 14); // L: 755 - var3 += var7; // L: 756 - var4 += var8; // L: 757 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 758 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, 0, var4 >> 14, var3 >> 14); + var3 += var7; + var4 += var8; + var1 += Rasterizer2D.Rasterizer2D_width; } } } else { - var5 = var4 <<= 14; // L: 770 - if (var1 < 0) { // L: 771 - var5 -= var7 * var1; // L: 772 - var4 -= var8 * var1; // L: 773 - var1 = 0; // L: 774 + var5 = var4 <<= 14; + if (var1 < 0) { + var5 -= var7 * var1; + var4 -= var8 * var1; + var1 = 0; } - var3 <<= 14; // L: 776 - if (var0 < 0) { // L: 777 - var3 -= var0 * var9; // L: 778 - var0 = 0; // L: 779 + var3 <<= 14; + if (var0 < 0) { + var3 -= var0 * var9; + var0 = 0; } - if (var7 < var8) { // L: 781 - var2 -= var0; // L: 782 - var0 -= var1; // L: 783 - var1 = Rasterizer3D_rowOffsets[var1]; // L: 784 + if (var7 < var8) { + var2 -= var0; + var0 -= var1; + var1 = Rasterizer3D_rowOffsets[var1]; while (true) { - --var0; // L: 785 + --var0; if (var0 < 0) { while (true) { - --var2; // L: 791 + --var2; if (var2 < 0) { - return; // L: 797 + return; } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, 0, var3 >> 14, var4 >> 14); // L: 792 - var3 += var9; // L: 793 - var4 += var8; // L: 794 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 795 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, 0, var3 >> 14, var4 >> 14); + var3 += var9; + var4 += var8; + var1 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, 0, var5 >> 14, var4 >> 14); // L: 786 - var5 += var7; // L: 787 - var4 += var8; // L: 788 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 789 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, 0, var5 >> 14, var4 >> 14); + var5 += var7; + var4 += var8; + var1 += Rasterizer2D.Rasterizer2D_width; } } else { - var2 -= var0; // L: 800 - var0 -= var1; // L: 801 - var1 = Rasterizer3D_rowOffsets[var1]; // L: 802 + var2 -= var0; + var0 -= var1; + var1 = Rasterizer3D_rowOffsets[var1]; while (true) { - --var0; // L: 803 + --var0; if (var0 < 0) { while (true) { - --var2; // L: 809 + --var2; if (var2 < 0) { - return; // L: 815 + return; } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, 0, var4 >> 14, var3 >> 14); // L: 810 - var3 += var9; // L: 811 - var4 += var8; // L: 812 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 813 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, 0, var4 >> 14, var3 >> 14); + var3 += var9; + var4 += var8; + var1 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, 0, var4 >> 14, var5 >> 14); // L: 804 - var5 += var7; // L: 805 - var4 += var8; // L: 806 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 807 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var1, var6, 0, var4 >> 14, var5 >> 14); + var5 += var7; + var4 += var8; + var1 += Rasterizer2D.Rasterizer2D_width; } } } } - } else if (var2 < Rasterizer3D_clipHeight) { // L: 820 - if (var0 > Rasterizer3D_clipHeight) { // L: 821 + } else if (var2 < Rasterizer3D_clipHeight) { + if (var0 > Rasterizer3D_clipHeight) { var0 = Rasterizer3D_clipHeight; } - if (var1 > Rasterizer3D_clipHeight) { // L: 822 + if (var1 > Rasterizer3D_clipHeight) { var1 = Rasterizer3D_clipHeight; } - if (var0 < var1) { // L: 823 - var4 = var5 <<= 14; // L: 824 - if (var2 < 0) { // L: 825 - var4 -= var8 * var2; // L: 826 - var5 -= var9 * var2; // L: 827 - var2 = 0; // L: 828 + if (var0 < var1) { + var4 = var5 <<= 14; + if (var2 < 0) { + var4 -= var8 * var2; + var5 -= var9 * var2; + var2 = 0; } - var3 <<= 14; // L: 830 - if (var0 < 0) { // L: 831 - var3 -= var0 * var7; // L: 832 - var0 = 0; // L: 833 + var3 <<= 14; + if (var0 < 0) { + var3 -= var0 * var7; + var0 = 0; } - if (var8 < var9) { // L: 835 - var1 -= var0; // L: 836 - var0 -= var2; // L: 837 - var2 = Rasterizer3D_rowOffsets[var2]; // L: 838 + if (var8 < var9) { + var1 -= var0; + var0 -= var2; + var2 = Rasterizer3D_rowOffsets[var2]; while (true) { - --var0; // L: 839 + --var0; if (var0 < 0) { while (true) { - --var1; // L: 845 + --var1; if (var1 < 0) { - return; // L: 851 + return; } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, var6, 0, var4 >> 14, var3 >> 14); // L: 846 - var4 += var8; // L: 847 - var3 += var7; // L: 848 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 849 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, var6, 0, var4 >> 14, var3 >> 14); + var4 += var8; + var3 += var7; + var2 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, var6, 0, var4 >> 14, var5 >> 14); // L: 840 - var4 += var8; // L: 841 - var5 += var9; // L: 842 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 843 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, var6, 0, var4 >> 14, var5 >> 14); + var4 += var8; + var5 += var9; + var2 += Rasterizer2D.Rasterizer2D_width; } } else { - var1 -= var0; // L: 854 - var0 -= var2; // L: 855 - var2 = Rasterizer3D_rowOffsets[var2]; // L: 856 + var1 -= var0; + var0 -= var2; + var2 = Rasterizer3D_rowOffsets[var2]; while (true) { - --var0; // L: 857 + --var0; if (var0 < 0) { while (true) { - --var1; // L: 863 + --var1; if (var1 < 0) { - return; // L: 869 + return; } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, var6, 0, var3 >> 14, var4 >> 14); // L: 864 - var4 += var8; // L: 865 - var3 += var7; // L: 866 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 867 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, var6, 0, var3 >> 14, var4 >> 14); + var4 += var8; + var3 += var7; + var2 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, var6, 0, var5 >> 14, var4 >> 14); // L: 858 - var4 += var8; // L: 859 - var5 += var9; // L: 860 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 861 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, var6, 0, var5 >> 14, var4 >> 14); + var4 += var8; + var5 += var9; + var2 += Rasterizer2D.Rasterizer2D_width; } } } else { - var3 = var5 <<= 14; // L: 873 - if (var2 < 0) { // L: 874 - var3 -= var8 * var2; // L: 875 - var5 -= var9 * var2; // L: 876 - var2 = 0; // L: 877 + var3 = var5 <<= 14; + if (var2 < 0) { + var3 -= var8 * var2; + var5 -= var9 * var2; + var2 = 0; } - var4 <<= 14; // L: 879 - if (var1 < 0) { // L: 880 - var4 -= var7 * var1; // L: 881 - var1 = 0; // L: 882 + var4 <<= 14; + if (var1 < 0) { + var4 -= var7 * var1; + var1 = 0; } - if (var8 < var9) { // L: 884 - var0 -= var1; // L: 885 - var1 -= var2; // L: 886 - var2 = Rasterizer3D_rowOffsets[var2]; // L: 887 + if (var8 < var9) { + var0 -= var1; + var1 -= var2; + var2 = Rasterizer3D_rowOffsets[var2]; while (true) { - --var1; // L: 888 + --var1; if (var1 < 0) { while (true) { - --var0; // L: 894 + --var0; if (var0 < 0) { - return; // L: 900 + return; } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, var6, 0, var4 >> 14, var5 >> 14); // L: 895 - var4 += var7; // L: 896 - var5 += var9; // L: 897 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 898 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, var6, 0, var4 >> 14, var5 >> 14); + var4 += var7; + var5 += var9; + var2 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, var6, 0, var3 >> 14, var5 >> 14); // L: 889 - var3 += var8; // L: 890 - var5 += var9; // L: 891 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 892 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, var6, 0, var3 >> 14, var5 >> 14); + var3 += var8; + var5 += var9; + var2 += Rasterizer2D.Rasterizer2D_width; } } else { - var0 -= var1; // L: 903 - var1 -= var2; // L: 904 - var2 = Rasterizer3D_rowOffsets[var2]; // L: 905 + var0 -= var1; + var1 -= var2; + var2 = Rasterizer3D_rowOffsets[var2]; while (true) { - --var1; // L: 906 + --var1; if (var1 < 0) { while (true) { - --var0; // L: 912 + --var0; if (var0 < 0) { - return; // L: 918 + return; } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, var6, 0, var5 >> 14, var4 >> 14); // L: 913 - var4 += var7; // L: 914 - var5 += var9; // L: 915 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 916 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, var6, 0, var5 >> 14, var4 >> 14); + var4 += var7; + var5 += var9; + var2 += Rasterizer2D.Rasterizer2D_width; } } - Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, var6, 0, var5 >> 14, var3 >> 14); // L: 907 - var3 += var8; // L: 908 - var5 += var9; // L: 909 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 910 + Rasterizer3D_horizAlpha(Rasterizer2D.Rasterizer2D_pixels, var2, var6, 0, var5 >> 14, var3 >> 14); + var3 += var8; + var5 += var9; + var2 += Rasterizer2D.Rasterizer2D_width; } } } } } - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("Rasterizer3D_horizAlpha") static final void Rasterizer3D_horizAlpha(int[] var0, int var1, int var2, int var3, int var4, int var5) { - if (field1800) { // L: 925 - if (var5 > Rasterizer3D_clipWidth) { // L: 926 + if (field1791) { + if (var5 > Rasterizer3D_clipWidth) { var5 = Rasterizer3D_clipWidth; } - if (var4 < 0) { // L: 927 + if (var4 < 0) { var4 = 0; } } - if (var4 < var5) { // L: 929 - var1 += var4; // L: 930 - var3 = var5 - var4 >> 2; // L: 931 - if (Rasterizer3D_alpha != 0) { // L: 932 - if (Rasterizer3D_alpha == 254) { // L: 944 + if (var4 < var5) { + var1 += var4; + var3 = var5 - var4 >> 2; + if (Rasterizer3D_alpha != 0) { + if (Rasterizer3D_alpha == 254) { while (true) { - --var3; // L: 945 + --var3; if (var3 < 0) { - var3 = var5 - var4 & 3; // L: 951 + var3 = var5 - var4 & 3; while (true) { - --var3; // L: 952 - if (var3 < 0) { - return; // L: 976 - } - - var0[var1++] = var0[var1]; // L: 953 - } - } - - var0[var1++] = var0[var1]; // L: 946 - var0[var1++] = var0[var1]; // L: 947 - var0[var1++] = var0[var1]; // L: 948 - var0[var1++] = var0[var1]; // L: 949 - } - } else { - int var6 = Rasterizer3D_alpha; // L: 957 - int var7 = 256 - Rasterizer3D_alpha; // L: 958 - var2 = (var7 * (var2 & 65280) >> 8 & 65280) + (var7 * (var2 & 16711935) >> 8 & 16711935); // L: 959 - - while (true) { - --var3; // L: 960 - int var8; - if (var3 < 0) { - var3 = var5 - var4 & 3; // L: 970 - - while (true) { - --var3; // L: 971 + --var3; if (var3 < 0) { return; } - var8 = var0[var1]; // L: 972 - var0[var1++] = ((var8 & 16711935) * var6 >> 8 & 16711935) + var2 + (var6 * (var8 & 65280) >> 8 & 65280); // L: 973 + var0[var1++] = var0[var1]; } } - var8 = var0[var1]; // L: 961 - var0[var1++] = ((var8 & 16711935) * var6 >> 8 & 16711935) + var2 + (var6 * (var8 & 65280) >> 8 & 65280); // L: 962 - var8 = var0[var1]; // L: 963 - var0[var1++] = ((var8 & 16711935) * var6 >> 8 & 16711935) + var2 + (var6 * (var8 & 65280) >> 8 & 65280); // L: 964 - var8 = var0[var1]; // L: 965 - var0[var1++] = ((var8 & 16711935) * var6 >> 8 & 16711935) + var2 + (var6 * (var8 & 65280) >> 8 & 65280); // L: 966 - var8 = var0[var1]; // L: 967 - var0[var1++] = ((var8 & 16711935) * var6 >> 8 & 16711935) + var2 + (var6 * (var8 & 65280) >> 8 & 65280); // L: 968 + var0[var1++] = var0[var1]; + var0[var1++] = var0[var1]; + var0[var1++] = var0[var1]; + var0[var1++] = var0[var1]; + } + } else { + int var6 = Rasterizer3D_alpha; + int var7 = 256 - Rasterizer3D_alpha; + var2 = (var7 * (var2 & 65280) >> 8 & 65280) + (var7 * (var2 & 16711935) >> 8 & 16711935); + + while (true) { + --var3; + int var8; + if (var3 < 0) { + var3 = var5 - var4 & 3; + + while (true) { + --var3; + if (var3 < 0) { + return; + } + + var8 = var0[var1]; + var0[var1++] = ((var8 & 16711935) * var6 >> 8 & 16711935) + var2 + (var6 * (var8 & 65280) >> 8 & 65280); + } + } + + var8 = var0[var1]; + var0[var1++] = ((var8 & 16711935) * var6 >> 8 & 16711935) + var2 + (var6 * (var8 & 65280) >> 8 & 65280); + var8 = var0[var1]; + var0[var1++] = ((var8 & 16711935) * var6 >> 8 & 16711935) + var2 + (var6 * (var8 & 65280) >> 8 & 65280); + var8 = var0[var1]; + var0[var1++] = ((var8 & 16711935) * var6 >> 8 & 16711935) + var2 + (var6 * (var8 & 65280) >> 8 & 65280); + var8 = var0[var1]; + var0[var1++] = ((var8 & 16711935) * var6 >> 8 & 16711935) + var2 + (var6 * (var8 & 65280) >> 8 & 65280); } } } else { while (true) { - --var3; // L: 933 + --var3; if (var3 < 0) { - var3 = var5 - var4 & 3; // L: 939 + var3 = var5 - var4 & 3; while (true) { - --var3; // L: 940 + --var3; if (var3 < 0) { return; } - var0[var1++] = var2; // L: 941 + var0[var1++] = var2; } } - var0[var1++] = var2; // L: 934 - var0[var1++] = var2; // L: 935 - var0[var1++] = var2; // L: 936 - var0[var1++] = var2; // L: 937 + var0[var1++] = var2; + var0[var1++] = var2; + var0[var1++] = var2; + var0[var1++] = var2; } } } } - @ObfuscatedName("x") - static final void method3156(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18) { - int[] var19 = Rasterizer3D_textureLoader.getTexturePixels(var18); // L: 979 + @ObfuscatedName("c") + static final void method3083(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18) { + int[] var19 = Rasterizer3D_textureLoader.getTexturePixels(var18); int var20; - if (var19 == null) { // L: 980 - var20 = Rasterizer3D_textureLoader.getAverageTextureRGB(var18); // L: 981 - method3155(var0, var1, var2, var3, var4, var5, method3186(var20, var6), method3186(var20, var7), method3186(var20, var8)); // L: 982 + if (var19 == null) { + var20 = Rasterizer3D_textureLoader.getAverageTextureRGB(var18); + method3079(var0, var1, var2, var3, var4, var5, method3072(var20, var6), method3072(var20, var7), method3072(var20, var8)); } else { - Rasterizer3D_isLowDetailTexture = Rasterizer3D_textureLoader.isLowDetail(var18); // L: 985 - field1811 = Rasterizer3D_textureLoader.vmethod3401(var18); // L: 986 - var20 = var4 - var3; // L: 987 - int var21 = var1 - var0; // L: 988 - int var22 = var5 - var3; // L: 989 - int var23 = var2 - var0; // L: 990 - int var24 = var7 - var6; // L: 991 - int var25 = var8 - var6; // L: 992 - int var26 = 0; // L: 993 - if (var0 != var1) { // L: 994 + Rasterizer3D_isLowDetailTexture = Rasterizer3D_textureLoader.isLowDetail(var18); + field1779 = Rasterizer3D_textureLoader.vmethod3359(var18); + var20 = var4 - var3; + int var21 = var1 - var0; + int var22 = var5 - var3; + int var23 = var2 - var0; + int var24 = var7 - var6; + int var25 = var8 - var6; + int var26 = 0; + if (var0 != var1) { var26 = (var4 - var3 << 14) / (var1 - var0); } - int var27 = 0; // L: 995 - if (var2 != var1) { // L: 996 + int var27 = 0; + if (var2 != var1) { var27 = (var5 - var4 << 14) / (var2 - var1); } - int var28 = 0; // L: 997 - if (var0 != var2) { // L: 998 + int var28 = 0; + if (var0 != var2) { var28 = (var3 - var5 << 14) / (var0 - var2); } - int var29 = var20 * var23 - var22 * var21; // L: 999 - if (var29 != 0) { // L: 1000 - int var30 = (var24 * var23 - var25 * var21 << 9) / var29; // L: 1001 - int var31 = (var25 * var20 - var24 * var22 << 9) / var29; // L: 1002 - var10 = var9 - var10; // L: 1003 - var13 = var12 - var13; // L: 1004 - var16 = var15 - var16; // L: 1005 - var11 -= var9; // L: 1006 - var14 -= var12; // L: 1007 - var17 -= var15; // L: 1008 - int var32 = var11 * var12 - var9 * var14 << 14; // L: 1009 - int var33 = (int)(((long)(var15 * var14 - var17 * var12) << 3 << 14) / (long)Rasterizer3D_zoom); // L: 1010 - int var34 = (int)(((long)(var17 * var9 - var11 * var15) << 14) / (long)Rasterizer3D_zoom); // L: 1011 - int var35 = var10 * var12 - var13 * var9 << 14; // L: 1012 - int var36 = (int)(((long)(var13 * var15 - var16 * var12) << 3 << 14) / (long)Rasterizer3D_zoom); // L: 1013 - int var37 = (int)(((long)(var16 * var9 - var10 * var15) << 14) / (long)Rasterizer3D_zoom); // L: 1014 - int var38 = var13 * var11 - var10 * var14 << 14; // L: 1015 - int var39 = (int)(((long)(var16 * var14 - var13 * var17) << 3 << 14) / (long)Rasterizer3D_zoom); // L: 1016 - int var40 = (int)(((long)(var17 * var10 - var11 * var16) << 14) / (long)Rasterizer3D_zoom); // L: 1017 + int var29 = var20 * var23 - var22 * var21; + if (var29 != 0) { + int var30 = (var24 * var23 - var25 * var21 << 9) / var29; + int var31 = (var25 * var20 - var24 * var22 << 9) / var29; + var10 = var9 - var10; + var13 = var12 - var13; + var16 = var15 - var16; + var11 -= var9; + var14 -= var12; + var17 -= var15; + int var32 = var11 * var12 - var9 * var14 << 14; + int var33 = (int)(((long)(var15 * var14 - var17 * var12) << 3 << 14) / (long)Rasterizer3D_zoom); + int var34 = (int)(((long)(var17 * var9 - var11 * var15) << 14) / (long)Rasterizer3D_zoom); + int var35 = var10 * var12 - var13 * var9 << 14; + int var36 = (int)(((long)(var13 * var15 - var16 * var12) << 3 << 14) / (long)Rasterizer3D_zoom); + int var37 = (int)(((long)(var16 * var9 - var10 * var15) << 14) / (long)Rasterizer3D_zoom); + int var38 = var13 * var11 - var10 * var14 << 14; + int var39 = (int)(((long)(var16 * var14 - var13 * var17) << 3 << 14) / (long)Rasterizer3D_zoom); + int var40 = (int)(((long)(var17 * var10 - var11 * var16) << 14) / (long)Rasterizer3D_zoom); int var41; - if (var0 <= var1 && var0 <= var2) { // L: 1018 - if (var0 < Rasterizer3D_clipHeight) { // L: 1019 - if (var1 > Rasterizer3D_clipHeight) { // L: 1020 + if (var0 <= var1 && var0 <= var2) { + if (var0 < Rasterizer3D_clipHeight) { + if (var1 > Rasterizer3D_clipHeight) { var1 = Rasterizer3D_clipHeight; } - if (var2 > Rasterizer3D_clipHeight) { // L: 1021 + if (var2 > Rasterizer3D_clipHeight) { var2 = Rasterizer3D_clipHeight; } - var6 = var30 + ((var6 << 9) - var3 * var30); // L: 1022 - if (var1 < var2) { // L: 1023 - var5 = var3 <<= 14; // L: 1024 - if (var0 < 0) { // L: 1025 - var5 -= var0 * var28; // L: 1026 - var3 -= var0 * var26; // L: 1027 - var6 -= var0 * var31; // L: 1028 - var0 = 0; // L: 1029 + var6 = var30 + ((var6 << 9) - var3 * var30); + if (var1 < var2) { + var5 = var3 <<= 14; + if (var0 < 0) { + var5 -= var0 * var28; + var3 -= var0 * var26; + var6 -= var0 * var31; + var0 = 0; } - var4 <<= 14; // L: 1031 - if (var1 < 0) { // L: 1032 - var4 -= var27 * var1; // L: 1033 - var1 = 0; // L: 1034 + var4 <<= 14; + if (var1 < 0) { + var4 -= var27 * var1; + var1 = 0; } - var41 = var0 - Rasterizer3D_clipMidY; // L: 1036 - var32 += var34 * var41; // L: 1037 - var35 += var37 * var41; // L: 1038 - var38 += var40 * var41; // L: 1039 - if (var0 != var1 && var28 < var26 || var0 == var1 && var28 > var27) { // L: 1040 - var2 -= var1; // L: 1041 - var1 -= var0; // L: 1042 - var0 = Rasterizer3D_rowOffsets[var0]; // L: 1043 + var41 = var0 - Rasterizer3D_clipMidY; + var32 += var34 * var41; + var35 += var37 * var41; + var38 += var40 * var41; + if (var0 != var1 && var28 < var26 || var0 == var1 && var28 > var27) { + var2 -= var1; + var1 -= var0; + var0 = Rasterizer3D_rowOffsets[var0]; while (true) { - --var1; // L: 1044 + --var1; if (var1 < 0) { while (true) { - --var2; // L: 1054 + --var2; if (var2 < 0) { - return; // L: 1064 + return; } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var5 >> 14, var4 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); // L: 1055 - var5 += var28; // L: 1056 - var4 += var27; // L: 1057 - var6 += var31; // L: 1058 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 1059 - var32 += var34; // L: 1060 - var35 += var37; // L: 1061 - var38 += var40; // L: 1062 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var5 >> 14, var4 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); + var5 += var28; + var4 += var27; + var6 += var31; + var0 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var5 >> 14, var3 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); // L: 1045 - var5 += var28; // L: 1046 - var3 += var26; // L: 1047 - var6 += var31; // L: 1048 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 1049 - var32 += var34; // L: 1050 - var35 += var37; // L: 1051 - var38 += var40; // L: 1052 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var5 >> 14, var3 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); + var5 += var28; + var3 += var26; + var6 += var31; + var0 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } else { - var2 -= var1; // L: 1067 - var1 -= var0; // L: 1068 - var0 = Rasterizer3D_rowOffsets[var0]; // L: 1069 + var2 -= var1; + var1 -= var0; + var0 = Rasterizer3D_rowOffsets[var0]; while (true) { - --var1; // L: 1070 + --var1; if (var1 < 0) { while (true) { - --var2; // L: 1080 + --var2; if (var2 < 0) { - return; // L: 1090 + return; } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var4 >> 14, var5 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); // L: 1081 - var5 += var28; // L: 1082 - var4 += var27; // L: 1083 - var6 += var31; // L: 1084 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 1085 - var32 += var34; // L: 1086 - var35 += var37; // L: 1087 - var38 += var40; // L: 1088 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var4 >> 14, var5 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); + var5 += var28; + var4 += var27; + var6 += var31; + var0 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var3 >> 14, var5 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); // L: 1071 - var5 += var28; // L: 1072 - var3 += var26; // L: 1073 - var6 += var31; // L: 1074 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 1075 - var32 += var34; // L: 1076 - var35 += var37; // L: 1077 - var38 += var40; // L: 1078 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var3 >> 14, var5 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); + var5 += var28; + var3 += var26; + var6 += var31; + var0 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } } else { - var4 = var3 <<= 14; // L: 1094 - if (var0 < 0) { // L: 1095 - var4 -= var0 * var28; // L: 1096 - var3 -= var0 * var26; // L: 1097 - var6 -= var0 * var31; // L: 1098 - var0 = 0; // L: 1099 + var4 = var3 <<= 14; + if (var0 < 0) { + var4 -= var0 * var28; + var3 -= var0 * var26; + var6 -= var0 * var31; + var0 = 0; } - var5 <<= 14; // L: 1101 - if (var2 < 0) { // L: 1102 - var5 -= var27 * var2; // L: 1103 - var2 = 0; // L: 1104 + var5 <<= 14; + if (var2 < 0) { + var5 -= var27 * var2; + var2 = 0; } - var41 = var0 - Rasterizer3D_clipMidY; // L: 1106 - var32 += var34 * var41; // L: 1107 - var35 += var37 * var41; // L: 1108 - var38 += var40 * var41; // L: 1109 - if ((var0 == var2 || var28 >= var26) && (var0 != var2 || var27 <= var26)) { // L: 1110 - var1 -= var2; // L: 1137 - var2 -= var0; // L: 1138 - var0 = Rasterizer3D_rowOffsets[var0]; // L: 1139 + var41 = var0 - Rasterizer3D_clipMidY; + var32 += var34 * var41; + var35 += var37 * var41; + var38 += var40 * var41; + if (var0 != var2 && var28 < var26 || var0 == var2 && var27 > var26) { + var1 -= var2; + var2 -= var0; + var0 = Rasterizer3D_rowOffsets[var0]; while (true) { - --var2; // L: 1140 + --var2; if (var2 < 0) { while (true) { - --var1; // L: 1150 + --var1; if (var1 < 0) { - return; // L: 1160 + return; } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var3 >> 14, var5 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); // L: 1151 - var5 += var27; // L: 1152 - var3 += var26; // L: 1153 - var6 += var31; // L: 1154 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 1155 - var32 += var34; // L: 1156 - var35 += var37; // L: 1157 - var38 += var40; // L: 1158 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var5 >> 14, var3 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); + var5 += var27; + var3 += var26; + var6 += var31; + var0 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var3 >> 14, var4 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); // L: 1141 - var4 += var28; // L: 1142 - var3 += var26; // L: 1143 - var6 += var31; // L: 1144 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 1145 - var32 += var34; // L: 1146 - var35 += var37; // L: 1147 - var38 += var40; // L: 1148 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var4 >> 14, var3 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); + var4 += var28; + var3 += var26; + var6 += var31; + var0 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } else { - var1 -= var2; // L: 1111 - var2 -= var0; // L: 1112 - var0 = Rasterizer3D_rowOffsets[var0]; // L: 1113 + var1 -= var2; + var2 -= var0; + var0 = Rasterizer3D_rowOffsets[var0]; while (true) { - --var2; // L: 1114 + --var2; if (var2 < 0) { while (true) { - --var1; // L: 1124 + --var1; if (var1 < 0) { - return; // L: 1134 + return; } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var5 >> 14, var3 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); // L: 1125 - var5 += var27; // L: 1126 - var3 += var26; // L: 1127 - var6 += var31; // L: 1128 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 1129 - var32 += var34; // L: 1130 - var35 += var37; // L: 1131 - var38 += var40; // L: 1132 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var3 >> 14, var5 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); + var5 += var27; + var3 += var26; + var6 += var31; + var0 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var4 >> 14, var3 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); // L: 1115 - var4 += var28; // L: 1116 - var3 += var26; // L: 1117 - var6 += var31; // L: 1118 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 1119 - var32 += var34; // L: 1120 - var35 += var37; // L: 1121 - var38 += var40; // L: 1122 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var3 >> 14, var4 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); + var4 += var28; + var3 += var26; + var6 += var31; + var0 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } } } - } else if (var1 <= var2) { // L: 1164 - if (var1 < Rasterizer3D_clipHeight) { // L: 1165 - if (var2 > Rasterizer3D_clipHeight) { // L: 1166 + } else if (var1 <= var2) { + if (var1 < Rasterizer3D_clipHeight) { + if (var2 > Rasterizer3D_clipHeight) { var2 = Rasterizer3D_clipHeight; } - if (var0 > Rasterizer3D_clipHeight) { // L: 1167 + if (var0 > Rasterizer3D_clipHeight) { var0 = Rasterizer3D_clipHeight; } - var7 = var30 + ((var7 << 9) - var30 * var4); // L: 1168 - if (var2 < var0) { // L: 1169 - var3 = var4 <<= 14; // L: 1170 - if (var1 < 0) { // L: 1171 - var3 -= var26 * var1; // L: 1172 - var4 -= var27 * var1; // L: 1173 - var7 -= var31 * var1; // L: 1174 - var1 = 0; // L: 1175 + var7 = var30 + ((var7 << 9) - var30 * var4); + if (var2 < var0) { + var3 = var4 <<= 14; + if (var1 < 0) { + var3 -= var26 * var1; + var4 -= var27 * var1; + var7 -= var31 * var1; + var1 = 0; } - var5 <<= 14; // L: 1177 - if (var2 < 0) { // L: 1178 - var5 -= var28 * var2; // L: 1179 - var2 = 0; // L: 1180 + var5 <<= 14; + if (var2 < 0) { + var5 -= var28 * var2; + var2 = 0; } - var41 = var1 - Rasterizer3D_clipMidY; // L: 1182 - var32 += var34 * var41; // L: 1183 - var35 += var37 * var41; // L: 1184 - var38 += var40 * var41; // L: 1185 - if (var2 != var1 && var26 < var27 || var2 == var1 && var26 > var28) { // L: 1186 - var0 -= var2; // L: 1187 - var2 -= var1; // L: 1188 - var1 = Rasterizer3D_rowOffsets[var1]; // L: 1189 + var41 = var1 - Rasterizer3D_clipMidY; + var32 += var34 * var41; + var35 += var37 * var41; + var38 += var40 * var41; + if ((var2 == var1 || var26 >= var27) && (var2 != var1 || var26 <= var28)) { + var0 -= var2; + var2 -= var1; + var1 = Rasterizer3D_rowOffsets[var1]; while (true) { - --var2; // L: 1190 + --var2; if (var2 < 0) { while (true) { - --var0; // L: 1200 + --var0; if (var0 < 0) { - return; // L: 1210 + return; } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var3 >> 14, var5 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); // L: 1201 - var3 += var26; // L: 1202 - var5 += var28; // L: 1203 - var7 += var31; // L: 1204 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 1205 - var32 += var34; // L: 1206 - var35 += var37; // L: 1207 - var38 += var40; // L: 1208 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var5 >> 14, var3 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); + var3 += var26; + var5 += var28; + var7 += var31; + var1 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var3 >> 14, var4 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); // L: 1191 - var3 += var26; // L: 1192 - var4 += var27; // L: 1193 - var7 += var31; // L: 1194 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 1195 - var32 += var34; // L: 1196 - var35 += var37; // L: 1197 - var38 += var40; // L: 1198 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var4 >> 14, var3 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); + var3 += var26; + var4 += var27; + var7 += var31; + var1 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } else { - var0 -= var2; // L: 1213 - var2 -= var1; // L: 1214 - var1 = Rasterizer3D_rowOffsets[var1]; // L: 1215 + var0 -= var2; + var2 -= var1; + var1 = Rasterizer3D_rowOffsets[var1]; while (true) { - --var2; // L: 1216 + --var2; if (var2 < 0) { while (true) { - --var0; // L: 1226 + --var0; if (var0 < 0) { - return; // L: 1236 + return; } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var5 >> 14, var3 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); // L: 1227 - var3 += var26; // L: 1228 - var5 += var28; // L: 1229 - var7 += var31; // L: 1230 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 1231 - var32 += var34; // L: 1232 - var35 += var37; // L: 1233 - var38 += var40; // L: 1234 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var3 >> 14, var5 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); + var3 += var26; + var5 += var28; + var7 += var31; + var1 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var4 >> 14, var3 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); // L: 1217 - var3 += var26; // L: 1218 - var4 += var27; // L: 1219 - var7 += var31; // L: 1220 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 1221 - var32 += var34; // L: 1222 - var35 += var37; // L: 1223 - var38 += var40; // L: 1224 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var3 >> 14, var4 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); + var3 += var26; + var4 += var27; + var7 += var31; + var1 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } } else { - var5 = var4 <<= 14; // L: 1240 - if (var1 < 0) { // L: 1241 - var5 -= var26 * var1; // L: 1242 - var4 -= var27 * var1; // L: 1243 - var7 -= var31 * var1; // L: 1244 - var1 = 0; // L: 1245 + var5 = var4 <<= 14; + if (var1 < 0) { + var5 -= var26 * var1; + var4 -= var27 * var1; + var7 -= var31 * var1; + var1 = 0; } - var3 <<= 14; // L: 1247 - if (var0 < 0) { // L: 1248 - var3 -= var0 * var28; // L: 1249 - var0 = 0; // L: 1250 + var3 <<= 14; + if (var0 < 0) { + var3 -= var0 * var28; + var0 = 0; } - var41 = var1 - Rasterizer3D_clipMidY; // L: 1252 - var32 += var34 * var41; // L: 1253 - var35 += var37 * var41; // L: 1254 - var38 += var40 * var41; // L: 1255 - if (var26 < var27) { // L: 1256 - var2 -= var0; // L: 1257 - var0 -= var1; // L: 1258 - var1 = Rasterizer3D_rowOffsets[var1]; // L: 1259 + var41 = var1 - Rasterizer3D_clipMidY; + var32 += var34 * var41; + var35 += var37 * var41; + var38 += var40 * var41; + if (var26 < var27) { + var2 -= var0; + var0 -= var1; + var1 = Rasterizer3D_rowOffsets[var1]; while (true) { - --var0; // L: 1260 + --var0; if (var0 < 0) { while (true) { - --var2; // L: 1270 + --var2; if (var2 < 0) { - return; // L: 1280 + return; } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var3 >> 14, var4 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); // L: 1271 - var3 += var28; // L: 1272 - var4 += var27; // L: 1273 - var7 += var31; // L: 1274 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 1275 - var32 += var34; // L: 1276 - var35 += var37; // L: 1277 - var38 += var40; // L: 1278 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var3 >> 14, var4 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); + var3 += var28; + var4 += var27; + var7 += var31; + var1 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var5 >> 14, var4 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); // L: 1261 - var5 += var26; // L: 1262 - var4 += var27; // L: 1263 - var7 += var31; // L: 1264 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 1265 - var32 += var34; // L: 1266 - var35 += var37; // L: 1267 - var38 += var40; // L: 1268 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var5 >> 14, var4 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); + var5 += var26; + var4 += var27; + var7 += var31; + var1 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } else { - var2 -= var0; // L: 1283 - var0 -= var1; // L: 1284 - var1 = Rasterizer3D_rowOffsets[var1]; // L: 1285 + var2 -= var0; + var0 -= var1; + var1 = Rasterizer3D_rowOffsets[var1]; while (true) { - --var0; // L: 1286 + --var0; if (var0 < 0) { while (true) { - --var2; // L: 1296 + --var2; if (var2 < 0) { - return; // L: 1306 + return; } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var4 >> 14, var3 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); // L: 1297 - var3 += var28; // L: 1298 - var4 += var27; // L: 1299 - var7 += var31; // L: 1300 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 1301 - var32 += var34; // L: 1302 - var35 += var37; // L: 1303 - var38 += var40; // L: 1304 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var4 >> 14, var3 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); + var3 += var28; + var4 += var27; + var7 += var31; + var1 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var4 >> 14, var5 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); // L: 1287 - var5 += var26; // L: 1288 - var4 += var27; // L: 1289 - var7 += var31; // L: 1290 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 1291 - var32 += var34; // L: 1292 - var35 += var37; // L: 1293 - var38 += var40; // L: 1294 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var4 >> 14, var5 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); + var5 += var26; + var4 += var27; + var7 += var31; + var1 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } } } - } else if (var2 < Rasterizer3D_clipHeight) { // L: 1311 - if (var0 > Rasterizer3D_clipHeight) { // L: 1312 + } else if (var2 < Rasterizer3D_clipHeight) { + if (var0 > Rasterizer3D_clipHeight) { var0 = Rasterizer3D_clipHeight; } - if (var1 > Rasterizer3D_clipHeight) { // L: 1313 + if (var1 > Rasterizer3D_clipHeight) { var1 = Rasterizer3D_clipHeight; } - var8 = (var8 << 9) - var5 * var30 + var30; // L: 1314 - if (var0 < var1) { // L: 1315 - var4 = var5 <<= 14; // L: 1316 - if (var2 < 0) { // L: 1317 - var4 -= var27 * var2; // L: 1318 - var5 -= var28 * var2; // L: 1319 - var8 -= var31 * var2; // L: 1320 - var2 = 0; // L: 1321 + var8 = (var8 << 9) - var5 * var30 + var30; + if (var0 < var1) { + var4 = var5 <<= 14; + if (var2 < 0) { + var4 -= var27 * var2; + var5 -= var28 * var2; + var8 -= var31 * var2; + var2 = 0; } - var3 <<= 14; // L: 1323 - if (var0 < 0) { // L: 1324 - var3 -= var0 * var26; // L: 1325 - var0 = 0; // L: 1326 + var3 <<= 14; + if (var0 < 0) { + var3 -= var0 * var26; + var0 = 0; } - var41 = var2 - Rasterizer3D_clipMidY; // L: 1328 - var32 += var34 * var41; // L: 1329 - var35 += var37 * var41; // L: 1330 - var38 += var40 * var41; // L: 1331 - if (var27 < var28) { // L: 1332 - var1 -= var0; // L: 1333 - var0 -= var2; // L: 1334 - var2 = Rasterizer3D_rowOffsets[var2]; // L: 1335 + var41 = var2 - Rasterizer3D_clipMidY; + var32 += var34 * var41; + var35 += var37 * var41; + var38 += var40 * var41; + if (var27 < var28) { + var1 -= var0; + var0 -= var2; + var2 = Rasterizer3D_rowOffsets[var2]; while (true) { - --var0; // L: 1336 + --var0; if (var0 < 0) { while (true) { - --var1; // L: 1346 + --var1; if (var1 < 0) { - return; // L: 1356 + return; } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var4 >> 14, var3 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); // L: 1347 - var4 += var27; // L: 1348 - var3 += var26; // L: 1349 - var8 += var31; // L: 1350 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 1351 - var32 += var34; // L: 1352 - var35 += var37; // L: 1353 - var38 += var40; // L: 1354 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var4 >> 14, var3 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); + var4 += var27; + var3 += var26; + var8 += var31; + var2 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var4 >> 14, var5 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); // L: 1337 - var4 += var27; // L: 1338 - var5 += var28; // L: 1339 - var8 += var31; // L: 1340 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 1341 - var32 += var34; // L: 1342 - var35 += var37; // L: 1343 - var38 += var40; // L: 1344 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var4 >> 14, var5 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); + var4 += var27; + var5 += var28; + var8 += var31; + var2 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } else { - var1 -= var0; // L: 1359 - var0 -= var2; // L: 1360 - var2 = Rasterizer3D_rowOffsets[var2]; // L: 1361 + var1 -= var0; + var0 -= var2; + var2 = Rasterizer3D_rowOffsets[var2]; while (true) { - --var0; // L: 1362 + --var0; if (var0 < 0) { while (true) { - --var1; // L: 1372 + --var1; if (var1 < 0) { - return; // L: 1382 + return; } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var3 >> 14, var4 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); // L: 1373 - var4 += var27; // L: 1374 - var3 += var26; // L: 1375 - var8 += var31; // L: 1376 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 1377 - var32 += var34; // L: 1378 - var35 += var37; // L: 1379 - var38 += var40; // L: 1380 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var3 >> 14, var4 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); + var4 += var27; + var3 += var26; + var8 += var31; + var2 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var5 >> 14, var4 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); // L: 1363 - var4 += var27; // L: 1364 - var5 += var28; // L: 1365 - var8 += var31; // L: 1366 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 1367 - var32 += var34; // L: 1368 - var35 += var37; // L: 1369 - var38 += var40; // L: 1370 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var5 >> 14, var4 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); + var4 += var27; + var5 += var28; + var8 += var31; + var2 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } } else { - var3 = var5 <<= 14; // L: 1386 - if (var2 < 0) { // L: 1387 - var3 -= var27 * var2; // L: 1388 - var5 -= var28 * var2; // L: 1389 - var8 -= var31 * var2; // L: 1390 - var2 = 0; // L: 1391 + var3 = var5 <<= 14; + if (var2 < 0) { + var3 -= var27 * var2; + var5 -= var28 * var2; + var8 -= var31 * var2; + var2 = 0; } - var4 <<= 14; // L: 1393 - if (var1 < 0) { // L: 1394 - var4 -= var26 * var1; // L: 1395 - var1 = 0; // L: 1396 + var4 <<= 14; + if (var1 < 0) { + var4 -= var26 * var1; + var1 = 0; } - var41 = var2 - Rasterizer3D_clipMidY; // L: 1398 - var32 += var34 * var41; // L: 1399 - var35 += var37 * var41; // L: 1400 - var38 += var40 * var41; // L: 1401 - if (var27 < var28) { // L: 1402 - var0 -= var1; // L: 1403 - var1 -= var2; // L: 1404 - var2 = Rasterizer3D_rowOffsets[var2]; // L: 1405 + var41 = var2 - Rasterizer3D_clipMidY; + var32 += var34 * var41; + var35 += var37 * var41; + var38 += var40 * var41; + if (var27 < var28) { + var0 -= var1; + var1 -= var2; + var2 = Rasterizer3D_rowOffsets[var2]; while (true) { - --var1; // L: 1406 + --var1; if (var1 < 0) { while (true) { - --var0; // L: 1416 + --var0; if (var0 < 0) { - return; // L: 1426 + return; } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var4 >> 14, var5 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); // L: 1417 - var4 += var26; // L: 1418 - var5 += var28; // L: 1419 - var8 += var31; // L: 1420 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 1421 - var32 += var34; // L: 1422 - var35 += var37; // L: 1423 - var38 += var40; // L: 1424 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var4 >> 14, var5 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); + var4 += var26; + var5 += var28; + var8 += var31; + var2 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var3 >> 14, var5 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); // L: 1407 - var3 += var27; // L: 1408 - var5 += var28; // L: 1409 - var8 += var31; // L: 1410 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 1411 - var32 += var34; // L: 1412 - var35 += var37; // L: 1413 - var38 += var40; // L: 1414 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var3 >> 14, var5 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); + var3 += var27; + var5 += var28; + var8 += var31; + var2 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } else { - var0 -= var1; // L: 1429 - var1 -= var2; // L: 1430 - var2 = Rasterizer3D_rowOffsets[var2]; // L: 1431 + var0 -= var1; + var1 -= var2; + var2 = Rasterizer3D_rowOffsets[var2]; while (true) { - --var1; // L: 1432 + --var1; if (var1 < 0) { while (true) { - --var0; // L: 1442 + --var0; if (var0 < 0) { - return; // L: 1452 + return; } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var5 >> 14, var4 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); // L: 1443 - var4 += var26; // L: 1444 - var5 += var28; // L: 1445 - var8 += var31; // L: 1446 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 1447 - var32 += var34; // L: 1448 - var35 += var37; // L: 1449 - var38 += var40; // L: 1450 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var5 >> 14, var4 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); + var4 += var26; + var5 += var28; + var8 += var31; + var2 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var5 >> 14, var3 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); // L: 1433 - var3 += var27; // L: 1434 - var5 += var28; // L: 1435 - var8 += var31; // L: 1436 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 1437 - var32 += var34; // L: 1438 - var35 += var37; // L: 1439 - var38 += var40; // L: 1440 + Rasterizer3D_iDontKnow(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var5 >> 14, var3 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); + var3 += var27; + var5 += var28; + var8 += var31; + var2 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } } } } } - } // L: 983 + } - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("Rasterizer3D_iDontKnow") static final void Rasterizer3D_iDontKnow(int[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14) { - if (field1800) { // L: 1461 - if (var6 > Rasterizer3D_clipWidth) { // L: 1462 + if (field1791) { + if (var6 > Rasterizer3D_clipWidth) { var6 = Rasterizer3D_clipWidth; } - if (var5 < 0) { // L: 1463 + if (var5 < 0) { var5 = 0; } } - if (var5 < var6) { // L: 1465 - var4 += var5; // L: 1466 - var7 += var5 * var8; // L: 1467 - int var17 = var6 - var5; // L: 1468 + if (var5 < var6) { + var4 += var5; + var7 += var5 * var8; + int var17 = var6 - var5; int var15; int var16; int var10000; @@ -2068,1040 +2068,1040 @@ public class Rasterizer3D extends Rasterizer2D { int var21; int var22; int var23; - if (Rasterizer3D_isLowDetailTexture) { // L: 1469 - var23 = var5 - Rasterizer3D_clipMidX; // L: 1475 - var9 += var23 * (var12 >> 3); // L: 1476 - var10 += (var13 >> 3) * var23; // L: 1477 - var11 += var23 * (var14 >> 3); // L: 1478 - var22 = var11 >> 12; // L: 1479 - if (var22 != 0) { // L: 1480 - var18 = var9 / var22; // L: 1481 - var19 = var10 / var22; // L: 1482 - if (var18 < 0) { // L: 1483 + if (Rasterizer3D_isLowDetailTexture) { + var23 = var5 - Rasterizer3D_clipMidX; + var9 += var23 * (var12 >> 3); + var10 += (var13 >> 3) * var23; + var11 += var23 * (var14 >> 3); + var22 = var11 >> 12; + if (var22 != 0) { + var18 = var9 / var22; + var19 = var10 / var22; + if (var18 < 0) { var18 = 0; - } else if (var18 > 4032) { // L: 1484 + } else if (var18 > 4032) { var18 = 4032; } } else { - var18 = 0; // L: 1487 - var19 = 0; // L: 1488 + var18 = 0; + var19 = 0; } - var9 += var12; // L: 1490 - var10 += var13; // L: 1491 - var11 += var14; // L: 1492 - var22 = var11 >> 12; // L: 1493 - if (var22 != 0) { // L: 1494 - var20 = var9 / var22; // L: 1495 - var21 = var10 / var22; // L: 1496 - if (var20 < 0) { // L: 1497 + var9 += var12; + var10 += var13; + var11 += var14; + var22 = var11 >> 12; + if (var22 != 0) { + var20 = var9 / var22; + var21 = var10 / var22; + if (var20 < 0) { var20 = 0; - } else if (var20 > 4032) { // L: 1498 + } else if (var20 > 4032) { var20 = 4032; } } else { - var20 = 0; // L: 1501 - var21 = 0; // L: 1502 + var20 = 0; + var21 = 0; } - var2 = (var18 << 20) + var19; // L: 1504 - var16 = (var21 - var19 >> 3) + (var20 - var18 >> 3 << 20); // L: 1505 - var17 >>= 3; // L: 1506 - var8 <<= 3; // L: 1507 - var15 = var7 >> 8; // L: 1508 - if (field1811) { // L: 1509 - if (var17 > 0) { // L: 1510 + var2 = (var18 << 20) + var19; + var16 = (var21 - var19 >> 3) + (var20 - var18 >> 3 << 20); + var17 >>= 3; + var8 <<= 3; + var15 = var7 >> 8; + if (field1779) { + if (var17 > 0) { do { - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 1512 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1513 - var2 += var16; // L: 1514 - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 1515 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1516 - var2 += var16; // L: 1517 - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 1518 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1519 - var2 += var16; // L: 1520 - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 1521 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1522 - var2 += var16; // L: 1523 - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 1524 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1525 - var2 += var16; // L: 1526 - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 1527 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1528 - var2 += var16; // L: 1529 - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 1530 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1531 - var2 += var16; // L: 1532 - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 1533 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1534 - var10000 = var16 + var2; // L: 1535 - var18 = var20; // L: 1536 - var19 = var21; // L: 1537 - var9 += var12; // L: 1538 - var10 += var13; // L: 1539 - var11 += var14; // L: 1540 - var22 = var11 >> 12; // L: 1541 - if (var22 != 0) { // L: 1542 - var20 = var9 / var22; // L: 1543 - var21 = var10 / var22; // L: 1544 - if (var20 < 0) { // L: 1545 + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var10000 = var16 + var2; + var18 = var20; + var19 = var21; + var9 += var12; + var10 += var13; + var11 += var14; + var22 = var11 >> 12; + if (var22 != 0) { + var20 = var9 / var22; + var21 = var10 / var22; + if (var20 < 0) { var20 = 0; - } else if (var20 > 4032) { // L: 1546 + } else if (var20 > 4032) { var20 = 4032; } } else { - var20 = 0; // L: 1549 - var21 = 0; // L: 1550 + var20 = 0; + var21 = 0; } - var2 = (var18 << 20) + var19; // L: 1552 - var16 = (var21 - var19 >> 3) + (var20 - var18 >> 3 << 20); // L: 1553 - var7 += var8; // L: 1554 - var15 = var7 >> 8; // L: 1555 - --var17; // L: 1556 + var2 = (var18 << 20) + var19; + var16 = (var21 - var19 >> 3) + (var20 - var18 >> 3 << 20); + var7 += var8; + var15 = var7 >> 8; + --var17; } while(var17 > 0); } - var17 = var6 - var5 & 7; // L: 1558 - if (var17 > 0) { // L: 1559 + var17 = var6 - var5 & 7; + if (var17 > 0) { do { - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 1561 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1562 - var2 += var16; // L: 1563 - --var17; // L: 1564 + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + --var17; } while(var17 > 0); } } else { - if (var17 > 0) { // L: 1568 + if (var17 > 0) { do { - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 1570 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1571 + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1573 - var2 += var16; // L: 1574 - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 1575 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1576 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1578 - var2 += var16; // L: 1579 - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 1580 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1581 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1583 - var2 += var16; // L: 1584 - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 1585 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1586 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1588 - var2 += var16; // L: 1589 - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 1590 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1591 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1593 - var2 += var16; // L: 1594 - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 1595 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1596 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1598 - var2 += var16; // L: 1599 - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 1600 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1601 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1603 - var2 += var16; // L: 1604 - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 1605 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1606 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1608 - var10000 = var16 + var2; // L: 1609 - var18 = var20; // L: 1610 - var19 = var21; // L: 1611 - var9 += var12; // L: 1612 - var10 += var13; // L: 1613 - var11 += var14; // L: 1614 - var22 = var11 >> 12; // L: 1615 - if (var22 != 0) { // L: 1616 - var20 = var9 / var22; // L: 1617 - var21 = var10 / var22; // L: 1618 - if (var20 < 0) { // L: 1619 + ++var4; + var10000 = var16 + var2; + var18 = var20; + var19 = var21; + var9 += var12; + var10 += var13; + var11 += var14; + var22 = var11 >> 12; + if (var22 != 0) { + var20 = var9 / var22; + var21 = var10 / var22; + if (var20 < 0) { var20 = 0; - } else if (var20 > 4032) { // L: 1620 + } else if (var20 > 4032) { var20 = 4032; } } else { - var20 = 0; // L: 1623 - var21 = 0; // L: 1624 + var20 = 0; + var21 = 0; } - var2 = (var18 << 20) + var19; // L: 1626 - var16 = (var21 - var19 >> 3) + (var20 - var18 >> 3 << 20); // L: 1627 - var7 += var8; // L: 1628 - var15 = var7 >> 8; // L: 1629 - --var17; // L: 1630 + var2 = (var18 << 20) + var19; + var16 = (var21 - var19 >> 3) + (var20 - var18 >> 3 << 20); + var7 += var8; + var15 = var7 >> 8; + --var17; } while(var17 > 0); } - var17 = var6 - var5 & 7; // L: 1632 - if (var17 > 0) { // L: 1633 + var17 = var6 - var5 & 7; + if (var17 > 0) { do { - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 1635 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1636 + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1638 - var2 += var16; // L: 1639 - --var17; // L: 1640 + ++var4; + var2 += var16; + --var17; } while(var17 > 0); } } } else { - var23 = var5 - Rasterizer3D_clipMidX; // L: 1650 - var9 += var23 * (var12 >> 3); // L: 1651 - var10 += (var13 >> 3) * var23; // L: 1652 - var11 += var23 * (var14 >> 3); // L: 1653 - var22 = var11 >> 14; // L: 1654 - if (var22 != 0) { // L: 1655 - var18 = var9 / var22; // L: 1656 - var19 = var10 / var22; // L: 1657 - if (var18 < 0) { // L: 1658 + var23 = var5 - Rasterizer3D_clipMidX; + var9 += var23 * (var12 >> 3); + var10 += (var13 >> 3) * var23; + var11 += var23 * (var14 >> 3); + var22 = var11 >> 14; + if (var22 != 0) { + var18 = var9 / var22; + var19 = var10 / var22; + if (var18 < 0) { var18 = 0; - } else if (var18 > 16256) { // L: 1659 + } else if (var18 > 16256) { var18 = 16256; } } else { - var18 = 0; // L: 1662 - var19 = 0; // L: 1663 + var18 = 0; + var19 = 0; } - var9 += var12; // L: 1665 - var10 += var13; // L: 1666 - var11 += var14; // L: 1667 - var22 = var11 >> 14; // L: 1668 - if (var22 != 0) { // L: 1669 - var20 = var9 / var22; // L: 1670 - var21 = var10 / var22; // L: 1671 - if (var20 < 0) { // L: 1672 + var9 += var12; + var10 += var13; + var11 += var14; + var22 = var11 >> 14; + if (var22 != 0) { + var20 = var9 / var22; + var21 = var10 / var22; + if (var20 < 0) { var20 = 0; - } else if (var20 > 16256) { // L: 1673 + } else if (var20 > 16256) { var20 = 16256; } } else { - var20 = 0; // L: 1676 - var21 = 0; // L: 1677 + var20 = 0; + var21 = 0; } - var2 = (var18 << 18) + var19; // L: 1679 - var16 = (var21 - var19 >> 3) + (var20 - var18 >> 3 << 18); // L: 1680 - var17 >>= 3; // L: 1681 - var8 <<= 3; // L: 1682 - var15 = var7 >> 8; // L: 1683 - if (field1811) { // L: 1684 - if (var17 > 0) { // L: 1685 + var2 = (var18 << 18) + var19; + var16 = (var21 - var19 >> 3) + (var20 - var18 >> 3 << 18); + var17 >>= 3; + var8 <<= 3; + var15 = var7 >> 8; + if (field1779) { + if (var17 > 0) { do { - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 1687 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1688 - var2 += var16; // L: 1689 - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 1690 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1691 - var2 += var16; // L: 1692 - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 1693 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1694 - var2 += var16; // L: 1695 - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 1696 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1697 - var2 += var16; // L: 1698 - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 1699 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1700 - var2 += var16; // L: 1701 - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 1702 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1703 - var2 += var16; // L: 1704 - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 1705 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1706 - var2 += var16; // L: 1707 - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 1708 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1709 - var10000 = var16 + var2; // L: 1710 - var18 = var20; // L: 1711 - var19 = var21; // L: 1712 - var9 += var12; // L: 1713 - var10 += var13; // L: 1714 - var11 += var14; // L: 1715 - var22 = var11 >> 14; // L: 1716 - if (var22 != 0) { // L: 1717 - var20 = var9 / var22; // L: 1718 - var21 = var10 / var22; // L: 1719 - if (var20 < 0) { // L: 1720 + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var10000 = var16 + var2; + var18 = var20; + var19 = var21; + var9 += var12; + var10 += var13; + var11 += var14; + var22 = var11 >> 14; + if (var22 != 0) { + var20 = var9 / var22; + var21 = var10 / var22; + if (var20 < 0) { var20 = 0; - } else if (var20 > 16256) { // L: 1721 + } else if (var20 > 16256) { var20 = 16256; } } else { - var20 = 0; // L: 1724 - var21 = 0; // L: 1725 + var20 = 0; + var21 = 0; } - var2 = (var18 << 18) + var19; // L: 1727 - var16 = (var21 - var19 >> 3) + (var20 - var18 >> 3 << 18); // L: 1728 - var7 += var8; // L: 1729 - var15 = var7 >> 8; // L: 1730 - --var17; // L: 1731 + var2 = (var18 << 18) + var19; + var16 = (var21 - var19 >> 3) + (var20 - var18 >> 3 << 18); + var7 += var8; + var15 = var7 >> 8; + --var17; } while(var17 > 0); } - var17 = var6 - var5 & 7; // L: 1733 - if (var17 > 0) { // L: 1734 + var17 = var6 - var5 & 7; + if (var17 > 0) { do { - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 1736 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1737 - var2 += var16; // L: 1738 - --var17; // L: 1739 + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + --var17; } while(var17 > 0); } } else { - if (var17 > 0) { // L: 1743 + if (var17 > 0) { do { - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 1745 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1746 + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1748 - var2 += var16; // L: 1749 - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 1750 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1751 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1753 - var2 += var16; // L: 1754 - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 1755 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1756 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1758 - var2 += var16; // L: 1759 - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 1760 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1761 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1763 - var2 += var16; // L: 1764 - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 1765 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1766 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1768 - var2 += var16; // L: 1769 - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 1770 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1771 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1773 - var2 += var16; // L: 1774 - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 1775 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1776 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1778 - var2 += var16; // L: 1779 - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 1780 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1781 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1783 - var10000 = var16 + var2; // L: 1784 - var18 = var20; // L: 1785 - var19 = var21; // L: 1786 - var9 += var12; // L: 1787 - var10 += var13; // L: 1788 - var11 += var14; // L: 1789 - var22 = var11 >> 14; // L: 1790 - if (var22 != 0) { // L: 1791 - var20 = var9 / var22; // L: 1792 - var21 = var10 / var22; // L: 1793 - if (var20 < 0) { // L: 1794 + ++var4; + var10000 = var16 + var2; + var18 = var20; + var19 = var21; + var9 += var12; + var10 += var13; + var11 += var14; + var22 = var11 >> 14; + if (var22 != 0) { + var20 = var9 / var22; + var21 = var10 / var22; + if (var20 < 0) { var20 = 0; - } else if (var20 > 16256) { // L: 1795 + } else if (var20 > 16256) { var20 = 16256; } } else { - var20 = 0; // L: 1798 - var21 = 0; // L: 1799 + var20 = 0; + var21 = 0; } - var2 = (var18 << 18) + var19; // L: 1801 - var16 = (var21 - var19 >> 3) + (var20 - var18 >> 3 << 18); // L: 1802 - var7 += var8; // L: 1803 - var15 = var7 >> 8; // L: 1804 - --var17; // L: 1805 + var2 = (var18 << 18) + var19; + var16 = (var21 - var19 >> 3) + (var20 - var18 >> 3 << 18); + var7 += var8; + var15 = var7 >> 8; + --var17; } while(var17 > 0); } - var17 = var6 - var5 & 7; // L: 1807 - if (var17 > 0) { // L: 1808 + var17 = var6 - var5 & 7; + if (var17 > 0) { do { - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 1810 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 1811 + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 1813 - var2 += var16; // L: 1814 - --var17; // L: 1815 + ++var4; + var2 += var16; + --var17; } while(var17 > 0); } } } } - } // L: 1819 + } - @ObfuscatedName("r") + @ObfuscatedName("f") @Export("drawTexturedTile") static final void drawTexturedTile(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18) { - int[] var19 = Rasterizer3D_textureLoader.getTexturePixels(var18); // L: 1822 + int[] var19 = Rasterizer3D_textureLoader.getTexturePixels(var18); int var20; - if (var19 == null) { // L: 1823 - var20 = Rasterizer3D_textureLoader.getAverageTextureRGB(var18); // L: 1824 - method3155(var0, var1, var2, var3, var4, var5, method3186(var20, var6), method3186(var20, var7), method3186(var20, var8)); // L: 1825 + if (var19 == null) { + var20 = Rasterizer3D_textureLoader.getAverageTextureRGB(var18); + method3079(var0, var1, var2, var3, var4, var5, method3072(var20, var6), method3072(var20, var7), method3072(var20, var8)); } else { - Rasterizer3D_isLowDetailTexture = Rasterizer3D_textureLoader.isLowDetail(var18); // L: 1828 - field1811 = Rasterizer3D_textureLoader.vmethod3401(var18); // L: 1829 - var20 = var4 - var3; // L: 1830 - int var21 = var1 - var0; // L: 1831 - int var22 = var5 - var3; // L: 1832 - int var23 = var2 - var0; // L: 1833 - int var24 = var7 - var6; // L: 1834 - int var25 = var8 - var6; // L: 1835 - int var26 = 0; // L: 1836 - if (var0 != var1) { // L: 1837 + Rasterizer3D_isLowDetailTexture = Rasterizer3D_textureLoader.isLowDetail(var18); + field1779 = Rasterizer3D_textureLoader.vmethod3359(var18); + var20 = var4 - var3; + int var21 = var1 - var0; + int var22 = var5 - var3; + int var23 = var2 - var0; + int var24 = var7 - var6; + int var25 = var8 - var6; + int var26 = 0; + if (var0 != var1) { var26 = (var4 - var3 << 14) / (var1 - var0); } - int var27 = 0; // L: 1838 - if (var2 != var1) { // L: 1839 + int var27 = 0; + if (var2 != var1) { var27 = (var5 - var4 << 14) / (var2 - var1); } - int var28 = 0; // L: 1840 - if (var0 != var2) { // L: 1841 + int var28 = 0; + if (var0 != var2) { var28 = (var3 - var5 << 14) / (var0 - var2); } - int var29 = var20 * var23 - var22 * var21; // L: 1842 - if (var29 != 0) { // L: 1843 - int var30 = (var24 * var23 - var25 * var21 << 9) / var29; // L: 1844 - int var31 = (var25 * var20 - var24 * var22 << 9) / var29; // L: 1845 - var10 = var9 - var10; // L: 1846 - var13 = var12 - var13; // L: 1847 - var16 = var15 - var16; // L: 1848 - var11 -= var9; // L: 1849 - var14 -= var12; // L: 1850 - var17 -= var15; // L: 1851 - int var32 = var11 * var12 - var9 * var14 << 14; // L: 1852 - int var33 = (int)(((long)(var15 * var14 - var17 * var12) << 14) / (long)Rasterizer3D_zoom); // L: 1853 - int var34 = (int)(((long)(var17 * var9 - var11 * var15) << 14) / (long)Rasterizer3D_zoom); // L: 1854 - int var35 = var10 * var12 - var13 * var9 << 14; // L: 1855 - int var36 = (int)(((long)(var13 * var15 - var16 * var12) << 14) / (long)Rasterizer3D_zoom); // L: 1856 - int var37 = (int)(((long)(var16 * var9 - var10 * var15) << 14) / (long)Rasterizer3D_zoom); // L: 1857 - int var38 = var13 * var11 - var10 * var14 << 14; // L: 1858 - int var39 = (int)(((long)(var16 * var14 - var13 * var17) << 14) / (long)Rasterizer3D_zoom); // L: 1859 - int var40 = (int)(((long)(var17 * var10 - var11 * var16) << 14) / (long)Rasterizer3D_zoom); // L: 1860 + int var29 = var20 * var23 - var22 * var21; + if (var29 != 0) { + int var30 = (var24 * var23 - var25 * var21 << 9) / var29; + int var31 = (var25 * var20 - var24 * var22 << 9) / var29; + var10 = var9 - var10; + var13 = var12 - var13; + var16 = var15 - var16; + var11 -= var9; + var14 -= var12; + var17 -= var15; + int var32 = var11 * var12 - var9 * var14 << 14; + int var33 = (int)(((long)(var15 * var14 - var17 * var12) << 14) / (long)Rasterizer3D_zoom); + int var34 = (int)(((long)(var17 * var9 - var11 * var15) << 14) / (long)Rasterizer3D_zoom); + int var35 = var10 * var12 - var13 * var9 << 14; + int var36 = (int)(((long)(var13 * var15 - var16 * var12) << 14) / (long)Rasterizer3D_zoom); + int var37 = (int)(((long)(var16 * var9 - var10 * var15) << 14) / (long)Rasterizer3D_zoom); + int var38 = var13 * var11 - var10 * var14 << 14; + int var39 = (int)(((long)(var16 * var14 - var13 * var17) << 14) / (long)Rasterizer3D_zoom); + int var40 = (int)(((long)(var17 * var10 - var11 * var16) << 14) / (long)Rasterizer3D_zoom); int var41; - if (var0 <= var1 && var0 <= var2) { // L: 1861 - if (var0 < Rasterizer3D_clipHeight) { // L: 1862 - if (var1 > Rasterizer3D_clipHeight) { // L: 1863 + if (var0 <= var1 && var0 <= var2) { + if (var0 < Rasterizer3D_clipHeight) { + if (var1 > Rasterizer3D_clipHeight) { var1 = Rasterizer3D_clipHeight; } - if (var2 > Rasterizer3D_clipHeight) { // L: 1864 + if (var2 > Rasterizer3D_clipHeight) { var2 = Rasterizer3D_clipHeight; } - var6 = var30 + ((var6 << 9) - var3 * var30); // L: 1865 - if (var1 < var2) { // L: 1866 - var5 = var3 <<= 14; // L: 1867 - if (var0 < 0) { // L: 1868 - var5 -= var0 * var28; // L: 1869 - var3 -= var0 * var26; // L: 1870 - var6 -= var0 * var31; // L: 1871 - var0 = 0; // L: 1872 + var6 = var30 + ((var6 << 9) - var3 * var30); + if (var1 < var2) { + var5 = var3 <<= 14; + if (var0 < 0) { + var5 -= var0 * var28; + var3 -= var0 * var26; + var6 -= var0 * var31; + var0 = 0; } - var4 <<= 14; // L: 1874 - if (var1 < 0) { // L: 1875 - var4 -= var27 * var1; // L: 1876 - var1 = 0; // L: 1877 + var4 <<= 14; + if (var1 < 0) { + var4 -= var27 * var1; + var1 = 0; } - var41 = var0 - Rasterizer3D_clipMidY; // L: 1879 - var32 += var34 * var41; // L: 1880 - var35 += var37 * var41; // L: 1881 - var38 += var40 * var41; // L: 1882 - if ((var0 == var1 || var28 >= var26) && (var0 != var1 || var28 <= var27)) { // L: 1883 - var2 -= var1; // L: 1910 - var1 -= var0; // L: 1911 - var0 = Rasterizer3D_rowOffsets[var0]; // L: 1912 + var41 = var0 - Rasterizer3D_clipMidY; + var32 += var34 * var41; + var35 += var37 * var41; + var38 += var40 * var41; + if ((var0 == var1 || var28 >= var26) && (var0 != var1 || var28 <= var27)) { + var2 -= var1; + var1 -= var0; + var0 = Rasterizer3D_rowOffsets[var0]; while (true) { - --var1; // L: 1913 + --var1; if (var1 < 0) { while (true) { - --var2; // L: 1923 + --var2; if (var2 < 0) { - return; // L: 1933 + return; } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var4 >> 14, var5 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); // L: 1924 - var5 += var28; // L: 1925 - var4 += var27; // L: 1926 - var6 += var31; // L: 1927 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 1928 - var32 += var34; // L: 1929 - var35 += var37; // L: 1930 - var38 += var40; // L: 1931 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var4 >> 14, var5 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); + var5 += var28; + var4 += var27; + var6 += var31; + var0 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var3 >> 14, var5 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); // L: 1914 - var5 += var28; // L: 1915 - var3 += var26; // L: 1916 - var6 += var31; // L: 1917 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 1918 - var32 += var34; // L: 1919 - var35 += var37; // L: 1920 - var38 += var40; // L: 1921 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var3 >> 14, var5 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); + var5 += var28; + var3 += var26; + var6 += var31; + var0 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } else { - var2 -= var1; // L: 1884 - var1 -= var0; // L: 1885 - var0 = Rasterizer3D_rowOffsets[var0]; // L: 1886 + var2 -= var1; + var1 -= var0; + var0 = Rasterizer3D_rowOffsets[var0]; while (true) { - --var1; // L: 1887 + --var1; if (var1 < 0) { while (true) { - --var2; // L: 1897 + --var2; if (var2 < 0) { - return; // L: 1907 + return; } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var5 >> 14, var4 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); // L: 1898 - var5 += var28; // L: 1899 - var4 += var27; // L: 1900 - var6 += var31; // L: 1901 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 1902 - var32 += var34; // L: 1903 - var35 += var37; // L: 1904 - var38 += var40; // L: 1905 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var5 >> 14, var4 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); + var5 += var28; + var4 += var27; + var6 += var31; + var0 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var5 >> 14, var3 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); // L: 1888 - var5 += var28; // L: 1889 - var3 += var26; // L: 1890 - var6 += var31; // L: 1891 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 1892 - var32 += var34; // L: 1893 - var35 += var37; // L: 1894 - var38 += var40; // L: 1895 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var5 >> 14, var3 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); + var5 += var28; + var3 += var26; + var6 += var31; + var0 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } } else { - var4 = var3 <<= 14; // L: 1937 - if (var0 < 0) { // L: 1938 - var4 -= var0 * var28; // L: 1939 - var3 -= var0 * var26; // L: 1940 - var6 -= var0 * var31; // L: 1941 - var0 = 0; // L: 1942 + var4 = var3 <<= 14; + if (var0 < 0) { + var4 -= var0 * var28; + var3 -= var0 * var26; + var6 -= var0 * var31; + var0 = 0; } - var5 <<= 14; // L: 1944 - if (var2 < 0) { // L: 1945 - var5 -= var27 * var2; // L: 1946 - var2 = 0; // L: 1947 + var5 <<= 14; + if (var2 < 0) { + var5 -= var27 * var2; + var2 = 0; } - var41 = var0 - Rasterizer3D_clipMidY; // L: 1949 - var32 += var34 * var41; // L: 1950 - var35 += var37 * var41; // L: 1951 - var38 += var40 * var41; // L: 1952 - if ((var0 == var2 || var28 >= var26) && (var0 != var2 || var27 <= var26)) { // L: 1953 - var1 -= var2; // L: 1980 - var2 -= var0; // L: 1981 - var0 = Rasterizer3D_rowOffsets[var0]; // L: 1982 + var41 = var0 - Rasterizer3D_clipMidY; + var32 += var34 * var41; + var35 += var37 * var41; + var38 += var40 * var41; + if ((var0 == var2 || var28 >= var26) && (var0 != var2 || var27 <= var26)) { + var1 -= var2; + var2 -= var0; + var0 = Rasterizer3D_rowOffsets[var0]; while (true) { - --var2; // L: 1983 + --var2; if (var2 < 0) { while (true) { - --var1; // L: 1993 + --var1; if (var1 < 0) { - return; // L: 2003 + return; } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var3 >> 14, var5 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); // L: 1994 - var5 += var27; // L: 1995 - var3 += var26; // L: 1996 - var6 += var31; // L: 1997 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 1998 - var32 += var34; // L: 1999 - var35 += var37; // L: 2000 - var38 += var40; // L: 2001 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var3 >> 14, var5 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); + var5 += var27; + var3 += var26; + var6 += var31; + var0 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var3 >> 14, var4 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); // L: 1984 - var4 += var28; // L: 1985 - var3 += var26; // L: 1986 - var6 += var31; // L: 1987 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 1988 - var32 += var34; // L: 1989 - var35 += var37; // L: 1990 - var38 += var40; // L: 1991 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var3 >> 14, var4 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); + var4 += var28; + var3 += var26; + var6 += var31; + var0 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } else { - var1 -= var2; // L: 1954 - var2 -= var0; // L: 1955 - var0 = Rasterizer3D_rowOffsets[var0]; // L: 1956 + var1 -= var2; + var2 -= var0; + var0 = Rasterizer3D_rowOffsets[var0]; while (true) { - --var2; // L: 1957 + --var2; if (var2 < 0) { while (true) { - --var1; // L: 1967 + --var1; if (var1 < 0) { - return; // L: 1977 + return; } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var5 >> 14, var3 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); // L: 1968 - var5 += var27; // L: 1969 - var3 += var26; // L: 1970 - var6 += var31; // L: 1971 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 1972 - var32 += var34; // L: 1973 - var35 += var37; // L: 1974 - var38 += var40; // L: 1975 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var5 >> 14, var3 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); + var5 += var27; + var3 += var26; + var6 += var31; + var0 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var4 >> 14, var3 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); // L: 1958 - var4 += var28; // L: 1959 - var3 += var26; // L: 1960 - var6 += var31; // L: 1961 - var0 += Rasterizer2D.Rasterizer2D_width; // L: 1962 - var32 += var34; // L: 1963 - var35 += var37; // L: 1964 - var38 += var40; // L: 1965 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var0, var4 >> 14, var3 >> 14, var6, var30, var32, var35, var38, var33, var36, var39); + var4 += var28; + var3 += var26; + var6 += var31; + var0 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } } } - } else if (var1 <= var2) { // L: 2007 - if (var1 < Rasterizer3D_clipHeight) { // L: 2008 - if (var2 > Rasterizer3D_clipHeight) { // L: 2009 + } else if (var1 <= var2) { + if (var1 < Rasterizer3D_clipHeight) { + if (var2 > Rasterizer3D_clipHeight) { var2 = Rasterizer3D_clipHeight; } - if (var0 > Rasterizer3D_clipHeight) { // L: 2010 + if (var0 > Rasterizer3D_clipHeight) { var0 = Rasterizer3D_clipHeight; } - var7 = var30 + ((var7 << 9) - var30 * var4); // L: 2011 - if (var2 < var0) { // L: 2012 - var3 = var4 <<= 14; // L: 2013 - if (var1 < 0) { // L: 2014 - var3 -= var26 * var1; // L: 2015 - var4 -= var27 * var1; // L: 2016 - var7 -= var31 * var1; // L: 2017 - var1 = 0; // L: 2018 + var7 = var30 + ((var7 << 9) - var30 * var4); + if (var2 < var0) { + var3 = var4 <<= 14; + if (var1 < 0) { + var3 -= var26 * var1; + var4 -= var27 * var1; + var7 -= var31 * var1; + var1 = 0; } - var5 <<= 14; // L: 2020 - if (var2 < 0) { // L: 2021 - var5 -= var28 * var2; // L: 2022 - var2 = 0; // L: 2023 + var5 <<= 14; + if (var2 < 0) { + var5 -= var28 * var2; + var2 = 0; } - var41 = var1 - Rasterizer3D_clipMidY; // L: 2025 - var32 += var34 * var41; // L: 2026 - var35 += var37 * var41; // L: 2027 - var38 += var40 * var41; // L: 2028 - if (var2 != var1 && var26 < var27 || var2 == var1 && var26 > var28) { // L: 2029 - var0 -= var2; // L: 2030 - var2 -= var1; // L: 2031 - var1 = Rasterizer3D_rowOffsets[var1]; // L: 2032 + var41 = var1 - Rasterizer3D_clipMidY; + var32 += var34 * var41; + var35 += var37 * var41; + var38 += var40 * var41; + if (var2 != var1 && var26 < var27 || var2 == var1 && var26 > var28) { + var0 -= var2; + var2 -= var1; + var1 = Rasterizer3D_rowOffsets[var1]; while (true) { - --var2; // L: 2033 + --var2; if (var2 < 0) { while (true) { - --var0; // L: 2043 + --var0; if (var0 < 0) { - return; // L: 2053 + return; } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var3 >> 14, var5 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); // L: 2044 - var3 += var26; // L: 2045 - var5 += var28; // L: 2046 - var7 += var31; // L: 2047 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 2048 - var32 += var34; // L: 2049 - var35 += var37; // L: 2050 - var38 += var40; // L: 2051 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var3 >> 14, var5 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); + var3 += var26; + var5 += var28; + var7 += var31; + var1 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var3 >> 14, var4 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); // L: 2034 - var3 += var26; // L: 2035 - var4 += var27; // L: 2036 - var7 += var31; // L: 2037 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 2038 - var32 += var34; // L: 2039 - var35 += var37; // L: 2040 - var38 += var40; // L: 2041 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var3 >> 14, var4 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); + var3 += var26; + var4 += var27; + var7 += var31; + var1 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } else { - var0 -= var2; // L: 2056 - var2 -= var1; // L: 2057 - var1 = Rasterizer3D_rowOffsets[var1]; // L: 2058 + var0 -= var2; + var2 -= var1; + var1 = Rasterizer3D_rowOffsets[var1]; while (true) { - --var2; // L: 2059 + --var2; if (var2 < 0) { while (true) { - --var0; // L: 2069 + --var0; if (var0 < 0) { - return; // L: 2079 + return; } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var5 >> 14, var3 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); // L: 2070 - var3 += var26; // L: 2071 - var5 += var28; // L: 2072 - var7 += var31; // L: 2073 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 2074 - var32 += var34; // L: 2075 - var35 += var37; // L: 2076 - var38 += var40; // L: 2077 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var5 >> 14, var3 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); + var3 += var26; + var5 += var28; + var7 += var31; + var1 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var4 >> 14, var3 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); // L: 2060 - var3 += var26; // L: 2061 - var4 += var27; // L: 2062 - var7 += var31; // L: 2063 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 2064 - var32 += var34; // L: 2065 - var35 += var37; // L: 2066 - var38 += var40; // L: 2067 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var4 >> 14, var3 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); + var3 += var26; + var4 += var27; + var7 += var31; + var1 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } } else { - var5 = var4 <<= 14; // L: 2083 - if (var1 < 0) { // L: 2084 - var5 -= var26 * var1; // L: 2085 - var4 -= var27 * var1; // L: 2086 - var7 -= var31 * var1; // L: 2087 - var1 = 0; // L: 2088 + var5 = var4 <<= 14; + if (var1 < 0) { + var5 -= var26 * var1; + var4 -= var27 * var1; + var7 -= var31 * var1; + var1 = 0; } - var3 <<= 14; // L: 2090 - if (var0 < 0) { // L: 2091 - var3 -= var0 * var28; // L: 2092 - var0 = 0; // L: 2093 + var3 <<= 14; + if (var0 < 0) { + var3 -= var0 * var28; + var0 = 0; } - var41 = var1 - Rasterizer3D_clipMidY; // L: 2095 - var32 += var34 * var41; // L: 2096 - var35 += var37 * var41; // L: 2097 - var38 += var40 * var41; // L: 2098 - if (var26 < var27) { // L: 2099 - var2 -= var0; // L: 2100 - var0 -= var1; // L: 2101 - var1 = Rasterizer3D_rowOffsets[var1]; // L: 2102 + var41 = var1 - Rasterizer3D_clipMidY; + var32 += var34 * var41; + var35 += var37 * var41; + var38 += var40 * var41; + if (var26 < var27) { + var2 -= var0; + var0 -= var1; + var1 = Rasterizer3D_rowOffsets[var1]; while (true) { - --var0; // L: 2103 + --var0; if (var0 < 0) { while (true) { - --var2; // L: 2113 + --var2; if (var2 < 0) { - return; // L: 2123 + return; } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var3 >> 14, var4 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); // L: 2114 - var3 += var28; // L: 2115 - var4 += var27; // L: 2116 - var7 += var31; // L: 2117 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 2118 - var32 += var34; // L: 2119 - var35 += var37; // L: 2120 - var38 += var40; // L: 2121 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var3 >> 14, var4 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); + var3 += var28; + var4 += var27; + var7 += var31; + var1 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var5 >> 14, var4 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); // L: 2104 - var5 += var26; // L: 2105 - var4 += var27; // L: 2106 - var7 += var31; // L: 2107 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 2108 - var32 += var34; // L: 2109 - var35 += var37; // L: 2110 - var38 += var40; // L: 2111 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var5 >> 14, var4 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); + var5 += var26; + var4 += var27; + var7 += var31; + var1 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } else { - var2 -= var0; // L: 2126 - var0 -= var1; // L: 2127 - var1 = Rasterizer3D_rowOffsets[var1]; // L: 2128 + var2 -= var0; + var0 -= var1; + var1 = Rasterizer3D_rowOffsets[var1]; while (true) { - --var0; // L: 2129 + --var0; if (var0 < 0) { while (true) { - --var2; // L: 2139 + --var2; if (var2 < 0) { - return; // L: 2149 + return; } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var4 >> 14, var3 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); // L: 2140 - var3 += var28; // L: 2141 - var4 += var27; // L: 2142 - var7 += var31; // L: 2143 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 2144 - var32 += var34; // L: 2145 - var35 += var37; // L: 2146 - var38 += var40; // L: 2147 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var4 >> 14, var3 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); + var3 += var28; + var4 += var27; + var7 += var31; + var1 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var4 >> 14, var5 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); // L: 2130 - var5 += var26; // L: 2131 - var4 += var27; // L: 2132 - var7 += var31; // L: 2133 - var1 += Rasterizer2D.Rasterizer2D_width; // L: 2134 - var32 += var34; // L: 2135 - var35 += var37; // L: 2136 - var38 += var40; // L: 2137 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var1, var4 >> 14, var5 >> 14, var7, var30, var32, var35, var38, var33, var36, var39); + var5 += var26; + var4 += var27; + var7 += var31; + var1 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } } } - } else if (var2 < Rasterizer3D_clipHeight) { // L: 2154 - if (var0 > Rasterizer3D_clipHeight) { // L: 2155 + } else if (var2 < Rasterizer3D_clipHeight) { + if (var0 > Rasterizer3D_clipHeight) { var0 = Rasterizer3D_clipHeight; } - if (var1 > Rasterizer3D_clipHeight) { // L: 2156 + if (var1 > Rasterizer3D_clipHeight) { var1 = Rasterizer3D_clipHeight; } - var8 = (var8 << 9) - var5 * var30 + var30; // L: 2157 - if (var0 < var1) { // L: 2158 - var4 = var5 <<= 14; // L: 2159 - if (var2 < 0) { // L: 2160 - var4 -= var27 * var2; // L: 2161 - var5 -= var28 * var2; // L: 2162 - var8 -= var31 * var2; // L: 2163 - var2 = 0; // L: 2164 + var8 = (var8 << 9) - var5 * var30 + var30; + if (var0 < var1) { + var4 = var5 <<= 14; + if (var2 < 0) { + var4 -= var27 * var2; + var5 -= var28 * var2; + var8 -= var31 * var2; + var2 = 0; } - var3 <<= 14; // L: 2166 - if (var0 < 0) { // L: 2167 - var3 -= var0 * var26; // L: 2168 - var0 = 0; // L: 2169 + var3 <<= 14; + if (var0 < 0) { + var3 -= var0 * var26; + var0 = 0; } - var41 = var2 - Rasterizer3D_clipMidY; // L: 2171 - var32 += var34 * var41; // L: 2172 - var35 += var37 * var41; // L: 2173 - var38 += var40 * var41; // L: 2174 - if (var27 < var28) { // L: 2175 - var1 -= var0; // L: 2176 - var0 -= var2; // L: 2177 - var2 = Rasterizer3D_rowOffsets[var2]; // L: 2178 + var41 = var2 - Rasterizer3D_clipMidY; + var32 += var34 * var41; + var35 += var37 * var41; + var38 += var40 * var41; + if (var27 < var28) { + var1 -= var0; + var0 -= var2; + var2 = Rasterizer3D_rowOffsets[var2]; while (true) { - --var0; // L: 2179 + --var0; if (var0 < 0) { while (true) { - --var1; // L: 2189 + --var1; if (var1 < 0) { - return; // L: 2199 + return; } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var4 >> 14, var3 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); // L: 2190 - var4 += var27; // L: 2191 - var3 += var26; // L: 2192 - var8 += var31; // L: 2193 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 2194 - var32 += var34; // L: 2195 - var35 += var37; // L: 2196 - var38 += var40; // L: 2197 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var4 >> 14, var3 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); + var4 += var27; + var3 += var26; + var8 += var31; + var2 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var4 >> 14, var5 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); // L: 2180 - var4 += var27; // L: 2181 - var5 += var28; // L: 2182 - var8 += var31; // L: 2183 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 2184 - var32 += var34; // L: 2185 - var35 += var37; // L: 2186 - var38 += var40; // L: 2187 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var4 >> 14, var5 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); + var4 += var27; + var5 += var28; + var8 += var31; + var2 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } else { - var1 -= var0; // L: 2202 - var0 -= var2; // L: 2203 - var2 = Rasterizer3D_rowOffsets[var2]; // L: 2204 + var1 -= var0; + var0 -= var2; + var2 = Rasterizer3D_rowOffsets[var2]; while (true) { - --var0; // L: 2205 + --var0; if (var0 < 0) { while (true) { - --var1; // L: 2215 + --var1; if (var1 < 0) { - return; // L: 2225 + return; } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var3 >> 14, var4 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); // L: 2216 - var4 += var27; // L: 2217 - var3 += var26; // L: 2218 - var8 += var31; // L: 2219 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 2220 - var32 += var34; // L: 2221 - var35 += var37; // L: 2222 - var38 += var40; // L: 2223 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var3 >> 14, var4 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); + var4 += var27; + var3 += var26; + var8 += var31; + var2 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var5 >> 14, var4 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); // L: 2206 - var4 += var27; // L: 2207 - var5 += var28; // L: 2208 - var8 += var31; // L: 2209 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 2210 - var32 += var34; // L: 2211 - var35 += var37; // L: 2212 - var38 += var40; // L: 2213 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var5 >> 14, var4 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); + var4 += var27; + var5 += var28; + var8 += var31; + var2 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } } else { - var3 = var5 <<= 14; // L: 2229 - if (var2 < 0) { // L: 2230 - var3 -= var27 * var2; // L: 2231 - var5 -= var28 * var2; // L: 2232 - var8 -= var31 * var2; // L: 2233 - var2 = 0; // L: 2234 + var3 = var5 <<= 14; + if (var2 < 0) { + var3 -= var27 * var2; + var5 -= var28 * var2; + var8 -= var31 * var2; + var2 = 0; } - var4 <<= 14; // L: 2236 - if (var1 < 0) { // L: 2237 - var4 -= var26 * var1; // L: 2238 - var1 = 0; // L: 2239 + var4 <<= 14; + if (var1 < 0) { + var4 -= var26 * var1; + var1 = 0; } - var41 = var2 - Rasterizer3D_clipMidY; // L: 2241 - var32 += var34 * var41; // L: 2242 - var35 += var37 * var41; // L: 2243 - var38 += var40 * var41; // L: 2244 - if (var27 < var28) { // L: 2245 - var0 -= var1; // L: 2246 - var1 -= var2; // L: 2247 - var2 = Rasterizer3D_rowOffsets[var2]; // L: 2248 + var41 = var2 - Rasterizer3D_clipMidY; + var32 += var34 * var41; + var35 += var37 * var41; + var38 += var40 * var41; + if (var27 < var28) { + var0 -= var1; + var1 -= var2; + var2 = Rasterizer3D_rowOffsets[var2]; while (true) { - --var1; // L: 2249 + --var1; if (var1 < 0) { while (true) { - --var0; // L: 2259 + --var0; if (var0 < 0) { - return; // L: 2269 + return; } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var4 >> 14, var5 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); // L: 2260 - var4 += var26; // L: 2261 - var5 += var28; // L: 2262 - var8 += var31; // L: 2263 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 2264 - var32 += var34; // L: 2265 - var35 += var37; // L: 2266 - var38 += var40; // L: 2267 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var4 >> 14, var5 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); + var4 += var26; + var5 += var28; + var8 += var31; + var2 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var3 >> 14, var5 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); // L: 2250 - var3 += var27; // L: 2251 - var5 += var28; // L: 2252 - var8 += var31; // L: 2253 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 2254 - var32 += var34; // L: 2255 - var35 += var37; // L: 2256 - var38 += var40; // L: 2257 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var3 >> 14, var5 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); + var3 += var27; + var5 += var28; + var8 += var31; + var2 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } else { - var0 -= var1; // L: 2272 - var1 -= var2; // L: 2273 - var2 = Rasterizer3D_rowOffsets[var2]; // L: 2274 + var0 -= var1; + var1 -= var2; + var2 = Rasterizer3D_rowOffsets[var2]; while (true) { - --var1; // L: 2275 + --var1; if (var1 < 0) { while (true) { - --var0; // L: 2285 + --var0; if (var0 < 0) { - return; // L: 2295 + return; } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var5 >> 14, var4 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); // L: 2286 - var4 += var26; // L: 2287 - var5 += var28; // L: 2288 - var8 += var31; // L: 2289 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 2290 - var32 += var34; // L: 2291 - var35 += var37; // L: 2292 - var38 += var40; // L: 2293 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var5 >> 14, var4 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); + var4 += var26; + var5 += var28; + var8 += var31; + var2 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } - Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var5 >> 14, var3 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); // L: 2276 - var3 += var27; // L: 2277 - var5 += var28; // L: 2278 - var8 += var31; // L: 2279 - var2 += Rasterizer2D.Rasterizer2D_width; // L: 2280 - var32 += var34; // L: 2281 - var35 += var37; // L: 2282 - var38 += var40; // L: 2283 + Rasterizer3D_textureAlpha(Rasterizer2D.Rasterizer2D_pixels, var19, 0, 0, var2, var5 >> 14, var3 >> 14, var8, var30, var32, var35, var38, var33, var36, var39); + var3 += var27; + var5 += var28; + var8 += var31; + var2 += Rasterizer2D.Rasterizer2D_width; + var32 += var34; + var35 += var37; + var38 += var40; } } } } } } - } // L: 1826 + } @ObfuscatedName("y") @Export("Rasterizer3D_textureAlpha") static final void Rasterizer3D_textureAlpha(int[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14) { - if (field1800) { // L: 2304 - if (var6 > Rasterizer3D_clipWidth) { // L: 2305 + if (field1791) { + if (var6 > Rasterizer3D_clipWidth) { var6 = Rasterizer3D_clipWidth; } - if (var5 < 0) { // L: 2306 + if (var5 < 0) { var5 = 0; } } - if (var5 < var6) { // L: 2308 - var4 += var5; // L: 2309 - var7 += var5 * var8; // L: 2310 - int var17 = var6 - var5; // L: 2311 + if (var5 < var6) { + var4 += var5; + var7 += var5 * var8; + int var17 = var6 - var5; int var15; int var16; int var18; @@ -3110,336 +3110,336 @@ public class Rasterizer3D extends Rasterizer2D { int var21; int var22; int var23; - if (Rasterizer3D_isLowDetailTexture) { // L: 2312 - var23 = var5 - Rasterizer3D_clipMidX; // L: 2319 - var9 += var23 * var12; // L: 2320 - var10 += var13 * var23; // L: 2321 - var11 += var23 * var14; // L: 2322 - var22 = var11 >> 12; // L: 2323 - if (var22 != 0) { // L: 2324 - var18 = var9 / var22; // L: 2325 - var19 = var10 / var22; // L: 2326 + if (Rasterizer3D_isLowDetailTexture) { + var23 = var5 - Rasterizer3D_clipMidX; + var9 += var23 * var12; + var10 += var13 * var23; + var11 += var23 * var14; + var22 = var11 >> 12; + if (var22 != 0) { + var18 = var9 / var22; + var19 = var10 / var22; } else { - var18 = 0; // L: 2329 - var19 = 0; // L: 2330 + var18 = 0; + var19 = 0; } - var9 += var17 * var12; // L: 2332 - var10 += var13 * var17; // L: 2333 - var11 += var17 * var14; // L: 2334 - var22 = var11 >> 12; // L: 2335 - if (var22 != 0) { // L: 2336 - var20 = var9 / var22; // L: 2337 - var21 = var10 / var22; // L: 2338 + var9 += var17 * var12; + var10 += var13 * var17; + var11 += var17 * var14; + var22 = var11 >> 12; + if (var22 != 0) { + var20 = var9 / var22; + var21 = var10 / var22; } else { - var20 = 0; // L: 2341 - var21 = 0; // L: 2342 + var20 = 0; + var21 = 0; } - var2 = (var18 << 20) + var19; // L: 2344 - var16 = (var21 - var19) / var17 + ((var20 - var18) / var17 << 20); // L: 2345 - var17 >>= 3; // L: 2346 - var8 <<= 3; // L: 2347 - var15 = var7 >> 8; // L: 2348 - if (field1811) { // L: 2350 - if (var17 > 0) { // L: 2351 + var2 = (var18 << 20) + var19; + var16 = (var21 - var19) / var17 + ((var20 - var18) / var17 << 20); + var17 >>= 3; + var8 <<= 3; + var15 = var7 >> 8; + if (field1779) { + if (var17 > 0) { do { - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 2353 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2354 - var2 += var16; // L: 2355 - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 2356 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2357 - var2 += var16; // L: 2358 - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 2359 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2360 - var2 += var16; // L: 2361 - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 2362 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2363 - var2 += var16; // L: 2364 - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 2365 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2366 - var2 += var16; // L: 2367 - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 2368 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2369 - var2 += var16; // L: 2370 - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 2371 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2372 - var2 += var16; // L: 2373 - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 2374 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2375 - var2 += var16; // L: 2376 - var7 += var8; // L: 2377 - var15 = var7 >> 8; // L: 2378 - --var17; // L: 2379 + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var7 += var8; + var15 = var7 >> 8; + --var17; } while(var17 > 0); } - var17 = var6 - var5 & 7; // L: 2381 - if (var17 > 0) { // L: 2382 + var17 = var6 - var5 & 7; + if (var17 > 0) { do { - var3 = var1[(var2 >>> 26) + (var2 & 4032)]; // L: 2384 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2385 - var2 += var16; // L: 2386 - --var17; // L: 2387 + var3 = var1[(var2 >>> 26) + (var2 & 4032)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + --var17; } while(var17 > 0); } } else { - if (var17 > 0) { // L: 2391 + if (var17 > 0) { do { - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 2393 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2394 + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2396 - var2 += var16; // L: 2397 - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 2398 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2399 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2401 - var2 += var16; // L: 2402 - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 2403 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2404 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2406 - var2 += var16; // L: 2407 - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 2408 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2409 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2411 - var2 += var16; // L: 2412 - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 2413 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2414 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2416 - var2 += var16; // L: 2417 - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 2418 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2419 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2421 - var2 += var16; // L: 2422 - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 2423 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2424 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2426 - var2 += var16; // L: 2427 - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 2428 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2429 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2431 - var2 += var16; // L: 2432 - var7 += var8; // L: 2433 - var15 = var7 >> 8; // L: 2434 - --var17; // L: 2435 + ++var4; + var2 += var16; + var7 += var8; + var15 = var7 >> 8; + --var17; } while(var17 > 0); } - var17 = var6 - var5 & 7; // L: 2437 - if (var17 > 0) { // L: 2438 + var17 = var6 - var5 & 7; + if (var17 > 0) { do { - if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { // L: 2440 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2441 + if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2443 - var2 += var16; // L: 2444 - --var17; // L: 2445 + ++var4; + var2 += var16; + --var17; } while(var17 > 0); } } } else { - var23 = var5 - Rasterizer3D_clipMidX; // L: 2456 - var9 += var23 * var12; // L: 2457 - var10 += var13 * var23; // L: 2458 - var11 += var23 * var14; // L: 2459 - var22 = var11 >> 14; // L: 2460 - if (var22 != 0) { // L: 2461 - var18 = var9 / var22; // L: 2462 - var19 = var10 / var22; // L: 2463 + var23 = var5 - Rasterizer3D_clipMidX; + var9 += var23 * var12; + var10 += var13 * var23; + var11 += var23 * var14; + var22 = var11 >> 14; + if (var22 != 0) { + var18 = var9 / var22; + var19 = var10 / var22; } else { - var18 = 0; // L: 2466 - var19 = 0; // L: 2467 + var18 = 0; + var19 = 0; } - var9 += var17 * var12; // L: 2469 - var10 += var13 * var17; // L: 2470 - var11 += var17 * var14; // L: 2471 - var22 = var11 >> 14; // L: 2472 - if (var22 != 0) { // L: 2473 - var20 = var9 / var22; // L: 2474 - var21 = var10 / var22; // L: 2475 + var9 += var17 * var12; + var10 += var13 * var17; + var11 += var17 * var14; + var22 = var11 >> 14; + if (var22 != 0) { + var20 = var9 / var22; + var21 = var10 / var22; } else { - var20 = 0; // L: 2478 - var21 = 0; // L: 2479 + var20 = 0; + var21 = 0; } - var2 = (var18 << 18) + var19; // L: 2481 - var16 = (var21 - var19) / var17 + ((var20 - var18) / var17 << 18); // L: 2482 - var17 >>= 3; // L: 2483 - var8 <<= 3; // L: 2484 - var15 = var7 >> 8; // L: 2485 - if (field1811) { // L: 2487 - if (var17 > 0) { // L: 2488 + var2 = (var18 << 18) + var19; + var16 = (var21 - var19) / var17 + ((var20 - var18) / var17 << 18); + var17 >>= 3; + var8 <<= 3; + var15 = var7 >> 8; + if (field1779) { + if (var17 > 0) { do { - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 2490 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2491 - var2 += var16; // L: 2492 - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 2493 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2494 - var2 += var16; // L: 2495 - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 2496 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2497 - var2 += var16; // L: 2498 - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 2499 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2500 - var2 += var16; // L: 2501 - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 2502 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2503 - var2 += var16; // L: 2504 - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 2505 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2506 - var2 += var16; // L: 2507 - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 2508 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2509 - var2 += var16; // L: 2510 - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 2511 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2512 - var2 += var16; // L: 2513 - var7 += var8; // L: 2514 - var15 = var7 >> 8; // L: 2515 - --var17; // L: 2516 + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + var7 += var8; + var15 = var7 >> 8; + --var17; } while(var17 > 0); } - var17 = var6 - var5 & 7; // L: 2518 - if (var17 > 0) { // L: 2519 + var17 = var6 - var5 & 7; + if (var17 > 0) { do { - var3 = var1[(var2 & 16256) + (var2 >>> 25)]; // L: 2521 - var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2522 - var2 += var16; // L: 2523 - --var17; // L: 2524 + var3 = var1[(var2 & 16256) + (var2 >>> 25)]; + var0[var4++] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; + var2 += var16; + --var17; } while(var17 > 0); } } else { - if (var17 > 0) { // L: 2528 + if (var17 > 0) { do { - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 2530 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2531 + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2533 - var2 += var16; // L: 2534 - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 2535 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2536 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2538 - var2 += var16; // L: 2539 - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 2540 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2541 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2543 - var2 += var16; // L: 2544 - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 2545 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2546 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2548 - var2 += var16; // L: 2549 - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 2550 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2551 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2553 - var2 += var16; // L: 2554 - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 2555 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2556 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2558 - var2 += var16; // L: 2559 - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 2560 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2561 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2563 - var2 += var16; // L: 2564 - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 2565 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2566 + ++var4; + var2 += var16; + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2568 - var2 += var16; // L: 2569 - var7 += var8; // L: 2570 - var15 = var7 >> 8; // L: 2571 - --var17; // L: 2572 + ++var4; + var2 += var16; + var7 += var8; + var15 = var7 >> 8; + --var17; } while(var17 > 0); } - var17 = var6 - var5 & 7; // L: 2574 - if (var17 > 0) { // L: 2575 + var17 = var6 - var5 & 7; + if (var17 > 0) { do { - if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { // L: 2577 - var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; // L: 2578 + if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) { + var0[var4] = (var15 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var15 & -16711936) >> 8; } - ++var4; // L: 2580 - var2 += var16; // L: 2581 - --var17; // L: 2582 + ++var4; + var2 += var16; + --var17; } while(var17 > 0); } } } } - } // L: 2586 + } - @ObfuscatedName("s") - static final int method3186(int var0, int var1) { - var1 = (var0 & 127) * var1 >> 7; // L: 2589 - if (var1 < 2) { // L: 2590 + @ObfuscatedName("r") + static final int method3072(int var0, int var1) { + var1 = (var0 & 127) * var1 >> 7; + if (var1 < 2) { var1 = 2; - } else if (var1 > 126) { // L: 2591 + } else if (var1 > 126) { var1 = 126; } - return (var0 & 65408) + var1; // L: 2592 + return (var0 & 65408) + var1; } - @ObfuscatedName("j") - static final int method3157(int var0, int var1, int var2, int var3) { - return var0 * var2 + var3 * var1 >> 16; // L: 2596 - } - - @ObfuscatedName("d") - static final int method3179(int var0, int var1, int var2, int var3) { - return var2 * var1 - var3 * var0 >> 16; // L: 2600 - } - - @ObfuscatedName("a") - static final int method3158(int var0, int var1, int var2, int var3) { - return var0 * var2 - var3 * var1 >> 16; // L: 2604 + @ObfuscatedName("q") + static final int method3088(int var0, int var1, int var2, int var3) { + return var0 * var2 + var3 * var1 >> 16; } @ObfuscatedName("g") - static final int method3159(int var0, int var1, int var2, int var3) { - return var3 * var0 + var2 * var1 >> 16; // L: 2608 + static final int method3143(int var0, int var1, int var2, int var3) { + return var2 * var1 - var3 * var0 >> 16; } - @ObfuscatedName("h") - static final int method3196(int var0, int var1, int var2, int var3) { - return var0 * var2 + var3 * var1 >> 16; // L: 2612 + @ObfuscatedName("o") + static final int method3090(int var0, int var1, int var2, int var3) { + return var0 * var2 - var3 * var1 >> 16; } - @ObfuscatedName("ab") - static final int method3161(int var0, int var1, int var2, int var3) { - return var2 * var1 - var3 * var0 >> 16; // L: 2616 + @ObfuscatedName("an") + static final int method3133(int var0, int var1, int var2, int var3) { + return var3 * var0 + var2 * var1 >> 16; + } + + @ObfuscatedName("aj") + static final int method3092(int var0, int var1, int var2, int var3) { + return var0 * var2 + var3 * var1 >> 16; + } + + @ObfuscatedName("ax") + static final int method3094(int var0, int var1, int var2, int var3) { + return var2 * var1 - var3 * var0 >> 16; } } diff --git a/runescape-client/src/main/java/RawPcmStream.java b/runescape-client/src/main/java/RawPcmStream.java index 36b313c7c9..b8f6366801 100644 --- a/runescape-client/src/main/java/RawPcmStream.java +++ b/runescape-client/src/main/java/RawPcmStream.java @@ -3,1567 +3,1567 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dx") +@ObfuscatedName("dj") @Implements("RawPcmStream") public class RawPcmStream extends PcmStream { - @ObfuscatedName("f") - int field1493; - @ObfuscatedName("b") - int field1504; + @ObfuscatedName("h") + int field1479; + @ObfuscatedName("v") + int field1488; + @ObfuscatedName("x") + int field1480; + @ObfuscatedName("t") + int field1482; + @ObfuscatedName("j") + int field1483; + @ObfuscatedName("n") + int field1484; + @ObfuscatedName("p") + int field1485; @ObfuscatedName("l") - int field1494; - @ObfuscatedName("m") - int field1506; - @ObfuscatedName("z") - int field1496; - @ObfuscatedName("q") - int field1497; - @ObfuscatedName("k") - int field1498; - @ObfuscatedName("c") @Export("numLoops") int numLoops; - @ObfuscatedName("u") + @ObfuscatedName("z") @Export("start") int start; - @ObfuscatedName("t") + @ObfuscatedName("u") @Export("end") int end; @ObfuscatedName("e") - boolean field1502; - @ObfuscatedName("o") - int field1503; - @ObfuscatedName("n") + boolean field1489; + @ObfuscatedName("m") + int field1490; + @ObfuscatedName("c") + int field1491; + @ObfuscatedName("i") int field1492; - @ObfuscatedName("x") - int field1499; - @ObfuscatedName("p") - int field1505; + @ObfuscatedName("f") + int field1493; @ObfuscatedSignature( - descriptor = "(Ldo;III)V" + descriptor = "(Ldf;III)V" ) RawPcmStream(RawSound var1, int var2, int var3, int var4) { - super.sound = var1; // L: 51 - this.start = var1.start; // L: 52 - this.end = var1.end; // L: 53 - this.field1502 = var1.field1416; // L: 54 - this.field1504 = var2; // L: 55 - this.field1494 = var3; // L: 56 - this.field1506 = var4; // L: 57 - this.field1493 = 0; // L: 58 - this.method2816(); // L: 59 - } // L: 60 + super.sound = var1; + this.start = var1.start; + this.end = var1.end; + this.field1489 = var1.field1408; + this.field1488 = var2; + this.field1480 = var3; + this.field1482 = var4; + this.field1479 = 0; + this.method2608(); + } @ObfuscatedSignature( - descriptor = "(Ldo;II)V" + descriptor = "(Ldf;II)V" ) RawPcmStream(RawSound var1, int var2, int var3) { - super.sound = var1; // L: 39 - this.start = var1.start; // L: 40 - this.end = var1.end; // L: 41 - this.field1502 = var1.field1416; // L: 42 - this.field1504 = var2; // L: 43 - this.field1494 = var3; // L: 44 - this.field1506 = 8192; // L: 45 - this.field1493 = 0; // L: 46 - this.method2816(); // L: 47 - } // L: 48 + super.sound = var1; + this.start = var1.start; + this.end = var1.end; + this.field1489 = var1.field1408; + this.field1488 = var2; + this.field1480 = var3; + this.field1482 = 8192; + this.field1479 = 0; + this.method2608(); + } - @ObfuscatedName("z") - void method2816() { - this.field1496 = this.field1494; // L: 73 - this.field1497 = method2765(this.field1494, this.field1506); // L: 74 - this.field1498 = method2710(this.field1494, this.field1506); // L: 75 - } // L: 76 + @ObfuscatedName("t") + void method2608() { + this.field1483 = this.field1480; + this.field1484 = method2669(this.field1480, this.field1482); + this.field1485 = method2603(this.field1480, this.field1482); + } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "()Lde;" + descriptor = "()Ldi;" ) @Export("firstSubStream") protected PcmStream firstSubStream() { - return null; // L: 200 + return null; } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "()Lde;" + descriptor = "()Ldi;" ) @Export("nextSubStream") protected PcmStream nextSubStream() { - return null; // L: 204 + return null; } - @ObfuscatedName("c") - protected int vmethod4043() { - return this.field1494 == 0 && this.field1503 == 0 ? 0 : 1; // L: 208 209 + @ObfuscatedName("p") + protected int vmethod3927() { + return this.field1480 == 0 && this.field1490 == 0 ? 0 : 1; } - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("fill") public synchronized void fill(int[] var1, int var2, int var3) { - if (this.field1494 == 0 && this.field1503 == 0) { // L: 213 - this.skip(var3); // L: 214 + if (this.field1480 == 0 && this.field1490 == 0) { + this.skip(var3); } else { - RawSound var4 = (RawSound)super.sound; // L: 217 - int var5 = this.start << 8; // L: 218 - int var6 = this.end << 8; // L: 219 - int var7 = var4.samples.length << 8; // L: 220 - int var8 = var6 - var5; // L: 221 - if (var8 <= 0) { // L: 222 + RawSound var4 = (RawSound)super.sound; + int var5 = this.start << 8; + int var6 = this.end << 8; + int var7 = var4.samples.length << 8; + int var8 = var6 - var5; + if (var8 <= 0) { this.numLoops = 0; } - int var9 = var2; // L: 223 - var3 += var2; // L: 224 - if (this.field1493 < 0) { // L: 225 - if (this.field1504 <= 0) { // L: 226 - this.method2774(); // L: 228 - this.remove(); // L: 229 - return; // L: 230 + int var9 = var2; + var3 += var2; + if (this.field1479 < 0) { + if (this.field1488 <= 0) { + this.method2617(); + this.remove(); + return; } - this.field1493 = 0; + this.field1479 = 0; } - if (this.field1493 >= var7) { // L: 233 - if (this.field1504 >= 0) { // L: 234 - this.method2774(); // L: 236 - this.remove(); // L: 237 - return; // L: 238 + if (this.field1479 >= var7) { + if (this.field1488 >= 0) { + this.method2617(); + this.remove(); + return; } - this.field1493 = var7 - 1; + this.field1479 = var7 - 1; } - if (this.numLoops < 0) { // L: 241 - if (this.field1502) { // L: 242 - if (this.field1504 < 0) { // L: 243 - var9 = this.method2698(var1, var2, var5, var3, var4.samples[this.start]); // L: 244 - if (this.field1493 >= var5) { // L: 245 + if (this.numLoops < 0) { + if (this.field1489) { + if (this.field1488 < 0) { + var9 = this.method2631(var1, var2, var5, var3, var4.samples[this.start]); + if (this.field1479 >= var5) { return; } - this.field1493 = var5 + var5 - 1 - this.field1493; // L: 246 - this.field1504 = -this.field1504; // L: 247 + this.field1479 = var5 + var5 - 1 - this.field1479; + this.field1488 = -this.field1488; } while (true) { - var9 = this.method2697(var1, var9, var6, var3, var4.samples[this.end - 1]); // L: 250 - if (this.field1493 < var6) { // L: 251 + var9 = this.method2607(var1, var9, var6, var3, var4.samples[this.end - 1]); + if (this.field1479 < var6) { return; } - this.field1493 = var6 + var6 - 1 - this.field1493; // L: 252 - this.field1504 = -this.field1504; // L: 253 - var9 = this.method2698(var1, var9, var5, var3, var4.samples[this.start]); // L: 254 - if (this.field1493 >= var5) { // L: 255 + this.field1479 = var6 + var6 - 1 - this.field1479; + this.field1488 = -this.field1488; + var9 = this.method2631(var1, var9, var5, var3, var4.samples[this.start]); + if (this.field1479 >= var5) { return; } - this.field1493 = var5 + var5 - 1 - this.field1493; // L: 256 - this.field1504 = -this.field1504; // L: 257 + this.field1479 = var5 + var5 - 1 - this.field1479; + this.field1488 = -this.field1488; } - } else if (this.field1504 < 0) { // L: 260 + } else if (this.field1488 < 0) { while (true) { - var9 = this.method2698(var1, var9, var5, var3, var4.samples[this.end - 1]); // L: 262 - if (this.field1493 >= var5) { // L: 263 + var9 = this.method2631(var1, var9, var5, var3, var4.samples[this.end - 1]); + if (this.field1479 >= var5) { return; } - this.field1493 = var6 - 1 - (var6 - 1 - this.field1493) % var8; // L: 264 + this.field1479 = var6 - 1 - (var6 - 1 - this.field1479) % var8; } } else { while (true) { - var9 = this.method2697(var1, var9, var6, var3, var4.samples[this.start]); // L: 269 - if (this.field1493 < var6) { // L: 270 + var9 = this.method2607(var1, var9, var6, var3, var4.samples[this.start]); + if (this.field1479 < var6) { return; } - this.field1493 = var5 + (this.field1493 - var5) % var8; // L: 271 + this.field1479 = var5 + (this.field1479 - var5) % var8; } } } else { - if (this.numLoops > 0) { // L: 275 - if (this.field1502) { // L: 276 + if (this.numLoops > 0) { + if (this.field1489) { label127: { - if (this.field1504 < 0) { // L: 277 - var9 = this.method2698(var1, var2, var5, var3, var4.samples[this.start]); // L: 278 - if (this.field1493 >= var5) { // L: 279 + if (this.field1488 < 0) { + var9 = this.method2631(var1, var2, var5, var3, var4.samples[this.start]); + if (this.field1479 >= var5) { return; } - this.field1493 = var5 + var5 - 1 - this.field1493; // L: 280 - this.field1504 = -this.field1504; // L: 281 - if (--this.numLoops == 0) { // L: 282 + this.field1479 = var5 + var5 - 1 - this.field1479; + this.field1488 = -this.field1488; + if (--this.numLoops == 0) { break label127; } } do { - var9 = this.method2697(var1, var9, var6, var3, var4.samples[this.end - 1]); // L: 285 - if (this.field1493 < var6) { // L: 286 + var9 = this.method2607(var1, var9, var6, var3, var4.samples[this.end - 1]); + if (this.field1479 < var6) { return; } - this.field1493 = var6 + var6 - 1 - this.field1493; // L: 287 - this.field1504 = -this.field1504; // L: 288 - if (--this.numLoops == 0) { // L: 289 + this.field1479 = var6 + var6 - 1 - this.field1479; + this.field1488 = -this.field1488; + if (--this.numLoops == 0) { break; } - var9 = this.method2698(var1, var9, var5, var3, var4.samples[this.start]); // L: 290 - if (this.field1493 >= var5) { // L: 291 + var9 = this.method2631(var1, var9, var5, var3, var4.samples[this.start]); + if (this.field1479 >= var5) { return; } - this.field1493 = var5 + var5 - 1 - this.field1493; // L: 292 - this.field1504 = -this.field1504; // L: 293 - } while(--this.numLoops != 0); // L: 294 + this.field1479 = var5 + var5 - 1 - this.field1479; + this.field1488 = -this.field1488; + } while(--this.numLoops != 0); } } else { int var10; - if (this.field1504 < 0) { // L: 297 + if (this.field1488 < 0) { while (true) { - var9 = this.method2698(var1, var9, var5, var3, var4.samples[this.end - 1]); // L: 299 - if (this.field1493 >= var5) { // L: 300 + var9 = this.method2631(var1, var9, var5, var3, var4.samples[this.end - 1]); + if (this.field1479 >= var5) { return; } - var10 = (var6 - 1 - this.field1493) / var8; // L: 301 - if (var10 >= this.numLoops) { // L: 302 - this.field1493 += var8 * this.numLoops; // L: 303 - this.numLoops = 0; // L: 304 - break; // L: 305 + var10 = (var6 - 1 - this.field1479) / var8; + if (var10 >= this.numLoops) { + this.field1479 += var8 * this.numLoops; + this.numLoops = 0; + break; } - this.field1493 += var8 * var10; // L: 307 - this.numLoops -= var10; // L: 308 + this.field1479 += var8 * var10; + this.numLoops -= var10; } } else { while (true) { - var9 = this.method2697(var1, var9, var6, var3, var4.samples[this.start]); // L: 313 - if (this.field1493 < var6) { // L: 314 + var9 = this.method2607(var1, var9, var6, var3, var4.samples[this.start]); + if (this.field1479 < var6) { return; } - var10 = (this.field1493 - var5) / var8; // L: 315 - if (var10 >= this.numLoops) { // L: 316 - this.field1493 -= var8 * this.numLoops; // L: 317 - this.numLoops = 0; // L: 318 - break; // L: 319 + var10 = (this.field1479 - var5) / var8; + if (var10 >= this.numLoops) { + this.field1479 -= var8 * this.numLoops; + this.numLoops = 0; + break; } - this.field1493 -= var8 * var10; // L: 321 - this.numLoops -= var10; // L: 322 + this.field1479 -= var8 * var10; + this.numLoops -= var10; } } } } - if (this.field1504 < 0) { // L: 326 - this.method2698(var1, var9, 0, var3, 0); // L: 327 - if (this.field1493 < 0) { // L: 328 - this.field1493 = -1; // L: 329 - this.method2774(); // L: 330 - this.remove(); // L: 331 + if (this.field1488 < 0) { + this.method2631(var1, var9, 0, var3, 0); + if (this.field1479 < 0) { + this.field1479 = -1; + this.method2617(); + this.remove(); } } else { - this.method2697(var1, var9, var7, var3, 0); // L: 335 - if (this.field1493 >= var7) { // L: 336 - this.field1493 = var7; // L: 337 - this.method2774(); // L: 338 - this.remove(); // L: 339 + this.method2607(var1, var9, var7, var3, 0); + if (this.field1479 >= var7) { + this.field1479 = var7; + this.method2617(); + this.remove(); } } } } - } // L: 215 342 + } - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("setNumLoops") public synchronized void setNumLoops(int var1) { - this.numLoops = var1; // L: 79 - } // L: 80 + this.numLoops = var1; + } - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("skip") public synchronized void skip(int var1) { - if (this.field1503 > 0) { // L: 345 - if (var1 >= this.field1503) { // L: 346 - if (this.field1494 == Integer.MIN_VALUE) { // L: 347 - this.field1494 = 0; // L: 348 - this.field1498 = 0; // L: 349 - this.field1497 = 0; // L: 350 - this.field1496 = 0; // L: 351 - this.remove(); // L: 352 - var1 = this.field1503; // L: 353 + if (this.field1490 > 0) { + if (var1 >= this.field1490) { + if (this.field1480 == Integer.MIN_VALUE) { + this.field1480 = 0; + this.field1485 = 0; + this.field1484 = 0; + this.field1483 = 0; + this.remove(); + var1 = this.field1490; } - this.field1503 = 0; // L: 355 - this.method2816(); // L: 356 + this.field1490 = 0; + this.method2608(); } else { - this.field1496 += this.field1492 * var1; // L: 359 - this.field1497 += this.field1499 * var1; // L: 360 - this.field1498 += this.field1505 * var1; // L: 361 - this.field1503 -= var1; // L: 362 + this.field1483 += this.field1491 * var1; + this.field1484 += this.field1492 * var1; + this.field1485 += this.field1493 * var1; + this.field1490 -= var1; } } - RawSound var2 = (RawSound)super.sound; // L: 365 - int var3 = this.start << 8; // L: 366 - int var4 = this.end << 8; // L: 367 - int var5 = var2.samples.length << 8; // L: 368 - int var6 = var4 - var3; // L: 369 - if (var6 <= 0) { // L: 370 + RawSound var2 = (RawSound)super.sound; + int var3 = this.start << 8; + int var4 = this.end << 8; + int var5 = var2.samples.length << 8; + int var6 = var4 - var3; + if (var6 <= 0) { this.numLoops = 0; } - if (this.field1493 < 0) { // L: 371 - if (this.field1504 <= 0) { // L: 372 - this.method2774(); // L: 374 - this.remove(); // L: 375 - return; // L: 376 + if (this.field1479 < 0) { + if (this.field1488 <= 0) { + this.method2617(); + this.remove(); + return; } - this.field1493 = 0; + this.field1479 = 0; } - if (this.field1493 >= var5) { // L: 379 - if (this.field1504 >= 0) { // L: 380 - this.method2774(); // L: 382 - this.remove(); // L: 383 - return; // L: 384 + if (this.field1479 >= var5) { + if (this.field1488 >= 0) { + this.method2617(); + this.remove(); + return; } - this.field1493 = var5 - 1; + this.field1479 = var5 - 1; } - this.field1493 += this.field1504 * var1; // L: 387 - if (this.numLoops < 0) { // L: 388 - if (!this.field1502) { // L: 389 - if (this.field1504 < 0) { // L: 404 - if (this.field1493 >= var3) { // L: 405 + this.field1479 += this.field1488 * var1; + if (this.numLoops < 0) { + if (!this.field1489) { + if (this.field1488 < 0) { + if (this.field1479 >= var3) { return; } - this.field1493 = var4 - 1 - (var4 - 1 - this.field1493) % var6; // L: 406 + this.field1479 = var4 - 1 - (var4 - 1 - this.field1479) % var6; } else { - if (this.field1493 < var4) { // L: 409 + if (this.field1479 < var4) { return; } - this.field1493 = var3 + (this.field1493 - var3) % var6; // L: 410 + this.field1479 = var3 + (this.field1479 - var3) % var6; } } else { - if (this.field1504 < 0) { // L: 390 - if (this.field1493 >= var3) { // L: 391 + if (this.field1488 < 0) { + if (this.field1479 >= var3) { return; } - this.field1493 = var3 + var3 - 1 - this.field1493; // L: 392 - this.field1504 = -this.field1504; // L: 393 + this.field1479 = var3 + var3 - 1 - this.field1479; + this.field1488 = -this.field1488; } - while (this.field1493 >= var4) { // L: 396 - this.field1493 = var4 + var4 - 1 - this.field1493; // L: 397 - this.field1504 = -this.field1504; // L: 398 - if (this.field1493 >= var3) { // L: 399 + while (this.field1479 >= var4) { + this.field1479 = var4 + var4 - 1 - this.field1479; + this.field1488 = -this.field1488; + if (this.field1479 >= var3) { return; } - this.field1493 = var3 + var3 - 1 - this.field1493; // L: 400 - this.field1504 = -this.field1504; // L: 401 + this.field1479 = var3 + var3 - 1 - this.field1479; + this.field1488 = -this.field1488; } } } else { - if (this.numLoops > 0) { // L: 414 - if (this.field1502) { // L: 415 + if (this.numLoops > 0) { + if (this.field1489) { label129: { - if (this.field1504 < 0) { // L: 416 - if (this.field1493 >= var3) { // L: 417 + if (this.field1488 < 0) { + if (this.field1479 >= var3) { return; } - this.field1493 = var3 + var3 - 1 - this.field1493; // L: 418 - this.field1504 = -this.field1504; // L: 419 - if (--this.numLoops == 0) { // L: 420 + this.field1479 = var3 + var3 - 1 - this.field1479; + this.field1488 = -this.field1488; + if (--this.numLoops == 0) { break label129; } } do { - if (this.field1493 < var4) { // L: 423 + if (this.field1479 < var4) { return; } - this.field1493 = var4 + var4 - 1 - this.field1493; // L: 424 - this.field1504 = -this.field1504; // L: 425 - if (--this.numLoops == 0) { // L: 426 + this.field1479 = var4 + var4 - 1 - this.field1479; + this.field1488 = -this.field1488; + if (--this.numLoops == 0) { break; } - if (this.field1493 >= var3) { // L: 427 + if (this.field1479 >= var3) { return; } - this.field1493 = var3 + var3 - 1 - this.field1493; // L: 428 - this.field1504 = -this.field1504; // L: 429 - } while(--this.numLoops != 0); // L: 430 + this.field1479 = var3 + var3 - 1 - this.field1479; + this.field1488 = -this.field1488; + } while(--this.numLoops != 0); } } else { label161: { int var7; - if (this.field1504 < 0) { // L: 433 - if (this.field1493 >= var3) { // L: 434 + if (this.field1488 < 0) { + if (this.field1479 >= var3) { return; } - var7 = (var4 - 1 - this.field1493) / var6; // L: 435 - if (var7 >= this.numLoops) { // L: 436 - this.field1493 += var6 * this.numLoops; // L: 437 - this.numLoops = 0; // L: 438 - break label161; // L: 439 + var7 = (var4 - 1 - this.field1479) / var6; + if (var7 >= this.numLoops) { + this.field1479 += var6 * this.numLoops; + this.numLoops = 0; + break label161; } - this.field1493 += var6 * var7; // L: 441 - this.numLoops -= var7; // L: 442 + this.field1479 += var6 * var7; + this.numLoops -= var7; } else { - if (this.field1493 < var4) { // L: 445 + if (this.field1479 < var4) { return; } - var7 = (this.field1493 - var3) / var6; // L: 446 - if (var7 >= this.numLoops) { // L: 447 - this.field1493 -= var6 * this.numLoops; // L: 448 - this.numLoops = 0; // L: 449 - break label161; // L: 450 + var7 = (this.field1479 - var3) / var6; + if (var7 >= this.numLoops) { + this.field1479 -= var6 * this.numLoops; + this.numLoops = 0; + break label161; } - this.field1493 -= var6 * var7; // L: 452 - this.numLoops -= var7; // L: 453 + this.field1479 -= var6 * var7; + this.numLoops -= var7; } - return; // L: 455 + return; } } } - if (this.field1504 < 0) { // L: 457 - if (this.field1493 < 0) { // L: 458 - this.field1493 = -1; // L: 459 - this.method2774(); // L: 460 - this.remove(); // L: 461 + if (this.field1488 < 0) { + if (this.field1479 < 0) { + this.field1479 = -1; + this.method2617(); + this.remove(); } - } else if (this.field1493 >= var5) { // L: 465 - this.field1493 = var5; // L: 466 - this.method2774(); // L: 467 - this.remove(); // L: 468 + } else if (this.field1479 >= var5) { + this.field1479 = var5; + this.method2617(); + this.remove(); } } - } // L: 412 471 - - @ObfuscatedName("o") - public synchronized void method2677(int var1) { - this.method2679(var1 << 6, this.method2681()); // L: 83 - } // L: 84 - - @ObfuscatedName("n") - synchronized void method2678(int var1) { - this.method2679(var1, this.method2681()); // L: 87 - } // L: 88 - - @ObfuscatedName("x") - synchronized void method2679(int var1, int var2) { - this.field1494 = var1; // L: 91 - this.field1506 = var2; // L: 92 - this.field1503 = 0; // L: 93 - this.method2816(); // L: 94 - } // L: 95 - - @ObfuscatedName("p") - public synchronized int method2680() { - return this.field1494 == Integer.MIN_VALUE ? 0 : this.field1494; // L: 98 } - @ObfuscatedName("r") - public synchronized int method2681() { - return this.field1506 < 0 ? -1 : this.field1506; // L: 102 + @ObfuscatedName("e") + public synchronized void method2610(int var1) { + this.method2648(var1 << 6, this.method2614()); + } + + @ObfuscatedName("m") + synchronized void method2611(int var1) { + this.method2648(var1, this.method2614()); + } + + @ObfuscatedName("c") + synchronized void method2648(int var1, int var2) { + this.field1480 = var1; + this.field1482 = var2; + this.field1490 = 0; + this.method2608(); + } + + @ObfuscatedName("i") + public synchronized int method2613() { + return this.field1480 == Integer.MIN_VALUE ? 0 : this.field1480; + } + + @ObfuscatedName("f") + public synchronized int method2614() { + return this.field1482 < 0 ? -1 : this.field1482; } @ObfuscatedName("y") - public synchronized void method2682(int var1) { - int var2 = ((RawSound)super.sound).samples.length << 8; // L: 106 - if (var1 < -1) { // L: 107 + public synchronized void method2615(int var1) { + int var2 = ((RawSound)super.sound).samples.length << 8; + if (var1 < -1) { var1 = -1; } - if (var1 > var2) { // L: 108 + if (var1 > var2) { var1 = var2; } - this.field1493 = var1; // L: 109 - } // L: 110 + this.field1479 = var1; + } - @ObfuscatedName("s") + @ObfuscatedName("r") @ObfuscatedSignature( descriptor = "(Z)V", garbageValue = "1" ) - public synchronized void method2788() { - this.field1504 = (this.field1504 ^ this.field1504 >> 31) + (this.field1504 >>> 31); // L: 113 - this.field1504 = -this.field1504; // L: 114 - } // L: 115 + public synchronized void method2616() { + this.field1488 = (this.field1488 ^ this.field1488 >> 31) + (this.field1488 >>> 31); + this.field1488 = -this.field1488; + } - @ObfuscatedName("j") - void method2774() { - if (this.field1503 != 0) { // L: 118 - if (this.field1494 == Integer.MIN_VALUE) { - this.field1494 = 0; // L: 119 + @ObfuscatedName("q") + void method2617() { + if (this.field1490 != 0) { + if (this.field1480 == Integer.MIN_VALUE) { + this.field1480 = 0; } - this.field1503 = 0; // L: 120 - this.method2816(); // L: 121 + this.field1490 = 0; + this.method2608(); } - } // L: 123 + } - @ObfuscatedName("d") - public synchronized void method2721(int var1, int var2) { - this.method2686(var1, var2, this.method2681()); // L: 126 - } // L: 127 + @ObfuscatedName("g") + public synchronized void method2707(int var1, int var2) { + this.method2744(var1, var2, this.method2614()); + } - @ObfuscatedName("ao") - public synchronized void method2686(int var1, int var2, int var3) { - if (var1 == 0) { // L: 130 - this.method2679(var2, var3); // L: 131 + @ObfuscatedName("o") + public synchronized void method2744(int var1, int var2, int var3) { + if (var1 == 0) { + this.method2648(var2, var3); } else { - int var4 = method2765(var2, var3); // L: 134 - int var5 = method2710(var2, var3); // L: 135 - if (var4 == this.field1497 && var5 == this.field1498) { // L: 136 - this.field1503 = 0; // L: 137 + int var4 = method2669(var2, var3); + int var5 = method2603(var2, var3); + if (var4 == this.field1484 && var5 == this.field1485) { + this.field1490 = 0; } else { - int var6 = var2 - this.field1496; // L: 140 - if (this.field1496 - var2 > var6) { // L: 141 - var6 = this.field1496 - var2; + int var6 = var2 - this.field1483; + if (this.field1483 - var2 > var6) { + var6 = this.field1483 - var2; } - if (var4 - this.field1497 > var6) { // L: 142 - var6 = var4 - this.field1497; + if (var4 - this.field1484 > var6) { + var6 = var4 - this.field1484; } - if (this.field1497 - var4 > var6) { // L: 143 - var6 = this.field1497 - var4; + if (this.field1484 - var4 > var6) { + var6 = this.field1484 - var4; } - if (var5 - this.field1498 > var6) { - var6 = var5 - this.field1498; // L: 144 + if (var5 - this.field1485 > var6) { + var6 = var5 - this.field1485; } - if (this.field1498 - var5 > var6) { // L: 145 - var6 = this.field1498 - var5; + if (this.field1485 - var5 > var6) { + var6 = this.field1485 - var5; } - if (var1 > var6) { // L: 146 + if (var1 > var6) { var1 = var6; } - this.field1503 = var1; // L: 147 - this.field1494 = var2; // L: 148 - this.field1506 = var3; // L: 149 - this.field1492 = (var2 - this.field1496) / var1; // L: 150 - this.field1499 = (var4 - this.field1497) / var1; // L: 151 - this.field1505 = (var5 - this.field1498) / var1; // L: 152 + this.field1490 = var1; + this.field1480 = var2; + this.field1482 = var3; + this.field1491 = (var2 - this.field1483) / var1; + this.field1492 = (var4 - this.field1484) / var1; + this.field1493 = (var5 - this.field1485) / var1; } } - } // L: 132 138 153 - - @ObfuscatedName("af") - public synchronized void method2687(int var1) { - if (var1 == 0) { // L: 156 - this.method2678(0); // L: 157 - this.remove(); // L: 158 - } else if (this.field1497 == 0 && this.field1498 == 0) { // L: 161 - this.field1503 = 0; // L: 162 - this.field1494 = 0; // L: 163 - this.field1496 = 0; // L: 164 - this.remove(); // L: 165 - } else { - int var2 = -this.field1496; // L: 168 - if (this.field1496 > var2) { // L: 169 - var2 = this.field1496; - } - - if (-this.field1497 > var2) { // L: 170 - var2 = -this.field1497; - } - - if (this.field1497 > var2) { // L: 171 - var2 = this.field1497; - } - - if (-this.field1498 > var2) { // L: 172 - var2 = -this.field1498; - } - - if (this.field1498 > var2) { // L: 173 - var2 = this.field1498; - } - - if (var1 > var2) { // L: 174 - var1 = var2; - } - - this.field1503 = var1; // L: 175 - this.field1494 = Integer.MIN_VALUE; // L: 176 - this.field1492 = -this.field1496 / var1; // L: 177 - this.field1499 = -this.field1497 / var1; // L: 178 - this.field1505 = -this.field1498 / var1; // L: 179 - } - } // L: 159 166 180 - - @ObfuscatedName("av") - public synchronized void method2733(int var1) { - if (this.field1504 < 0) { // L: 183 - this.field1504 = -var1; - } else { - this.field1504 = var1; // L: 184 - } - - } // L: 185 - - @ObfuscatedName("ak") - public synchronized int method2689() { - return this.field1504 < 0 ? -this.field1504 : this.field1504; // L: 188 - } - - @ObfuscatedName("au") - public boolean method2690() { - return this.field1493 < 0 || this.field1493 >= ((RawSound)super.sound).samples.length << 8; // L: 192 - } - - @ObfuscatedName("ai") - public boolean method2786() { - return this.field1503 != 0; // L: 196 - } - - @ObfuscatedName("aq") - int vmethod2850() { - int var1 = this.field1496 * 3 >> 6; // L: 31 - var1 = (var1 ^ var1 >> 31) + (var1 >>> 31); // L: 32 - if (this.numLoops == 0) { // L: 33 - var1 -= var1 * this.field1493 / (((RawSound)super.sound).samples.length << 8); - } else if (this.numLoops >= 0) { - var1 -= var1 * this.start / ((RawSound)super.sound).samples.length; // L: 34 - } - - return var1 > 255 ? 255 : var1; // L: 35 - } - - @ObfuscatedName("aw") - int method2697(int[] var1, int var2, int var3, int var4, int var5) { - while (true) { - if (this.field1503 > 0) { // L: 474 - int var6 = var2 + this.field1503; // L: 475 - if (var6 > var4) { // L: 476 - var6 = var4; - } - - this.field1503 += var2; // L: 477 - if (this.field1504 == 256 && (this.field1493 & 255) == 0) { // L: 478 - if (PcmPlayer.PcmPlayer_stereo) { // L: 479 - var2 = method2709(0, ((RawSound)super.sound).samples, var1, this.field1493, var2, this.field1497, this.field1498, this.field1499, this.field1505, 0, var6, var3, this); - } else { - var2 = method2747(((RawSound)super.sound).samples, var1, this.field1493, var2, this.field1496, this.field1492, 0, var6, var3, this); // L: 480 - } - } else if (PcmPlayer.PcmPlayer_stereo) { // L: 483 - var2 = method2713(0, 0, ((RawSound)super.sound).samples, var1, this.field1493, var2, this.field1497, this.field1498, this.field1499, this.field1505, 0, var6, var3, this, this.field1504, var5); - } else { - var2 = method2712(0, 0, ((RawSound)super.sound).samples, var1, this.field1493, var2, this.field1496, this.field1492, 0, var6, var3, this, this.field1504, var5); // L: 484 - } - - this.field1503 -= var2; // L: 486 - if (this.field1503 != 0) { // L: 487 - return var2; - } - - if (!this.method2758()) { // L: 488 - continue; - } - - return var4; - } - - if (this.field1504 == 256 && (this.field1493 & 255) == 0) { // L: 490 - if (PcmPlayer.PcmPlayer_stereo) { // L: 491 - return method2701(0, ((RawSound)super.sound).samples, var1, this.field1493, var2, this.field1497, this.field1498, 0, var4, var3, this); - } - - return method2731(((RawSound)super.sound).samples, var1, this.field1493, var2, this.field1496, 0, var4, var3, this); // L: 492 - } - - if (PcmPlayer.PcmPlayer_stereo) { // L: 495 - return method2705(0, 0, ((RawSound)super.sound).samples, var1, this.field1493, var2, this.field1497, this.field1498, 0, var4, var3, this, this.field1504, var5); - } - - return method2790(0, 0, ((RawSound)super.sound).samples, var1, this.field1493, var2, this.field1496, 0, var4, var3, this, this.field1504, var5); // L: 496 - } } @ObfuscatedName("an") - int method2698(int[] var1, int var2, int var3, int var4, int var5) { + public synchronized void method2620(int var1) { + if (var1 == 0) { + this.method2611(0); + this.remove(); + } else if (this.field1484 == 0 && this.field1485 == 0) { + this.field1490 = 0; + this.field1480 = 0; + this.field1483 = 0; + this.remove(); + } else { + int var2 = -this.field1483; + if (this.field1483 > var2) { + var2 = this.field1483; + } + + if (-this.field1484 > var2) { + var2 = -this.field1484; + } + + if (this.field1484 > var2) { + var2 = this.field1484; + } + + if (-this.field1485 > var2) { + var2 = -this.field1485; + } + + if (this.field1485 > var2) { + var2 = this.field1485; + } + + if (var1 > var2) { + var1 = var2; + } + + this.field1490 = var1; + this.field1480 = Integer.MIN_VALUE; + this.field1491 = -this.field1483 / var1; + this.field1492 = -this.field1484 / var1; + this.field1493 = -this.field1485 / var1; + } + } + + @ObfuscatedName("aj") + public synchronized void method2621(int var1) { + if (this.field1488 < 0) { + this.field1488 = -var1; + } else { + this.field1488 = var1; + } + + } + + @ObfuscatedName("aq") + public synchronized int method2622() { + return this.field1488 < 0 ? -this.field1488 : this.field1488; + } + + @ObfuscatedName("ah") + public boolean method2623() { + return this.field1479 < 0 || this.field1479 >= ((RawSound)super.sound).samples.length << 8; + } + + @ObfuscatedName("am") + public boolean method2624() { + return this.field1490 != 0; + } + + @ObfuscatedName("ad") + int method2607(int[] var1, int var2, int var3, int var4, int var5) { while (true) { - if (this.field1503 > 0) { // L: 501 - int var6 = var2 + this.field1503; // L: 502 - if (var6 > var4) { // L: 503 + if (this.field1490 > 0) { + int var6 = var2 + this.field1490; + if (var6 > var4) { var6 = var4; } - this.field1503 += var2; // L: 504 - if (this.field1504 == -256 && (this.field1493 & 255) == 0) { // L: 505 - if (PcmPlayer.PcmPlayer_stereo) { // L: 506 - var2 = method2711(0, ((RawSound)super.sound).samples, var1, this.field1493, var2, this.field1497, this.field1498, this.field1499, this.field1505, 0, var6, var3, this); + this.field1490 += var2; + if (this.field1488 == 256 && (this.field1479 & 255) == 0) { + if (PcmPlayer.PcmPlayer_stereo) { + var2 = method2642(0, ((RawSound)super.sound).samples, var1, this.field1479, var2, this.field1484, this.field1485, this.field1492, this.field1493, 0, var6, var3, this); } else { - var2 = method2699(((RawSound)super.sound).samples, var1, this.field1493, var2, this.field1496, this.field1492, 0, var6, var3, this); // L: 507 + var2 = method2641(((RawSound)super.sound).samples, var1, this.field1479, var2, this.field1483, this.field1491, 0, var6, var3, this); } - } else if (PcmPlayer.PcmPlayer_stereo) { // L: 510 - var2 = method2715(0, 0, ((RawSound)super.sound).samples, var1, this.field1493, var2, this.field1497, this.field1498, this.field1499, this.field1505, 0, var6, var3, this, this.field1504, var5); + } else if (PcmPlayer.PcmPlayer_stereo) { + var2 = method2646(0, 0, ((RawSound)super.sound).samples, var1, this.field1479, var2, this.field1484, this.field1485, this.field1492, this.field1493, 0, var6, var3, this, this.field1488, var5); } else { - var2 = method2772(0, 0, ((RawSound)super.sound).samples, var1, this.field1493, var2, this.field1496, this.field1492, 0, var6, var3, this, this.field1504, var5); // L: 511 + var2 = method2649(0, 0, ((RawSound)super.sound).samples, var1, this.field1479, var2, this.field1483, this.field1491, 0, var6, var3, this, this.field1488, var5); } - this.field1503 -= var2; // L: 513 - if (this.field1503 != 0) { // L: 514 + this.field1490 -= var2; + if (this.field1490 != 0) { return var2; } - if (!this.method2758()) { // L: 515 + if (!this.method2632()) { continue; } return var4; } - if (this.field1504 == -256 && (this.field1493 & 255) == 0) { // L: 517 - if (PcmPlayer.PcmPlayer_stereo) { // L: 518 - return method2703(0, ((RawSound)super.sound).samples, var1, this.field1493, var2, this.field1497, this.field1498, 0, var4, var3, this); + if (this.field1488 == 256 && (this.field1479 & 255) == 0) { + if (PcmPlayer.PcmPlayer_stereo) { + return method2765(0, ((RawSound)super.sound).samples, var1, this.field1479, var2, this.field1484, this.field1485, 0, var4, var3, this); } - return method2702(((RawSound)super.sound).samples, var1, this.field1493, var2, this.field1496, 0, var4, var3, this); // L: 519 + return method2626(((RawSound)super.sound).samples, var1, this.field1479, var2, this.field1483, 0, var4, var3, this); } - if (PcmPlayer.PcmPlayer_stereo) { // L: 522 - return method2707(0, 0, ((RawSound)super.sound).samples, var1, this.field1493, var2, this.field1497, this.field1498, 0, var4, var3, this, this.field1504, var5); + if (PcmPlayer.PcmPlayer_stereo) { + return method2638(0, 0, ((RawSound)super.sound).samples, var1, this.field1479, var2, this.field1484, this.field1485, 0, var4, var3, this, this.field1488, var5); } - return method2695(0, 0, ((RawSound)super.sound).samples, var1, this.field1493, var2, this.field1496, 0, var4, var3, this, this.field1504, var5); // L: 523 + return method2739(0, 0, ((RawSound)super.sound).samples, var1, this.field1479, var2, this.field1483, 0, var4, var3, this, this.field1488, var5); } } - @ObfuscatedName("am") - boolean method2758() { - int var1 = this.field1494; // L: 528 + @ObfuscatedName("ai") + int method2631(int[] var1, int var2, int var3, int var4, int var5) { + while (true) { + if (this.field1490 > 0) { + int var6 = var2 + this.field1490; + if (var6 > var4) { + var6 = var4; + } + + this.field1490 += var2; + if (this.field1488 == -256 && (this.field1479 & 255) == 0) { + if (PcmPlayer.PcmPlayer_stereo) { + var2 = method2644(0, ((RawSound)super.sound).samples, var1, this.field1479, var2, this.field1484, this.field1485, this.field1492, this.field1493, 0, var6, var3, this); + } else { + var2 = method2643(((RawSound)super.sound).samples, var1, this.field1479, var2, this.field1483, this.field1491, 0, var6, var3, this); + } + } else if (PcmPlayer.PcmPlayer_stereo) { + var2 = method2663(0, 0, ((RawSound)super.sound).samples, var1, this.field1479, var2, this.field1484, this.field1485, this.field1492, this.field1493, 0, var6, var3, this, this.field1488, var5); + } else { + var2 = method2619(0, 0, ((RawSound)super.sound).samples, var1, this.field1479, var2, this.field1483, this.field1491, 0, var6, var3, this, this.field1488, var5); + } + + this.field1490 -= var2; + if (this.field1490 != 0) { + return var2; + } + + if (!this.method2632()) { + continue; + } + + return var4; + } + + if (this.field1488 == -256 && (this.field1479 & 255) == 0) { + if (PcmPlayer.PcmPlayer_stereo) { + return method2636(0, ((RawSound)super.sound).samples, var1, this.field1479, var2, this.field1484, this.field1485, 0, var4, var3, this); + } + + return method2605(((RawSound)super.sound).samples, var1, this.field1479, var2, this.field1483, 0, var4, var3, this); + } + + if (PcmPlayer.PcmPlayer_stereo) { + return method2640(0, 0, ((RawSound)super.sound).samples, var1, this.field1479, var2, this.field1484, this.field1485, 0, var4, var3, this, this.field1488, var5); + } + + return method2639(0, 0, ((RawSound)super.sound).samples, var1, this.field1479, var2, this.field1483, 0, var4, var3, this, this.field1488, var5); + } + } + + @ObfuscatedName("al") + boolean method2632() { + int var1 = this.field1480; int var2; int var3; - if (var1 == Integer.MIN_VALUE) { // L: 531 - var3 = 0; // L: 532 - var2 = 0; // L: 533 - var1 = 0; // L: 534 + if (var1 == Integer.MIN_VALUE) { + var3 = 0; + var2 = 0; + var1 = 0; } else { - var2 = method2765(var1, this.field1506); // L: 537 - var3 = method2710(var1, this.field1506); // L: 538 + var2 = method2669(var1, this.field1482); + var3 = method2603(var1, this.field1482); } - if (var1 == this.field1496 && var2 == this.field1497 && var3 == this.field1498) { // L: 540 - if (this.field1494 == Integer.MIN_VALUE) { // L: 570 - this.field1494 = 0; // L: 571 - this.field1498 = 0; // L: 572 - this.field1497 = 0; // L: 573 - this.field1496 = 0; // L: 574 - this.remove(); // L: 575 - return true; // L: 576 + if (var1 == this.field1483 && var2 == this.field1484 && var3 == this.field1485) { + if (this.field1480 == Integer.MIN_VALUE) { + this.field1480 = 0; + this.field1485 = 0; + this.field1484 = 0; + this.field1483 = 0; + this.remove(); + return true; } else { - this.method2816(); // L: 578 - return false; // L: 579 + this.method2608(); + return false; } } else { - if (this.field1496 < var1) { // L: 541 - this.field1492 = 1; // L: 542 - this.field1503 = var1 - this.field1496; // L: 543 - } else if (this.field1496 > var1) { // L: 545 - this.field1492 = -1; // L: 546 - this.field1503 = this.field1496 - var1; // L: 547 + if (this.field1483 < var1) { + this.field1491 = 1; + this.field1490 = var1 - this.field1483; + } else if (this.field1483 > var1) { + this.field1491 = -1; + this.field1490 = this.field1483 - var1; } else { - this.field1492 = 0; // L: 549 + this.field1491 = 0; } - if (this.field1497 < var2) { // L: 550 - this.field1499 = 1; // L: 551 - if (this.field1503 == 0 || this.field1503 > var2 - this.field1497) { // L: 552 - this.field1503 = var2 - this.field1497; + if (this.field1484 < var2) { + this.field1492 = 1; + if (this.field1490 == 0 || this.field1490 > var2 - this.field1484) { + this.field1490 = var2 - this.field1484; } - } else if (this.field1497 > var2) { // L: 554 - this.field1499 = -1; // L: 555 - if (this.field1503 == 0 || this.field1503 > this.field1497 - var2) { // L: 556 - this.field1503 = this.field1497 - var2; + } else if (this.field1484 > var2) { + this.field1492 = -1; + if (this.field1490 == 0 || this.field1490 > this.field1484 - var2) { + this.field1490 = this.field1484 - var2; } } else { - this.field1499 = 0; // L: 558 + this.field1492 = 0; } - if (this.field1498 < var3) { // L: 559 - this.field1505 = 1; // L: 560 - if (this.field1503 == 0 || this.field1503 > var3 - this.field1498) { // L: 561 - this.field1503 = var3 - this.field1498; + if (this.field1485 < var3) { + this.field1493 = 1; + if (this.field1490 == 0 || this.field1490 > var3 - this.field1485) { + this.field1490 = var3 - this.field1485; } - } else if (this.field1498 > var3) { // L: 563 - this.field1505 = -1; // L: 564 - if (this.field1503 == 0 || this.field1503 > this.field1498 - var3) { // L: 565 - this.field1503 = this.field1498 - var3; + } else if (this.field1485 > var3) { + this.field1493 = -1; + if (this.field1490 == 0 || this.field1490 > this.field1485 - var3) { + this.field1490 = this.field1485 - var3; } } else { - this.field1505 = 0; // L: 567 + this.field1493 = 0; } - return false; // L: 568 + return false; } } - @ObfuscatedName("f") - static int method2765(int var0, int var1) { - return var1 < 0 ? var0 : (int)((double)var0 * Math.sqrt((double)(16384 - var1) * 1.220703125E-4D) + 0.5D); // L: 23 + @ObfuscatedName("ay") + int vmethod2800() { + int var1 = this.field1483 * 3 >> 6; + var1 = (var1 ^ var1 >> 31) + (var1 >>> 31); + if (this.numLoops == 0) { + var1 -= var1 * this.field1479 / (((RawSound)super.sound).samples.length << 8); + } else if (this.numLoops >= 0) { + var1 -= var1 * this.start / ((RawSound)super.sound).samples.length; + } + + return var1 > 255 ? 255 : var1; } - @ObfuscatedName("b") - static int method2710(int var0, int var1) { - return var1 < 0 ? -var0 : (int)((double)var0 * Math.sqrt((double)var1 * 1.220703125E-4D) + 0.5D); // L: 27 + @ObfuscatedName("h") + static int method2669(int var0, int var1) { + return var1 < 0 ? var0 : (int)((double)var0 * Math.sqrt((double)(16384 - var1) * 1.220703125E-4D) + 0.5D); } - @ObfuscatedName("l") + @ObfuscatedName("v") + static int method2603(int var0, int var1) { + return var1 < 0 ? -var0 : (int)((double)var0 * Math.sqrt((double)var1 * 1.220703125E-4D) + 0.5D); + } + + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Ldo;II)Ldx;" + descriptor = "(Ldf;II)Ldj;" ) @Export("createRawPcmStream") public static RawPcmStream createRawPcmStream(RawSound var0, int var1, int var2) { - return var0.samples != null && var0.samples.length != 0 ? new RawPcmStream(var0, (int)((long)var0.sampleRate * 256L * (long)var1 / (long)(PcmPlayer.field1442 * 100)), var2 << 6) : null; // L: 63 64 + return var0.samples != null && var0.samples.length != 0 ? new RawPcmStream(var0, (int)((long)var0.sampleRate * 256L * (long)var1 / (long)(PcmPlayer.field1443 * 100)), var2 << 6) : null; } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Ldo;III)Ldx;" + descriptor = "(Ldf;III)Ldj;" ) - public static RawPcmStream method2683(RawSound var0, int var1, int var2, int var3) { - return var0.samples != null && var0.samples.length != 0 ? new RawPcmStream(var0, var1, var2, var3) : null; // L: 68 69 + public static RawPcmStream method2630(RawSound var0, int var1, int var2, int var3) { + return var0.samples != null && var0.samples.length != 0 ? new RawPcmStream(var0, var1, var2, var3) : null; } - @ObfuscatedName("aa") + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "([B[IIIIIIILdx;)I" + descriptor = "([B[IIIIIIILdj;)I" ) - static int method2731(byte[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, RawPcmStream var8) { - var2 >>= 8; // L: 583 - var7 >>= 8; // L: 584 - var4 <<= 2; // L: 585 - if ((var5 = var3 + var7 - var2) > var6) { // L: 586 + static int method2626(byte[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, RawPcmStream var8) { + var2 >>= 8; + var7 >>= 8; + var4 <<= 2; + if ((var5 = var3 + var7 - var2) > var6) { var5 = var6; } int var10001; - for (var5 -= 3; var3 < var5; var1[var10001] += var0[var2++] * var4) { // L: 587 588 - var10001 = var3++; // L: 589 + for (var5 -= 3; var3 < var5; var1[var10001] += var0[var2++] * var4) { + var10001 = var3++; var1[var10001] += var0[var2++] * var4; - var10001 = var3++; // L: 590 + var10001 = var3++; var1[var10001] += var0[var2++] * var4; - var10001 = var3++; // L: 591 + var10001 = var3++; var1[var10001] += var0[var2++] * var4; - var10001 = var3++; // L: 592 + var10001 = var3++; } - for (var5 += 3; var3 < var5; var1[var10001] += var0[var2++] * var4) { // L: 594 595 - var10001 = var3++; // L: 596 + for (var5 += 3; var3 < var5; var1[var10001] += var0[var2++] * var4) { + var10001 = var3++; } - var8.field1493 = var2 << 8; // L: 598 - return var3; // L: 599 + var8.field1479 = var2 << 8; + return var3; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(I[B[IIIIIIIILdj;)I" + ) + static int method2765(int var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, RawPcmStream var10) { + var3 >>= 8; + var9 >>= 8; + var5 <<= 2; + var6 <<= 2; + if ((var7 = var4 + var9 - var3) > var8) { + var7 = var8; + } + + var4 <<= 1; + var7 <<= 1; + + int var10001; + byte var11; + for (var7 -= 6; var4 < var7; var2[var10001] += var11 * var6) { + var11 = var1[var3++]; + var10001 = var4++; + var2[var10001] += var11 * var5; + var10001 = var4++; + var2[var10001] += var11 * var6; + var11 = var1[var3++]; + var10001 = var4++; + var2[var10001] += var11 * var5; + var10001 = var4++; + var2[var10001] += var11 * var6; + var11 = var1[var3++]; + var10001 = var4++; + var2[var10001] += var11 * var5; + var10001 = var4++; + var2[var10001] += var11 * var6; + var11 = var1[var3++]; + var10001 = var4++; + var2[var10001] += var11 * var5; + var10001 = var4++; + } + + for (var7 += 6; var4 < var7; var2[var10001] += var11 * var6) { + var11 = var1[var3++]; + var10001 = var4++; + var2[var10001] += var11 * var5; + var10001 = var4++; + } + + var10.field1479 = var3 << 8; + return var4 >> 1; + } + + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "([B[IIIIIIILdj;)I" + ) + static int method2605(byte[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, RawPcmStream var8) { + var2 >>= 8; + var7 >>= 8; + var4 <<= 2; + if ((var5 = var3 + var2 - (var7 - 1)) > var6) { + var5 = var6; + } + + int var10001; + for (var5 -= 3; var3 < var5; var1[var10001] += var0[var2--] * var4) { + var10001 = var3++; + var1[var10001] += var0[var2--] * var4; + var10001 = var3++; + var1[var10001] += var0[var2--] * var4; + var10001 = var3++; + var1[var10001] += var0[var2--] * var4; + var10001 = var3++; + } + + for (var5 += 3; var3 < var5; var1[var10001] += var0[var2--] * var4) { + var10001 = var3++; + } + + var8.field1479 = var2 << 8; + return var3; } @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I[B[IIIIIIIILdx;)I" + descriptor = "(I[B[IIIIIIIILdj;)I" ) - static int method2701(int var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, RawPcmStream var10) { - var3 >>= 8; // L: 603 - var9 >>= 8; // L: 604 - var5 <<= 2; // L: 605 - var6 <<= 2; // L: 606 - if ((var7 = var4 + var9 - var3) > var8) { // L: 607 + static int method2636(int var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, RawPcmStream var10) { + var3 >>= 8; + var9 >>= 8; + var5 <<= 2; + var6 <<= 2; + if ((var7 = var3 + var4 - (var9 - 1)) > var8) { var7 = var8; } - var4 <<= 1; // L: 608 - var7 <<= 1; // L: 609 + var4 <<= 1; + var7 <<= 1; int var10001; byte var11; - for (var7 -= 6; var4 < var7; var2[var10001] += var11 * var6) { // L: 610 611 - var11 = var1[var3++]; // L: 612 - var10001 = var4++; // L: 613 - var2[var10001] += var11 * var5; - var10001 = var4++; // L: 614 - var2[var10001] += var11 * var6; - var11 = var1[var3++]; // L: 615 - var10001 = var4++; // L: 616 - var2[var10001] += var11 * var5; - var10001 = var4++; // L: 617 - var2[var10001] += var11 * var6; - var11 = var1[var3++]; // L: 618 - var10001 = var4++; // L: 619 - var2[var10001] += var11 * var5; - var10001 = var4++; // L: 620 - var2[var10001] += var11 * var6; - var11 = var1[var3++]; // L: 621 + for (var7 -= 6; var4 < var7; var2[var10001] += var11 * var6) { + var11 = var1[var3--]; + var10001 = var4++; + var2[var10001] += var11 * var5; + var10001 = var4++; + var2[var10001] += var11 * var6; + var11 = var1[var3--]; + var10001 = var4++; + var2[var10001] += var11 * var5; + var10001 = var4++; + var2[var10001] += var11 * var6; + var11 = var1[var3--]; + var10001 = var4++; + var2[var10001] += var11 * var5; + var10001 = var4++; + var2[var10001] += var11 * var6; + var11 = var1[var3--]; var10001 = var4++; - var2[var10001] += var11 * var5; // L: 622 - var10001 = var4++; // L: 623 - } - - for (var7 += 6; var4 < var7; var2[var10001] += var11 * var6) { // L: 625 626 629 - var11 = var1[var3++]; // L: 627 - var10001 = var4++; // L: 628 var2[var10001] += var11 * var5; var10001 = var4++; } - var10.field1493 = var3 << 8; // L: 631 - return var4 >> 1; // L: 632 + for (var7 += 6; var4 < var7; var2[var10001] += var11 * var6) { + var11 = var1[var3--]; + var10001 = var4++; + var2[var10001] += var11 * var5; + var10001 = var4++; + } + + var10.field1479 = var3 << 8; + return var4 >> 1; } - @ObfuscatedName("as") + @ObfuscatedName("bh") @ObfuscatedSignature( - descriptor = "([B[IIIIIIILdx;)I" + descriptor = "(II[B[IIIIIIILdj;II)I" ) - static int method2702(byte[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, RawPcmStream var8) { - var2 >>= 8; // L: 636 - var7 >>= 8; // L: 637 - var4 <<= 2; // L: 638 - if ((var5 = var3 + var2 - (var7 - 1)) > var6) { // L: 639 - var5 = var6; - } - - int var10001; - for (var5 -= 3; var3 < var5; var1[var10001] += var0[var2--] * var4) { // L: 640 641 - var10001 = var3++; // L: 642 - var1[var10001] += var0[var2--] * var4; - var10001 = var3++; - var1[var10001] += var0[var2--] * var4; // L: 643 - var10001 = var3++; // L: 644 - var1[var10001] += var0[var2--] * var4; - var10001 = var3++; // L: 645 - } - - for (var5 += 3; var3 < var5; var1[var10001] += var0[var2--] * var4) { // L: 647 648 - var10001 = var3++; // L: 649 - } - - var8.field1493 = var2 << 8; // L: 651 - return var3; // L: 652 - } - - @ObfuscatedName("aj") - @ObfuscatedSignature( - descriptor = "(I[B[IIIIIIIILdx;)I" - ) - static int method2703(int var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, RawPcmStream var10) { - var3 >>= 8; // L: 656 - var9 >>= 8; // L: 657 - var5 <<= 2; // L: 658 - var6 <<= 2; // L: 659 - if ((var7 = var3 + var4 - (var9 - 1)) > var8) { // L: 660 - var7 = var8; - } - - var4 <<= 1; // L: 661 - var7 <<= 1; // L: 662 - - int var10001; - byte var11; - for (var7 -= 6; var4 < var7; var2[var10001] += var11 * var6) { // L: 663 664 - var11 = var1[var3--]; // L: 665 - var10001 = var4++; // L: 666 - var2[var10001] += var11 * var5; - var10001 = var4++; // L: 667 - var2[var10001] += var11 * var6; - var11 = var1[var3--]; // L: 668 - var10001 = var4++; // L: 669 - var2[var10001] += var11 * var5; - var10001 = var4++; // L: 670 - var2[var10001] += var11 * var6; - var11 = var1[var3--]; // L: 671 - var10001 = var4++; // L: 672 - var2[var10001] += var11 * var5; - var10001 = var4++; // L: 673 - var2[var10001] += var11 * var6; - var11 = var1[var3--]; // L: 674 - var10001 = var4++; - var2[var10001] += var11 * var5; // L: 675 - var10001 = var4++; // L: 676 - } - - for (var7 += 6; var4 < var7; var2[var10001] += var11 * var6) { // L: 678 679 682 - var11 = var1[var3--]; // L: 680 - var10001 = var4++; // L: 681 - var2[var10001] += var11 * var5; - var10001 = var4++; - } - - var10.field1493 = var3 << 8; // L: 684 - return var4 >> 1; // L: 685 - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(II[B[IIIIIIILdx;II)I" - ) - static int method2790(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, RawPcmStream var10, int var11, int var12) { - if (var11 == 0 || (var7 = var5 + (var11 + (var9 - var4) - 257) / var11) > var8) { // L: 689 + static int method2739(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, RawPcmStream var10, int var11, int var12) { + if (var11 == 0 || (var7 = var5 + (var11 + (var9 - var4) - 257) / var11) > var8) { var7 = var8; } byte var13; int var10001; - while (var5 < var7) { // L: 690 - var1 = var4 >> 8; // L: 691 - var13 = var2[var1]; // L: 692 - var10001 = var5++; // L: 693 + while (var5 < var7) { + var1 = var4 >> 8; + var13 = var2[var1]; + var10001 = var5++; var3[var10001] += ((var13 << 8) + (var2[var1 + 1] - var13) * (var4 & 255)) * var6 >> 6; - var4 += var11; // L: 694 + var4 += var11; } - if (var11 == 0 || (var7 = var5 + (var11 + (var9 - var4) - 1) / var11) > var8) { // L: 696 + if (var11 == 0 || (var7 = var5 + (var11 + (var9 - var4) - 1) / var11) > var8) { var7 = var8; } - for (var1 = var12; var5 < var7; var4 += var11) { // L: 697 698 701 - var13 = var2[var4 >> 8]; // L: 699 + for (var1 = var12; var5 < var7; var4 += var11) { + var13 = var2[var4 >> 8]; var10001 = var5++; - var3[var10001] += ((var13 << 8) + (var1 - var13) * (var4 & 255)) * var6 >> 6; // L: 700 + var3[var10001] += ((var13 << 8) + (var1 - var13) * (var4 & 255)) * var6 >> 6; } - var10.field1493 = var4; // L: 703 - return var5; // L: 704 + var10.field1479 = var4; + return var5; } - @ObfuscatedName("al") + @ObfuscatedName("by") @ObfuscatedSignature( - descriptor = "(II[B[IIIIIIIILdx;II)I" + descriptor = "(II[B[IIIIIIIILdj;II)I" ) - static int method2705(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, RawPcmStream var11, int var12, int var13) { - if (var12 == 0 || (var8 = var5 + (var10 - var4 + var12 - 257) / var12) > var9) { // L: 708 + static int method2638(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, RawPcmStream var11, int var12, int var13) { + if (var12 == 0 || (var8 = var5 + (var10 - var4 + var12 - 257) / var12) > var9) { var8 = var9; } - var5 <<= 1; // L: 709 + var5 <<= 1; byte var14; int var10001; - for (var8 <<= 1; var5 < var8; var4 += var12) { // L: 710 711 717 - var1 = var4 >> 8; // L: 712 - var14 = var2[var1]; // L: 713 - var0 = (var14 << 8) + (var4 & 255) * (var2[var1 + 1] - var14); // L: 714 - var10001 = var5++; // L: 715 + for (var8 <<= 1; var5 < var8; var4 += var12) { + var1 = var4 >> 8; + var14 = var2[var1]; + var0 = (var14 << 8) + (var4 & 255) * (var2[var1 + 1] - var14); + var10001 = var5++; var3[var10001] += var0 * var6 >> 6; - var10001 = var5++; // L: 716 + var10001 = var5++; var3[var10001] += var0 * var7 >> 6; } - if (var12 == 0 || (var8 = (var5 >> 1) + (var10 - var4 + var12 - 1) / var12) > var9) { // L: 719 + if (var12 == 0 || (var8 = (var5 >> 1) + (var10 - var4 + var12 - 1) / var12) > var9) { var8 = var9; } - var8 <<= 1; // L: 720 + var8 <<= 1; - for (var1 = var13; var5 < var8; var4 += var12) { // L: 721 722 727 - var14 = var2[var4 >> 8]; // L: 723 - var0 = (var14 << 8) + (var1 - var14) * (var4 & 255); // L: 724 - var10001 = var5++; // L: 725 + for (var1 = var13; var5 < var8; var4 += var12) { + var14 = var2[var4 >> 8]; + var0 = (var14 << 8) + (var1 - var14) * (var4 & 255); + var10001 = var5++; var3[var10001] += var0 * var6 >> 6; - var10001 = var5++; // L: 726 + var10001 = var5++; var3[var10001] += var0 * var7 >> 6; } - var11.field1493 = var4; // L: 729 - return var5 >> 1; // L: 730 + var11.field1479 = var4; + return var5 >> 1; } - @ObfuscatedName("ap") + @ObfuscatedName("bs") @ObfuscatedSignature( - descriptor = "(II[B[IIIIIIILdx;II)I" + descriptor = "(II[B[IIIIIIILdj;II)I" ) - static int method2695(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, RawPcmStream var10, int var11, int var12) { - if (var11 == 0 || (var7 = var5 + (var11 + (var9 + 256 - var4)) / var11) > var8) { // L: 734 + static int method2639(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, RawPcmStream var10, int var11, int var12) { + if (var11 == 0 || (var7 = var5 + (var11 + (var9 + 256 - var4)) / var11) > var8) { var7 = var8; } int var10001; - while (var5 < var7) { // L: 735 - var1 = var4 >> 8; // L: 736 - byte var13 = var2[var1 - 1]; // L: 737 - var10001 = var5++; // L: 738 + while (var5 < var7) { + var1 = var4 >> 8; + byte var13 = var2[var1 - 1]; + var10001 = var5++; var3[var10001] += ((var13 << 8) + (var2[var1] - var13) * (var4 & 255)) * var6 >> 6; - var4 += var11; // L: 739 + var4 += var11; } - if (var11 == 0 || (var7 = var5 + (var11 + (var9 - var4)) / var11) > var8) { // L: 741 + if (var11 == 0 || (var7 = var5 + (var11 + (var9 - var4)) / var11) > var8) { var7 = var8; } - var0 = var12; // L: 742 + var0 = var12; - for (var1 = var11; var5 < var7; var4 += var1) { // L: 743 744 746 + for (var1 = var11; var5 < var7; var4 += var1) { var10001 = var5++; - var3[var10001] += ((var0 << 8) + (var2[var4 >> 8] - var0) * (var4 & 255)) * var6 >> 6; // L: 745 + var3[var10001] += ((var0 << 8) + (var2[var4 >> 8] - var0) * (var4 & 255)) * var6 >> 6; } - var10.field1493 = var4; // L: 748 - return var5; // L: 749 + var10.field1479 = var4; + return var5; } - @ObfuscatedName("ad") + @ObfuscatedName("br") @ObfuscatedSignature( - descriptor = "(II[B[IIIIIIIILdx;II)I" + descriptor = "(II[B[IIIIIIIILdj;II)I" ) - static int method2707(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, RawPcmStream var11, int var12, int var13) { - if (var12 == 0 || (var8 = var5 + (var10 + 256 - var4 + var12) / var12) > var9) { // L: 753 + static int method2640(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, RawPcmStream var11, int var12, int var13) { + if (var12 == 0 || (var8 = var5 + (var10 + 256 - var4 + var12) / var12) > var9) { var8 = var9; } - var5 <<= 1; // L: 754 + var5 <<= 1; int var10001; - for (var8 <<= 1; var5 < var8; var4 += var12) { // L: 755 756 762 - var1 = var4 >> 8; // L: 757 - byte var14 = var2[var1 - 1]; // L: 758 - var0 = (var2[var1] - var14) * (var4 & 255) + (var14 << 8); // L: 759 - var10001 = var5++; // L: 760 - var3[var10001] += var0 * var6 >> 6; - var10001 = var5++; // L: 761 - var3[var10001] += var0 * var7 >> 6; - } - - if (var12 == 0 || (var8 = (var5 >> 1) + (var10 - var4 + var12) / var12) > var9) { // L: 764 - var8 = var9; - } - - var8 <<= 1; // L: 765 - - for (var1 = var13; var5 < var8; var4 += var12) { // L: 766 767 771 - var0 = (var1 << 8) + (var4 & 255) * (var2[var4 >> 8] - var1); // L: 768 - var10001 = var5++; // L: 769 - var3[var10001] += var0 * var6 >> 6; - var10001 = var5++; // L: 770 - var3[var10001] += var0 * var7 >> 6; - } - - var11.field1493 = var4; // L: 773 - return var5 >> 1; // L: 774 - } - - @ObfuscatedName("bb") - @ObfuscatedSignature( - descriptor = "([B[IIIIIIIILdx;)I" - ) - static int method2747(byte[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, RawPcmStream var9) { - var2 >>= 8; // L: 778 - var8 >>= 8; // L: 779 - var4 <<= 2; // L: 780 - var5 <<= 2; // L: 781 - if ((var6 = var3 + var8 - var2) > var7) { // L: 782 - var6 = var7; - } - - var9.field1497 += var9.field1499 * (var6 - var3); // L: 783 - var9.field1498 += var9.field1505 * (var6 - var3); // L: 784 - - int var10001; - for (var6 -= 3; var3 < var6; var4 += var5) { // L: 785 786 794 - var10001 = var3++; // L: 787 - var1[var10001] += var0[var2++] * var4; - var4 += var5; // L: 788 - var10001 = var3++; // L: 789 - var1[var10001] += var0[var2++] * var4; - var4 += var5; // L: 790 - var10001 = var3++; // L: 791 - var1[var10001] += var0[var2++] * var4; - var4 += var5; // L: 792 - var10001 = var3++; // L: 793 - var1[var10001] += var0[var2++] * var4; - } - - for (var6 += 3; var3 < var6; var4 += var5) { // L: 796 797 799 - var10001 = var3++; // L: 798 - var1[var10001] += var0[var2++] * var4; - } - - var9.field1496 = var4 >> 2; // L: 801 - var9.field1493 = var2 << 8; // L: 802 - return var3; // L: 803 - } - - @ObfuscatedName("bf") - @ObfuscatedSignature( - descriptor = "(I[B[IIIIIIIIIILdx;)I" - ) - static int method2709(int var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, RawPcmStream var12) { - var3 >>= 8; // L: 807 - var11 >>= 8; // L: 808 - var5 <<= 2; // L: 809 - var6 <<= 2; // L: 810 - var7 <<= 2; // L: 811 - var8 <<= 2; // L: 812 - if ((var9 = var11 + var4 - var3) > var10) { // L: 813 - var9 = var10; - } - - var12.field1496 += var12.field1492 * (var9 - var4); // L: 814 - var4 <<= 1; // L: 815 - var9 <<= 1; // L: 816 - - byte var13; - int var10001; - for (var9 -= 6; var4 < var9; var6 += var8) { // L: 817 818 838 - var13 = var1[var3++]; // L: 819 - var10001 = var4++; // L: 820 - var2[var10001] += var13 * var5; - var5 += var7; // L: 821 - var10001 = var4++; // L: 822 - var2[var10001] += var13 * var6; - var6 += var8; // L: 823 - var13 = var1[var3++]; // L: 824 - var10001 = var4++; // L: 825 - var2[var10001] += var13 * var5; - var5 += var7; // L: 826 - var10001 = var4++; // L: 827 - var2[var10001] += var13 * var6; - var6 += var8; // L: 828 - var13 = var1[var3++]; // L: 829 - var10001 = var4++; // L: 830 - var2[var10001] += var13 * var5; - var5 += var7; // L: 831 - var10001 = var4++; // L: 832 - var2[var10001] += var13 * var6; - var6 += var8; // L: 833 - var13 = var1[var3++]; // L: 834 - var10001 = var4++; // L: 835 - var2[var10001] += var13 * var5; - var5 += var7; // L: 836 - var10001 = var4++; - var2[var10001] += var13 * var6; // L: 837 - } - - for (var9 += 6; var4 < var9; var6 += var8) { // L: 840 841 846 - var13 = var1[var3++]; // L: 842 - var10001 = var4++; // L: 843 - var2[var10001] += var13 * var5; - var5 += var7; // L: 844 - var10001 = var4++; // L: 845 - var2[var10001] += var13 * var6; - } - - var12.field1497 = var5 >> 2; // L: 848 - var12.field1498 = var6 >> 2; // L: 849 - var12.field1493 = var3 << 8; // L: 850 - return var4 >> 1; // L: 851 - } - - @ObfuscatedName("bp") - @ObfuscatedSignature( - descriptor = "([B[IIIIIIIILdx;)I" - ) - static int method2699(byte[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, RawPcmStream var9) { - var2 >>= 8; // L: 855 - var8 >>= 8; // L: 856 - var4 <<= 2; // L: 857 - var5 <<= 2; // L: 858 - if ((var6 = var3 + var2 - (var8 - 1)) > var7) { // L: 859 - var6 = var7; - } - - var9.field1497 += var9.field1499 * (var6 - var3); // L: 860 - var9.field1498 += var9.field1505 * (var6 - var3); // L: 861 - - int var10001; - for (var6 -= 3; var3 < var6; var4 += var5) { // L: 862 863 871 - var10001 = var3++; // L: 864 - var1[var10001] += var0[var2--] * var4; - var4 += var5; // L: 865 - var10001 = var3++; // L: 866 - var1[var10001] += var0[var2--] * var4; - var4 += var5; // L: 867 - var10001 = var3++; // L: 868 - var1[var10001] += var0[var2--] * var4; - var4 += var5; // L: 869 - var10001 = var3++; // L: 870 - var1[var10001] += var0[var2--] * var4; - } - - for (var6 += 3; var3 < var6; var4 += var5) { // L: 873 874 876 - var10001 = var3++; // L: 875 - var1[var10001] += var0[var2--] * var4; - } - - var9.field1496 = var4 >> 2; // L: 878 - var9.field1493 = var2 << 8; // L: 879 - return var3; // L: 880 - } - - @ObfuscatedName("bg") - @ObfuscatedSignature( - descriptor = "(I[B[IIIIIIIIIILdx;)I" - ) - static int method2711(int var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, RawPcmStream var12) { - var3 >>= 8; // L: 884 - var11 >>= 8; // L: 885 - var5 <<= 2; // L: 886 - var6 <<= 2; // L: 887 - var7 <<= 2; // L: 888 - var8 <<= 2; // L: 889 - if ((var9 = var3 + var4 - (var11 - 1)) > var10) { // L: 890 - var9 = var10; - } - - var12.field1496 += var12.field1492 * (var9 - var4); // L: 891 - var4 <<= 1; // L: 892 - var9 <<= 1; // L: 893 - - byte var13; - int var10001; - for (var9 -= 6; var4 < var9; var6 += var8) { // L: 894 895 915 - var13 = var1[var3--]; // L: 896 - var10001 = var4++; // L: 897 - var2[var10001] += var13 * var5; - var5 += var7; // L: 898 - var10001 = var4++; // L: 899 - var2[var10001] += var13 * var6; - var6 += var8; // L: 900 - var13 = var1[var3--]; // L: 901 - var10001 = var4++; // L: 902 - var2[var10001] += var13 * var5; - var5 += var7; // L: 903 - var10001 = var4++; // L: 904 - var2[var10001] += var13 * var6; - var6 += var8; // L: 905 - var13 = var1[var3--]; // L: 906 - var10001 = var4++; // L: 907 - var2[var10001] += var13 * var5; - var5 += var7; // L: 908 - var10001 = var4++; // L: 909 - var2[var10001] += var13 * var6; - var6 += var8; // L: 910 - var13 = var1[var3--]; // L: 911 - var10001 = var4++; // L: 912 - var2[var10001] += var13 * var5; - var5 += var7; // L: 913 - var10001 = var4++; // L: 914 - var2[var10001] += var13 * var6; - } - - for (var9 += 6; var4 < var9; var6 += var8) { // L: 917 918 923 - var13 = var1[var3--]; // L: 919 - var10001 = var4++; // L: 920 - var2[var10001] += var13 * var5; - var5 += var7; // L: 921 - var10001 = var4++; // L: 922 - var2[var10001] += var13 * var6; - } - - var12.field1497 = var5 >> 2; // L: 925 - var12.field1498 = var6 >> 2; // L: 926 - var12.field1493 = var3 << 8; // L: 927 - return var4 >> 1; // L: 928 - } - - @ObfuscatedName("bc") - @ObfuscatedSignature( - descriptor = "(II[B[IIIIIIIILdx;II)I" - ) - static int method2712(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, RawPcmStream var11, int var12, int var13) { - var11.field1497 -= var11.field1499 * var5; // L: 932 - var11.field1498 -= var11.field1505 * var5; // L: 933 - if (var12 == 0 || (var8 = var5 + (var10 - var4 + var12 - 257) / var12) > var9) { // L: 934 - var8 = var9; - } - - byte var14; - int var10001; - while (var5 < var8) { // L: 935 - var1 = var4 >> 8; // L: 936 - var14 = var2[var1]; // L: 937 + for (var8 <<= 1; var5 < var8; var4 += var12) { + var1 = var4 >> 8; + byte var14 = var2[var1 - 1]; + var0 = (var2[var1] - var14) * (var4 & 255) + (var14 << 8); var10001 = var5++; - var3[var10001] += ((var14 << 8) + (var2[var1 + 1] - var14) * (var4 & 255)) * var6 >> 6; // L: 938 - var6 += var7; // L: 939 - var4 += var12; // L: 940 + var3[var10001] += var0 * var6 >> 6; + var10001 = var5++; + var3[var10001] += var0 * var7 >> 6; } - if (var12 == 0 || (var8 = var5 + (var10 - var4 + var12 - 1) / var12) > var9) { // L: 942 + if (var12 == 0 || (var8 = (var5 >> 1) + (var10 - var4 + var12) / var12) > var9) { var8 = var9; } - for (var1 = var13; var5 < var8; var4 += var12) { // L: 943 944 948 - var14 = var2[var4 >> 8]; // L: 945 - var10001 = var5++; // L: 946 - var3[var10001] += ((var14 << 8) + (var1 - var14) * (var4 & 255)) * var6 >> 6; - var6 += var7; // L: 947 - } + var8 <<= 1; - var11.field1497 += var11.field1499 * var5; // L: 950 - var11.field1498 += var11.field1505 * var5; // L: 951 - var11.field1496 = var6; // L: 952 - var11.field1493 = var4; // L: 953 - return var5; // L: 954 - } - - @ObfuscatedName("bj") - @ObfuscatedSignature( - descriptor = "(II[B[IIIIIIIIIILdx;II)I" - ) - static int method2713(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, RawPcmStream var13, int var14, int var15) { - var13.field1496 -= var5 * var13.field1492; // L: 958 - if (var14 == 0 || (var10 = var5 + (var12 - var4 + var14 - 257) / var14) > var11) { // L: 959 - var10 = var11; - } - - var5 <<= 1; // L: 960 - - byte var16; - int var10001; - for (var10 <<= 1; var5 < var10; var4 += var14) { // L: 961 962 970 - var1 = var4 >> 8; // L: 963 - var16 = var2[var1]; // L: 964 - var0 = (var16 << 8) + (var4 & 255) * (var2[var1 + 1] - var16); // L: 965 - var10001 = var5++; // L: 966 + for (var1 = var13; var5 < var8; var4 += var12) { + var0 = (var1 << 8) + (var4 & 255) * (var2[var4 >> 8] - var1); + var10001 = var5++; var3[var10001] += var0 * var6 >> 6; - var6 += var8; // L: 967 - var10001 = var5++; // L: 968 + var10001 = var5++; var3[var10001] += var0 * var7 >> 6; - var7 += var9; // L: 969 } - if (var14 == 0 || (var10 = (var5 >> 1) + (var12 - var4 + var14 - 1) / var14) > var11) { // L: 972 - var10 = var11; - } - - var10 <<= 1; // L: 973 - - for (var1 = var15; var5 < var10; var4 += var14) { // L: 974 975 982 - var16 = var2[var4 >> 8]; // L: 976 - var0 = (var16 << 8) + (var1 - var16) * (var4 & 255); // L: 977 - var10001 = var5++; // L: 978 - var3[var10001] += var0 * var6 >> 6; - var6 += var8; // L: 979 - var10001 = var5++; // L: 980 - var3[var10001] += var0 * var7 >> 6; - var7 += var9; // L: 981 - } - - var5 >>= 1; // L: 984 - var13.field1496 += var13.field1492 * var5; // L: 985 - var13.field1497 = var6; // L: 986 - var13.field1498 = var7; // L: 987 - var13.field1493 = var4; // L: 988 - return var5; // L: 989 + var11.field1479 = var4; + return var5 >> 1; } @ObfuscatedName("bl") @ObfuscatedSignature( - descriptor = "(II[B[IIIIIIIILdx;II)I" + descriptor = "([B[IIIIIIIILdj;)I" ) - static int method2772(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, RawPcmStream var11, int var12, int var13) { - var11.field1497 -= var11.field1499 * var5; // L: 993 - var11.field1498 -= var11.field1505 * var5; // L: 994 - if (var12 == 0 || (var8 = var5 + (var10 + 256 - var4 + var12) / var12) > var9) { // L: 995 - var8 = var9; + static int method2641(byte[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, RawPcmStream var9) { + var2 >>= 8; + var8 >>= 8; + var4 <<= 2; + var5 <<= 2; + if ((var6 = var3 + var8 - var2) > var7) { + var6 = var7; } + var9.field1484 += var9.field1492 * (var6 - var3); + var9.field1485 += var9.field1493 * (var6 - var3); + int var10001; - while (var5 < var8) { // L: 996 - var1 = var4 >> 8; // L: 997 - byte var14 = var2[var1 - 1]; // L: 998 - var10001 = var5++; - var3[var10001] += ((var14 << 8) + (var2[var1] - var14) * (var4 & 255)) * var6 >> 6; // L: 999 - var6 += var7; // L: 1000 - var4 += var12; // L: 1001 + for (var6 -= 3; var3 < var6; var4 += var5) { + var10001 = var3++; + var1[var10001] += var0[var2++] * var4; + var4 += var5; + var10001 = var3++; + var1[var10001] += var0[var2++] * var4; + var4 += var5; + var10001 = var3++; + var1[var10001] += var0[var2++] * var4; + var4 += var5; + var10001 = var3++; + var1[var10001] += var0[var2++] * var4; } - if (var12 == 0 || (var8 = var5 + (var10 - var4 + var12) / var12) > var9) { // L: 1003 + for (var6 += 3; var3 < var6; var4 += var5) { + var10001 = var3++; + var1[var10001] += var0[var2++] * var4; + } + + var9.field1483 = var4 >> 2; + var9.field1479 = var2 << 8; + return var3; + } + + @ObfuscatedName("bx") + @ObfuscatedSignature( + descriptor = "(I[B[IIIIIIIIIILdj;)I" + ) + static int method2642(int var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, RawPcmStream var12) { + var3 >>= 8; + var11 >>= 8; + var5 <<= 2; + var6 <<= 2; + var7 <<= 2; + var8 <<= 2; + if ((var9 = var11 + var4 - var3) > var10) { + var9 = var10; + } + + var12.field1483 += var12.field1491 * (var9 - var4); + var4 <<= 1; + var9 <<= 1; + + byte var13; + int var10001; + for (var9 -= 6; var4 < var9; var6 += var8) { + var13 = var1[var3++]; + var10001 = var4++; + var2[var10001] += var13 * var5; + var5 += var7; + var10001 = var4++; + var2[var10001] += var13 * var6; + var6 += var8; + var13 = var1[var3++]; + var10001 = var4++; + var2[var10001] += var13 * var5; + var5 += var7; + var10001 = var4++; + var2[var10001] += var13 * var6; + var6 += var8; + var13 = var1[var3++]; + var10001 = var4++; + var2[var10001] += var13 * var5; + var5 += var7; + var10001 = var4++; + var2[var10001] += var13 * var6; + var6 += var8; + var13 = var1[var3++]; + var10001 = var4++; + var2[var10001] += var13 * var5; + var5 += var7; + var10001 = var4++; + var2[var10001] += var13 * var6; + } + + for (var9 += 6; var4 < var9; var6 += var8) { + var13 = var1[var3++]; + var10001 = var4++; + var2[var10001] += var13 * var5; + var5 += var7; + var10001 = var4++; + var2[var10001] += var13 * var6; + } + + var12.field1484 = var5 >> 2; + var12.field1485 = var6 >> 2; + var12.field1479 = var3 << 8; + return var4 >> 1; + } + + @ObfuscatedName("bf") + @ObfuscatedSignature( + descriptor = "([B[IIIIIIIILdj;)I" + ) + static int method2643(byte[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, RawPcmStream var9) { + var2 >>= 8; + var8 >>= 8; + var4 <<= 2; + var5 <<= 2; + if ((var6 = var3 + var2 - (var8 - 1)) > var7) { + var6 = var7; + } + + var9.field1484 += var9.field1492 * (var6 - var3); + var9.field1485 += var9.field1493 * (var6 - var3); + + int var10001; + for (var6 -= 3; var3 < var6; var4 += var5) { + var10001 = var3++; + var1[var10001] += var0[var2--] * var4; + var4 += var5; + var10001 = var3++; + var1[var10001] += var0[var2--] * var4; + var4 += var5; + var10001 = var3++; + var1[var10001] += var0[var2--] * var4; + var4 += var5; + var10001 = var3++; + var1[var10001] += var0[var2--] * var4; + } + + for (var6 += 3; var3 < var6; var4 += var5) { + var10001 = var3++; + var1[var10001] += var0[var2--] * var4; + } + + var9.field1483 = var4 >> 2; + var9.field1479 = var2 << 8; + return var3; + } + + @ObfuscatedName("bz") + @ObfuscatedSignature( + descriptor = "(I[B[IIIIIIIIIILdj;)I" + ) + static int method2644(int var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, RawPcmStream var12) { + var3 >>= 8; + var11 >>= 8; + var5 <<= 2; + var6 <<= 2; + var7 <<= 2; + var8 <<= 2; + if ((var9 = var3 + var4 - (var11 - 1)) > var10) { + var9 = var10; + } + + var12.field1483 += var12.field1491 * (var9 - var4); + var4 <<= 1; + var9 <<= 1; + + byte var13; + int var10001; + for (var9 -= 6; var4 < var9; var6 += var8) { + var13 = var1[var3--]; + var10001 = var4++; + var2[var10001] += var13 * var5; + var5 += var7; + var10001 = var4++; + var2[var10001] += var13 * var6; + var6 += var8; + var13 = var1[var3--]; + var10001 = var4++; + var2[var10001] += var13 * var5; + var5 += var7; + var10001 = var4++; + var2[var10001] += var13 * var6; + var6 += var8; + var13 = var1[var3--]; + var10001 = var4++; + var2[var10001] += var13 * var5; + var5 += var7; + var10001 = var4++; + var2[var10001] += var13 * var6; + var6 += var8; + var13 = var1[var3--]; + var10001 = var4++; + var2[var10001] += var13 * var5; + var5 += var7; + var10001 = var4++; + var2[var10001] += var13 * var6; + } + + for (var9 += 6; var4 < var9; var6 += var8) { + var13 = var1[var3--]; + var10001 = var4++; + var2[var10001] += var13 * var5; + var5 += var7; + var10001 = var4++; + var2[var10001] += var13 * var6; + } + + var12.field1484 = var5 >> 2; + var12.field1485 = var6 >> 2; + var12.field1479 = var3 << 8; + return var4 >> 1; + } + + @ObfuscatedName("bm") + @ObfuscatedSignature( + descriptor = "(II[B[IIIIIIIILdj;II)I" + ) + static int method2649(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, RawPcmStream var11, int var12, int var13) { + var11.field1484 -= var11.field1492 * var5; + var11.field1485 -= var11.field1493 * var5; + if (var12 == 0 || (var8 = var5 + (var10 - var4 + var12 - 257) / var12) > var9) { var8 = var9; } - var0 = var13; // L: 1004 - - for (var1 = var12; var5 < var8; var4 += var1) { // L: 1005 1006 1009 - var10001 = var5++; // L: 1007 - var3[var10001] += ((var0 << 8) + (var2[var4 >> 8] - var0) * (var4 & 255)) * var6 >> 6; - var6 += var7; // L: 1008 + byte var14; + int var10001; + while (var5 < var8) { + var1 = var4 >> 8; + var14 = var2[var1]; + var10001 = var5++; + var3[var10001] += ((var14 << 8) + (var2[var1 + 1] - var14) * (var4 & 255)) * var6 >> 6; + var6 += var7; + var4 += var12; } - var11.field1497 += var11.field1499 * var5; // L: 1011 - var11.field1498 += var11.field1505 * var5; // L: 1012 - var11.field1496 = var6; // L: 1013 - var11.field1493 = var4; // L: 1014 - return var5; // L: 1015 + if (var12 == 0 || (var8 = var5 + (var10 - var4 + var12 - 1) / var12) > var9) { + var8 = var9; + } + + for (var1 = var13; var5 < var8; var4 += var12) { + var14 = var2[var4 >> 8]; + var10001 = var5++; + var3[var10001] += ((var14 << 8) + (var1 - var14) * (var4 & 255)) * var6 >> 6; + var6 += var7; + } + + var11.field1484 += var11.field1492 * var5; + var11.field1485 += var11.field1493 * var5; + var11.field1483 = var6; + var11.field1479 = var4; + return var5; } @ObfuscatedName("bn") @ObfuscatedSignature( - descriptor = "(II[B[IIIIIIIIIILdx;II)I" + descriptor = "(II[B[IIIIIIIIIILdj;II)I" ) - static int method2715(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, RawPcmStream var13, int var14, int var15) { - var13.field1496 -= var5 * var13.field1492; // L: 1019 - if (var14 == 0 || (var10 = var5 + (var12 + 256 - var4 + var14) / var14) > var11) { // L: 1020 + static int method2646(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, RawPcmStream var13, int var14, int var15) { + var13.field1483 -= var5 * var13.field1491; + if (var14 == 0 || (var10 = var5 + (var12 - var4 + var14 - 257) / var14) > var11) { var10 = var11; } - var5 <<= 1; // L: 1021 + var5 <<= 1; + + byte var16; + int var10001; + for (var10 <<= 1; var5 < var10; var4 += var14) { + var1 = var4 >> 8; + var16 = var2[var1]; + var0 = (var16 << 8) + (var4 & 255) * (var2[var1 + 1] - var16); + var10001 = var5++; + var3[var10001] += var0 * var6 >> 6; + var6 += var8; + var10001 = var5++; + var3[var10001] += var0 * var7 >> 6; + var7 += var9; + } + + if (var14 == 0 || (var10 = (var5 >> 1) + (var12 - var4 + var14 - 1) / var14) > var11) { + var10 = var11; + } + + var10 <<= 1; + + for (var1 = var15; var5 < var10; var4 += var14) { + var16 = var2[var4 >> 8]; + var0 = (var16 << 8) + (var1 - var16) * (var4 & 255); + var10001 = var5++; + var3[var10001] += var0 * var6 >> 6; + var6 += var8; + var10001 = var5++; + var3[var10001] += var0 * var7 >> 6; + var7 += var9; + } + + var5 >>= 1; + var13.field1483 += var13.field1491 * var5; + var13.field1484 = var6; + var13.field1485 = var7; + var13.field1479 = var4; + return var5; + } + + @ObfuscatedName("bd") + @ObfuscatedSignature( + descriptor = "(II[B[IIIIIIIILdj;II)I" + ) + static int method2619(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, RawPcmStream var11, int var12, int var13) { + var11.field1484 -= var11.field1492 * var5; + var11.field1485 -= var11.field1493 * var5; + if (var12 == 0 || (var8 = var5 + (var10 + 256 - var4 + var12) / var12) > var9) { + var8 = var9; + } int var10001; - for (var10 <<= 1; var5 < var10; var4 += var14) { // L: 1022 1023 1031 - var1 = var4 >> 8; // L: 1024 - byte var16 = var2[var1 - 1]; // L: 1025 - var0 = (var2[var1] - var16) * (var4 & 255) + (var16 << 8); // L: 1026 - var10001 = var5++; // L: 1027 - var3[var10001] += var0 * var6 >> 6; - var6 += var8; // L: 1028 - var10001 = var5++; // L: 1029 - var3[var10001] += var0 * var7 >> 6; - var7 += var9; // L: 1030 + while (var5 < var8) { + var1 = var4 >> 8; + byte var14 = var2[var1 - 1]; + var10001 = var5++; + var3[var10001] += ((var14 << 8) + (var2[var1] - var14) * (var4 & 255)) * var6 >> 6; + var6 += var7; + var4 += var12; } - if (var14 == 0 || (var10 = (var5 >> 1) + (var12 - var4 + var14) / var14) > var11) { // L: 1033 + if (var12 == 0 || (var8 = var5 + (var10 - var4 + var12) / var12) > var9) { + var8 = var9; + } + + var0 = var13; + + for (var1 = var12; var5 < var8; var4 += var1) { + var10001 = var5++; + var3[var10001] += ((var0 << 8) + (var2[var4 >> 8] - var0) * (var4 & 255)) * var6 >> 6; + var6 += var7; + } + + var11.field1484 += var11.field1492 * var5; + var11.field1485 += var11.field1493 * var5; + var11.field1483 = var6; + var11.field1479 = var4; + return var5; + } + + @ObfuscatedName("bc") + @ObfuscatedSignature( + descriptor = "(II[B[IIIIIIIIIILdj;II)I" + ) + static int method2663(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, RawPcmStream var13, int var14, int var15) { + var13.field1483 -= var5 * var13.field1491; + if (var14 == 0 || (var10 = var5 + (var12 + 256 - var4 + var14) / var14) > var11) { var10 = var11; } - var10 <<= 1; // L: 1034 + var5 <<= 1; - for (var1 = var15; var5 < var10; var4 += var14) { // L: 1035 1036 1042 - var0 = (var1 << 8) + (var4 & 255) * (var2[var4 >> 8] - var1); // L: 1037 - var10001 = var5++; // L: 1038 + int var10001; + for (var10 <<= 1; var5 < var10; var4 += var14) { + var1 = var4 >> 8; + byte var16 = var2[var1 - 1]; + var0 = (var2[var1] - var16) * (var4 & 255) + (var16 << 8); + var10001 = var5++; var3[var10001] += var0 * var6 >> 6; - var6 += var8; // L: 1039 - var10001 = var5++; // L: 1040 + var6 += var8; + var10001 = var5++; var3[var10001] += var0 * var7 >> 6; - var7 += var9; // L: 1041 + var7 += var9; } - var5 >>= 1; // L: 1044 - var13.field1496 += var13.field1492 * var5; // L: 1045 - var13.field1497 = var6; // L: 1046 - var13.field1498 = var7; // L: 1047 - var13.field1493 = var4; // L: 1048 - return var5; // L: 1049 + if (var14 == 0 || (var10 = (var5 >> 1) + (var12 - var4 + var14) / var14) > var11) { + var10 = var11; + } + + var10 <<= 1; + + for (var1 = var15; var5 < var10; var4 += var14) { + var0 = (var1 << 8) + (var4 & 255) * (var2[var4 >> 8] - var1); + var10001 = var5++; + var3[var10001] += var0 * var6 >> 6; + var6 += var8; + var10001 = var5++; + var3[var10001] += var0 * var7 >> 6; + var7 += var9; + } + + var5 >>= 1; + var13.field1483 += var13.field1491 * var5; + var13.field1484 = var6; + var13.field1485 = var7; + var13.field1479 = var4; + return var5; } } diff --git a/runescape-client/src/main/java/RawSound.java b/runescape-client/src/main/java/RawSound.java index bcf0cd7773..b4bc46e340 100644 --- a/runescape-client/src/main/java/RawSound.java +++ b/runescape-client/src/main/java/RawSound.java @@ -3,57 +3,57 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("do") +@ObfuscatedName("df") @Implements("RawSound") public class RawSound extends AbstractSound { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("sampleRate") public int sampleRate; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("samples") public byte[] samples; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("start") public int start; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("end") int end; - @ObfuscatedName("z") - public boolean field1416; + @ObfuscatedName("t") + public boolean field1408; RawSound(int var1, byte[] var2, int var3, int var4) { - this.sampleRate = var1; // L: 13 - this.samples = var2; // L: 14 - this.start = var3; // L: 15 - this.end = var4; // L: 16 - } // L: 17 + this.sampleRate = var1; + this.samples = var2; + this.start = var3; + this.end = var4; + } RawSound(int var1, byte[] var2, int var3, int var4, boolean var5) { - this.sampleRate = var1; // L: 20 - this.samples = var2; // L: 21 - this.start = var3; // L: 22 - this.end = var4; // L: 23 - this.field1416 = var5; // L: 24 - } // L: 25 + this.sampleRate = var1; + this.samples = var2; + this.start = var3; + this.end = var4; + this.field1408 = var5; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ldw;)Ldo;" + descriptor = "(Ldn;)Ldf;" ) @Export("resample") public RawSound resample(Decimator var1) { - this.samples = var1.resample(this.samples); // L: 28 - this.sampleRate = var1.scaleRate(this.sampleRate); // L: 29 - if (this.start == this.end) { // L: 30 + this.samples = var1.resample(this.samples); + this.sampleRate = var1.scaleRate(this.sampleRate); + if (this.start == this.end) { this.start = this.end = var1.scalePosition(this.start); } else { - this.start = var1.scalePosition(this.start); // L: 32 - this.end = var1.scalePosition(this.end); // L: 33 - if (this.start == this.end) { // L: 34 + this.start = var1.scalePosition(this.start); + this.end = var1.scalePosition(this.end); + if (this.start == this.end) { --this.start; } } - return this; // L: 36 + return this; } } diff --git a/runescape-client/src/main/java/ReflectionCheck.java b/runescape-client/src/main/java/ReflectionCheck.java index e3decaa088..78ac6b5d16 100644 --- a/runescape-client/src/main/java/ReflectionCheck.java +++ b/runescape-client/src/main/java/ReflectionCheck.java @@ -6,66 +6,75 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dv") +@ObfuscatedName("du") @Implements("ReflectionCheck") public class ReflectionCheck extends Node { - @ObfuscatedName("rk") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = -556270823 - ) - static int field1364; - @ObfuscatedName("fn") - @ObfuscatedSignature( - descriptor = "Lkq;" - ) - @Export("fontBold12") - static Font fontBold12; - @ObfuscatedName("f") - @Export("intReplaceValues") - int[] intReplaceValues; - @ObfuscatedName("b") - @ObfuscatedGetter( - intValue = -296860669 + intValue = -333963767 ) @Export("id") int id; - @ObfuscatedName("l") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 989914791 + intValue = 58962995 ) @Export("size") int size; - @ObfuscatedName("m") - @Export("arguments") - byte[][][] arguments; - @ObfuscatedName("z") + @ObfuscatedName("x") @Export("operations") int[] operations; - @ObfuscatedName("q") + @ObfuscatedName("w") @Export("creationErrors") int[] creationErrors; - @ObfuscatedName("k") + @ObfuscatedName("t") @Export("fields") Field[] fields; - @ObfuscatedName("c") + @ObfuscatedName("j") + @Export("intReplaceValues") + int[] intReplaceValues; + @ObfuscatedName("n") @Export("methods") Method[] methods; + @ObfuscatedName("p") + @Export("arguments") + byte[][][] arguments; ReflectionCheck() { - } // L: 17 + } - @ObfuscatedName("ed") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(IZZZS)Lid;", - garbageValue = "255" + descriptor = "(IIII)V", + garbageValue = "527859339" ) - @Export("newArchive") - static Archive newArchive(int var0, boolean var1, boolean var2, boolean var3) { - ArchiveDisk var4 = null; // L: 2297 - if (JagexCache.JagexCache_dat2File != null) { // L: 2298 - var4 = new ArchiveDisk(var0, JagexCache.JagexCache_dat2File, JagexCache.JagexCache_idxFiles[var0], 1000000); + static final void method2350(int var0, int var1, int var2) { + int var3; + for (var3 = 0; var3 < 8; ++var3) { + for (int var4 = 0; var4 < 8; ++var4) { + Tiles.Tiles_heights[var0][var3 + var1][var4 + var2] = 0; + } + } + + if (var1 > 0) { + for (var3 = 1; var3 < 8; ++var3) { + Tiles.Tiles_heights[var0][var1][var3 + var2] = Tiles.Tiles_heights[var0][var1 - 1][var3 + var2]; + } + } + + if (var2 > 0) { + for (var3 = 1; var3 < 8; ++var3) { + Tiles.Tiles_heights[var0][var3 + var1][var2] = Tiles.Tiles_heights[var0][var3 + var1][var2 - 1]; + } + } + + if (var1 > 0 && Tiles.Tiles_heights[var0][var1 - 1][var2] != 0) { + Tiles.Tiles_heights[var0][var1][var2] = Tiles.Tiles_heights[var0][var1 - 1][var2]; + } else if (var2 > 0 && Tiles.Tiles_heights[var0][var1][var2 - 1] != 0) { + Tiles.Tiles_heights[var0][var1][var2] = Tiles.Tiles_heights[var0][var1][var2 - 1]; + } else if (var1 > 0 && var2 > 0 && Tiles.Tiles_heights[var0][var1 - 1][var2 - 1] != 0) { + Tiles.Tiles_heights[var0][var1][var2] = Tiles.Tiles_heights[var0][var1 - 1][var2 - 1]; } - return new Archive(var4, GrandExchangeOfferWorldComparator.masterDisk, var0, var1, var2, var3); // L: 2299 } } diff --git a/runescape-client/src/main/java/RouteStrategy.java b/runescape-client/src/main/java/RouteStrategy.java index 86bbc38b5b..7ecb09e092 100644 --- a/runescape-client/src/main/java/RouteStrategy.java +++ b/runescape-client/src/main/java/RouteStrategy.java @@ -4,42 +4,841 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gm") +@ObfuscatedName("gz") @Implements("RouteStrategy") public abstract class RouteStrategy { - @ObfuscatedName("f") + @ObfuscatedName("qh") @ObfuscatedGetter( - intValue = 963104289 + intValue = -859591296 + ) + static int field2124; + @ObfuscatedName("h") + @ObfuscatedGetter( + intValue = -1899690821 ) @Export("approxDestinationX") public int approxDestinationX; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 1923677397 + intValue = 1293114999 ) @Export("approxDestinationY") public int approxDestinationY; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 1292742065 + intValue = 1335731435 ) @Export("approxDestinationSizeX") public int approxDestinationSizeX; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -1447501741 + intValue = -218891237 ) @Export("approxDestinationSizeY") public int approxDestinationSizeY; protected RouteStrategy() { - } // L: 9 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(IIILfh;I)Z", - garbageValue = "-1510519179" + descriptor = "(IIILfo;B)Z", + garbageValue = "104" ) @Export("hasArrived") - protected abstract boolean hasArrived(int var1, int var2, int var3, CollisionMap var4); + public abstract boolean hasArrived(int var1, int var2, int var3, CollisionMap var4); + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Lhu;I)V", + garbageValue = "747025369" + ) + public static void method3643(Huffman var0) { + class219.huffman = var0; + } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(II)Ljv;", + garbageValue = "1923247344" + ) + public static FloorOverlayDefinition method3648(int var0) { + FloorOverlayDefinition var1 = (FloorOverlayDefinition)FloorOverlayDefinition.FloorOverlayDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = FloorOverlayDefinition.FloorOverlayDefinition_archive.takeFile(4, var0); + var1 = new FloorOverlayDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2), var0); + } + + var1.postDecode(); + FloorOverlayDefinition.FloorOverlayDefinition_cached.put(var1, (long)var0); + return var1; + } + } + + @ObfuscatedName("hy") + @ObfuscatedSignature( + descriptor = "(B)Z", + garbageValue = "16" + ) + static boolean method3649() { + return (Client.drawPlayerNames & 2) != 0; + } + + @ObfuscatedName("il") + @ObfuscatedSignature( + descriptor = "(IIIILjava/lang/String;Ljava/lang/String;III)V", + garbageValue = "-824309681" + ) + @Export("menuAction") + static final void menuAction(int var0, int var1, int var2, int var3, String var4, String var5, int var6, int var7) { + if (var2 >= 2000) { + var2 -= 2000; + } + + PacketBufferNode var8; + if (var2 == 1) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2279, Client.packetWriter.isaacCipher); + var8.packetBuffer.method5578(WorldMapEvent.selectedItemId); + var8.packetBuffer.method5578(class41.baseY * 64 + var1); + var8.packetBuffer.method5578(ChatChannel.selectedItemSlot); + var8.packetBuffer.writeShortLE(NetFileRequest.baseX * 64 + var0); + var8.packetBuffer.writeInt(WorldMapLabelSize.selectedItemWidget); + var8.packetBuffer.writeShort(var3); + var8.packetBuffer.writeIntME(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + Client.packetWriter.addNode(var8); + } else if (var2 == 2) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2237, Client.packetWriter.isaacCipher); + var8.packetBuffer.method5739(NetFileRequest.baseX * 64 + var0); + var8.packetBuffer.writeShort(Client.selectedSpellChildIndex); + var8.packetBuffer.writeShort(class41.baseY * 64 + var1); + var8.packetBuffer.writeInt(MouseHandler.selectedSpellWidget); + var8.packetBuffer.method5568(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var8.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var8); + } else if (var2 == 3) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2293, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShortLE(NetFileRequest.baseX * 64 + var0); + var8.packetBuffer.writeByte(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var8.packetBuffer.writeShort(class41.baseY * 64 + var1); + var8.packetBuffer.writeShortLE(var3); + Client.packetWriter.addNode(var8); + } else if (var2 == 4) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2310, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShort(var3); + var8.packetBuffer.method5739(NetFileRequest.baseX * 64 + var0); + var8.packetBuffer.method5569(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var8.packetBuffer.method5578(class41.baseY * 64 + var1); + Client.packetWriter.addNode(var8); + } else if (var2 == 5) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2267, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShortLE(class41.baseY * 64 + var1); + var8.packetBuffer.method5569(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var8.packetBuffer.method5739(var3); + var8.packetBuffer.method5578(NetFileRequest.baseX * 64 + var0); + Client.packetWriter.addNode(var8); + } else if (var2 == 6) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2324, Client.packetWriter.isaacCipher); + var8.packetBuffer.method5578(class41.baseY * 64 + var1); + var8.packetBuffer.method5578(var3); + var8.packetBuffer.method5578(NetFileRequest.baseX * 64 + var0); + var8.packetBuffer.method5569(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + Client.packetWriter.addNode(var8); + } else { + PacketBufferNode var9; + NPC var13; + if (var2 == 7) { + var13 = Client.npcs[var3]; + if (var13 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2258, Client.packetWriter.isaacCipher); + var9.packetBuffer.method5588(WorldMapLabelSize.selectedItemWidget); + var9.packetBuffer.writeShortLE(var3); + var9.packetBuffer.method5739(ChatChannel.selectedItemSlot); + var9.packetBuffer.method5569(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var9.packetBuffer.writeShort(WorldMapEvent.selectedItemId); + Client.packetWriter.addNode(var9); + } + } else if (var2 == 8) { + var13 = Client.npcs[var3]; + if (var13 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2274, Client.packetWriter.isaacCipher); + var9.packetBuffer.method5739(var3); + var9.packetBuffer.writeShortLE(Client.selectedSpellChildIndex); + var9.packetBuffer.method5587(MouseHandler.selectedSpellWidget); + var9.packetBuffer.method5568(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + Client.packetWriter.addNode(var9); + } + } else if (var2 == 9) { + var13 = Client.npcs[var3]; + if (var13 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2262, Client.packetWriter.isaacCipher); + var9.packetBuffer.method5578(var3); + var9.packetBuffer.writeIntME(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + Client.packetWriter.addNode(var9); + } + } else if (var2 == 10) { + var13 = Client.npcs[var3]; + if (var13 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2246, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeShortLE(var3); + var9.packetBuffer.writeIntME(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + Client.packetWriter.addNode(var9); + } + } else if (var2 == 11) { + var13 = Client.npcs[var3]; + if (var13 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2236, Client.packetWriter.isaacCipher); + var9.packetBuffer.method5568(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var9.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var9); + } + } else if (var2 == 12) { + var13 = Client.npcs[var3]; + if (var13 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2309, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeIntME(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var9.packetBuffer.method5578(var3); + Client.packetWriter.addNode(var9); + } + } else if (var2 == 13) { + var13 = Client.npcs[var3]; + if (var13 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2276, Client.packetWriter.isaacCipher); + var9.packetBuffer.method5569(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var9.packetBuffer.method5739(var3); + Client.packetWriter.addNode(var9); + } + } else { + Player var15; + if (var2 == 14) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2283, Client.packetWriter.isaacCipher); + var9.packetBuffer.method5569(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var9.packetBuffer.method5588(WorldMapLabelSize.selectedItemWidget); + var9.packetBuffer.writeShortLE(ChatChannel.selectedItemSlot); + var9.packetBuffer.method5739(var3); + var9.packetBuffer.writeShort(WorldMapEvent.selectedItemId); + Client.packetWriter.addNode(var9); + } + } else if (var2 == 15) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2256, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeShort(var3); + var9.packetBuffer.method5568(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var9.packetBuffer.method5739(Client.selectedSpellChildIndex); + var9.packetBuffer.writeInt(MouseHandler.selectedSpellWidget); + Client.packetWriter.addNode(var9); + } + } else if (var2 == 16) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2263, Client.packetWriter.isaacCipher); + var8.packetBuffer.method5587(WorldMapLabelSize.selectedItemWidget); + var8.packetBuffer.writeShortLE(NetFileRequest.baseX * 64 + var0); + var8.packetBuffer.method5739(WorldMapEvent.selectedItemId); + var8.packetBuffer.method5739(class41.baseY * 64 + var1); + var8.packetBuffer.method5578(ChatChannel.selectedItemSlot); + var8.packetBuffer.writeShortLE(var3); + var8.packetBuffer.writeByte(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + Client.packetWriter.addNode(var8); + } else if (var2 == 17) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2281, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShortLE(class41.baseY * 64 + var1); + var8.packetBuffer.writeShortLE(NetFileRequest.baseX * 64 + var0); + var8.packetBuffer.writeShortLE(Client.selectedSpellChildIndex); + var8.packetBuffer.method5578(var3); + var8.packetBuffer.writeByte(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var8.packetBuffer.method5588(MouseHandler.selectedSpellWidget); + Client.packetWriter.addNode(var8); + } else if (var2 == 18) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2311, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShort(NetFileRequest.baseX * 64 + var0); + var8.packetBuffer.writeShort(var3); + var8.packetBuffer.writeShort(class41.baseY * 64 + var1); + var8.packetBuffer.method5569(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + Client.packetWriter.addNode(var8); + } else if (var2 == 19) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2317, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShort(class41.baseY * 64 + var1); + var8.packetBuffer.writeIntME(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var8.packetBuffer.method5739(var3); + var8.packetBuffer.writeShort(NetFileRequest.baseX * 64 + var0); + Client.packetWriter.addNode(var8); + } else if (var2 == 20) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2254, Client.packetWriter.isaacCipher); + var8.packetBuffer.method5578(class41.baseY * 64 + var1); + var8.packetBuffer.method5568(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var8.packetBuffer.method5578(NetFileRequest.baseX * 64 + var0); + var8.packetBuffer.method5739(var3); + Client.packetWriter.addNode(var8); + } else if (var2 == 21) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2248, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShort(NetFileRequest.baseX * 64 + var0); + var8.packetBuffer.method5578(var3); + var8.packetBuffer.writeShortLE(class41.baseY * 64 + var1); + var8.packetBuffer.writeByte(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + Client.packetWriter.addNode(var8); + } else if (var2 == 22) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2305, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShort(var3); + var8.packetBuffer.method5568(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var8.packetBuffer.writeShort(class41.baseY * 64 + var1); + var8.packetBuffer.writeShortLE(NetFileRequest.baseX * 64 + var0); + Client.packetWriter.addNode(var8); + } else if (var2 == 23) { + if (Client.isMenuOpen) { + ArchiveLoader.scene.setViewportWalking(); + } else { + ArchiveLoader.scene.menuOpen(GameObject.Client_plane, var0, var1, true); + } + } else { + PacketBufferNode var12; + Widget var16; + if (var2 == 24) { + var16 = CollisionMap.getWidget(var1); + boolean var11 = true; + if (var16.contentType > 0) { + var11 = HealthBarUpdate.method1825(var16); + } + + if (var11) { + var12 = ItemContainer.getPacketBufferNode(ClientPacket.field2287, Client.packetWriter.isaacCipher); + var12.packetBuffer.writeInt(var1); + Client.packetWriter.addNode(var12); + } + } else { + if (var2 == 25) { + var16 = class92.getWidgetChild(var1, var0); + if (var16 != null) { + WorldMapManager.Widget_runOnTargetLeave(); + class194.selectSpell(var1, var0, ServerPacket.Widget_unpackTargetMask(FaceNormal.getWidgetFlags(var16)), var16.itemId); + Client.isItemSelected = 0; + Client.selectedSpellActionName = StudioGame.Widget_getSpellActionName(var16); + if (Client.selectedSpellActionName == null) { + Client.selectedSpellActionName = "null"; + } + + if (var16.isIf3) { + Client.selectedSpellName = var16.dataText + class23.colorStartTag(16777215); + } else { + Client.selectedSpellName = class23.colorStartTag(65280) + var16.spellName + class23.colorStartTag(16777215); + } + } + + return; + } + + if (var2 == 26) { + ServerPacket.method3664(); + } else { + int var10; + Widget var14; + if (var2 == 28) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2287, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeInt(var1); + Client.packetWriter.addNode(var8); + var14 = CollisionMap.getWidget(var1); + if (var14.cs1Instructions != null && var14.cs1Instructions[0][0] == 5) { + var10 = var14.cs1Instructions[0][1]; + Varps.Varps_main[var10] = 1 - Varps.Varps_main[var10]; + Script.changeGameOptions(var10); + } + } else if (var2 == 29) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2287, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeInt(var1); + Client.packetWriter.addNode(var8); + var14 = CollisionMap.getWidget(var1); + if (var14.cs1Instructions != null && var14.cs1Instructions[0][0] == 5) { + var10 = var14.cs1Instructions[0][1]; + if (Varps.Varps_main[var10] != var14.cs1ComparisonValues[0]) { + Varps.Varps_main[var10] = var14.cs1ComparisonValues[0]; + Script.changeGameOptions(var10); + } + } + } else if (var2 == 30) { + if (Client.meslayerContinueWidget == null) { + DynamicObject.resumePauseWidget(var1, var0); + Client.meslayerContinueWidget = class92.getWidgetChild(var1, var0); + CollisionMap.invalidateWidget(Client.meslayerContinueWidget); + } + } else if (var2 == 31) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2295, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShort(WorldMapEvent.selectedItemId); + var8.packetBuffer.writeShort(var3); + var8.packetBuffer.writeShort(ChatChannel.selectedItemSlot); + var8.packetBuffer.method5588(WorldMapLabelSize.selectedItemWidget); + var8.packetBuffer.writeShort(var0); + var8.packetBuffer.writeInt(var1); + Client.packetWriter.addNode(var8); + Client.field754 = 0; + NPC.field1131 = CollisionMap.getWidget(var1); + Client.field881 = var0; + } else if (var2 == 32) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2327, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShort(var3); + var8.packetBuffer.writeShort(var0); + var8.packetBuffer.method5578(Client.selectedSpellChildIndex); + var8.packetBuffer.method5588(MouseHandler.selectedSpellWidget); + var8.packetBuffer.method5587(var1); + Client.packetWriter.addNode(var8); + Client.field754 = 0; + NPC.field1131 = CollisionMap.getWidget(var1); + Client.field881 = var0; + } else if (var2 == 33) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2284, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShort(var0); + var8.packetBuffer.method5587(var1); + var8.packetBuffer.method5578(var3); + Client.packetWriter.addNode(var8); + Client.field754 = 0; + NPC.field1131 = CollisionMap.getWidget(var1); + Client.field881 = var0; + } else if (var2 == 34) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2325, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShort(var0); + var8.packetBuffer.method5739(var3); + var8.packetBuffer.method5587(var1); + Client.packetWriter.addNode(var8); + Client.field754 = 0; + NPC.field1131 = CollisionMap.getWidget(var1); + Client.field881 = var0; + } else if (var2 == 35) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2259, Client.packetWriter.isaacCipher); + var8.packetBuffer.method5739(var0); + var8.packetBuffer.method5578(var3); + var8.packetBuffer.method5587(var1); + Client.packetWriter.addNode(var8); + Client.field754 = 0; + NPC.field1131 = CollisionMap.getWidget(var1); + Client.field881 = var0; + } else if (var2 == 36) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2265, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShortLE(var0); + var8.packetBuffer.method5588(var1); + var8.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var8); + Client.field754 = 0; + NPC.field1131 = CollisionMap.getWidget(var1); + Client.field881 = var0; + } else if (var2 == 37) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2229, Client.packetWriter.isaacCipher); + var8.packetBuffer.method5718(var1); + var8.packetBuffer.method5739(var0); + var8.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var8); + Client.field754 = 0; + NPC.field1131 = CollisionMap.getWidget(var1); + Client.field881 = var0; + } else { + if (var2 == 38) { + WorldMapManager.Widget_runOnTargetLeave(); + var16 = CollisionMap.getWidget(var1); + Client.isItemSelected = 1; + ChatChannel.selectedItemSlot = var0; + WorldMapLabelSize.selectedItemWidget = var1; + WorldMapEvent.selectedItemId = var3; + CollisionMap.invalidateWidget(var16); + Client.selectedItemName = class23.colorStartTag(16748608) + SecureRandomCallable.ItemDefinition_get(var3).name + class23.colorStartTag(16777215); + if (Client.selectedItemName == null) { + Client.selectedItemName = "null"; + } + + return; + } + + if (var2 == 39) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2330, Client.packetWriter.isaacCipher); + var8.packetBuffer.method5578(var3); + var8.packetBuffer.method5718(var1); + var8.packetBuffer.method5578(var0); + Client.packetWriter.addNode(var8); + Client.field754 = 0; + NPC.field1131 = CollisionMap.getWidget(var1); + Client.field881 = var0; + } else if (var2 == 40) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2264, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShort(var3); + var8.packetBuffer.method5739(var0); + var8.packetBuffer.writeInt(var1); + Client.packetWriter.addNode(var8); + Client.field754 = 0; + NPC.field1131 = CollisionMap.getWidget(var1); + Client.field881 = var0; + } else if (var2 == 41) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2294, Client.packetWriter.isaacCipher); + var8.packetBuffer.method5578(var3); + var8.packetBuffer.writeInt(var1); + var8.packetBuffer.method5739(var0); + Client.packetWriter.addNode(var8); + Client.field754 = 0; + NPC.field1131 = CollisionMap.getWidget(var1); + Client.field881 = var0; + } else if (var2 == 42) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2315, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShortLE(var0); + var8.packetBuffer.writeShortLE(var3); + var8.packetBuffer.method5587(var1); + Client.packetWriter.addNode(var8); + Client.field754 = 0; + NPC.field1131 = CollisionMap.getWidget(var1); + Client.field881 = var0; + } else if (var2 == 43) { + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2257, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShortLE(var3); + var8.packetBuffer.writeShortLE(var0); + var8.packetBuffer.method5588(var1); + Client.packetWriter.addNode(var8); + Client.field754 = 0; + NPC.field1131 = CollisionMap.getWidget(var1); + Client.field881 = var0; + } else if (var2 == 44) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2260, Client.packetWriter.isaacCipher); + var9.packetBuffer.method5568(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var9.packetBuffer.writeShortLE(var3); + Client.packetWriter.addNode(var9); + } + } else if (var2 == 45) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2238, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeShortLE(var3); + var9.packetBuffer.method5569(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + Client.packetWriter.addNode(var9); + } + } else if (var2 == 46) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2278, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeShort(var3); + var9.packetBuffer.method5568(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + Client.packetWriter.addNode(var9); + } + } else if (var2 == 47) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2312, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeShortLE(var3); + var9.packetBuffer.method5568(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + Client.packetWriter.addNode(var9); + } + } else if (var2 == 48) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2253, Client.packetWriter.isaacCipher); + var9.packetBuffer.method5569(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var9.packetBuffer.method5578(var3); + Client.packetWriter.addNode(var9); + } + } else if (var2 == 49) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2242, Client.packetWriter.isaacCipher); + var9.packetBuffer.method5568(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var9.packetBuffer.method5578(var3); + Client.packetWriter.addNode(var9); + } + } else if (var2 == 50) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2268, Client.packetWriter.isaacCipher); + var9.packetBuffer.method5578(var3); + var9.packetBuffer.writeIntME(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + Client.packetWriter.addNode(var9); + } + } else if (var2 == 51) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2282, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeIntME(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var9.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var9); + } + } else if (var2 != 57 && var2 != 1007) { + if (var2 == 58) { + var16 = class92.getWidgetChild(var1, var0); + if (var16 != null) { + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2296, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeInt(MouseHandler.selectedSpellWidget); + var9.packetBuffer.writeShort(var0); + var9.packetBuffer.method5578(Client.field836); + var9.packetBuffer.writeShortLE(Client.selectedSpellChildIndex); + var9.packetBuffer.method5739(var16.itemId); + var9.packetBuffer.method5718(var1); + Client.packetWriter.addNode(var9); + } + } else if (var2 == 1001) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2271, Client.packetWriter.isaacCipher); + var8.packetBuffer.method5569(KeyHandler.KeyHandler_pressedKeys[82] ? 1 : 0); + var8.packetBuffer.method5739(class41.baseY * 64 + var1); + var8.packetBuffer.method5739(NetFileRequest.baseX * 64 + var0); + var8.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var8); + } else if (var2 == 1002) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2321, Client.packetWriter.isaacCipher); + var8.packetBuffer.method5739(var3); + Client.packetWriter.addNode(var8); + } else if (var2 == 1003) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + var13 = Client.npcs[var3]; + if (var13 != null) { + NPCDefinition var17 = var13.definition; + if (var17.transforms != null) { + var17 = var17.transform(); + } + + if (var17 != null) { + var12 = ItemContainer.getPacketBufferNode(ClientPacket.field2288, Client.packetWriter.isaacCipher); + var12.packetBuffer.method5739(var17.id); + Client.packetWriter.addNode(var12); + } + } + } else if (var2 == 1004) { + Client.mouseCrossX = var6; + Client.mouseCrossY = var7; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2313, Client.packetWriter.isaacCipher); + var8.packetBuffer.method5578(var3); + Client.packetWriter.addNode(var8); + } else if (var2 == 1005) { + var16 = CollisionMap.getWidget(var1); + if (var16 != null && var16.itemQuantities[var0] >= 100000) { + class234.addGameMessage(27, "", var16.itemQuantities[var0] + " x " + SecureRandomCallable.ItemDefinition_get(var3).name); + } else { + var9 = ItemContainer.getPacketBufferNode(ClientPacket.field2313, Client.packetWriter.isaacCipher); + var9.packetBuffer.method5578(var3); + Client.packetWriter.addNode(var9); + } + + Client.field754 = 0; + NPC.field1131 = CollisionMap.getWidget(var1); + Client.field881 = var0; + } else if (var2 == 1008 || var2 == 1009 || var2 == 1010 || var2 == 1011 || var2 == 1012) { + WorldMapRectangle.worldMap.worldMapMenuAction(var2, var3, new Coord(var0), new Coord(var1)); + } + } else { + var16 = class92.getWidgetChild(var1, var0); + if (var16 != null) { + class3.widgetDefaultMenuAction(var3, var1, var0, var16.itemId, var5); + } + } + } + } + } + } + } + } + + if (Client.isItemSelected != 0) { + Client.isItemSelected = 0; + CollisionMap.invalidateWidget(CollisionMap.getWidget(WorldMapLabelSize.selectedItemWidget)); + } + + if (Client.isSpellSelected) { + WorldMapManager.Widget_runOnTargetLeave(); + } + + if (NPC.field1131 != null && Client.field754 == 0) { + CollisionMap.invalidateWidget(NPC.field1131); + } + + } } diff --git a/runescape-client/src/main/java/RunException.java b/runescape-client/src/main/java/RunException.java index 0a861d9e59..53c583a3b8 100644 --- a/runescape-client/src/main/java/RunException.java +++ b/runescape-client/src/main/java/RunException.java @@ -1,34 +1,33 @@ import java.applet.Applet; -import java.util.concurrent.ScheduledExecutorService; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("mp") +@ObfuscatedName("mg") @Implements("RunException") public class RunException extends RuntimeException { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("RunException_applet") public static Applet RunException_applet; - @ObfuscatedName("l") + @ObfuscatedName("v") + @Export("localPlayerName") + public static String localPlayerName; + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 303873541 + intValue = -485798855 ) @Export("RunException_revision") public static int RunException_revision; - @ObfuscatedName("c") - @Export("soundSystemExecutor") - static ScheduledExecutorService soundSystemExecutor; - @ObfuscatedName("z") + @ObfuscatedName("j") @Export("message") String message; - @ObfuscatedName("q") + @ObfuscatedName("n") @Export("throwable") Throwable throwable; RunException(Throwable var1, String var2) { - this.message = var2; // L: 27 - this.throwable = var1; // L: 28 - } // L: 29 + this.message = var2; + this.throwable = var1; + } } diff --git a/runescape-client/src/main/java/Scene.java b/runescape-client/src/main/java/Scene.java index 220ad8b799..2681f9590a 100644 --- a/runescape-client/src/main/java/Scene.java +++ b/runescape-client/src/main/java/Scene.java @@ -3,962 +3,956 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ef") +@ObfuscatedName("eo") @Implements("Scene") public class Scene { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("Scene_isLowDetail") public static boolean Scene_isLowDetail; - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("tileUpdateCount") static int tileUpdateCount; - @ObfuscatedName("r") + @ObfuscatedName("f") @Export("Scene_plane") static int Scene_plane; - @ObfuscatedName("y") + @ObfuscatedName("a") @Export("Scene_drawnCount") static int Scene_drawnCount; - @ObfuscatedName("s") + @ObfuscatedName("b") @Export("Scene_cameraXTileMin") static int Scene_cameraXTileMin; - @ObfuscatedName("j") + @ObfuscatedName("y") @Export("Scene_cameraXTileMax") static int Scene_cameraXTileMax; - @ObfuscatedName("w") + @ObfuscatedName("r") @Export("Scene_cameraYTileMin") static int Scene_cameraYTileMin; - @ObfuscatedName("v") + @ObfuscatedName("q") @Export("Scene_cameraYTileMax") static int Scene_cameraYTileMax; - @ObfuscatedName("d") + @ObfuscatedName("g") @Export("Scene_cameraXTile") static int Scene_cameraXTile; - @ObfuscatedName("a") + @ObfuscatedName("s") @Export("Scene_cameraYTile") static int Scene_cameraYTile; - @ObfuscatedName("g") + @ObfuscatedName("o") @Export("Scene_cameraX") static int Scene_cameraX; - @ObfuscatedName("h") + @ObfuscatedName("k") @Export("Scene_cameraY") static int Scene_cameraY; - @ObfuscatedName("i") + @ObfuscatedName("d") @Export("Scene_cameraZ") static int Scene_cameraZ; - @ObfuscatedName("ab") + @ObfuscatedName("an") @Export("Scene_cameraPitchSine") static int Scene_cameraPitchSine; - @ObfuscatedName("ac") + @ObfuscatedName("aj") @Export("Scene_cameraPitchCosine") static int Scene_cameraPitchCosine; - @ObfuscatedName("ao") + @ObfuscatedName("ax") @Export("Scene_cameraYawSine") static int Scene_cameraYawSine; - @ObfuscatedName("af") + @ObfuscatedName("ag") @Export("Scene_cameraYawCosine") static int Scene_cameraYawCosine; - @ObfuscatedName("av") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "[Lel;" ) @Export("gameObjects") static GameObject[] gameObjects; - @ObfuscatedName("ar") + @ObfuscatedName("as") @Export("checkClick") static boolean checkClick; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("Scene_selectedPlane") static int Scene_selectedPlane; - @ObfuscatedName("ah") + @ObfuscatedName("ac") @Export("Scene_selectedScreenX") static int Scene_selectedScreenX; - @ObfuscatedName("az") + @ObfuscatedName("ak") @Export("Scene_selectedScreenY") static int Scene_selectedScreenY; - @ObfuscatedName("ak") + @ObfuscatedName("av") @Export("Scene_selectedX") public static int Scene_selectedX; - @ObfuscatedName("au") + @ObfuscatedName("aq") @Export("Scene_selectedY") public static int Scene_selectedY; - @ObfuscatedName("ai") + @ObfuscatedName("ah") @Export("viewportWalking") static boolean viewportWalking; - @ObfuscatedName("aq") + @ObfuscatedName("ao") @Export("Scene_planesCount") static int Scene_planesCount; - @ObfuscatedName("aw") + @ObfuscatedName("ab") @Export("Scene_planeOccluderCounts") static int[] Scene_planeOccluderCounts; - @ObfuscatedName("an") + @ObfuscatedName("aw") @ObfuscatedSignature( descriptor = "[[Led;" ) @Export("Scene_planeOccluders") static Occluder[][] Scene_planeOccluders; - @ObfuscatedName("am") + @ObfuscatedName("ap") @Export("Scene_currentOccludersCount") static int Scene_currentOccludersCount; - @ObfuscatedName("aa") + @ObfuscatedName("ad") @ObfuscatedSignature( descriptor = "[Led;" ) @Export("Scene_currentOccluders") static Occluder[] Scene_currentOccluders; - @ObfuscatedName("at") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "Lja;" + descriptor = "Ljp;" ) @Export("Scene_tilesDeque") static NodeDeque Scene_tilesDeque; - @ObfuscatedName("as") - static final int[] field1874; - @ObfuscatedName("aj") - static final int[] field1875; - @ObfuscatedName("ae") - static final int[] field1876; @ObfuscatedName("al") - static final int[] field1851; - @ObfuscatedName("ap") - static final int[] field1878; - @ObfuscatedName("ad") - static final int[] field1828; - @ObfuscatedName("bb") - static final int[] field1856; - @ObfuscatedName("bn") + static final int[] field1826; + @ObfuscatedName("ay") + static final int[] field1871; + @ObfuscatedName("af") + static final int[] field1829; + @ObfuscatedName("ar") + static final int[] field1873; + @ObfuscatedName("az") + static final int[] field1866; + @ObfuscatedName("at") + static final int[] field1875; + @ObfuscatedName("bh") + static final int[] field1876; + @ObfuscatedName("bz") @Export("visibilityMap") static boolean[][][][] visibilityMap; - @ObfuscatedName("bo") + @ObfuscatedName("bm") @Export("visibleTiles") static boolean[][] visibleTiles; - @ObfuscatedName("be") + @ObfuscatedName("bn") @Export("Scene_viewportXCenter") static int Scene_viewportXCenter; - @ObfuscatedName("ba") + @ObfuscatedName("bd") @Export("Scene_viewportYCenter") static int Scene_viewportYCenter; - @ObfuscatedName("bt") + @ObfuscatedName("bc") @Export("Scene_viewportXMin") static int Scene_viewportXMin; - @ObfuscatedName("bw") + @ObfuscatedName("bi") @Export("Scene_viewportYMin") static int Scene_viewportYMin; - @ObfuscatedName("bm") + @ObfuscatedName("bk") @Export("Scene_viewportXMax") static int Scene_viewportXMax; - @ObfuscatedName("by") + @ObfuscatedName("bw") @Export("Scene_viewportYMax") static int Scene_viewportYMax; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("planes") int planes; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("xSize") int xSize; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("ySize") int ySize; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("tileHeights") int[][][] tileHeights; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "[[[Leo;" + descriptor = "[[[Lec;" ) @Export("tiles") Tile[][][] tiles; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("minPlane") int minPlane; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("tempGameObjectsCount") int tempGameObjectsCount; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( descriptor = "[Lel;" ) @Export("tempGameObjects") GameObject[] tempGameObjects; - @ObfuscatedName("t") - int[][][] field1837; - @ObfuscatedName("bj") + @ObfuscatedName("z") + int[][][] field1833; + @ObfuscatedName("bx") @Export("tileShape2D") int[][] tileShape2D; - @ObfuscatedName("bl") + @ObfuscatedName("bf") @Export("tileRotation2D") int[][] tileRotation2D; static { - Scene_isLowDetail = true; // L: 8 - tileUpdateCount = 0; // L: 22 - Scene_plane = 0; // L: 23 - gameObjects = new GameObject[100]; // L: 38 - checkClick = false; // L: 39 - Scene_selectedPlane = 0; // L: 40 - Scene_selectedScreenX = 0; // L: 41 - Scene_selectedScreenY = 0; // L: 42 - Scene_selectedX = -1; // L: 43 - Scene_selectedY = -1; // L: 44 - viewportWalking = false; // L: 45 - Scene_planesCount = 4; // L: 48 - Scene_planeOccluderCounts = new int[Scene_planesCount]; // L: 49 - Scene_planeOccluders = new Occluder[Scene_planesCount][500]; // L: 50 - Scene_currentOccludersCount = 0; // L: 51 - Scene_currentOccluders = new Occluder[500]; // L: 52 - Scene_tilesDeque = new NodeDeque(); // L: 53 - field1874 = new int[]{19, 55, 38, 155, 255, 110, 137, 205, 76}; // L: 54 - field1875 = new int[]{160, 192, 80, 96, 0, 144, 80, 48, 160}; // L: 55 - field1876 = new int[]{76, 8, 137, 4, 0, 1, 38, 2, 19}; // L: 56 - field1851 = new int[]{0, 0, 2, 0, 0, 2, 1, 1, 0}; // L: 57 - field1878 = new int[]{2, 0, 0, 2, 0, 0, 0, 4, 4}; // L: 58 - field1828 = new int[]{0, 4, 4, 8, 0, 0, 8, 0, 0}; // L: 59 - field1856 = new int[]{1, 1, 0, 0, 0, 8, 0, 0, 8}; // L: 60 - visibilityMap = new boolean[8][32][51][51]; // L: 86 + Scene_isLowDetail = true; + tileUpdateCount = 0; + Scene_plane = 0; + gameObjects = new GameObject[100]; + checkClick = false; + Scene_selectedPlane = 0; + Scene_selectedScreenX = 0; + Scene_selectedScreenY = 0; + Scene_selectedX = -1; + Scene_selectedY = -1; + viewportWalking = false; + Scene_planesCount = 4; + Scene_planeOccluderCounts = new int[Scene_planesCount]; + Scene_planeOccluders = new Occluder[Scene_planesCount][500]; + Scene_currentOccludersCount = 0; + Scene_currentOccluders = new Occluder[500]; + Scene_tilesDeque = new NodeDeque(); + field1826 = new int[]{19, 55, 38, 155, 255, 110, 137, 205, 76}; + field1871 = new int[]{160, 192, 80, 96, 0, 144, 80, 48, 160}; + field1829 = new int[]{76, 8, 137, 4, 0, 1, 38, 2, 19}; + field1873 = new int[]{0, 0, 2, 0, 0, 2, 1, 1, 0}; + field1866 = new int[]{2, 0, 0, 2, 0, 0, 0, 4, 4}; + field1875 = new int[]{0, 4, 4, 8, 0, 0, 8, 0, 0}; + field1876 = new int[]{1, 1, 0, 0, 0, 8, 0, 0, 8}; + visibilityMap = new boolean[8][32][51][51]; } public Scene(int var1, int var2, int var3, int[][][] var4) { - this.minPlane = 0; // L: 14 - this.tempGameObjectsCount = 0; // L: 15 - this.tempGameObjects = new GameObject[5000]; // L: 16 - this.tileShape2D = new int[][]{{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1}, {1, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1}, {0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0}, {1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1}, {1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1}}; // L: 65 - this.tileRotation2D = new int[][]{{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}, {12, 8, 4, 0, 13, 9, 5, 1, 14, 10, 6, 2, 15, 11, 7, 3}, {15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0}, {3, 7, 11, 15, 2, 6, 10, 14, 1, 5, 9, 13, 0, 4, 8, 12}}; // L: 80 - this.planes = var1; // L: 96 - this.xSize = var2; // L: 97 - this.ySize = var3; // L: 98 - this.tiles = new Tile[var1][var2][var3]; // L: 99 - this.field1837 = new int[var1][var2 + 1][var3 + 1]; // L: 100 - this.tileHeights = var4; // L: 101 - this.clear(); // L: 102 - } // L: 103 + this.minPlane = 0; + this.tempGameObjectsCount = 0; + this.tempGameObjects = new GameObject[5000]; + this.tileShape2D = new int[][]{{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1}, {1, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1}, {0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0}, {1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1}, {1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1}}; + this.tileRotation2D = new int[][]{{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}, {12, 8, 4, 0, 13, 9, 5, 1, 14, 10, 6, 2, 15, 11, 7, 3}, {15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0}, {3, 7, 11, 15, 2, 6, 10, 14, 1, 5, 9, 13, 0, 4, 8, 12}}; + this.planes = var1; + this.xSize = var2; + this.ySize = var3; + this.tiles = new Tile[var1][var2][var3]; + this.field1833 = new int[var1][var2 + 1][var3 + 1]; + this.tileHeights = var4; + this.clear(); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("clear") public void clear() { int var1; int var2; - for (var1 = 0; var1 < this.planes; ++var1) { // L: 106 - for (var2 = 0; var2 < this.xSize; ++var2) { // L: 107 - for (int var3 = 0; var3 < this.ySize; ++var3) { // L: 108 + for (var1 = 0; var1 < this.planes; ++var1) { + for (var2 = 0; var2 < this.xSize; ++var2) { + for (int var3 = 0; var3 < this.ySize; ++var3) { this.tiles[var1][var2][var3] = null; } } } - for (var1 = 0; var1 < Scene_planesCount; ++var1) { // L: 111 - for (var2 = 0; var2 < Scene_planeOccluderCounts[var1]; ++var2) { // L: 112 + for (var1 = 0; var1 < Scene_planesCount; ++var1) { + for (var2 = 0; var2 < Scene_planeOccluderCounts[var1]; ++var2) { Scene_planeOccluders[var1][var2] = null; } - Scene_planeOccluderCounts[var1] = 0; // L: 113 + Scene_planeOccluderCounts[var1] = 0; } - for (var1 = 0; var1 < this.tempGameObjectsCount; ++var1) { // L: 115 - this.tempGameObjects[var1] = null; // L: 116 + for (var1 = 0; var1 < this.tempGameObjectsCount; ++var1) { + this.tempGameObjects[var1] = null; } - this.tempGameObjectsCount = 0; // L: 118 + this.tempGameObjectsCount = 0; - for (var1 = 0; var1 < gameObjects.length; ++var1) { // L: 119 + for (var1 = 0; var1 < gameObjects.length; ++var1) { gameObjects[var1] = null; } - } // L: 120 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("init") public void init(int var1) { - this.minPlane = var1; // L: 123 + this.minPlane = var1; - for (int var2 = 0; var2 < this.xSize; ++var2) { // L: 124 - for (int var3 = 0; var3 < this.ySize; ++var3) { // L: 125 - if (this.tiles[var1][var2][var3] == null) { // L: 126 + for (int var2 = 0; var2 < this.xSize; ++var2) { + for (int var3 = 0; var3 < this.ySize; ++var3) { + if (this.tiles[var1][var2][var3] == null) { this.tiles[var1][var2][var3] = new Tile(var1, var2, var3); } } } - } // L: 129 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("setLinkBelow") public void setLinkBelow(int var1, int var2) { - Tile var3 = this.tiles[0][var1][var2]; // L: 132 + Tile var3 = this.tiles[0][var1][var2]; - for (int var4 = 0; var4 < 3; ++var4) { // L: 133 - Tile var5 = this.tiles[var4][var1][var2] = this.tiles[var4 + 1][var1][var2]; // L: 134 - if (var5 != null) { // L: 135 - --var5.plane; // L: 136 + for (int var4 = 0; var4 < 3; ++var4) { + Tile var5 = this.tiles[var4][var1][var2] = this.tiles[var4 + 1][var1][var2]; + if (var5 != null) { + --var5.plane; - for (int var6 = 0; var6 < var5.gameObjectsCount; ++var6) { // L: 137 - GameObject var7 = var5.gameObjects[var6]; // L: 138 - long var9 = var7.tag; // L: 140 - boolean var8 = KeyHandler.Entity_unpackSceneX(var9) == 2; // L: 142 - if (var8 && var7.startX == var1 && var2 == var7.startY) { // L: 144 + for (int var6 = 0; var6 < var5.gameObjectsCount; ++var6) { + GameObject var7 = var5.gameObjects[var6]; + if (PacketBufferNode.method3682(var7.tag) && var7.startX == var1 && var2 == var7.startY) { --var7.plane; } } } } - if (this.tiles[0][var1][var2] == null) { // L: 148 + if (this.tiles[0][var1][var2] == null) { this.tiles[0][var1][var2] = new Tile(0, var1, var2); } - this.tiles[0][var1][var2].linkedBelowTile = var3; // L: 149 - this.tiles[3][var1][var2] = null; // L: 150 - } // L: 151 + this.tiles[0][var1][var2].linkedBelowTile = var3; + this.tiles[3][var1][var2] = null; + } - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("setTileMinPlane") public void setTileMinPlane(int var1, int var2, int var3, int var4) { - Tile var5 = this.tiles[var1][var2][var3]; // L: 170 - if (var5 != null) { // L: 171 - this.tiles[var1][var2][var3].minPlane = var4; // L: 172 + Tile var5 = this.tiles[var1][var2][var3]; + if (var5 != null) { + this.tiles[var1][var2][var3].minPlane = var4; } - } // L: 173 + } - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("addTile") public void addTile(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18, int var19, int var20) { TilePaint var21; int var22; - if (var4 == 0) { // L: 176 - var21 = new TilePaint(var11, var12, var13, var14, -1, var19, false); // L: 177 + if (var4 == 0) { + var21 = new TilePaint(var11, var12, var13, var14, -1, var19, false); - for (var22 = var1; var22 >= 0; --var22) { // L: 178 + for (var22 = var1; var22 >= 0; --var22) { if (this.tiles[var22][var2][var3] == null) { this.tiles[var22][var2][var3] = new Tile(var22, var2, var3); } } - this.tiles[var1][var2][var3].paint = var21; // L: 179 - } else if (var4 != 1) { // L: 182 - TileModel var23 = new TileModel(var4, var5, var6, var2, var3, var7, var8, var9, var10, var11, var12, var13, var14, var15, var16, var17, var18, var19, var20); // L: 188 + this.tiles[var1][var2][var3].paint = var21; + } else if (var4 != 1) { + TileModel var23 = new TileModel(var4, var5, var6, var2, var3, var7, var8, var9, var10, var11, var12, var13, var14, var15, var16, var17, var18, var19, var20); - for (var22 = var1; var22 >= 0; --var22) { // L: 189 + for (var22 = var1; var22 >= 0; --var22) { if (this.tiles[var22][var2][var3] == null) { this.tiles[var22][var2][var3] = new Tile(var22, var2, var3); } } - this.tiles[var1][var2][var3].model = var23; // L: 190 + this.tiles[var1][var2][var3].model = var23; } else { - var21 = new TilePaint(var15, var16, var17, var18, var6, var20, var8 == var7 && var7 == var9 && var10 == var7); // L: 183 + var21 = new TilePaint(var15, var16, var17, var18, var6, var20, var8 == var7 && var7 == var9 && var10 == var7); - for (var22 = var1; var22 >= 0; --var22) { // L: 184 + for (var22 = var1; var22 >= 0; --var22) { if (this.tiles[var22][var2][var3] == null) { this.tiles[var22][var2][var3] = new Tile(var22, var2, var3); } } - this.tiles[var1][var2][var3].paint = var21; // L: 185 + this.tiles[var1][var2][var3].paint = var21; } - } // L: 180 186 191 + } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(IIIILej;JI)V" + descriptor = "(IIIILer;JI)V" ) @Export("newFloorDecoration") public void newFloorDecoration(int var1, int var2, int var3, int var4, Entity var5, long var6, int var8) { - if (var5 != null) { // L: 194 - FloorDecoration var9 = new FloorDecoration(); // L: 195 - var9.entity = var5; // L: 196 - var9.x = var2 * 128 + 64; // L: 197 - var9.y = var3 * 128 + 64; // L: 198 - var9.tileHeight = var4; // L: 199 - var9.tag = var6; // L: 200 - var9.flags = var8; // L: 201 - if (this.tiles[var1][var2][var3] == null) { // L: 202 + if (var5 != null) { + FloorDecoration var9 = new FloorDecoration(); + var9.entity = var5; + var9.x = var2 * 128 + 64; + var9.y = var3 * 128 + 64; + var9.tileHeight = var4; + var9.tag = var6; + var9.flags = var8; + if (this.tiles[var1][var2][var3] == null) { this.tiles[var1][var2][var3] = new Tile(var1, var2, var3); } - this.tiles[var1][var2][var3].floorDecoration = var9; // L: 203 + this.tiles[var1][var2][var3].floorDecoration = var9; } - } // L: 204 + } - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "(IIIILej;JLej;Lej;)V" + descriptor = "(IIIILer;JLer;Ler;)V" ) @Export("newGroundItemPile") public void newGroundItemPile(int var1, int var2, int var3, int var4, Entity var5, long var6, Entity var8, Entity var9) { - TileItemPile var10 = new TileItemPile(); // L: 207 - var10.first = var5; // L: 208 - var10.x = var2 * 128 + 64; // L: 209 - var10.y = var3 * 128 + 64; // L: 210 - var10.tileHeight = var4; // L: 211 - var10.tag = var6; // L: 212 - var10.second = var8; // L: 213 - var10.third = var9; // L: 214 - int var11 = 0; // L: 215 - Tile var12 = this.tiles[var1][var2][var3]; // L: 216 - if (var12 != null) { // L: 217 - for (int var13 = 0; var13 < var12.gameObjectsCount; ++var13) { // L: 218 - if ((var12.gameObjects[var13].flags & 256) == 256 && var12.gameObjects[var13].entity instanceof Model) { // L: 219 - Model var14 = (Model)var12.gameObjects[var13].entity; // L: 220 - var14.calculateBoundsCylinder(); // L: 221 - if (var14.height > var11) { // L: 222 + TileItemPile var10 = new TileItemPile(); + var10.first = var5; + var10.x = var2 * 128 + 64; + var10.y = var3 * 128 + 64; + var10.tileHeight = var4; + var10.tag = var6; + var10.second = var8; + var10.third = var9; + int var11 = 0; + Tile var12 = this.tiles[var1][var2][var3]; + if (var12 != null) { + for (int var13 = 0; var13 < var12.gameObjectsCount; ++var13) { + if ((var12.gameObjects[var13].flags & 256) == 256 && var12.gameObjects[var13].entity instanceof Model) { + Model var14 = (Model)var12.gameObjects[var13].entity; + var14.calculateBoundsCylinder(); + if (var14.height > var11) { var11 = var14.height; } } } } - var10.height = var11; // L: 226 + var10.height = var11; if (this.tiles[var1][var2][var3] == null) { - this.tiles[var1][var2][var3] = new Tile(var1, var2, var3); // L: 227 + this.tiles[var1][var2][var3] = new Tile(var1, var2, var3); } - this.tiles[var1][var2][var3].tileItemPile = var10; // L: 228 - } // L: 229 + this.tiles[var1][var2][var3].tileItemPile = var10; + } - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "(IIIILej;Lej;IIJI)V" + descriptor = "(IIIILer;Ler;IIJI)V" ) @Export("newBoundaryObject") public void newBoundaryObject(int var1, int var2, int var3, int var4, Entity var5, Entity var6, int var7, int var8, long var9, int var11) { - if (var5 != null || var6 != null) { // L: 232 - BoundaryObject var12 = new BoundaryObject(); // L: 233 - var12.tag = var9; // L: 234 - var12.flags = var11; // L: 235 - var12.x = var2 * 128 + 64; // L: 236 - var12.y = var3 * 128 + 64; // L: 237 - var12.tileHeight = var4; // L: 238 - var12.entity1 = var5; // L: 239 - var12.entity2 = var6; // L: 240 - var12.orientationA = var7; // L: 241 - var12.orientationB = var8; // L: 242 + if (var5 != null || var6 != null) { + BoundaryObject var12 = new BoundaryObject(); + var12.tag = var9; + var12.flags = var11; + var12.x = var2 * 128 + 64; + var12.y = var3 * 128 + 64; + var12.tileHeight = var4; + var12.entity1 = var5; + var12.entity2 = var6; + var12.orientationA = var7; + var12.orientationB = var8; for (int var13 = var1; var13 >= 0; --var13) { if (this.tiles[var13][var2][var3] == null) { - this.tiles[var13][var2][var3] = new Tile(var13, var2, var3); // L: 243 + this.tiles[var13][var2][var3] = new Tile(var13, var2, var3); } } - this.tiles[var1][var2][var3].boundaryObject = var12; // L: 244 - } - } // L: 245 - - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "(IIIILej;Lej;IIIIJI)V" - ) - @Export("newWallDecoration") - public void newWallDecoration(int var1, int var2, int var3, int var4, Entity var5, Entity var6, int var7, int var8, int var9, int var10, long var11, int var13) { - if (var5 != null) { // L: 248 - WallDecoration var14 = new WallDecoration(); // L: 249 - var14.tag = var11; // L: 250 - var14.flags = var13; // L: 251 - var14.x = var2 * 128 + 64; // L: 252 - var14.y = var3 * 128 + 64; // L: 253 - var14.tileHeight = var4; // L: 254 - var14.entity1 = var5; // L: 255 - var14.entity2 = var6; // L: 256 - var14.orientation = var7; // L: 257 - var14.orientation2 = var8; // L: 258 - var14.xOffset = var9; // L: 259 - var14.yOffset = var10; // L: 260 - - for (int var15 = var1; var15 >= 0; --var15) { - if (this.tiles[var15][var2][var3] == null) { - this.tiles[var15][var2][var3] = new Tile(var15, var2, var3); // L: 261 - } - } - - this.tiles[var1][var2][var3].wallDecoration = var14; // L: 262 - } - } // L: 263 - - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "(IIIIIILej;IJI)Z" - ) - public boolean method3227(int var1, int var2, int var3, int var4, int var5, int var6, Entity var7, int var8, long var9, int var11) { - if (var7 == null) { // L: 266 - return true; - } else { - int var12 = var5 * 64 + var2 * 128; // L: 267 - int var13 = var6 * 64 + var3 * 128; // L: 268 - return this.newGameObject(var1, var2, var3, var5, var6, var12, var13, var4, var7, var8, false, var9, var11); // L: 269 + this.tiles[var1][var2][var3].boundaryObject = var12; } } - @ObfuscatedName("o") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "(IIIIILej;IJZ)Z" + descriptor = "(IIIILer;Ler;IIIIJI)V" + ) + @Export("newWallDecoration") + public void newWallDecoration(int var1, int var2, int var3, int var4, Entity var5, Entity var6, int var7, int var8, int var9, int var10, long var11, int var13) { + if (var5 != null) { + WallDecoration var14 = new WallDecoration(); + var14.tag = var11; + var14.flags = var13; + var14.x = var2 * 128 + 64; + var14.y = var3 * 128 + 64; + var14.tileHeight = var4; + var14.entity1 = var5; + var14.entity2 = var6; + var14.orientation = var7; + var14.orientation2 = var8; + var14.xOffset = var9; + var14.yOffset = var10; + + for (int var15 = var1; var15 >= 0; --var15) { + if (this.tiles[var15][var2][var3] == null) { + this.tiles[var15][var2][var3] = new Tile(var15, var2, var3); + } + } + + this.tiles[var1][var2][var3].wallDecoration = var14; + } + } + + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "(IIIIIILer;IJI)Z" + ) + public boolean method3160(int var1, int var2, int var3, int var4, int var5, int var6, Entity var7, int var8, long var9, int var11) { + if (var7 == null) { + return true; + } else { + int var12 = var5 * 64 + var2 * 128; + int var13 = var6 * 64 + var3 * 128; + return this.newGameObject(var1, var2, var3, var5, var6, var12, var13, var4, var7, var8, false, var9, var11); + } + } + + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "(IIIIILer;IJZ)Z" ) @Export("drawEntity") public boolean drawEntity(int var1, int var2, int var3, int var4, int var5, Entity var6, int var7, long var8, boolean var10) { - if (var6 == null) { // L: 273 + if (var6 == null) { return true; } else { - int var11 = var2 - var5; // L: 274 - int var12 = var3 - var5; // L: 275 - int var13 = var5 + var2; // L: 276 - int var14 = var3 + var5; // L: 277 - if (var10) { // L: 278 - if (var7 > 640 && var7 < 1408) { // L: 279 + int var11 = var2 - var5; + int var12 = var3 - var5; + int var13 = var5 + var2; + int var14 = var3 + var5; + if (var10) { + if (var7 > 640 && var7 < 1408) { var14 += 128; } - if (var7 > 1152 && var7 < 1920) { // L: 280 + if (var7 > 1152 && var7 < 1920) { var13 += 128; } - if (var7 > 1664 || var7 < 384) { // L: 281 + if (var7 > 1664 || var7 < 384) { var12 -= 128; } - if (var7 > 128 && var7 < 896) { // L: 282 + if (var7 > 128 && var7 < 896) { var11 -= 128; } } - var11 /= 128; // L: 284 - var12 /= 128; // L: 285 - var13 /= 128; // L: 286 - var14 /= 128; // L: 287 - return this.newGameObject(var1, var11, var12, var13 - var11 + 1, var14 - var12 + 1, var2, var3, var4, var6, var7, true, var8, 0); // L: 288 + var11 /= 128; + var12 /= 128; + var13 /= 128; + var14 /= 128; + return this.newGameObject(var1, var11, var12, var13 - var11 + 1, var14 - var12 + 1, var2, var3, var4, var6, var7, true, var8, 0); } } - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedSignature( - descriptor = "(IIIIILej;IJIIII)Z" + descriptor = "(IIIIILer;IJIIII)Z" ) @Export("addNullableObject") public boolean addNullableObject(int var1, int var2, int var3, int var4, int var5, Entity var6, int var7, long var8, int var10, int var11, int var12, int var13) { - return var6 == null ? true : this.newGameObject(var1, var10, var11, var12 - var10 + 1, var13 - var11 + 1, var2, var3, var4, var6, var7, true, var8, 0); // L: 292 293 + return var6 == null ? true : this.newGameObject(var1, var10, var11, var12 - var10 + 1, var13 - var11 + 1, var2, var3, var4, var6, var7, true, var8, 0); } - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedSignature( - descriptor = "(IIIIIIIILej;IZJI)Z" + descriptor = "(IIIIIIIILer;IZJI)Z" ) @Export("newGameObject") boolean newGameObject(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, Entity var9, int var10, boolean var11, long var12, int var14) { int var16; - for (int var15 = var2; var15 < var2 + var4; ++var15) { // L: 297 - for (var16 = var3; var16 < var3 + var5; ++var16) { // L: 298 - if (var15 < 0 || var16 < 0 || var15 >= this.xSize || var16 >= this.ySize) { // L: 299 + for (int var15 = var2; var15 < var2 + var4; ++var15) { + for (var16 = var3; var16 < var3 + var5; ++var16) { + if (var15 < 0 || var16 < 0 || var15 >= this.xSize || var16 >= this.ySize) { return false; } - Tile var23 = this.tiles[var1][var15][var16]; // L: 300 - if (var23 != null && var23.gameObjectsCount >= 5) { // L: 301 + Tile var23 = this.tiles[var1][var15][var16]; + if (var23 != null && var23.gameObjectsCount >= 5) { return false; } } } - GameObject var21 = new GameObject(); // L: 304 - var21.tag = var12; // L: 305 - var21.flags = var14; // L: 306 - var21.plane = var1; // L: 307 - var21.centerX = var6; // L: 308 - var21.centerY = var7; // L: 309 - var21.height = var8; // L: 310 - var21.entity = var9; // L: 311 - var21.orientation = var10; // L: 312 - var21.startX = var2; // L: 313 - var21.startY = var3; // L: 314 - var21.endX = var2 + var4 - 1; // L: 315 - var21.endY = var3 + var5 - 1; // L: 316 + GameObject var21 = new GameObject(); + var21.tag = var12; + var21.flags = var14; + var21.plane = var1; + var21.centerX = var6; + var21.centerY = var7; + var21.height = var8; + var21.entity = var9; + var21.orientation = var10; + var21.startX = var2; + var21.startY = var3; + var21.endX = var2 + var4 - 1; + var21.endY = var3 + var5 - 1; - for (var16 = var2; var16 < var2 + var4; ++var16) { // L: 317 - for (int var17 = var3; var17 < var3 + var5; ++var17) { // L: 318 - int var18 = 0; // L: 319 - if (var16 > var2) { // L: 320 + for (var16 = var2; var16 < var2 + var4; ++var16) { + for (int var17 = var3; var17 < var3 + var5; ++var17) { + int var18 = 0; + if (var16 > var2) { ++var18; } - if (var16 < var2 + var4 - 1) { // L: 321 + if (var16 < var2 + var4 - 1) { var18 += 4; } - if (var17 > var3) { // L: 322 + if (var17 > var3) { var18 += 8; } - if (var17 < var3 + var5 - 1) { // L: 323 + if (var17 < var3 + var5 - 1) { var18 += 2; } for (int var19 = var1; var19 >= 0; --var19) { if (this.tiles[var19][var16][var17] == null) { - this.tiles[var19][var16][var17] = new Tile(var19, var16, var17); // L: 324 + this.tiles[var19][var16][var17] = new Tile(var19, var16, var17); } } - Tile var22 = this.tiles[var1][var16][var17]; // L: 325 - var22.gameObjects[var22.gameObjectsCount] = var21; // L: 326 - var22.gameObjectEdgeMasks[var22.gameObjectsCount] = var18; // L: 327 - var22.gameObjectsEdgeMask |= var18; // L: 329 - ++var22.gameObjectsCount; // L: 330 + Tile var22 = this.tiles[var1][var16][var17]; + var22.gameObjects[var22.gameObjectsCount] = var21; + var22.gameObjectEdgeMasks[var22.gameObjectsCount] = var18; + var22.gameObjectsEdgeMask |= var18; + ++var22.gameObjectsCount; } } - if (var11) { // L: 333 + if (var11) { this.tempGameObjects[this.tempGameObjectsCount++] = var21; } - return true; // L: 334 + return true; } - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("clearTempGameObjects") public void clearTempGameObjects() { - for (int var1 = 0; var1 < this.tempGameObjectsCount; ++var1) { // L: 338 - GameObject var2 = this.tempGameObjects[var1]; // L: 339 - this.removeGameObject(var2); // L: 340 - this.tempGameObjects[var1] = null; // L: 341 + for (int var1 = 0; var1 < this.tempGameObjectsCount; ++var1) { + GameObject var2 = this.tempGameObjects[var1]; + this.removeGameObject(var2); + this.tempGameObjects[var1] = null; } - this.tempGameObjectsCount = 0; // L: 343 - } // L: 344 + this.tempGameObjectsCount = 0; + } - @ObfuscatedName("r") + @ObfuscatedName("f") @ObfuscatedSignature( descriptor = "(Lel;)V" ) @Export("removeGameObject") void removeGameObject(GameObject var1) { - for (int var2 = var1.startX; var2 <= var1.endX; ++var2) { // L: 347 - for (int var3 = var1.startY; var3 <= var1.endY; ++var3) { // L: 348 - Tile var4 = this.tiles[var1.plane][var2][var3]; // L: 349 - if (var4 != null) { // L: 350 + for (int var2 = var1.startX; var2 <= var1.endX; ++var2) { + for (int var3 = var1.startY; var3 <= var1.endY; ++var3) { + Tile var4 = this.tiles[var1.plane][var2][var3]; + if (var4 != null) { int var5; - for (var5 = 0; var5 < var4.gameObjectsCount; ++var5) { // L: 351 - if (var4.gameObjects[var5] == var1) { // L: 352 - --var4.gameObjectsCount; // L: 353 + for (var5 = 0; var5 < var4.gameObjectsCount; ++var5) { + if (var4.gameObjects[var5] == var1) { + --var4.gameObjectsCount; - for (int var6 = var5; var6 < var4.gameObjectsCount; ++var6) { // L: 354 - var4.gameObjects[var6] = var4.gameObjects[var6 + 1]; // L: 355 - var4.gameObjectEdgeMasks[var6] = var4.gameObjectEdgeMasks[var6 + 1]; // L: 356 + for (int var6 = var5; var6 < var4.gameObjectsCount; ++var6) { + var4.gameObjects[var6] = var4.gameObjects[var6 + 1]; + var4.gameObjectEdgeMasks[var6] = var4.gameObjectEdgeMasks[var6 + 1]; } - var4.gameObjects[var4.gameObjectsCount] = null; // L: 358 + var4.gameObjects[var4.gameObjectsCount] = null; break; } } - var4.gameObjectsEdgeMask = 0; // L: 362 + var4.gameObjectsEdgeMask = 0; - for (var5 = 0; var5 < var4.gameObjectsCount; ++var5) { // L: 363 - var4.gameObjectsEdgeMask |= var4.gameObjectEdgeMasks[var5]; // L: 365 + for (var5 = 0; var5 < var4.gameObjectsCount; ++var5) { + var4.gameObjectsEdgeMask |= var4.gameObjectEdgeMasks[var5]; } } } } - } // L: 370 + } @ObfuscatedName("y") - public void method3233(int var1, int var2, int var3, int var4) { - Tile var5 = this.tiles[var1][var2][var3]; // L: 373 - if (var5 != null) { // L: 374 - WallDecoration var6 = var5.wallDecoration; // L: 375 - if (var6 != null) { // L: 376 - var6.xOffset = var4 * var6.xOffset / 16; // L: 377 - var6.yOffset = var4 * var6.yOffset / 16; // L: 378 + public void method3175(int var1, int var2, int var3, int var4) { + Tile var5 = this.tiles[var1][var2][var3]; + if (var5 != null) { + WallDecoration var6 = var5.wallDecoration; + if (var6 != null) { + var6.xOffset = var4 * var6.xOffset / 16; + var6.yOffset = var4 * var6.yOffset / 16; } } - } // L: 379 + } - @ObfuscatedName("s") + @ObfuscatedName("r") @Export("removeBoundaryObject") public void removeBoundaryObject(int var1, int var2, int var3) { - Tile var4 = this.tiles[var1][var2][var3]; // L: 382 + Tile var4 = this.tiles[var1][var2][var3]; if (var4 != null) { - var4.boundaryObject = null; // L: 384 + var4.boundaryObject = null; } - } // L: 383 385 + } - @ObfuscatedName("j") + @ObfuscatedName("q") @Export("removeWallDecoration") public void removeWallDecoration(int var1, int var2, int var3) { - Tile var4 = this.tiles[var1][var2][var3]; // L: 388 + Tile var4 = this.tiles[var1][var2][var3]; if (var4 != null) { - var4.wallDecoration = null; // L: 390 + var4.wallDecoration = null; } - } // L: 389 391 + } - @ObfuscatedName("d") + @ObfuscatedName("g") @Export("removeGameObject") public void removeGameObject(int var1, int var2, int var3) { - Tile var4 = this.tiles[var1][var2][var3]; // L: 394 - if (var4 != null) { // L: 395 - for (int var5 = 0; var5 < var4.gameObjectsCount; ++var5) { // L: 396 - GameObject var6 = var4.gameObjects[var5]; // L: 397 - long var8 = var6.tag; // L: 399 - boolean var7 = KeyHandler.Entity_unpackSceneX(var8) == 2; // L: 401 - if (var7 && var2 == var6.startX && var3 == var6.startY) { // L: 403 - this.removeGameObject(var6); // L: 404 - return; // L: 405 + Tile var4 = this.tiles[var1][var2][var3]; + if (var4 != null) { + for (int var5 = 0; var5 < var4.gameObjectsCount; ++var5) { + GameObject var6 = var4.gameObjects[var5]; + if (PacketBufferNode.method3682(var6.tag) && var2 == var6.startX && var3 == var6.startY) { + this.removeGameObject(var6); + return; } } } - } // L: 408 - - @ObfuscatedName("a") - @Export("removeFloorDecoration") - public void removeFloorDecoration(int var1, int var2, int var3) { - Tile var4 = this.tiles[var1][var2][var3]; // L: 411 - if (var4 != null) { - var4.floorDecoration = null; // L: 413 - } - } // L: 412 414 - - @ObfuscatedName("g") - @Export("removeGroundItemPile") - public void removeGroundItemPile(int var1, int var2, int var3) { - Tile var4 = this.tiles[var1][var2][var3]; // L: 417 - if (var4 != null) { - var4.tileItemPile = null; // L: 419 - } - } // L: 418 420 - - @ObfuscatedName("h") - @ObfuscatedSignature( - descriptor = "(III)Lem;" - ) - public BoundaryObject method3277(int var1, int var2, int var3) { - Tile var4 = this.tiles[var1][var2][var3]; // L: 423 - return var4 == null ? null : var4.boundaryObject; // L: 424 425 } - @ObfuscatedName("ab") + @ObfuscatedName("o") + @Export("removeFloorDecoration") + public void removeFloorDecoration(int var1, int var2, int var3) { + Tile var4 = this.tiles[var1][var2][var3]; + if (var4 != null) { + var4.floorDecoration = null; + } + } + + @ObfuscatedName("an") + @Export("removeGroundItemPile") + public void removeGroundItemPile(int var1, int var2, int var3) { + Tile var4 = this.tiles[var1][var2][var3]; + if (var4 != null) { + var4.tileItemPile = null; + } + } + + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "(III)Lev;" + ) + public BoundaryObject method3197(int var1, int var2, int var3) { + Tile var4 = this.tiles[var1][var2][var3]; + return var4 == null ? null : var4.boundaryObject; + } + + @ObfuscatedName("ax") @ObfuscatedSignature( descriptor = "(III)Ley;" ) - public WallDecoration method3276(int var1, int var2, int var3) { - Tile var4 = this.tiles[var1][var2][var3]; // L: 429 - return var4 == null ? null : var4.wallDecoration; // L: 430 431 + public WallDecoration method3234(int var1, int var2, int var3) { + Tile var4 = this.tiles[var1][var2][var3]; + return var4 == null ? null : var4.wallDecoration; } - @ObfuscatedName("ac") + @ObfuscatedName("ag") @ObfuscatedSignature( descriptor = "(III)Lel;" ) - public GameObject method3241(int var1, int var2, int var3) { - Tile var4 = this.tiles[var1][var2][var3]; // L: 435 - if (var4 == null) { // L: 436 + public GameObject method3183(int var1, int var2, int var3) { + Tile var4 = this.tiles[var1][var2][var3]; + if (var4 == null) { return null; } else { - for (int var5 = 0; var5 < var4.gameObjectsCount; ++var5) { // L: 437 - GameObject var6 = var4.gameObjects[var5]; // L: 438 - if (class1.method8(var6.tag) && var2 == var6.startX && var3 == var6.startY) { // L: 439 + for (int var5 = 0; var5 < var4.gameObjectsCount; ++var5) { + GameObject var6 = var4.gameObjects[var5]; + if (PacketBufferNode.method3682(var6.tag) && var2 == var6.startX && var3 == var6.startY) { return var6; } } - return null; // L: 441 + return null; } } - @ObfuscatedName("ao") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(III)Lek;" + descriptor = "(III)Lem;" ) @Export("getFloorDecoration") public FloorDecoration getFloorDecoration(int var1, int var2, int var3) { - Tile var4 = this.tiles[var1][var2][var3]; // L: 445 - return var4 != null && var4.floorDecoration != null ? var4.floorDecoration : null; // L: 446 447 + Tile var4 = this.tiles[var1][var2][var3]; + return var4 != null && var4.floorDecoration != null ? var4.floorDecoration : null; } - @ObfuscatedName("af") + @ObfuscatedName("as") @Export("getBoundaryObjectTag") public long getBoundaryObjectTag(int var1, int var2, int var3) { - Tile var4 = this.tiles[var1][var2][var3]; // L: 451 - return var4 != null && var4.boundaryObject != null ? var4.boundaryObject.tag : 0L; // L: 452 453 + Tile var4 = this.tiles[var1][var2][var3]; + return var4 != null && var4.boundaryObject != null ? var4.boundaryObject.tag : 0L; } - @ObfuscatedName("av") + @ObfuscatedName("ae") @Export("getWallDecorationTag") public long getWallDecorationTag(int var1, int var2, int var3) { - Tile var4 = this.tiles[var1][var2][var3]; // L: 457 - return var4 != null && var4.wallDecoration != null ? var4.wallDecoration.tag : 0L; // L: 458 459 + Tile var4 = this.tiles[var1][var2][var3]; + return var4 != null && var4.wallDecoration != null ? var4.wallDecoration.tag : 0L; } - @ObfuscatedName("ar") + @ObfuscatedName("ac") @Export("getGameObjectTag") public long getGameObjectTag(int var1, int var2, int var3) { - Tile var4 = this.tiles[var1][var2][var3]; // L: 463 - if (var4 == null) { // L: 464 + Tile var4 = this.tiles[var1][var2][var3]; + if (var4 == null) { return 0L; } else { - for (int var5 = 0; var5 < var4.gameObjectsCount; ++var5) { // L: 465 - GameObject var6 = var4.gameObjects[var5]; // L: 466 - long var8 = var6.tag; // L: 468 - boolean var7 = KeyHandler.Entity_unpackSceneX(var8) == 2; // L: 470 - if (var7 && var2 == var6.startX && var3 == var6.startY) { // L: 472 + for (int var5 = 0; var5 < var4.gameObjectsCount; ++var5) { + GameObject var6 = var4.gameObjects[var5]; + if (PacketBufferNode.method3682(var6.tag) && var2 == var6.startX && var3 == var6.startY) { return var6.tag; } } - return 0L; // L: 474 + return 0L; } } - @ObfuscatedName("ay") + @ObfuscatedName("ak") @Export("getFloorDecorationTag") public long getFloorDecorationTag(int var1, int var2, int var3) { - Tile var4 = this.tiles[var1][var2][var3]; // L: 478 - return var4 != null && var4.floorDecoration != null ? var4.floorDecoration.tag : 0L; // L: 479 480 + Tile var4 = this.tiles[var1][var2][var3]; + return var4 != null && var4.floorDecoration != null ? var4.floorDecoration.tag : 0L; } - @ObfuscatedName("ah") + @ObfuscatedName("av") @Export("getObjectFlags") public int getObjectFlags(int var1, int var2, int var3, long var4) { - Tile var6 = this.tiles[var1][var2][var3]; // L: 484 - if (var6 == null) { // L: 485 + Tile var6 = this.tiles[var1][var2][var3]; + if (var6 == null) { return -1; - } else if (var6.boundaryObject != null && var6.boundaryObject.tag == var4) { // L: 486 + } else if (var6.boundaryObject != null && var6.boundaryObject.tag == var4) { return var6.boundaryObject.flags & 255; - } else if (var6.wallDecoration != null && var6.wallDecoration.tag == var4) { // L: 487 + } else if (var6.wallDecoration != null && var6.wallDecoration.tag == var4) { return var6.wallDecoration.flags & 255; - } else if (var6.floorDecoration != null && var6.floorDecoration.tag == var4) { // L: 488 + } else if (var6.floorDecoration != null && var6.floorDecoration.tag == var4) { return var6.floorDecoration.flags & 255; } else { - for (int var7 = 0; var7 < var6.gameObjectsCount; ++var7) { // L: 489 - if (var6.gameObjects[var7].tag == var4) { // L: 490 + for (int var7 = 0; var7 < var6.gameObjectsCount; ++var7) { + if (var6.gameObjects[var7].tag == var4) { return var6.gameObjects[var7].flags & 255; } } - return -1; // L: 492 + return -1; } } - @ObfuscatedName("az") - public void method3248(int var1, int var2, int var3) { - for (int var4 = 0; var4 < this.planes; ++var4) { // L: 496 - for (int var5 = 0; var5 < this.xSize; ++var5) { // L: 497 - for (int var6 = 0; var6 < this.ySize; ++var6) { // L: 498 - Tile var7 = this.tiles[var4][var5][var6]; // L: 499 - if (var7 != null) { // L: 500 - BoundaryObject var8 = var7.boundaryObject; // L: 501 + @ObfuscatedName("aq") + public void method3190(int var1, int var2, int var3) { + for (int var4 = 0; var4 < this.planes; ++var4) { + for (int var5 = 0; var5 < this.xSize; ++var5) { + for (int var6 = 0; var6 < this.ySize; ++var6) { + Tile var7 = this.tiles[var4][var5][var6]; + if (var7 != null) { + BoundaryObject var8 = var7.boundaryObject; ModelData var10; - if (var8 != null && var8.entity1 instanceof ModelData) { // L: 502 - ModelData var9 = (ModelData)var8.entity1; // L: 503 - this.method3250(var9, var4, var5, var6, 1, 1); // L: 504 - if (var8.entity2 instanceof ModelData) { // L: 505 - var10 = (ModelData)var8.entity2; // L: 506 - this.method3250(var10, var4, var5, var6, 1, 1); // L: 507 - ModelData.method2929(var9, var10, 0, 0, 0, false); // L: 508 - var8.entity2 = var10.toModel(var10.ambient, var10.contrast, var1, var2, var3); // L: 509 + if (var8 != null && var8.entity1 instanceof ModelData) { + ModelData var9 = (ModelData)var8.entity1; + this.method3192(var9, var4, var5, var6, 1, 1); + if (var8.entity2 instanceof ModelData) { + var10 = (ModelData)var8.entity2; + this.method3192(var10, var4, var5, var6, 1, 1); + ModelData.method2872(var9, var10, 0, 0, 0, false); + var8.entity2 = var10.toModel(var10.ambient, var10.contrast, var1, var2, var3); } - var8.entity1 = var9.toModel(var9.ambient, var9.contrast, var1, var2, var3); // L: 511 + var8.entity1 = var9.toModel(var9.ambient, var9.contrast, var1, var2, var3); } - for (int var12 = 0; var12 < var7.gameObjectsCount; ++var12) { // L: 513 - GameObject var14 = var7.gameObjects[var12]; // L: 514 - if (var14 != null && var14.entity instanceof ModelData) { // L: 515 - ModelData var11 = (ModelData)var14.entity; // L: 516 - this.method3250(var11, var4, var5, var6, var14.endX - var14.startX + 1, var14.endY - var14.startY + 1); // L: 517 - var14.entity = var11.toModel(var11.ambient, var11.contrast, var1, var2, var3); // L: 518 + for (int var12 = 0; var12 < var7.gameObjectsCount; ++var12) { + GameObject var14 = var7.gameObjects[var12]; + if (var14 != null && var14.entity instanceof ModelData) { + ModelData var11 = (ModelData)var14.entity; + this.method3192(var11, var4, var5, var6, var14.endX - var14.startX + 1, var14.endY - var14.startY + 1); + var14.entity = var11.toModel(var11.ambient, var11.contrast, var1, var2, var3); } } - FloorDecoration var13 = var7.floorDecoration; // L: 521 - if (var13 != null && var13.entity instanceof ModelData) { // L: 522 - var10 = (ModelData)var13.entity; // L: 523 - this.method3249(var10, var4, var5, var6); // L: 524 - var13.entity = var10.toModel(var10.ambient, var10.contrast, var1, var2, var3); // L: 525 + FloorDecoration var13 = var7.floorDecoration; + if (var13 != null && var13.entity instanceof ModelData) { + var10 = (ModelData)var13.entity; + this.method3191(var10, var4, var5, var6); + var13.entity = var10.toModel(var10.ambient, var10.contrast, var1, var2, var3); } } } } } - } // L: 531 + } - @ObfuscatedName("ak") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Len;III)V" + descriptor = "(Les;III)V" ) - void method3249(ModelData var1, int var2, int var3, int var4) { + void method3191(ModelData var1, int var2, int var3, int var4) { Tile var5; ModelData var6; - if (var3 < this.xSize) { // L: 534 - var5 = this.tiles[var2][var3 + 1][var4]; // L: 535 - if (var5 != null && var5.floorDecoration != null && var5.floorDecoration.entity instanceof ModelData) { // L: 536 - var6 = (ModelData)var5.floorDecoration.entity; // L: 537 - ModelData.method2929(var1, var6, 128, 0, 0, true); // L: 538 + if (var3 < this.xSize) { + var5 = this.tiles[var2][var3 + 1][var4]; + if (var5 != null && var5.floorDecoration != null && var5.floorDecoration.entity instanceof ModelData) { + var6 = (ModelData)var5.floorDecoration.entity; + ModelData.method2872(var1, var6, 128, 0, 0, true); } } - if (var4 < this.xSize) { // L: 541 - var5 = this.tiles[var2][var3][var4 + 1]; // L: 542 - if (var5 != null && var5.floorDecoration != null && var5.floorDecoration.entity instanceof ModelData) { // L: 543 - var6 = (ModelData)var5.floorDecoration.entity; // L: 544 - ModelData.method2929(var1, var6, 0, 0, 128, true); // L: 545 + if (var4 < this.xSize) { + var5 = this.tiles[var2][var3][var4 + 1]; + if (var5 != null && var5.floorDecoration != null && var5.floorDecoration.entity instanceof ModelData) { + var6 = (ModelData)var5.floorDecoration.entity; + ModelData.method2872(var1, var6, 0, 0, 128, true); } } - if (var3 < this.xSize && var4 < this.ySize) { // L: 548 - var5 = this.tiles[var2][var3 + 1][var4 + 1]; // L: 549 - if (var5 != null && var5.floorDecoration != null && var5.floorDecoration.entity instanceof ModelData) { // L: 550 - var6 = (ModelData)var5.floorDecoration.entity; // L: 551 - ModelData.method2929(var1, var6, 128, 0, 128, true); // L: 552 + if (var3 < this.xSize && var4 < this.ySize) { + var5 = this.tiles[var2][var3 + 1][var4 + 1]; + if (var5 != null && var5.floorDecoration != null && var5.floorDecoration.entity instanceof ModelData) { + var6 = (ModelData)var5.floorDecoration.entity; + ModelData.method2872(var1, var6, 128, 0, 128, true); } } - if (var3 < this.xSize && var4 > 0) { // L: 555 - var5 = this.tiles[var2][var3 + 1][var4 - 1]; // L: 556 - if (var5 != null && var5.floorDecoration != null && var5.floorDecoration.entity instanceof ModelData) { // L: 557 - var6 = (ModelData)var5.floorDecoration.entity; // L: 558 - ModelData.method2929(var1, var6, 128, 0, -128, true); // L: 559 + if (var3 < this.xSize && var4 > 0) { + var5 = this.tiles[var2][var3 + 1][var4 - 1]; + if (var5 != null && var5.floorDecoration != null && var5.floorDecoration.entity instanceof ModelData) { + var6 = (ModelData)var5.floorDecoration.entity; + ModelData.method2872(var1, var6, 128, 0, -128, true); } } - } // L: 562 + } - @ObfuscatedName("au") + @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "(Len;IIIII)V" + descriptor = "(Les;IIIII)V" ) - void method3250(ModelData var1, int var2, int var3, int var4, int var5, int var6) { - boolean var7 = true; // L: 565 - int var8 = var3; // L: 566 - int var9 = var3 + var5; // L: 567 - int var10 = var4 - 1; // L: 568 - int var11 = var4 + var6; // L: 569 + void method3192(ModelData var1, int var2, int var3, int var4, int var5, int var6) { + boolean var7 = true; + int var8 = var3; + int var9 = var3 + var5; + int var10 = var4 - 1; + int var11 = var4 + var6; - for (int var12 = var2; var12 <= var2 + 1; ++var12) { // L: 570 - if (var12 != this.planes) { // L: 571 - for (int var13 = var8; var13 <= var9; ++var13) { // L: 572 - if (var13 >= 0 && var13 < this.xSize) { // L: 573 - for (int var14 = var10; var14 <= var11; ++var14) { // L: 574 - if (var14 >= 0 && var14 < this.ySize && (!var7 || var13 >= var9 || var14 >= var11 || var14 < var4 && var3 != var13)) { // L: 575 576 - Tile var15 = this.tiles[var12][var13][var14]; // L: 577 - if (var15 != null) { // L: 578 - int var16 = (this.tileHeights[var12][var13 + 1][var14] + this.tileHeights[var12][var13 + 1][var14 + 1] + this.tileHeights[var12][var13][var14] + this.tileHeights[var12][var13][var14 + 1]) / 4 - (this.tileHeights[var2][var3 + 1][var4] + this.tileHeights[var2][var3][var4] + this.tileHeights[var2][var3 + 1][var4 + 1] + this.tileHeights[var2][var3][var4 + 1]) / 4; // L: 579 - BoundaryObject var17 = var15.boundaryObject; // L: 580 - if (var17 != null) { // L: 581 + for (int var12 = var2; var12 <= var2 + 1; ++var12) { + if (var12 != this.planes) { + for (int var13 = var8; var13 <= var9; ++var13) { + if (var13 >= 0 && var13 < this.xSize) { + for (int var14 = var10; var14 <= var11; ++var14) { + if (var14 >= 0 && var14 < this.ySize && (!var7 || var13 >= var9 || var14 >= var11 || var14 < var4 && var3 != var13)) { + Tile var15 = this.tiles[var12][var13][var14]; + if (var15 != null) { + int var16 = (this.tileHeights[var12][var13 + 1][var14] + this.tileHeights[var12][var13 + 1][var14 + 1] + this.tileHeights[var12][var13][var14] + this.tileHeights[var12][var13][var14 + 1]) / 4 - (this.tileHeights[var2][var3 + 1][var4] + this.tileHeights[var2][var3][var4] + this.tileHeights[var2][var3 + 1][var4 + 1] + this.tileHeights[var2][var3][var4 + 1]) / 4; + BoundaryObject var17 = var15.boundaryObject; + if (var17 != null) { ModelData var18; - if (var17.entity1 instanceof ModelData) { // L: 582 - var18 = (ModelData)var17.entity1; // L: 583 - ModelData.method2929(var1, var18, (1 - var5) * 64 + (var13 - var3) * 128, var16, (var14 - var4) * 128 + (1 - var6) * 64, var7); // L: 584 + if (var17.entity1 instanceof ModelData) { + var18 = (ModelData)var17.entity1; + ModelData.method2872(var1, var18, (1 - var5) * 64 + (var13 - var3) * 128, var16, (var14 - var4) * 128 + (1 - var6) * 64, var7); } - if (var17.entity2 instanceof ModelData) { // L: 586 - var18 = (ModelData)var17.entity2; // L: 587 - ModelData.method2929(var1, var18, (1 - var5) * 64 + (var13 - var3) * 128, var16, (var14 - var4) * 128 + (1 - var6) * 64, var7); // L: 588 + if (var17.entity2 instanceof ModelData) { + var18 = (ModelData)var17.entity2; + ModelData.method2872(var1, var18, (1 - var5) * 64 + (var13 - var3) * 128, var16, (var14 - var4) * 128 + (1 - var6) * 64, var7); } } - for (int var23 = 0; var23 < var15.gameObjectsCount; ++var23) { // L: 591 - GameObject var19 = var15.gameObjects[var23]; // L: 592 - if (var19 != null && var19.entity instanceof ModelData) { // L: 593 - ModelData var20 = (ModelData)var19.entity; // L: 594 - int var21 = var19.endX - var19.startX + 1; // L: 595 - int var22 = var19.endY - var19.startY + 1; // L: 596 - ModelData.method2929(var1, var20, (var21 - var5) * 64 + (var19.startX - var3) * 128, var16, (var19.startY - var4) * 128 + (var22 - var6) * 64, var7); // L: 597 + for (int var23 = 0; var23 < var15.gameObjectsCount; ++var23) { + GameObject var19 = var15.gameObjects[var23]; + if (var19 != null && var19.entity instanceof ModelData) { + ModelData var20 = (ModelData)var19.entity; + int var21 = var19.endX - var19.startX + 1; + int var22 = var19.endY - var19.startY + 1; + ModelData.method2872(var1, var20, (var21 - var5) * 64 + (var19.startX - var3) * 128, var16, (var19.startY - var4) * 128 + (var22 - var6) * 64, var7); } } } @@ -967,179 +961,179 @@ public class Scene { } } - --var8; // L: 602 - var7 = false; // L: 603 + --var8; + var7 = false; } } - } // L: 605 + } - @ObfuscatedName("ai") + @ObfuscatedName("aa") @Export("drawTileMinimap") public void drawTileMinimap(int[] var1, int var2, int var3, int var4, int var5, int var6) { - Tile var7 = this.tiles[var4][var5][var6]; // L: 608 - if (var7 != null) { // L: 609 - TilePaint var8 = var7.paint; // L: 610 + Tile var7 = this.tiles[var4][var5][var6]; + if (var7 != null) { + TilePaint var8 = var7.paint; int var10; - if (var8 != null) { // L: 611 - int var18 = var8.rgb; // L: 612 - if (var18 != 0) { // L: 613 - for (var10 = 0; var10 < 4; ++var10) { // L: 614 - var1[var2] = var18; // L: 615 - var1[var2 + 1] = var18; // L: 616 - var1[var2 + 2] = var18; // L: 617 - var1[var2 + 3] = var18; // L: 618 - var2 += var3; // L: 619 + if (var8 != null) { + int var18 = var8.rgb; + if (var18 != 0) { + for (var10 = 0; var10 < 4; ++var10) { + var1[var2] = var18; + var1[var2 + 1] = var18; + var1[var2 + 2] = var18; + var1[var2 + 3] = var18; + var2 += var3; } } } else { - TileModel var9 = var7.model; // L: 623 - if (var9 != null) { // L: 624 - var10 = var9.shape; // L: 625 - int var11 = var9.rotation; // L: 626 - int var12 = var9.underlayRgb; // L: 627 - int var13 = var9.overlayRgb; // L: 628 - int[] var14 = this.tileShape2D[var10]; // L: 629 - int[] var15 = this.tileRotation2D[var11]; // L: 630 - int var16 = 0; // L: 631 + TileModel var9 = var7.model; + if (var9 != null) { + var10 = var9.shape; + int var11 = var9.rotation; + int var12 = var9.underlayRgb; + int var13 = var9.overlayRgb; + int[] var14 = this.tileShape2D[var10]; + int[] var15 = this.tileRotation2D[var11]; + int var16 = 0; int var17; - if (var12 != 0) { // L: 632 - for (var17 = 0; var17 < 4; ++var17) { // L: 633 - var1[var2] = var14[var15[var16++]] == 0 ? var12 : var13; // L: 634 - var1[var2 + 1] = var14[var15[var16++]] == 0 ? var12 : var13; // L: 635 - var1[var2 + 2] = var14[var15[var16++]] == 0 ? var12 : var13; // L: 636 - var1[var2 + 3] = var14[var15[var16++]] == 0 ? var12 : var13; // L: 637 - var2 += var3; // L: 638 + if (var12 != 0) { + for (var17 = 0; var17 < 4; ++var17) { + var1[var2] = var14[var15[var16++]] == 0 ? var12 : var13; + var1[var2 + 1] = var14[var15[var16++]] == 0 ? var12 : var13; + var1[var2 + 2] = var14[var15[var16++]] == 0 ? var12 : var13; + var1[var2 + 3] = var14[var15[var16++]] == 0 ? var12 : var13; + var2 += var3; } } else { - for (var17 = 0; var17 < 4; ++var17) { // L: 642 - if (var14[var15[var16++]] != 0) { // L: 643 + for (var17 = 0; var17 < 4; ++var17) { + if (var14[var15[var16++]] != 0) { var1[var2] = var13; } - if (var14[var15[var16++]] != 0) { // L: 644 + if (var14[var15[var16++]] != 0) { var1[var2 + 1] = var13; } - if (var14[var15[var16++]] != 0) { // L: 645 + if (var14[var15[var16++]] != 0) { var1[var2 + 2] = var13; } - if (var14[var15[var16++]] != 0) { // L: 646 + if (var14[var15[var16++]] != 0) { var1[var2 + 3] = var13; } - var2 += var3; // L: 647 + var2 += var3; } } } } } - } // L: 621 650 - - @ObfuscatedName("aq") - @Export("menuOpen") - public void menuOpen(int var1, int var2, int var3, boolean var4) { - if (!shouldSendWalk() || var4) { // L: 729 - checkClick = true; // L: 730 - viewportWalking = var4; // L: 731 - Scene_selectedPlane = var1; // L: 732 - Scene_selectedScreenX = var2; // L: 733 - Scene_selectedScreenY = var3; // L: 734 - Scene_selectedX = -1; // L: 735 - Scene_selectedY = -1; // L: 736 - } - } // L: 737 + } @ObfuscatedName("aw") + @Export("menuOpen") + public void menuOpen(int var1, int var2, int var3, boolean var4) { + if (!shouldSendWalk() || var4) { + checkClick = true; + viewportWalking = var4; + Scene_selectedPlane = var1; + Scene_selectedScreenX = var2; + Scene_selectedScreenY = var3; + Scene_selectedX = -1; + Scene_selectedY = -1; + } + } + + @ObfuscatedName("ap") @Export("setViewportWalking") public void setViewportWalking() { - viewportWalking = true; // L: 740 - } // L: 741 + viewportWalking = true; + } - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("draw") public void draw(int var1, int var2, int var3, int var4, int var5, int var6) { - if (var1 < 0) { // L: 753 + if (var1 < 0) { var1 = 0; - } else if (var1 >= this.xSize * 128) { // L: 754 + } else if (var1 >= this.xSize * 128) { var1 = this.xSize * 128 - 1; } - if (var3 < 0) { // L: 755 + if (var3 < 0) { var3 = 0; - } else if (var3 >= this.ySize * 128) { // L: 756 + } else if (var3 >= this.ySize * 128) { var3 = this.ySize * 128 - 1; } - if (var4 < 128) { // L: 757 + if (var4 < 128) { var4 = 128; - } else if (var4 > 383) { // L: 758 + } else if (var4 > 383) { var4 = 383; } - ++Scene_drawnCount; // L: 759 - Scene_cameraPitchSine = Rasterizer3D.Rasterizer3D_sine[var4]; // L: 760 - Scene_cameraPitchCosine = Rasterizer3D.Rasterizer3D_cosine[var4]; // L: 761 - Scene_cameraYawSine = Rasterizer3D.Rasterizer3D_sine[var5]; // L: 762 - Scene_cameraYawCosine = Rasterizer3D.Rasterizer3D_cosine[var5]; // L: 763 - visibleTiles = visibilityMap[(var4 - 128) / 32][var5 / 64]; // L: 764 - Scene_cameraX = var1; // L: 765 - Scene_cameraY = var2; // L: 766 - Scene_cameraZ = var3; // L: 767 - Scene_cameraXTile = var1 / 128; // L: 768 - Scene_cameraYTile = var3 / 128; // L: 769 - Scene_plane = var6; // L: 770 - Scene_cameraXTileMin = Scene_cameraXTile - 25; // L: 771 - if (Scene_cameraXTileMin < 0) { // L: 772 + ++Scene_drawnCount; + Scene_cameraPitchSine = Rasterizer3D.Rasterizer3D_sine[var4]; + Scene_cameraPitchCosine = Rasterizer3D.Rasterizer3D_cosine[var4]; + Scene_cameraYawSine = Rasterizer3D.Rasterizer3D_sine[var5]; + Scene_cameraYawCosine = Rasterizer3D.Rasterizer3D_cosine[var5]; + visibleTiles = visibilityMap[(var4 - 128) / 32][var5 / 64]; + Scene_cameraX = var1; + Scene_cameraY = var2; + Scene_cameraZ = var3; + Scene_cameraXTile = var1 / 128; + Scene_cameraYTile = var3 / 128; + Scene_plane = var6; + Scene_cameraXTileMin = Scene_cameraXTile - 25; + if (Scene_cameraXTileMin < 0) { Scene_cameraXTileMin = 0; } - Scene_cameraYTileMin = Scene_cameraYTile - 25; // L: 773 - if (Scene_cameraYTileMin < 0) { // L: 774 + Scene_cameraYTileMin = Scene_cameraYTile - 25; + if (Scene_cameraYTileMin < 0) { Scene_cameraYTileMin = 0; } - Scene_cameraXTileMax = Scene_cameraXTile + 25; // L: 775 - if (Scene_cameraXTileMax > this.xSize) { // L: 776 + Scene_cameraXTileMax = Scene_cameraXTile + 25; + if (Scene_cameraXTileMax > this.xSize) { Scene_cameraXTileMax = this.xSize; } - Scene_cameraYTileMax = Scene_cameraYTile + 25; // L: 777 - if (Scene_cameraYTileMax > this.ySize) { // L: 778 + Scene_cameraYTileMax = Scene_cameraYTile + 25; + if (Scene_cameraYTileMax > this.ySize) { Scene_cameraYTileMax = this.ySize; } - this.occlude(); // L: 779 - tileUpdateCount = 0; // L: 780 + this.occlude(); + tileUpdateCount = 0; int var7; Tile[][] var8; int var9; int var10; - for (var7 = this.minPlane; var7 < this.planes; ++var7) { // L: 781 - var8 = this.tiles[var7]; // L: 782 + for (var7 = this.minPlane; var7 < this.planes; ++var7) { + var8 = this.tiles[var7]; - for (var9 = Scene_cameraXTileMin; var9 < Scene_cameraXTileMax; ++var9) { // L: 783 - for (var10 = Scene_cameraYTileMin; var10 < Scene_cameraYTileMax; ++var10) { // L: 784 - Tile var16 = var8[var9][var10]; // L: 785 - if (var16 != null) { // L: 786 - if (var16.minPlane <= var6 && (visibleTiles[var9 - Scene_cameraXTile + 25][var10 - Scene_cameraYTile + 25] || this.tileHeights[var7][var9][var10] - var2 >= 2000)) { // L: 787 - var16.drawPrimary = true; // L: 793 - var16.drawSecondary = true; // L: 794 + for (var9 = Scene_cameraXTileMin; var9 < Scene_cameraXTileMax; ++var9) { + for (var10 = Scene_cameraYTileMin; var10 < Scene_cameraYTileMax; ++var10) { + Tile var16 = var8[var9][var10]; + if (var16 != null) { + if (var16.minPlane <= var6 && (visibleTiles[var9 - Scene_cameraXTile + 25][var10 - Scene_cameraYTile + 25] || this.tileHeights[var7][var9][var10] - var2 >= 2000)) { + var16.drawPrimary = true; + var16.drawSecondary = true; if (var16.gameObjectsCount > 0) { - var16.drawGameObjects = true; // L: 795 + var16.drawGameObjects = true; } else { - var16.drawGameObjects = false; // L: 796 + var16.drawGameObjects = false; } - ++tileUpdateCount; // L: 797 + ++tileUpdateCount; } else { - var16.drawPrimary = false; // L: 788 - var16.drawSecondary = false; // L: 789 - var16.drawGameObjectEdges = 0; // L: 790 + var16.drawPrimary = false; + var16.drawSecondary = false; + var16.drawGameObjectEdges = 0; } } } @@ -1151,118 +1145,118 @@ public class Scene { int var13; int var14; Tile var15; - for (var7 = this.minPlane; var7 < this.planes; ++var7) { // L: 803 - var8 = this.tiles[var7]; // L: 804 + for (var7 = this.minPlane; var7 < this.planes; ++var7) { + var8 = this.tiles[var7]; - for (var9 = -25; var9 <= 0; ++var9) { // L: 805 - var10 = var9 + Scene_cameraXTile; // L: 806 - var11 = Scene_cameraXTile - var9; // L: 807 - if (var10 >= Scene_cameraXTileMin || var11 < Scene_cameraXTileMax) { // L: 808 - for (var12 = -25; var12 <= 0; ++var12) { // L: 809 - var13 = var12 + Scene_cameraYTile; // L: 810 - var14 = Scene_cameraYTile - var12; // L: 811 - if (var10 >= Scene_cameraXTileMin) { // L: 812 - if (var13 >= Scene_cameraYTileMin) { // L: 813 - var15 = var8[var10][var13]; // L: 814 - if (var15 != null && var15.drawPrimary) { // L: 815 - this.drawTile(var15, true); - } - } - - if (var14 < Scene_cameraYTileMax) { // L: 817 - var15 = var8[var10][var14]; // L: 818 - if (var15 != null && var15.drawPrimary) { // L: 819 - this.drawTile(var15, true); - } - } - } - - if (var11 < Scene_cameraXTileMax) { // L: 822 - if (var13 >= Scene_cameraYTileMin) { // L: 823 - var15 = var8[var11][var13]; // L: 824 - if (var15 != null && var15.drawPrimary) { // L: 825 - this.drawTile(var15, true); - } - } - - if (var14 < Scene_cameraYTileMax) { // L: 827 - var15 = var8[var11][var14]; // L: 828 - if (var15 != null && var15.drawPrimary) { // L: 829 - this.drawTile(var15, true); - } - } - } - - if (tileUpdateCount == 0) { // L: 832 - checkClick = false; // L: 833 - return; // L: 834 - } - } - } - } - } - - for (var7 = this.minPlane; var7 < this.planes; ++var7) { // L: 840 - var8 = this.tiles[var7]; // L: 841 - - for (var9 = -25; var9 <= 0; ++var9) { // L: 842 - var10 = var9 + Scene_cameraXTile; // L: 843 - var11 = Scene_cameraXTile - var9; // L: 844 - if (var10 >= Scene_cameraXTileMin || var11 < Scene_cameraXTileMax) { // L: 845 - for (var12 = -25; var12 <= 0; ++var12) { // L: 846 - var13 = var12 + Scene_cameraYTile; // L: 847 - var14 = Scene_cameraYTile - var12; // L: 848 - if (var10 >= Scene_cameraXTileMin) { // L: 849 - if (var13 >= Scene_cameraYTileMin) { // L: 850 - var15 = var8[var10][var13]; // L: 851 - if (var15 != null && var15.drawPrimary) { // L: 852 - this.drawTile(var15, false); - } - } - - if (var14 < Scene_cameraYTileMax) { // L: 854 - var15 = var8[var10][var14]; // L: 855 + for (var9 = -25; var9 <= 0; ++var9) { + var10 = var9 + Scene_cameraXTile; + var11 = Scene_cameraXTile - var9; + if (var10 >= Scene_cameraXTileMin || var11 < Scene_cameraXTileMax) { + for (var12 = -25; var12 <= 0; ++var12) { + var13 = var12 + Scene_cameraYTile; + var14 = Scene_cameraYTile - var12; + if (var10 >= Scene_cameraXTileMin) { + if (var13 >= Scene_cameraYTileMin) { + var15 = var8[var10][var13]; if (var15 != null && var15.drawPrimary) { - this.drawTile(var15, false); // L: 856 + this.drawTile(var15, true); + } + } + + if (var14 < Scene_cameraYTileMax) { + var15 = var8[var10][var14]; + if (var15 != null && var15.drawPrimary) { + this.drawTile(var15, true); } } } - if (var11 < Scene_cameraXTileMax) { // L: 859 - if (var13 >= Scene_cameraYTileMin) { // L: 860 - var15 = var8[var11][var13]; // L: 861 - if (var15 != null && var15.drawPrimary) { // L: 862 - this.drawTile(var15, false); + if (var11 < Scene_cameraXTileMax) { + if (var13 >= Scene_cameraYTileMin) { + var15 = var8[var11][var13]; + if (var15 != null && var15.drawPrimary) { + this.drawTile(var15, true); } } - if (var14 < Scene_cameraYTileMax) { // L: 864 - var15 = var8[var11][var14]; // L: 865 - if (var15 != null && var15.drawPrimary) { // L: 866 - this.drawTile(var15, false); + if (var14 < Scene_cameraYTileMax) { + var15 = var8[var11][var14]; + if (var15 != null && var15.drawPrimary) { + this.drawTile(var15, true); } } } - if (tileUpdateCount == 0) { // L: 869 - checkClick = false; // L: 870 - return; // L: 871 + if (tileUpdateCount == 0) { + checkClick = false; + return; } } } } } - checkClick = false; // L: 877 - } // L: 878 + for (var7 = this.minPlane; var7 < this.planes; ++var7) { + var8 = this.tiles[var7]; - @ObfuscatedName("at") + for (var9 = -25; var9 <= 0; ++var9) { + var10 = var9 + Scene_cameraXTile; + var11 = Scene_cameraXTile - var9; + if (var10 >= Scene_cameraXTileMin || var11 < Scene_cameraXTileMax) { + for (var12 = -25; var12 <= 0; ++var12) { + var13 = var12 + Scene_cameraYTile; + var14 = Scene_cameraYTile - var12; + if (var10 >= Scene_cameraXTileMin) { + if (var13 >= Scene_cameraYTileMin) { + var15 = var8[var10][var13]; + if (var15 != null && var15.drawPrimary) { + this.drawTile(var15, false); + } + } + + if (var14 < Scene_cameraYTileMax) { + var15 = var8[var10][var14]; + if (var15 != null && var15.drawPrimary) { + this.drawTile(var15, false); + } + } + } + + if (var11 < Scene_cameraXTileMax) { + if (var13 >= Scene_cameraYTileMin) { + var15 = var8[var11][var13]; + if (var15 != null && var15.drawPrimary) { + this.drawTile(var15, false); + } + } + + if (var14 < Scene_cameraYTileMax) { + var15 = var8[var11][var14]; + if (var15 != null && var15.drawPrimary) { + this.drawTile(var15, false); + } + } + } + + if (tileUpdateCount == 0) { + checkClick = false; + return; + } + } + } + } + } + + checkClick = false; + } + + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "(Leo;Z)V" + descriptor = "(Lec;Z)V" ) @Export("drawTile") void drawTile(Tile var1, boolean var2) { - Scene_tilesDeque.addFirst(var1); // L: 881 + Scene_tilesDeque.addFirst(var1); while (true) { Tile var3; @@ -1294,227 +1288,227 @@ public class Scene { Tile var36; while (true) { do { - var3 = (Tile)Scene_tilesDeque.removeLast(); // L: 883 - if (var3 == null) { // L: 884 + var3 = (Tile)Scene_tilesDeque.removeLast(); + if (var3 == null) { return; } - } while(!var3.drawSecondary); // L: 885 + } while(!var3.drawSecondary); - var4 = var3.x; // L: 886 - var5 = var3.y; // L: 887 - var6 = var3.plane; // L: 888 - var7 = var3.originalPlane; // L: 889 - var8 = this.tiles[var6]; // L: 890 - if (!var3.drawPrimary) { // L: 891 + var4 = var3.x; + var5 = var3.y; + var6 = var3.plane; + var7 = var3.originalPlane; + var8 = this.tiles[var6]; + if (!var3.drawPrimary) { break; } - if (var2) { // L: 892 - if (var6 > 0) { // L: 893 - var9 = this.tiles[var6 - 1][var4][var5]; // L: 894 - if (var9 != null && var9.drawSecondary) { // L: 895 + if (var2) { + if (var6 > 0) { + var9 = this.tiles[var6 - 1][var4][var5]; + if (var9 != null && var9.drawSecondary) { continue; } } - if (var4 <= Scene_cameraXTile && var4 > Scene_cameraXTileMin) { // L: 897 - var9 = var8[var4 - 1][var5]; // L: 898 - if (var9 != null && var9.drawSecondary && (var9.drawPrimary || (var3.gameObjectsEdgeMask & 1) == 0)) { // L: 899 + if (var4 <= Scene_cameraXTile && var4 > Scene_cameraXTileMin) { + var9 = var8[var4 - 1][var5]; + if (var9 != null && var9.drawSecondary && (var9.drawPrimary || (var3.gameObjectsEdgeMask & 1) == 0)) { continue; } } - if (var4 >= Scene_cameraXTile && var4 < Scene_cameraXTileMax - 1) { // L: 901 - var9 = var8[var4 + 1][var5]; // L: 902 - if (var9 != null && var9.drawSecondary && (var9.drawPrimary || (var3.gameObjectsEdgeMask & 4) == 0)) { // L: 903 + if (var4 >= Scene_cameraXTile && var4 < Scene_cameraXTileMax - 1) { + var9 = var8[var4 + 1][var5]; + if (var9 != null && var9.drawSecondary && (var9.drawPrimary || (var3.gameObjectsEdgeMask & 4) == 0)) { continue; } } - if (var5 <= Scene_cameraYTile && var5 > Scene_cameraYTileMin) { // L: 905 - var9 = var8[var4][var5 - 1]; // L: 906 - if (var9 != null && var9.drawSecondary && (var9.drawPrimary || (var3.gameObjectsEdgeMask & 8) == 0)) { // L: 907 + if (var5 <= Scene_cameraYTile && var5 > Scene_cameraYTileMin) { + var9 = var8[var4][var5 - 1]; + if (var9 != null && var9.drawSecondary && (var9.drawPrimary || (var3.gameObjectsEdgeMask & 8) == 0)) { continue; } } - if (var5 >= Scene_cameraYTile && var5 < Scene_cameraYTileMax - 1) { // L: 909 - var9 = var8[var4][var5 + 1]; // L: 910 - if (var9 != null && var9.drawSecondary && (var9.drawPrimary || (var3.gameObjectsEdgeMask & 2) == 0)) { // L: 911 + if (var5 >= Scene_cameraYTile && var5 < Scene_cameraYTileMax - 1) { + var9 = var8[var4][var5 + 1]; + if (var9 != null && var9.drawSecondary && (var9.drawPrimary || (var3.gameObjectsEdgeMask & 2) == 0)) { continue; } } } else { - var2 = true; // L: 914 + var2 = true; } - var3.drawPrimary = false; // L: 915 - if (var3.linkedBelowTile != null) { // L: 916 - var9 = var3.linkedBelowTile; // L: 917 - if (var9.paint != null) { // L: 918 - if (!this.method3265(0, var4, var5)) { // L: 919 + var3.drawPrimary = false; + if (var3.linkedBelowTile != null) { + var9 = var3.linkedBelowTile; + if (var9.paint != null) { + if (!this.method3291(0, var4, var5)) { this.drawTileUnderlay(var9.paint, 0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var4, var5); } - } else if (var9.model != null && !this.method3265(0, var4, var5)) { // L: 921 922 + } else if (var9.model != null && !this.method3291(0, var4, var5)) { this.drawTileOverlay(var9.model, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var4, var5); } - var10 = var9.boundaryObject; // L: 924 - if (var10 != null) { // L: 925 - var10.entity1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var10.x - Scene_cameraX, var10.tileHeight - Scene_cameraY, var10.y - Scene_cameraZ, var10.tag); + var10 = var9.boundaryObject; + if (var10 != null) { + var10.entity1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var10.x * 4096 - Scene_cameraX, var10.tileHeight - Scene_cameraY, var10.y * 4096 - Scene_cameraZ, var10.tag); } - for (var11 = 0; var11 < var9.gameObjectsCount; ++var11) { // L: 926 - var12 = var9.gameObjects[var11]; // L: 927 - if (var12 != null) { // L: 928 + for (var11 = 0; var11 < var9.gameObjectsCount; ++var11) { + var12 = var9.gameObjects[var11]; + if (var12 != null) { var12.entity.draw(var12.orientation, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var12.centerX - Scene_cameraX, var12.height - Scene_cameraY, var12.centerY - Scene_cameraZ, var12.tag); } } } - var20 = false; // L: 931 - if (var3.paint != null) { // L: 932 - if (!this.method3265(var7, var4, var5)) { // L: 933 - var20 = true; // L: 934 - if (var3.paint.neColor != 12345678 || checkClick && var6 <= Scene_selectedPlane) { // L: 935 + var20 = false; + if (var3.paint != null) { + if (!this.method3291(var7, var4, var5)) { + var20 = true; + if (var3.paint.neColor != 12345678 || checkClick && var6 <= Scene_selectedPlane) { this.drawTileUnderlay(var3.paint, var7, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var4, var5); } } - } else if (var3.model != null && !this.method3265(var7, var4, var5)) { // L: 938 939 - var20 = true; // L: 940 - this.drawTileOverlay(var3.model, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var4, var5); // L: 941 + } else if (var3.model != null && !this.method3291(var7, var4, var5)) { + var20 = true; + this.drawTileOverlay(var3.model, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var4, var5); } - var21 = 0; // L: 944 - var11 = 0; // L: 945 - BoundaryObject var31 = var3.boundaryObject; // L: 946 - WallDecoration var13 = var3.wallDecoration; // L: 947 - if (var31 != null || var13 != null) { // L: 948 - if (var4 == Scene_cameraXTile) { // L: 949 + var21 = 0; + var11 = 0; + BoundaryObject var31 = var3.boundaryObject; + WallDecoration var13 = var3.wallDecoration; + if (var31 != null || var13 != null) { + if (var4 == Scene_cameraXTile) { ++var21; - } else if (Scene_cameraXTile < var4) { // L: 950 + } else if (Scene_cameraXTile < var4) { var21 += 2; } - if (var5 == Scene_cameraYTile) { // L: 951 + if (var5 == Scene_cameraYTile) { var21 += 3; - } else if (Scene_cameraYTile > var5) { // L: 952 + } else if (Scene_cameraYTile > var5) { var21 += 6; } - var11 = field1874[var21]; // L: 953 - var3.field1671 = field1876[var21]; // L: 954 + var11 = field1826[var21]; + var3.field1679 = field1829[var21]; } - if (var31 != null) { // L: 956 - if ((var31.orientationA & field1875[var21]) != 0) { // L: 957 - if (var31.orientationA == 16) { // L: 958 - var3.drawGameObjectEdges = 3; // L: 959 - var3.field1690 = field1851[var21]; // L: 960 - var3.field1691 = 3 - var3.field1690; // L: 961 - } else if (var31.orientationA == 32) { // L: 963 - var3.drawGameObjectEdges = 6; // L: 964 - var3.field1690 = field1878[var21]; // L: 965 - var3.field1691 = 6 - var3.field1690; // L: 966 - } else if (var31.orientationA == 64) { // L: 968 - var3.drawGameObjectEdges = 12; // L: 969 - var3.field1690 = field1828[var21]; // L: 970 - var3.field1691 = 12 - var3.field1690; // L: 971 + if (var31 != null) { + if ((var31.orientationA & field1871[var21]) != 0) { + if (var31.orientationA == 16) { + var3.drawGameObjectEdges = 3; + var3.field1680 = field1873[var21]; + var3.field1677 = 3 - var3.field1680; + } else if (var31.orientationA == 32) { + var3.drawGameObjectEdges = 6; + var3.field1680 = field1866[var21]; + var3.field1677 = 6 - var3.field1680; + } else if (var31.orientationA == 64) { + var3.drawGameObjectEdges = 12; + var3.field1680 = field1875[var21]; + var3.field1677 = 12 - var3.field1680; } else { - var3.drawGameObjectEdges = 9; // L: 974 - var3.field1690 = field1856[var21]; // L: 975 - var3.field1691 = 9 - var3.field1690; // L: 976 + var3.drawGameObjectEdges = 9; + var3.field1680 = field1876[var21]; + var3.field1677 = 9 - var3.field1680; } } else { - var3.drawGameObjectEdges = 0; // L: 979 + var3.drawGameObjectEdges = 0; } - if ((var31.orientationA & var11) != 0 && !this.method3346(var7, var4, var5, var31.orientationA)) { // L: 980 - var31.entity1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var31.x - Scene_cameraX, var31.tileHeight - Scene_cameraY, var31.y - Scene_cameraZ, var31.tag); + if ((var31.orientationA & var11) != 0 && !this.method3208(var7, var4, var5, var31.orientationA)) { + var31.entity1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var31.x * 4096 - Scene_cameraX, var31.tileHeight - Scene_cameraY, var31.y * 4096 - Scene_cameraZ, var31.tag); } - if ((var31.orientationB & var11) != 0 && !this.method3346(var7, var4, var5, var31.orientationB)) { // L: 981 - var31.entity2.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var31.x - Scene_cameraX, var31.tileHeight - Scene_cameraY, var31.y - Scene_cameraZ, var31.tag); + if ((var31.orientationB & var11) != 0 && !this.method3208(var7, var4, var5, var31.orientationB)) { + var31.entity2.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var31.x * 4096 - Scene_cameraX, var31.tileHeight - Scene_cameraY, var31.y * 4096 - Scene_cameraZ, var31.tag); } } - if (var13 != null && !this.method3325(var7, var4, var5, var13.entity1.height)) { // L: 983 - if ((var13.orientation & var11) != 0) { // L: 984 - var13.entity1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var13.x - Scene_cameraX + var13.xOffset, var13.tileHeight - Scene_cameraY, var13.y - Scene_cameraZ + var13.yOffset, var13.tag); // L: 985 - } else if (var13.orientation == 256) { // L: 987 - var14 = var13.x - Scene_cameraX; // L: 988 - var15 = var13.tileHeight - Scene_cameraY; // L: 989 - var16 = var13.y - Scene_cameraZ; // L: 990 - var17 = var13.orientation2; // L: 991 - if (var17 != 1 && var17 != 2) { // L: 993 - var18 = var14; // L: 994 + if (var13 != null && !this.method3213(var7, var4, var5, var13.entity1.height)) { + if ((var13.orientation & var11) != 0) { + var13.entity1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var13.xOffset + (var13.x * 4096 - Scene_cameraX), var13.tileHeight - Scene_cameraY, var13.yOffset + (var13.y * 4096 - Scene_cameraZ), var13.tag); + } else if (var13.orientation == 256) { + var14 = var13.x * 4096 - Scene_cameraX; + var15 = var13.tileHeight - Scene_cameraY; + var16 = var13.y * 4096 - Scene_cameraZ; + var17 = var13.orientation2; + if (var17 != 1 && var17 != 2) { + var18 = var14; } else { var18 = -var14; } int var19; - if (var17 != 2 && var17 != 3) { // L: 996 - var19 = var16; // L: 997 + if (var17 != 2 && var17 != 3) { + var19 = var16; } else { var19 = -var16; } - if (var19 < var18) { // L: 998 - var13.entity1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var14 + var13.xOffset, var15, var16 + var13.yOffset, var13.tag); // L: 999 - } else if (var13.entity2 != null) { // L: 1001 - var13.entity2.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var14, var15, var16, var13.tag); // L: 1002 + if (var19 < var18) { + var13.entity1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var14 + var13.xOffset, var15, var16 + var13.yOffset, var13.tag); + } else if (var13.entity2 != null) { + var13.entity2.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var14, var15, var16, var13.tag); } } } - if (var20) { // L: 1006 - FloorDecoration var22 = var3.floorDecoration; // L: 1007 - if (var22 != null) { // L: 1008 - var22.entity.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var22.x - Scene_cameraX, var22.tileHeight - Scene_cameraY, var22.y - Scene_cameraZ, var22.tag); + if (var20) { + FloorDecoration var22 = var3.floorDecoration; + if (var22 != null) { + var22.entity.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var22.x * 4096 - Scene_cameraX, var22.tileHeight - Scene_cameraY, var22.y * 4096 - Scene_cameraZ, var22.tag); } - TileItemPile var23 = var3.tileItemPile; // L: 1009 - if (var23 != null && var23.height == 0) { // L: 1010 - if (var23.second != null) { // L: 1011 - var23.second.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var23.x - Scene_cameraX, var23.tileHeight - Scene_cameraY, var23.y - Scene_cameraZ, var23.tag); + TileItemPile var23 = var3.tileItemPile; + if (var23 != null && var23.height == 0) { + if (var23.second != null) { + var23.second.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var23.x * 4096 - Scene_cameraX, var23.tileHeight - Scene_cameraY, var23.y * 4096 - Scene_cameraZ, var23.tag); } - if (var23.third != null) { // L: 1012 - var23.third.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var23.x - Scene_cameraX, var23.tileHeight - Scene_cameraY, var23.y - Scene_cameraZ, var23.tag); + if (var23.third != null) { + var23.third.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var23.x * 4096 - Scene_cameraX, var23.tileHeight - Scene_cameraY, var23.y * 4096 - Scene_cameraZ, var23.tag); } - if (var23.first != null) { // L: 1013 - var23.first.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var23.x - Scene_cameraX, var23.tileHeight - Scene_cameraY, var23.y - Scene_cameraZ, var23.tag); + if (var23.first != null) { + var23.first.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var23.x * 4096 - Scene_cameraX, var23.tileHeight - Scene_cameraY, var23.y * 4096 - Scene_cameraZ, var23.tag); } } } - var14 = var3.gameObjectsEdgeMask; // L: 1016 - if (var14 != 0) { // L: 1017 - if (var4 < Scene_cameraXTile && (var14 & 4) != 0) { // L: 1018 - var36 = var8[var4 + 1][var5]; // L: 1019 - if (var36 != null && var36.drawSecondary) { // L: 1020 + var14 = var3.gameObjectsEdgeMask; + if (var14 != 0) { + if (var4 < Scene_cameraXTile && (var14 & 4) != 0) { + var36 = var8[var4 + 1][var5]; + if (var36 != null && var36.drawSecondary) { Scene_tilesDeque.addFirst(var36); } } - if (var5 < Scene_cameraYTile && (var14 & 2) != 0) { // L: 1022 - var36 = var8[var4][var5 + 1]; // L: 1023 - if (var36 != null && var36.drawSecondary) { // L: 1024 + if (var5 < Scene_cameraYTile && (var14 & 2) != 0) { + var36 = var8[var4][var5 + 1]; + if (var36 != null && var36.drawSecondary) { Scene_tilesDeque.addFirst(var36); } } - if (var4 > Scene_cameraXTile && (var14 & 1) != 0) { // L: 1026 - var36 = var8[var4 - 1][var5]; // L: 1027 - if (var36 != null && var36.drawSecondary) { // L: 1028 + if (var4 > Scene_cameraXTile && (var14 & 1) != 0) { + var36 = var8[var4 - 1][var5]; + if (var36 != null && var36.drawSecondary) { Scene_tilesDeque.addFirst(var36); } } - if (var5 > Scene_cameraYTile && (var14 & 8) != 0) { // L: 1030 - var36 = var8[var4][var5 - 1]; // L: 1031 - if (var36 != null && var36.drawSecondary) { // L: 1032 + if (var5 > Scene_cameraYTile && (var14 & 8) != 0) { + var36 = var8[var4][var5 - 1]; + if (var36 != null && var36.drawSecondary) { Scene_tilesDeque.addFirst(var36); } } @@ -1522,372 +1516,372 @@ public class Scene { break; } - if (var3.drawGameObjectEdges != 0) { // L: 1036 - var20 = true; // L: 1037 + if (var3.drawGameObjectEdges != 0) { + var20 = true; - for (var21 = 0; var21 < var3.gameObjectsCount; ++var21) { // L: 1038 - if (var3.gameObjects[var21].lastDrawn != Scene_drawnCount && (var3.gameObjectEdgeMasks[var21] & var3.drawGameObjectEdges) == var3.field1690) { // L: 1039 - var20 = false; // L: 1040 - break; // L: 1041 + for (var21 = 0; var21 < var3.gameObjectsCount; ++var21) { + if (var3.gameObjects[var21].lastDrawn != Scene_drawnCount && (var3.gameObjectEdgeMasks[var21] & var3.drawGameObjectEdges) == var3.field1680) { + var20 = false; + break; } } - if (var20) { // L: 1044 - var10 = var3.boundaryObject; // L: 1045 - if (!this.method3346(var7, var4, var5, var10.orientationA)) { // L: 1046 - var10.entity1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var10.x - Scene_cameraX, var10.tileHeight - Scene_cameraY, var10.y - Scene_cameraZ, var10.tag); + if (var20) { + var10 = var3.boundaryObject; + if (!this.method3208(var7, var4, var5, var10.orientationA)) { + var10.entity1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var10.x * 4096 - Scene_cameraX, var10.tileHeight - Scene_cameraY, var10.y * 4096 - Scene_cameraZ, var10.tag); } - var3.drawGameObjectEdges = 0; // L: 1047 + var3.drawGameObjectEdges = 0; } } - if (!var3.drawGameObjects) { // L: 1050 + if (!var3.drawGameObjects) { break; } try { - int var34 = var3.gameObjectsCount; // L: 1052 - var3.drawGameObjects = false; // L: 1053 - var21 = 0; // L: 1054 + int var34 = var3.gameObjectsCount; + var3.drawGameObjects = false; + var21 = 0; label563: - for (var11 = 0; var11 < var34; ++var11) { // L: 1055 - var12 = var3.gameObjects[var11]; // L: 1056 - if (var12.lastDrawn != Scene_drawnCount) { // L: 1057 - for (var24 = var12.startX; var24 <= var12.endX; ++var24) { // L: 1058 - for (var14 = var12.startY; var14 <= var12.endY; ++var14) { // L: 1059 - var36 = var8[var24][var14]; // L: 1060 - if (var36.drawPrimary) { // L: 1061 - var3.drawGameObjects = true; // L: 1062 - continue label563; // L: 1063 + for (var11 = 0; var11 < var34; ++var11) { + var12 = var3.gameObjects[var11]; + if (var12.lastDrawn != Scene_drawnCount) { + for (var24 = var12.startX; var24 <= var12.endX; ++var24) { + for (var14 = var12.startY; var14 <= var12.endY; ++var14) { + var36 = var8[var24][var14]; + if (var36.drawPrimary) { + var3.drawGameObjects = true; + continue label563; } - if (var36.drawGameObjectEdges != 0) { // L: 1065 - var16 = 0; // L: 1066 - if (var24 > var12.startX) { // L: 1067 + if (var36.drawGameObjectEdges != 0) { + var16 = 0; + if (var24 > var12.startX) { ++var16; } - if (var24 < var12.endX) { // L: 1068 + if (var24 < var12.endX) { var16 += 4; } - if (var14 > var12.startY) { // L: 1069 + if (var14 > var12.startY) { var16 += 8; } - if (var14 < var12.endY) { // L: 1070 + if (var14 < var12.endY) { var16 += 2; } - if ((var16 & var36.drawGameObjectEdges) == var3.field1691) { // L: 1071 - var3.drawGameObjects = true; // L: 1072 - continue label563; // L: 1073 + if ((var16 & var36.drawGameObjectEdges) == var3.field1677) { + var3.drawGameObjects = true; + continue label563; } } } } - gameObjects[var21++] = var12; // L: 1078 - var24 = Scene_cameraXTile - var12.startX; // L: 1079 - var14 = var12.endX - Scene_cameraXTile; // L: 1080 - if (var14 > var24) { // L: 1081 + gameObjects[var21++] = var12; + var24 = Scene_cameraXTile - var12.startX; + var14 = var12.endX - Scene_cameraXTile; + if (var14 > var24) { var24 = var14; } - var15 = Scene_cameraYTile - var12.startY; // L: 1082 - var16 = var12.endY - Scene_cameraYTile; // L: 1083 - if (var16 > var15) { // L: 1084 - var12.field1962 = var24 + var16; + var15 = Scene_cameraYTile - var12.startY; + var16 = var12.endY - Scene_cameraYTile; + if (var16 > var15) { + var12.field1953 = var24 + var16; } else { - var12.field1962 = var24 + var15; // L: 1085 + var12.field1953 = var24 + var15; } } } - while (var21 > 0) { // L: 1088 - var11 = -50; // L: 1089 - var25 = -1; // L: 1090 + while (var21 > 0) { + var11 = -50; + var25 = -1; - for (var24 = 0; var24 < var21; ++var24) { // L: 1091 - GameObject var35 = gameObjects[var24]; // L: 1092 - if (var35.lastDrawn != Scene_drawnCount) { // L: 1093 - if (var35.field1962 > var11) { // L: 1094 - var11 = var35.field1962; // L: 1095 - var25 = var24; // L: 1096 - } else if (var11 == var35.field1962) { // L: 1098 - var15 = var35.centerX - Scene_cameraX; // L: 1099 - var16 = var35.centerY - Scene_cameraZ; // L: 1100 - var17 = gameObjects[var25].centerX - Scene_cameraX; // L: 1101 - var18 = gameObjects[var25].centerY - Scene_cameraZ; // L: 1102 - if (var15 * var15 + var16 * var16 > var17 * var17 + var18 * var18) { // L: 1103 + for (var24 = 0; var24 < var21; ++var24) { + GameObject var35 = gameObjects[var24]; + if (var35.lastDrawn != Scene_drawnCount) { + if (var35.field1953 > var11) { + var11 = var35.field1953; + var25 = var24; + } else if (var11 == var35.field1953) { + var15 = var35.centerX - Scene_cameraX; + var16 = var35.centerY - Scene_cameraZ; + var17 = gameObjects[var25].centerX - Scene_cameraX; + var18 = gameObjects[var25].centerY - Scene_cameraZ; + if (var15 * var15 + var16 * var16 > var17 * var17 + var18 * var18) { var25 = var24; } } } } - if (var25 == -1) { // L: 1107 + if (var25 == -1) { break; } - GameObject var33 = gameObjects[var25]; // L: 1108 - var33.lastDrawn = Scene_drawnCount; // L: 1109 - if (!this.method3343(var7, var33.startX, var33.endX, var33.startY, var33.endY, var33.entity.height)) { // L: 1110 - var33.entity.draw(var33.orientation, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var33.centerX - Scene_cameraX, var33.height - Scene_cameraY, var33.centerY - Scene_cameraZ, var33.tag); // L: 1111 + GameObject var33 = gameObjects[var25]; + var33.lastDrawn = Scene_drawnCount; + if (!this.method3210(var7, var33.startX, var33.endX, var33.startY, var33.endY, var33.entity.height)) { + var33.entity.draw(var33.orientation, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var33.centerX - Scene_cameraX, var33.height - Scene_cameraY, var33.centerY - Scene_cameraZ, var33.tag); } - for (var14 = var33.startX; var14 <= var33.endX; ++var14) { // L: 1113 - for (var15 = var33.startY; var15 <= var33.endY; ++var15) { // L: 1114 - Tile var26 = var8[var14][var15]; // L: 1115 - if (var26.drawGameObjectEdges != 0) { // L: 1116 + for (var14 = var33.startX; var14 <= var33.endX; ++var14) { + for (var15 = var33.startY; var15 <= var33.endY; ++var15) { + Tile var26 = var8[var14][var15]; + if (var26.drawGameObjectEdges != 0) { Scene_tilesDeque.addFirst(var26); - } else if ((var14 != var4 || var15 != var5) && var26.drawSecondary) { // L: 1117 + } else if ((var14 != var4 || var15 != var5) && var26.drawSecondary) { Scene_tilesDeque.addFirst(var26); } } } } - if (!var3.drawGameObjects) { // L: 1121 + if (!var3.drawGameObjects) { break; } - } catch (Exception var28) { // L: 1123 - var3.drawGameObjects = false; // L: 1124 + } catch (Exception var28) { + var3.drawGameObjects = false; break; } } - } while(!var3.drawSecondary); // L: 1127 - } while(var3.drawGameObjectEdges != 0); // L: 1128 + } while(!var3.drawSecondary); + } while(var3.drawGameObjectEdges != 0); - if (var4 > Scene_cameraXTile || var4 <= Scene_cameraXTileMin) { // L: 1129 + if (var4 > Scene_cameraXTile || var4 <= Scene_cameraXTileMin) { break; } - var9 = var8[var4 - 1][var5]; // L: 1130 - } while(var9 != null && var9.drawSecondary); // L: 1131 + var9 = var8[var4 - 1][var5]; + } while(var9 != null && var9.drawSecondary); - if (var4 < Scene_cameraXTile || var4 >= Scene_cameraXTileMax - 1) { // L: 1133 + if (var4 < Scene_cameraXTile || var4 >= Scene_cameraXTileMax - 1) { break; } - var9 = var8[var4 + 1][var5]; // L: 1134 - } while(var9 != null && var9.drawSecondary); // L: 1135 + var9 = var8[var4 + 1][var5]; + } while(var9 != null && var9.drawSecondary); - if (var5 > Scene_cameraYTile || var5 <= Scene_cameraYTileMin) { // L: 1137 + if (var5 > Scene_cameraYTile || var5 <= Scene_cameraYTileMin) { break; } - var9 = var8[var4][var5 - 1]; // L: 1138 - } while(var9 != null && var9.drawSecondary); // L: 1139 + var9 = var8[var4][var5 - 1]; + } while(var9 != null && var9.drawSecondary); - if (var5 < Scene_cameraYTile || var5 >= Scene_cameraYTileMax - 1) { // L: 1141 + if (var5 < Scene_cameraYTile || var5 >= Scene_cameraYTileMax - 1) { break; } - var9 = var8[var4][var5 + 1]; // L: 1142 - } while(var9 != null && var9.drawSecondary); // L: 1143 + var9 = var8[var4][var5 + 1]; + } while(var9 != null && var9.drawSecondary); - var3.drawSecondary = false; // L: 1145 - --tileUpdateCount; // L: 1146 - TileItemPile var32 = var3.tileItemPile; // L: 1147 - if (var32 != null && var32.height != 0) { // L: 1148 - if (var32.second != null) { // L: 1149 - var32.second.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var32.x - Scene_cameraX, var32.tileHeight - Scene_cameraY - var32.height, var32.y - Scene_cameraZ, var32.tag); + var3.drawSecondary = false; + --tileUpdateCount; + TileItemPile var32 = var3.tileItemPile; + if (var32 != null && var32.height != 0) { + if (var32.second != null) { + var32.second.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var32.x * 4096 - Scene_cameraX, var32.tileHeight - Scene_cameraY - var32.height, var32.y * 4096 - Scene_cameraZ, var32.tag); } - if (var32.third != null) { // L: 1150 - var32.third.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var32.x - Scene_cameraX, var32.tileHeight - Scene_cameraY - var32.height, var32.y - Scene_cameraZ, var32.tag); + if (var32.third != null) { + var32.third.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var32.x * 4096 - Scene_cameraX, var32.tileHeight - Scene_cameraY - var32.height, var32.y * 4096 - Scene_cameraZ, var32.tag); } - if (var32.first != null) { // L: 1151 - var32.first.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var32.x - Scene_cameraX, var32.tileHeight - Scene_cameraY - var32.height, var32.y - Scene_cameraZ, var32.tag); + if (var32.first != null) { + var32.first.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var32.x * 4096 - Scene_cameraX, var32.tileHeight - Scene_cameraY - var32.height, var32.y * 4096 - Scene_cameraZ, var32.tag); } } - if (var3.field1671 != 0) { // L: 1153 - WallDecoration var29 = var3.wallDecoration; // L: 1154 - if (var29 != null && !this.method3325(var7, var4, var5, var29.entity1.height)) { // L: 1155 - if ((var29.orientation & var3.field1671) != 0) { // L: 1156 - var29.entity1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var29.x - Scene_cameraX + var29.xOffset, var29.tileHeight - Scene_cameraY, var29.y - Scene_cameraZ + var29.yOffset, var29.tag); // L: 1157 - } else if (var29.orientation == 256) { // L: 1159 - var11 = var29.x - Scene_cameraX; // L: 1160 - var25 = var29.tileHeight - Scene_cameraY; // L: 1161 - var24 = var29.y - Scene_cameraZ; // L: 1162 - var14 = var29.orientation2; // L: 1163 - if (var14 != 1 && var14 != 2) { // L: 1165 - var15 = var11; // L: 1166 + if (var3.field1679 != 0) { + WallDecoration var29 = var3.wallDecoration; + if (var29 != null && !this.method3213(var7, var4, var5, var29.entity1.height)) { + if ((var29.orientation & var3.field1679) != 0) { + var29.entity1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var29.xOffset + (var29.x * 4096 - Scene_cameraX), var29.tileHeight - Scene_cameraY, var29.yOffset + (var29.y * 4096 - Scene_cameraZ), var29.tag); + } else if (var29.orientation == 256) { + var11 = var29.x * 4096 - Scene_cameraX; + var25 = var29.tileHeight - Scene_cameraY; + var24 = var29.y * 4096 - Scene_cameraZ; + var14 = var29.orientation2; + if (var14 != 1 && var14 != 2) { + var15 = var11; } else { var15 = -var11; } - if (var14 != 2 && var14 != 3) { // L: 1168 - var16 = var24; // L: 1169 + if (var14 != 2 && var14 != 3) { + var16 = var24; } else { var16 = -var24; } - if (var16 >= var15) { // L: 1170 - var29.entity1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var11 + var29.xOffset, var25, var24 + var29.yOffset, var29.tag); // L: 1171 - } else if (var29.entity2 != null) { // L: 1173 - var29.entity2.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var11, var25, var24, var29.tag); // L: 1174 + if (var16 >= var15) { + var29.entity1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var11 + var29.xOffset, var25, var24 + var29.yOffset, var29.tag); + } else if (var29.entity2 != null) { + var29.entity2.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var11, var25, var24, var29.tag); } } } - BoundaryObject var27 = var3.boundaryObject; // L: 1178 - if (var27 != null) { // L: 1179 - if ((var27.orientationB & var3.field1671) != 0 && !this.method3346(var7, var4, var5, var27.orientationB)) { // L: 1180 - var27.entity2.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var27.x - Scene_cameraX, var27.tileHeight - Scene_cameraY, var27.y - Scene_cameraZ, var27.tag); + BoundaryObject var27 = var3.boundaryObject; + if (var27 != null) { + if ((var27.orientationB & var3.field1679) != 0 && !this.method3208(var7, var4, var5, var27.orientationB)) { + var27.entity2.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var27.x * 4096 - Scene_cameraX, var27.tileHeight - Scene_cameraY, var27.y * 4096 - Scene_cameraZ, var27.tag); } - if ((var27.orientationA & var3.field1671) != 0 && !this.method3346(var7, var4, var5, var27.orientationA)) { // L: 1181 - var27.entity1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var27.x - Scene_cameraX, var27.tileHeight - Scene_cameraY, var27.y - Scene_cameraZ, var27.tag); + if ((var27.orientationA & var3.field1679) != 0 && !this.method3208(var7, var4, var5, var27.orientationA)) { + var27.entity1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var27.x * 4096 - Scene_cameraX, var27.tileHeight - Scene_cameraY, var27.y * 4096 - Scene_cameraZ, var27.tag); } } } Tile var30; - if (var6 < this.planes - 1) { // L: 1184 - var30 = this.tiles[var6 + 1][var4][var5]; // L: 1185 - if (var30 != null && var30.drawSecondary) { // L: 1186 + if (var6 < this.planes - 1) { + var30 = this.tiles[var6 + 1][var4][var5]; + if (var30 != null && var30.drawSecondary) { Scene_tilesDeque.addFirst(var30); } } - if (var4 < Scene_cameraXTile) { // L: 1188 - var30 = var8[var4 + 1][var5]; // L: 1189 - if (var30 != null && var30.drawSecondary) { // L: 1190 + if (var4 < Scene_cameraXTile) { + var30 = var8[var4 + 1][var5]; + if (var30 != null && var30.drawSecondary) { Scene_tilesDeque.addFirst(var30); } } - if (var5 < Scene_cameraYTile) { // L: 1192 - var30 = var8[var4][var5 + 1]; // L: 1193 - if (var30 != null && var30.drawSecondary) { // L: 1194 + if (var5 < Scene_cameraYTile) { + var30 = var8[var4][var5 + 1]; + if (var30 != null && var30.drawSecondary) { Scene_tilesDeque.addFirst(var30); } } - if (var4 > Scene_cameraXTile) { // L: 1196 - var30 = var8[var4 - 1][var5]; // L: 1197 - if (var30 != null && var30.drawSecondary) { // L: 1198 + if (var4 > Scene_cameraXTile) { + var30 = var8[var4 - 1][var5]; + if (var30 != null && var30.drawSecondary) { Scene_tilesDeque.addFirst(var30); } } - if (var5 > Scene_cameraYTile) { // L: 1200 - var30 = var8[var4][var5 - 1]; // L: 1201 - if (var30 != null && var30.drawSecondary) { // L: 1202 + if (var5 > Scene_cameraYTile) { + var30 = var8[var4][var5 - 1]; + if (var30 != null && var30.drawSecondary) { Scene_tilesDeque.addFirst(var30); } } } } - @ObfuscatedName("as") + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "(Leu;IIIIIII)V" + descriptor = "(Lew;IIIIIII)V" ) @Export("drawTileUnderlay") void drawTileUnderlay(TilePaint var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { int var9; - int var10 = var9 = (var7 << 7) - Scene_cameraX; // L: 1210 + int var10 = var9 = (var7 << 7) - Scene_cameraX; int var11; - int var12 = var11 = (var8 << 7) - Scene_cameraZ; // L: 1212 + int var12 = var11 = (var8 << 7) - Scene_cameraZ; int var13; - int var14 = var13 = var10 + 128; // L: 1214 + int var14 = var13 = var10 + 128; int var15; - int var16 = var15 = var12 + 128; // L: 1216 - int var17 = this.tileHeights[var2][var7][var8] - Scene_cameraY; // L: 1217 - int var18 = this.tileHeights[var2][var7 + 1][var8] - Scene_cameraY; // L: 1218 - int var19 = this.tileHeights[var2][var7 + 1][var8 + 1] - Scene_cameraY; // L: 1219 - int var20 = this.tileHeights[var2][var7][var8 + 1] - Scene_cameraY; // L: 1220 - int var21 = var10 * var6 + var5 * var12 >> 16; // L: 1221 - var12 = var12 * var6 - var5 * var10 >> 16; // L: 1222 - var10 = var21; // L: 1223 - var21 = var17 * var4 - var3 * var12 >> 16; // L: 1224 - var12 = var3 * var17 + var12 * var4 >> 16; // L: 1225 - var17 = var21; // L: 1226 - if (var12 >= 50) { // L: 1227 - var21 = var14 * var6 + var5 * var11 >> 16; // L: 1228 - var11 = var11 * var6 - var5 * var14 >> 16; // L: 1229 - var14 = var21; // L: 1230 - var21 = var18 * var4 - var3 * var11 >> 16; // L: 1231 - var11 = var3 * var18 + var11 * var4 >> 16; // L: 1232 - var18 = var21; // L: 1233 - if (var11 >= 50) { // L: 1234 - var21 = var13 * var6 + var5 * var16 >> 16; // L: 1235 - var16 = var16 * var6 - var5 * var13 >> 16; // L: 1236 - var13 = var21; // L: 1237 - var21 = var19 * var4 - var3 * var16 >> 16; // L: 1238 - var16 = var3 * var19 + var16 * var4 >> 16; // L: 1239 - var19 = var21; // L: 1240 - if (var16 >= 50) { // L: 1241 - var21 = var9 * var6 + var5 * var15 >> 16; // L: 1242 - var15 = var15 * var6 - var5 * var9 >> 16; // L: 1243 - var9 = var21; // L: 1244 - var21 = var20 * var4 - var3 * var15 >> 16; // L: 1245 - var15 = var3 * var20 + var15 * var4 >> 16; // L: 1246 - if (var15 >= 50) { // L: 1248 - int var22 = var10 * Rasterizer3D.Rasterizer3D_zoom / var12 + Rasterizer3D.Rasterizer3D_clipMidX; // L: 1249 - int var23 = var17 * Rasterizer3D.Rasterizer3D_zoom / var12 + Rasterizer3D.Rasterizer3D_clipMidY; // L: 1250 - int var24 = var14 * Rasterizer3D.Rasterizer3D_zoom / var11 + Rasterizer3D.Rasterizer3D_clipMidX; // L: 1251 - int var25 = var18 * Rasterizer3D.Rasterizer3D_zoom / var11 + Rasterizer3D.Rasterizer3D_clipMidY; // L: 1252 - int var26 = var13 * Rasterizer3D.Rasterizer3D_zoom / var16 + Rasterizer3D.Rasterizer3D_clipMidX; // L: 1253 - int var27 = var19 * Rasterizer3D.Rasterizer3D_zoom / var16 + Rasterizer3D.Rasterizer3D_clipMidY; // L: 1254 - int var28 = var9 * Rasterizer3D.Rasterizer3D_zoom / var15 + Rasterizer3D.Rasterizer3D_clipMidX; // L: 1255 - int var29 = var21 * Rasterizer3D.Rasterizer3D_zoom / var15 + Rasterizer3D.Rasterizer3D_clipMidY; // L: 1256 - Rasterizer3D.Rasterizer3D_alpha = 0; // L: 1257 + int var16 = var15 = var12 + 128; + int var17 = this.tileHeights[var2][var7][var8] - Scene_cameraY; + int var18 = this.tileHeights[var2][var7 + 1][var8] - Scene_cameraY; + int var19 = this.tileHeights[var2][var7 + 1][var8 + 1] - Scene_cameraY; + int var20 = this.tileHeights[var2][var7][var8 + 1] - Scene_cameraY; + int var21 = var10 * var6 + var5 * var12 >> 16; + var12 = var12 * var6 - var5 * var10 >> 16; + var10 = var21; + var21 = var17 * var4 - var3 * var12 >> 16; + var12 = var3 * var17 + var12 * var4 >> 16; + var17 = var21; + if (var12 >= 50) { + var21 = var14 * var6 + var5 * var11 >> 16; + var11 = var11 * var6 - var5 * var14 >> 16; + var14 = var21; + var21 = var18 * var4 - var3 * var11 >> 16; + var11 = var3 * var18 + var11 * var4 >> 16; + var18 = var21; + if (var11 >= 50) { + var21 = var13 * var6 + var5 * var16 >> 16; + var16 = var16 * var6 - var5 * var13 >> 16; + var13 = var21; + var21 = var19 * var4 - var3 * var16 >> 16; + var16 = var3 * var19 + var16 * var4 >> 16; + var19 = var21; + if (var16 >= 50) { + var21 = var9 * var6 + var5 * var15 >> 16; + var15 = var15 * var6 - var5 * var9 >> 16; + var9 = var21; + var21 = var20 * var4 - var3 * var15 >> 16; + var15 = var3 * var20 + var15 * var4 >> 16; + if (var15 >= 50) { + int var22 = var10 * Rasterizer3D.Rasterizer3D_zoom / var12 + Rasterizer3D.Rasterizer3D_clipMidX; + int var23 = var17 * Rasterizer3D.Rasterizer3D_zoom / var12 + Rasterizer3D.Rasterizer3D_clipMidY; + int var24 = var14 * Rasterizer3D.Rasterizer3D_zoom / var11 + Rasterizer3D.Rasterizer3D_clipMidX; + int var25 = var18 * Rasterizer3D.Rasterizer3D_zoom / var11 + Rasterizer3D.Rasterizer3D_clipMidY; + int var26 = var13 * Rasterizer3D.Rasterizer3D_zoom / var16 + Rasterizer3D.Rasterizer3D_clipMidX; + int var27 = var19 * Rasterizer3D.Rasterizer3D_zoom / var16 + Rasterizer3D.Rasterizer3D_clipMidY; + int var28 = var9 * Rasterizer3D.Rasterizer3D_zoom / var15 + Rasterizer3D.Rasterizer3D_clipMidX; + int var29 = var21 * Rasterizer3D.Rasterizer3D_zoom / var15 + Rasterizer3D.Rasterizer3D_clipMidY; + Rasterizer3D.Rasterizer3D_alpha = 0; int var30; - if ((var26 - var28) * (var25 - var29) - (var27 - var29) * (var24 - var28) > 0) { // L: 1258 - Rasterizer3D.field1800 = false; // L: 1259 - if (var26 < 0 || var28 < 0 || var24 < 0 || var26 > Rasterizer3D.Rasterizer3D_clipWidth || var28 > Rasterizer3D.Rasterizer3D_clipWidth || var24 > Rasterizer3D.Rasterizer3D_clipWidth) { // L: 1260 - Rasterizer3D.field1800 = true; + if ((var26 - var28) * (var25 - var29) - (var27 - var29) * (var24 - var28) > 0) { + Rasterizer3D.field1791 = false; + if (var26 < 0 || var28 < 0 || var24 < 0 || var26 > Rasterizer3D.Rasterizer3D_clipWidth || var28 > Rasterizer3D.Rasterizer3D_clipWidth || var24 > Rasterizer3D.Rasterizer3D_clipWidth) { + Rasterizer3D.field1791 = true; } - if (checkClick && containsBounds(Scene_selectedScreenX, Scene_selectedScreenY, var27, var29, var25, var26, var28, var24)) { // L: 1261 - Scene_selectedX = var7; // L: 1262 - Scene_selectedY = var8; // L: 1263 + if (checkClick && containsBounds(Scene_selectedScreenX, Scene_selectedScreenY, var27, var29, var25, var26, var28, var24)) { + Scene_selectedX = var7; + Scene_selectedY = var8; } - if (var1.texture == -1) { // L: 1265 - if (var1.neColor != 12345678) { // L: 1266 - Rasterizer3D.method3155(var27, var29, var25, var26, var28, var24, var1.neColor, var1.nwColor, var1.seColor); + if (var1.texture == -1) { + if (var1.neColor != 12345678) { + Rasterizer3D.method3079(var27, var29, var25, var26, var28, var24, var1.neColor, var1.nwColor, var1.seColor); } - } else if (!Scene_isLowDetail) { // L: 1268 - if (var1.isFlat) { // L: 1269 + } else if (!Scene_isLowDetail) { + if (var1.isFlat) { Rasterizer3D.drawTexturedTile(var27, var29, var25, var26, var28, var24, var1.neColor, var1.nwColor, var1.seColor, var10, var14, var9, var17, var18, var21, var12, var11, var15, var1.texture); } else { - Rasterizer3D.drawTexturedTile(var27, var29, var25, var26, var28, var24, var1.neColor, var1.nwColor, var1.seColor, var13, var9, var14, var19, var21, var18, var16, var15, var11, var1.texture); // L: 1270 + Rasterizer3D.drawTexturedTile(var27, var29, var25, var26, var28, var24, var1.neColor, var1.nwColor, var1.seColor, var13, var9, var14, var19, var21, var18, var16, var15, var11, var1.texture); } } else { - var30 = Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var1.texture); // L: 1273 - Rasterizer3D.method3155(var27, var29, var25, var26, var28, var24, method3262(var30, var1.neColor), method3262(var30, var1.nwColor), method3262(var30, var1.seColor)); // L: 1274 + var30 = Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var1.texture); + Rasterizer3D.method3079(var27, var29, var25, var26, var28, var24, method3204(var30, var1.neColor), method3204(var30, var1.nwColor), method3204(var30, var1.seColor)); } } - if ((var22 - var24) * (var29 - var25) - (var23 - var25) * (var28 - var24) > 0) { // L: 1277 - Rasterizer3D.field1800 = false; // L: 1278 - if (var22 < 0 || var24 < 0 || var28 < 0 || var22 > Rasterizer3D.Rasterizer3D_clipWidth || var24 > Rasterizer3D.Rasterizer3D_clipWidth || var28 > Rasterizer3D.Rasterizer3D_clipWidth) { // L: 1279 - Rasterizer3D.field1800 = true; + if ((var22 - var24) * (var29 - var25) - (var23 - var25) * (var28 - var24) > 0) { + Rasterizer3D.field1791 = false; + if (var22 < 0 || var24 < 0 || var28 < 0 || var22 > Rasterizer3D.Rasterizer3D_clipWidth || var24 > Rasterizer3D.Rasterizer3D_clipWidth || var28 > Rasterizer3D.Rasterizer3D_clipWidth) { + Rasterizer3D.field1791 = true; } - if (checkClick && containsBounds(Scene_selectedScreenX, Scene_selectedScreenY, var23, var25, var29, var22, var24, var28)) { // L: 1280 - Scene_selectedX = var7; // L: 1281 - Scene_selectedY = var8; // L: 1282 + if (checkClick && containsBounds(Scene_selectedScreenX, Scene_selectedScreenY, var23, var25, var29, var22, var24, var28)) { + Scene_selectedX = var7; + Scene_selectedY = var8; } - if (var1.texture == -1) { // L: 1284 - if (var1.swColor != 12345678) { // L: 1285 - Rasterizer3D.method3155(var23, var25, var29, var22, var24, var28, var1.swColor, var1.seColor, var1.nwColor); + if (var1.texture == -1) { + if (var1.swColor != 12345678) { + Rasterizer3D.method3079(var23, var25, var29, var22, var24, var28, var1.swColor, var1.seColor, var1.nwColor); } - } else if (!Scene_isLowDetail) { // L: 1287 - Rasterizer3D.drawTexturedTile(var23, var25, var29, var22, var24, var28, var1.swColor, var1.seColor, var1.nwColor, var10, var14, var9, var17, var18, var21, var12, var11, var15, var1.texture); // L: 1288 + } else if (!Scene_isLowDetail) { + Rasterizer3D.drawTexturedTile(var23, var25, var29, var22, var24, var28, var1.swColor, var1.seColor, var1.nwColor, var10, var14, var9, var17, var18, var21, var12, var11, var15, var1.texture); } else { - var30 = Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var1.texture); // L: 1291 - Rasterizer3D.method3155(var23, var25, var29, var22, var24, var28, method3262(var30, var1.swColor), method3262(var30, var1.seColor), method3262(var30, var1.nwColor)); // L: 1292 + var30 = Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var1.texture); + Rasterizer3D.method3079(var23, var25, var29, var22, var24, var28, method3204(var30, var1.swColor), method3204(var30, var1.seColor), method3204(var30, var1.nwColor)); } } @@ -1895,566 +1889,566 @@ public class Scene { } } } - } // L: 1295 + } - @ObfuscatedName("aj") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(Leq;IIIIII)V" ) @Export("drawTileOverlay") void drawTileOverlay(TileModel var1, int var2, int var3, int var4, int var5, int var6, int var7) { - int var8 = var1.vertexX.length; // L: 1298 + int var8 = var1.vertexX.length; int var9; int var10; int var11; int var12; int var13; - for (var9 = 0; var9 < var8; ++var9) { // L: 1299 - var10 = var1.vertexX[var9] - Scene_cameraX; // L: 1300 - var11 = var1.vertexY[var9] - Scene_cameraY; // L: 1301 - var12 = var1.vertexZ[var9] - Scene_cameraZ; // L: 1302 - var13 = var12 * var4 + var5 * var10 >> 16; // L: 1303 - var12 = var5 * var12 - var10 * var4 >> 16; // L: 1304 - var10 = var13; // L: 1305 - var13 = var3 * var11 - var12 * var2 >> 16; // L: 1306 - var12 = var11 * var2 + var3 * var12 >> 16; // L: 1307 - if (var12 < 50) { // L: 1309 + for (var9 = 0; var9 < var8; ++var9) { + var10 = var1.vertexX[var9] - Scene_cameraX; + var11 = var1.vertexY[var9] - Scene_cameraY; + var12 = var1.vertexZ[var9] - Scene_cameraZ; + var13 = var12 * var4 + var5 * var10 >> 16; + var12 = var5 * var12 - var10 * var4 >> 16; + var10 = var13; + var13 = var3 * var11 - var12 * var2 >> 16; + var12 = var11 * var2 + var3 * var12 >> 16; + if (var12 < 50) { return; } - if (var1.triangleTextureId != null) { // L: 1310 - TileModel.field1630[var9] = var10; // L: 1311 - TileModel.field1627[var9] = var13; // L: 1312 - TileModel.field1632[var9] = var12; // L: 1313 + if (var1.triangleTextureId != null) { + TileModel.field1610[var9] = var10; + TileModel.field1621[var9] = var13; + TileModel.field1622[var9] = var12; } - TileModel.field1628[var9] = var10 * Rasterizer3D.Rasterizer3D_zoom / var12 + Rasterizer3D.Rasterizer3D_clipMidX; // L: 1315 - TileModel.field1634[var9] = var13 * Rasterizer3D.Rasterizer3D_zoom / var12 + Rasterizer3D.Rasterizer3D_clipMidY; // L: 1316 + TileModel.field1618[var9] = var10 * Rasterizer3D.Rasterizer3D_zoom / var12 + Rasterizer3D.Rasterizer3D_clipMidX; + TileModel.field1619[var9] = var13 * Rasterizer3D.Rasterizer3D_zoom / var12 + Rasterizer3D.Rasterizer3D_clipMidY; } - Rasterizer3D.Rasterizer3D_alpha = 0; // L: 1318 - var8 = var1.faceX.length; // L: 1319 + Rasterizer3D.Rasterizer3D_alpha = 0; + var8 = var1.faceX.length; - for (var9 = 0; var9 < var8; ++var9) { // L: 1320 - var10 = var1.faceX[var9]; // L: 1321 - var11 = var1.faceY[var9]; // L: 1322 - var12 = var1.faceZ[var9]; // L: 1323 - var13 = TileModel.field1628[var10]; // L: 1324 - int var14 = TileModel.field1628[var11]; // L: 1325 - int var15 = TileModel.field1628[var12]; // L: 1326 - int var16 = TileModel.field1634[var10]; // L: 1327 - int var17 = TileModel.field1634[var11]; // L: 1328 - int var18 = TileModel.field1634[var12]; // L: 1329 - if ((var13 - var14) * (var18 - var17) - (var16 - var17) * (var15 - var14) > 0) { // L: 1330 - Rasterizer3D.field1800 = false; // L: 1331 - if (var13 < 0 || var14 < 0 || var15 < 0 || var13 > Rasterizer3D.Rasterizer3D_clipWidth || var14 > Rasterizer3D.Rasterizer3D_clipWidth || var15 > Rasterizer3D.Rasterizer3D_clipWidth) { // L: 1332 - Rasterizer3D.field1800 = true; + for (var9 = 0; var9 < var8; ++var9) { + var10 = var1.faceX[var9]; + var11 = var1.faceY[var9]; + var12 = var1.faceZ[var9]; + var13 = TileModel.field1618[var10]; + int var14 = TileModel.field1618[var11]; + int var15 = TileModel.field1618[var12]; + int var16 = TileModel.field1619[var10]; + int var17 = TileModel.field1619[var11]; + int var18 = TileModel.field1619[var12]; + if ((var13 - var14) * (var18 - var17) - (var16 - var17) * (var15 - var14) > 0) { + Rasterizer3D.field1791 = false; + if (var13 < 0 || var14 < 0 || var15 < 0 || var13 > Rasterizer3D.Rasterizer3D_clipWidth || var14 > Rasterizer3D.Rasterizer3D_clipWidth || var15 > Rasterizer3D.Rasterizer3D_clipWidth) { + Rasterizer3D.field1791 = true; } - if (checkClick && containsBounds(Scene_selectedScreenX, Scene_selectedScreenY, var16, var17, var18, var13, var14, var15)) { // L: 1333 - Scene_selectedX = var6; // L: 1334 - Scene_selectedY = var7; // L: 1335 + if (checkClick && containsBounds(Scene_selectedScreenX, Scene_selectedScreenY, var16, var17, var18, var13, var14, var15)) { + Scene_selectedX = var6; + Scene_selectedY = var7; } - if (var1.triangleTextureId != null && var1.triangleTextureId[var9] != -1) { // L: 1337 - if (!Scene_isLowDetail) { // L: 1341 - if (var1.isFlat) { // L: 1342 - Rasterizer3D.drawTexturedTile(var16, var17, var18, var13, var14, var15, var1.triangleColorA[var9], var1.triangleColorB[var9], var1.triangleColorC[var9], TileModel.field1630[0], TileModel.field1630[1], TileModel.field1630[3], TileModel.field1627[0], TileModel.field1627[1], TileModel.field1627[3], TileModel.field1632[0], TileModel.field1632[1], TileModel.field1632[3], var1.triangleTextureId[var9]); + if (var1.triangleTextureId != null && var1.triangleTextureId[var9] != -1) { + if (!Scene_isLowDetail) { + if (var1.isFlat) { + Rasterizer3D.drawTexturedTile(var16, var17, var18, var13, var14, var15, var1.triangleColorA[var9], var1.triangleColorB[var9], var1.triangleColorC[var9], TileModel.field1610[0], TileModel.field1610[1], TileModel.field1610[3], TileModel.field1621[0], TileModel.field1621[1], TileModel.field1621[3], TileModel.field1622[0], TileModel.field1622[1], TileModel.field1622[3], var1.triangleTextureId[var9]); } else { - Rasterizer3D.drawTexturedTile(var16, var17, var18, var13, var14, var15, var1.triangleColorA[var9], var1.triangleColorB[var9], var1.triangleColorC[var9], TileModel.field1630[var10], TileModel.field1630[var11], TileModel.field1630[var12], TileModel.field1627[var10], TileModel.field1627[var11], TileModel.field1627[var12], TileModel.field1632[var10], TileModel.field1632[var11], TileModel.field1632[var12], var1.triangleTextureId[var9]); // L: 1343 + Rasterizer3D.drawTexturedTile(var16, var17, var18, var13, var14, var15, var1.triangleColorA[var9], var1.triangleColorB[var9], var1.triangleColorC[var9], TileModel.field1610[var10], TileModel.field1610[var11], TileModel.field1610[var12], TileModel.field1621[var10], TileModel.field1621[var11], TileModel.field1621[var12], TileModel.field1622[var10], TileModel.field1622[var11], TileModel.field1622[var12], var1.triangleTextureId[var9]); } } else { - int var19 = Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var1.triangleTextureId[var9]); // L: 1346 - Rasterizer3D.method3155(var16, var17, var18, var13, var14, var15, method3262(var19, var1.triangleColorA[var9]), method3262(var19, var1.triangleColorB[var9]), method3262(var19, var1.triangleColorC[var9])); // L: 1347 + int var19 = Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var1.triangleTextureId[var9]); + Rasterizer3D.method3079(var16, var17, var18, var13, var14, var15, method3204(var19, var1.triangleColorA[var9]), method3204(var19, var1.triangleColorB[var9]), method3204(var19, var1.triangleColorC[var9])); } - } else if (var1.triangleColorA[var9] != 12345678) { // L: 1338 - Rasterizer3D.method3155(var16, var17, var18, var13, var14, var15, var1.triangleColorA[var9], var1.triangleColorB[var9], var1.triangleColorC[var9]); + } else if (var1.triangleColorA[var9] != 12345678) { + Rasterizer3D.method3079(var16, var17, var18, var13, var14, var15, var1.triangleColorA[var9], var1.triangleColorB[var9], var1.triangleColorC[var9]); } } } - } // L: 1352 + } - @ObfuscatedName("ap") + @ObfuscatedName("bh") @Export("occlude") void occlude() { - int var1 = Scene_planeOccluderCounts[Scene_plane]; // L: 1379 - Occluder[] var2 = Scene_planeOccluders[Scene_plane]; // L: 1380 - Scene_currentOccludersCount = 0; // L: 1381 + int var1 = Scene_planeOccluderCounts[Scene_plane]; + Occluder[] var2 = Scene_planeOccluders[Scene_plane]; + Scene_currentOccludersCount = 0; - for (int var3 = 0; var3 < var1; ++var3) { // L: 1382 - Occluder var4 = var2[var3]; // L: 1383 + for (int var3 = 0; var3 < var1; ++var3) { + Occluder var4 = var2[var3]; int var5; int var6; int var7; int var9; boolean var13; - if (var4.type == 1) { // L: 1384 - var5 = var4.minTileX - Scene_cameraXTile + 25; // L: 1385 - if (var5 >= 0 && var5 <= 50) { // L: 1386 - var6 = var4.minTileY - Scene_cameraYTile + 25; // L: 1387 - if (var6 < 0) { // L: 1388 + if (var4.type == 1) { + var5 = var4.minTileX - Scene_cameraXTile + 25; + if (var5 >= 0 && var5 <= 50) { + var6 = var4.minTileY - Scene_cameraYTile + 25; + if (var6 < 0) { var6 = 0; } - var7 = var4.maxTileY - Scene_cameraYTile + 25; // L: 1389 - if (var7 > 50) { // L: 1390 + var7 = var4.maxTileY - Scene_cameraYTile + 25; + if (var7 > 50) { var7 = 50; } - var13 = false; // L: 1391 + var13 = false; - while (var6 <= var7) { // L: 1392 - if (visibleTiles[var5][var6++]) { // L: 1393 - var13 = true; // L: 1394 + while (var6 <= var7) { + if (visibleTiles[var5][var6++]) { + var13 = true; break; } } - if (var13) { // L: 1398 - var9 = Scene_cameraX - var4.minX; // L: 1399 - if (var9 > 32) { // L: 1400 - var4.field1931 = 1; + if (var13) { + var9 = Scene_cameraX - var4.minX; + if (var9 > 32) { + var4.field1921 = 1; } else { - if (var9 >= -32) { // L: 1401 + if (var9 >= -32) { continue; } - var4.field1931 = 2; // L: 1402 - var9 = -var9; // L: 1403 + var4.field1921 = 2; + var9 = -var9; } - var4.field1920 = (var4.minZ - Scene_cameraZ << 8) / var9; // L: 1406 - var4.field1932 = (var4.maxZ - Scene_cameraZ << 8) / var9; // L: 1407 - var4.field1936 = (var4.minY - Scene_cameraY << 8) / var9; // L: 1408 - var4.field1937 = (var4.maxY - Scene_cameraY << 8) / var9; // L: 1409 - Scene_currentOccluders[Scene_currentOccludersCount++] = var4; // L: 1410 + var4.field1924 = (var4.minZ - Scene_cameraZ << 8) / var9; + var4.field1929 = (var4.maxZ - Scene_cameraZ << 8) / var9; + var4.field1926 = (var4.minY - Scene_cameraY << 8) / var9; + var4.field1927 = (var4.maxY - Scene_cameraY << 8) / var9; + Scene_currentOccluders[Scene_currentOccludersCount++] = var4; } } - } else if (var4.type == 2) { // L: 1413 - var5 = var4.minTileY - Scene_cameraYTile + 25; // L: 1414 - if (var5 >= 0 && var5 <= 50) { // L: 1415 - var6 = var4.minTileX - Scene_cameraXTile + 25; // L: 1416 - if (var6 < 0) { // L: 1417 + } else if (var4.type == 2) { + var5 = var4.minTileY - Scene_cameraYTile + 25; + if (var5 >= 0 && var5 <= 50) { + var6 = var4.minTileX - Scene_cameraXTile + 25; + if (var6 < 0) { var6 = 0; } - var7 = var4.maxTileX - Scene_cameraXTile + 25; // L: 1418 - if (var7 > 50) { // L: 1419 + var7 = var4.maxTileX - Scene_cameraXTile + 25; + if (var7 > 50) { var7 = 50; } - var13 = false; // L: 1420 + var13 = false; - while (var6 <= var7) { // L: 1421 - if (visibleTiles[var6++][var5]) { // L: 1422 - var13 = true; // L: 1423 + while (var6 <= var7) { + if (visibleTiles[var6++][var5]) { + var13 = true; break; } } - if (var13) { // L: 1427 - var9 = Scene_cameraZ - var4.minZ; // L: 1428 - if (var9 > 32) { // L: 1429 - var4.field1931 = 3; + if (var13) { + var9 = Scene_cameraZ - var4.minZ; + if (var9 > 32) { + var4.field1921 = 3; } else { - if (var9 >= -32) { // L: 1430 + if (var9 >= -32) { continue; } - var4.field1931 = 4; // L: 1431 - var9 = -var9; // L: 1432 + var4.field1921 = 4; + var9 = -var9; } - var4.field1925 = (var4.minX - Scene_cameraX << 8) / var9; // L: 1435 - var4.field1933 = (var4.maxX - Scene_cameraX << 8) / var9; // L: 1436 - var4.field1936 = (var4.minY - Scene_cameraY << 8) / var9; // L: 1437 - var4.field1937 = (var4.maxY - Scene_cameraY << 8) / var9; // L: 1438 - Scene_currentOccluders[Scene_currentOccludersCount++] = var4; // L: 1439 + var4.field1925 = (var4.minX - Scene_cameraX << 8) / var9; + var4.field1923 = (var4.maxX - Scene_cameraX << 8) / var9; + var4.field1926 = (var4.minY - Scene_cameraY << 8) / var9; + var4.field1927 = (var4.maxY - Scene_cameraY << 8) / var9; + Scene_currentOccluders[Scene_currentOccludersCount++] = var4; } } - } else if (var4.type == 4) { // L: 1442 - var5 = var4.minY - Scene_cameraY; // L: 1443 - if (var5 > 128) { // L: 1444 - var6 = var4.minTileY - Scene_cameraYTile + 25; // L: 1445 - if (var6 < 0) { // L: 1446 + } else if (var4.type == 4) { + var5 = var4.minY - Scene_cameraY; + if (var5 > 128) { + var6 = var4.minTileY - Scene_cameraYTile + 25; + if (var6 < 0) { var6 = 0; } - var7 = var4.maxTileY - Scene_cameraYTile + 25; // L: 1447 - if (var7 > 50) { // L: 1448 + var7 = var4.maxTileY - Scene_cameraYTile + 25; + if (var7 > 50) { var7 = 50; } - if (var6 <= var7) { // L: 1449 - int var8 = var4.minTileX - Scene_cameraXTile + 25; // L: 1450 - if (var8 < 0) { // L: 1451 + if (var6 <= var7) { + int var8 = var4.minTileX - Scene_cameraXTile + 25; + if (var8 < 0) { var8 = 0; } - var9 = var4.maxTileX - Scene_cameraXTile + 25; // L: 1452 - if (var9 > 50) { // L: 1453 + var9 = var4.maxTileX - Scene_cameraXTile + 25; + if (var9 > 50) { var9 = 50; } - boolean var10 = false; // L: 1454 + boolean var10 = false; - label148: - for (int var11 = var8; var11 <= var9; ++var11) { // L: 1455 - for (int var12 = var6; var12 <= var7; ++var12) { // L: 1456 - if (visibleTiles[var11][var12]) { // L: 1457 - var10 = true; // L: 1458 - break label148; + label149: + for (int var11 = var8; var11 <= var9; ++var11) { + for (int var12 = var6; var12 <= var7; ++var12) { + if (visibleTiles[var11][var12]) { + var10 = true; + break label149; } } } - if (var10) { // L: 1463 - var4.field1931 = 5; // L: 1464 - var4.field1925 = (var4.minX - Scene_cameraX << 8) / var5; // L: 1465 - var4.field1933 = (var4.maxX - Scene_cameraX << 8) / var5; // L: 1466 - var4.field1920 = (var4.minZ - Scene_cameraZ << 8) / var5; // L: 1467 - var4.field1932 = (var4.maxZ - Scene_cameraZ << 8) / var5; // L: 1468 - Scene_currentOccluders[Scene_currentOccludersCount++] = var4; // L: 1469 + if (var10) { + var4.field1921 = 5; + var4.field1925 = (var4.minX - Scene_cameraX << 8) / var5; + var4.field1923 = (var4.maxX - Scene_cameraX << 8) / var5; + var4.field1924 = (var4.minZ - Scene_cameraZ << 8) / var5; + var4.field1929 = (var4.maxZ - Scene_cameraZ << 8) / var5; + Scene_currentOccluders[Scene_currentOccludersCount++] = var4; } } } } } - } // L: 1473 + } - @ObfuscatedName("ad") - boolean method3265(int var1, int var2, int var3) { - int var4 = this.field1837[var1][var2][var3]; // L: 1476 - if (var4 == -Scene_drawnCount) { // L: 1477 + @ObfuscatedName("by") + boolean method3291(int var1, int var2, int var3) { + int var4 = this.field1833[var1][var2][var3]; + if (var4 == -Scene_drawnCount) { return false; - } else if (var4 == Scene_drawnCount) { // L: 1478 + } else if (var4 == Scene_drawnCount) { return true; } else { - int var5 = var2 << 7; // L: 1479 - int var6 = var3 << 7; // L: 1480 - if (this.method3269(var5 + 1, this.tileHeights[var1][var2][var3], var6 + 1) && this.method3269(var5 + 128 - 1, this.tileHeights[var1][var2 + 1][var3], var6 + 1) && this.method3269(var5 + 128 - 1, this.tileHeights[var1][var2 + 1][var3 + 1], var6 + 128 - 1) && this.method3269(var5 + 1, this.tileHeights[var1][var2][var3 + 1], var6 + 128 - 1)) { // L: 1481 - this.field1837[var1][var2][var3] = Scene_drawnCount; // L: 1482 - return true; // L: 1483 + int var5 = var2 << 7; + int var6 = var3 << 7; + if (this.method3211(var5 + 1, this.tileHeights[var1][var2][var3], var6 + 1) && this.method3211(var5 + 128 - 1, this.tileHeights[var1][var2 + 1][var3], var6 + 1) && this.method3211(var5 + 128 - 1, this.tileHeights[var1][var2 + 1][var3 + 1], var6 + 128 - 1) && this.method3211(var5 + 1, this.tileHeights[var1][var2][var3 + 1], var6 + 128 - 1)) { + this.field1833[var1][var2][var3] = Scene_drawnCount; + return true; } else { - this.field1837[var1][var2][var3] = -Scene_drawnCount; // L: 1486 - return false; // L: 1487 - } - } - } - - @ObfuscatedName("bb") - boolean method3346(int var1, int var2, int var3, int var4) { - if (!this.method3265(var1, var2, var3)) { // L: 1492 - return false; - } else { - int var5 = var2 << 7; // L: 1493 - int var6 = var3 << 7; // L: 1494 - int var7 = this.tileHeights[var1][var2][var3] - 1; // L: 1495 - int var8 = var7 - 120; // L: 1496 - int var9 = var7 - 230; // L: 1497 - int var10 = var7 - 238; // L: 1498 - if (var4 < 16) { // L: 1499 - if (var4 == 1) { // L: 1500 - if (var5 > Scene_cameraX) { // L: 1501 - if (!this.method3269(var5, var7, var6)) { // L: 1502 - return false; - } - - if (!this.method3269(var5, var7, var6 + 128)) { // L: 1503 - return false; - } - } - - if (var1 > 0) { // L: 1505 - if (!this.method3269(var5, var8, var6)) { // L: 1506 - return false; - } - - if (!this.method3269(var5, var8, var6 + 128)) { // L: 1507 - return false; - } - } - - if (!this.method3269(var5, var9, var6)) { // L: 1509 - return false; - } - - if (!this.method3269(var5, var9, var6 + 128)) { // L: 1510 - return false; - } - - return true; // L: 1511 - } - - if (var4 == 2) { // L: 1513 - if (var6 < Scene_cameraZ) { // L: 1514 - if (!this.method3269(var5, var7, var6 + 128)) { // L: 1515 - return false; - } - - if (!this.method3269(var5 + 128, var7, var6 + 128)) { // L: 1516 - return false; - } - } - - if (var1 > 0) { // L: 1518 - if (!this.method3269(var5, var8, var6 + 128)) { // L: 1519 - return false; - } - - if (!this.method3269(var5 + 128, var8, var6 + 128)) { // L: 1520 - return false; - } - } - - if (!this.method3269(var5, var9, var6 + 128)) { // L: 1522 - return false; - } - - if (!this.method3269(var5 + 128, var9, var6 + 128)) { // L: 1523 - return false; - } - - return true; // L: 1524 - } - - if (var4 == 4) { // L: 1526 - if (var5 < Scene_cameraX) { // L: 1527 - if (!this.method3269(var5 + 128, var7, var6)) { // L: 1528 - return false; - } - - if (!this.method3269(var5 + 128, var7, var6 + 128)) { // L: 1529 - return false; - } - } - - if (var1 > 0) { // L: 1531 - if (!this.method3269(var5 + 128, var8, var6)) { // L: 1532 - return false; - } - - if (!this.method3269(var5 + 128, var8, var6 + 128)) { // L: 1533 - return false; - } - } - - if (!this.method3269(var5 + 128, var9, var6)) { // L: 1535 - return false; - } - - if (!this.method3269(var5 + 128, var9, var6 + 128)) { // L: 1536 - return false; - } - - return true; // L: 1537 - } - - if (var4 == 8) { // L: 1539 - if (var6 > Scene_cameraZ) { // L: 1540 - if (!this.method3269(var5, var7, var6)) { // L: 1541 - return false; - } - - if (!this.method3269(var5 + 128, var7, var6)) { // L: 1542 - return false; - } - } - - if (var1 > 0) { // L: 1544 - if (!this.method3269(var5, var8, var6)) { // L: 1545 - return false; - } - - if (!this.method3269(var5 + 128, var8, var6)) { // L: 1546 - return false; - } - } - - if (!this.method3269(var5, var9, var6)) { // L: 1548 - return false; - } - - if (!this.method3269(var5 + 128, var9, var6)) { // L: 1549 - return false; - } - - return true; // L: 1550 - } - } - - if (!this.method3269(var5 + 64, var10, var6 + 64)) { // L: 1553 + this.field1833[var1][var2][var3] = -Scene_drawnCount; return false; - } else if (var4 == 16) { // L: 1554 - return this.method3269(var5, var9, var6 + 128); // L: 1555 - } else if (var4 == 32) { // L: 1558 - return this.method3269(var5 + 128, var9, var6 + 128); // L: 1559 - } else if (var4 == 64) { // L: 1562 - return this.method3269(var5 + 128, var9, var6); // L: 1563 - } else if (var4 == 128) { // L: 1566 - return this.method3269(var5, var9, var6); // L: 1567 - } else { - return true; // L: 1570 } } } - @ObfuscatedName("bf") - boolean method3325(int var1, int var2, int var3, int var4) { - if (!this.method3265(var1, var2, var3)) { // L: 1574 + @ObfuscatedName("bs") + boolean method3208(int var1, int var2, int var3, int var4) { + if (!this.method3291(var1, var2, var3)) { return false; } else { - int var5 = var2 << 7; // L: 1575 - int var6 = var3 << 7; // L: 1576 - return this.method3269(var5 + 1, this.tileHeights[var1][var2][var3] - var4, var6 + 1) && this.method3269(var5 + 128 - 1, this.tileHeights[var1][var2 + 1][var3] - var4, var6 + 1) && this.method3269(var5 + 128 - 1, this.tileHeights[var1][var2 + 1][var3 + 1] - var4, var6 + 128 - 1) && this.method3269(var5 + 1, this.tileHeights[var1][var2][var3 + 1] - var4, var6 + 128 - 1); // L: 1577 + int var5 = var2 << 7; + int var6 = var3 << 7; + int var7 = this.tileHeights[var1][var2][var3] - 1; + int var8 = var7 - 120; + int var9 = var7 - 230; + int var10 = var7 - 238; + if (var4 < 16) { + if (var4 == 1) { + if (var5 > Scene_cameraX) { + if (!this.method3211(var5, var7, var6)) { + return false; + } + + if (!this.method3211(var5, var7, var6 + 128)) { + return false; + } + } + + if (var1 > 0) { + if (!this.method3211(var5, var8, var6)) { + return false; + } + + if (!this.method3211(var5, var8, var6 + 128)) { + return false; + } + } + + if (!this.method3211(var5, var9, var6)) { + return false; + } + + if (!this.method3211(var5, var9, var6 + 128)) { + return false; + } + + return true; + } + + if (var4 == 2) { + if (var6 < Scene_cameraZ) { + if (!this.method3211(var5, var7, var6 + 128)) { + return false; + } + + if (!this.method3211(var5 + 128, var7, var6 + 128)) { + return false; + } + } + + if (var1 > 0) { + if (!this.method3211(var5, var8, var6 + 128)) { + return false; + } + + if (!this.method3211(var5 + 128, var8, var6 + 128)) { + return false; + } + } + + if (!this.method3211(var5, var9, var6 + 128)) { + return false; + } + + if (!this.method3211(var5 + 128, var9, var6 + 128)) { + return false; + } + + return true; + } + + if (var4 == 4) { + if (var5 < Scene_cameraX) { + if (!this.method3211(var5 + 128, var7, var6)) { + return false; + } + + if (!this.method3211(var5 + 128, var7, var6 + 128)) { + return false; + } + } + + if (var1 > 0) { + if (!this.method3211(var5 + 128, var8, var6)) { + return false; + } + + if (!this.method3211(var5 + 128, var8, var6 + 128)) { + return false; + } + } + + if (!this.method3211(var5 + 128, var9, var6)) { + return false; + } + + if (!this.method3211(var5 + 128, var9, var6 + 128)) { + return false; + } + + return true; + } + + if (var4 == 8) { + if (var6 > Scene_cameraZ) { + if (!this.method3211(var5, var7, var6)) { + return false; + } + + if (!this.method3211(var5 + 128, var7, var6)) { + return false; + } + } + + if (var1 > 0) { + if (!this.method3211(var5, var8, var6)) { + return false; + } + + if (!this.method3211(var5 + 128, var8, var6)) { + return false; + } + } + + if (!this.method3211(var5, var9, var6)) { + return false; + } + + if (!this.method3211(var5 + 128, var9, var6)) { + return false; + } + + return true; + } + } + + if (!this.method3211(var5 + 64, var10, var6 + 64)) { + return false; + } else if (var4 == 16) { + return this.method3211(var5, var9, var6 + 128); + } else if (var4 == 32) { + return this.method3211(var5 + 128, var9, var6 + 128); + } else if (var4 == 64) { + return this.method3211(var5 + 128, var9, var6); + } else if (var4 == 128) { + return this.method3211(var5, var9, var6); + } else { + return true; + } } } - @ObfuscatedName("bp") - boolean method3343(int var1, int var2, int var3, int var4, int var5, int var6) { + @ObfuscatedName("br") + boolean method3213(int var1, int var2, int var3, int var4) { + if (!this.method3291(var1, var2, var3)) { + return false; + } else { + int var5 = var2 << 7; + int var6 = var3 << 7; + return this.method3211(var5 + 1, this.tileHeights[var1][var2][var3] - var4, var6 + 1) && this.method3211(var5 + 128 - 1, this.tileHeights[var1][var2 + 1][var3] - var4, var6 + 1) && this.method3211(var5 + 128 - 1, this.tileHeights[var1][var2 + 1][var3 + 1] - var4, var6 + 128 - 1) && this.method3211(var5 + 1, this.tileHeights[var1][var2][var3 + 1] - var4, var6 + 128 - 1); + } + } + + @ObfuscatedName("bl") + boolean method3210(int var1, int var2, int var3, int var4, int var5, int var6) { int var7; int var8; - if (var3 == var2 && var5 == var4) { // L: 1582 - if (!this.method3265(var1, var2, var4)) { // L: 1583 + if (var3 == var2 && var5 == var4) { + if (!this.method3291(var1, var2, var4)) { return false; } else { - var7 = var2 << 7; // L: 1584 - var8 = var4 << 7; // L: 1585 - return this.method3269(var7 + 1, this.tileHeights[var1][var2][var4] - var6, var8 + 1) && this.method3269(var7 + 128 - 1, this.tileHeights[var1][var2 + 1][var4] - var6, var8 + 1) && this.method3269(var7 + 128 - 1, this.tileHeights[var1][var2 + 1][var4 + 1] - var6, var8 + 128 - 1) && this.method3269(var7 + 1, this.tileHeights[var1][var2][var4 + 1] - var6, var8 + 128 - 1); // L: 1586 + var7 = var2 << 7; + var8 = var4 << 7; + return this.method3211(var7 + 1, this.tileHeights[var1][var2][var4] - var6, var8 + 1) && this.method3211(var7 + 128 - 1, this.tileHeights[var1][var2 + 1][var4] - var6, var8 + 1) && this.method3211(var7 + 128 - 1, this.tileHeights[var1][var2 + 1][var4 + 1] - var6, var8 + 128 - 1) && this.method3211(var7 + 1, this.tileHeights[var1][var2][var4 + 1] - var6, var8 + 128 - 1); } } else { - for (var7 = var2; var7 <= var3; ++var7) { // L: 1589 - for (var8 = var4; var8 <= var5; ++var8) { // L: 1590 - if (this.field1837[var1][var7][var8] == -Scene_drawnCount) { // L: 1591 + for (var7 = var2; var7 <= var3; ++var7) { + for (var8 = var4; var8 <= var5; ++var8) { + if (this.field1833[var1][var7][var8] == -Scene_drawnCount) { return false; } } } - var7 = (var2 << 7) + 1; // L: 1594 - var8 = (var4 << 7) + 2; // L: 1595 - int var9 = this.tileHeights[var1][var2][var4] - var6; // L: 1596 - if (!this.method3269(var7, var9, var8)) { // L: 1597 + var7 = (var2 << 7) + 1; + var8 = (var4 << 7) + 2; + int var9 = this.tileHeights[var1][var2][var4] - var6; + if (!this.method3211(var7, var9, var8)) { return false; } else { - int var10 = (var3 << 7) - 1; // L: 1598 - if (!this.method3269(var10, var9, var8)) { // L: 1599 + int var10 = (var3 << 7) - 1; + if (!this.method3211(var10, var9, var8)) { return false; } else { - int var11 = (var5 << 7) - 1; // L: 1600 - if (!this.method3269(var7, var9, var11)) { // L: 1601 + int var11 = (var5 << 7) - 1; + if (!this.method3211(var7, var9, var11)) { return false; - } else if (!this.method3269(var10, var9, var11)) { // L: 1602 + } else if (!this.method3211(var10, var9, var11)) { return false; } else { - return true; // L: 1603 + return true; } } } } } - @ObfuscatedName("bg") - boolean method3269(int var1, int var2, int var3) { - for (int var4 = 0; var4 < Scene_currentOccludersCount; ++var4) { // L: 1607 - Occluder var5 = Scene_currentOccluders[var4]; // L: 1608 + @ObfuscatedName("bx") + boolean method3211(int var1, int var2, int var3) { + for (int var4 = 0; var4 < Scene_currentOccludersCount; ++var4) { + Occluder var5 = Scene_currentOccluders[var4]; int var6; int var7; int var8; int var9; int var10; - if (var5.field1931 == 1) { // L: 1609 - var6 = var5.minX - var1; // L: 1610 - if (var6 > 0) { // L: 1611 - var7 = (var6 * var5.field1920 >> 8) + var5.minZ; // L: 1612 - var8 = (var6 * var5.field1932 >> 8) + var5.maxZ; // L: 1613 - var9 = (var6 * var5.field1936 >> 8) + var5.minY; // L: 1614 - var10 = (var6 * var5.field1937 >> 8) + var5.maxY; // L: 1615 - if (var3 >= var7 && var3 <= var8 && var2 >= var9 && var2 <= var10) { // L: 1616 + if (var5.field1921 == 1) { + var6 = var5.minX - var1; + if (var6 > 0) { + var7 = (var6 * var5.field1924 >> 8) + var5.minZ; + var8 = (var6 * var5.field1929 >> 8) + var5.maxZ; + var9 = (var6 * var5.field1926 >> 8) + var5.minY; + var10 = (var6 * var5.field1927 >> 8) + var5.maxY; + if (var3 >= var7 && var3 <= var8 && var2 >= var9 && var2 <= var10) { return true; } } - } else if (var5.field1931 == 2) { // L: 1620 - var6 = var1 - var5.minX; // L: 1621 - if (var6 > 0) { // L: 1622 - var7 = (var6 * var5.field1920 >> 8) + var5.minZ; // L: 1623 - var8 = (var6 * var5.field1932 >> 8) + var5.maxZ; // L: 1624 - var9 = (var6 * var5.field1936 >> 8) + var5.minY; // L: 1625 - var10 = (var6 * var5.field1937 >> 8) + var5.maxY; // L: 1626 - if (var3 >= var7 && var3 <= var8 && var2 >= var9 && var2 <= var10) { // L: 1627 + } else if (var5.field1921 == 2) { + var6 = var1 - var5.minX; + if (var6 > 0) { + var7 = (var6 * var5.field1924 >> 8) + var5.minZ; + var8 = (var6 * var5.field1929 >> 8) + var5.maxZ; + var9 = (var6 * var5.field1926 >> 8) + var5.minY; + var10 = (var6 * var5.field1927 >> 8) + var5.maxY; + if (var3 >= var7 && var3 <= var8 && var2 >= var9 && var2 <= var10) { return true; } } - } else if (var5.field1931 == 3) { // L: 1631 - var6 = var5.minZ - var3; // L: 1632 - if (var6 > 0) { // L: 1633 - var7 = (var6 * var5.field1925 >> 8) + var5.minX; // L: 1634 - var8 = (var6 * var5.field1933 >> 8) + var5.maxX; // L: 1635 - var9 = (var6 * var5.field1936 >> 8) + var5.minY; // L: 1636 - var10 = (var6 * var5.field1937 >> 8) + var5.maxY; // L: 1637 - if (var1 >= var7 && var1 <= var8 && var2 >= var9 && var2 <= var10) { // L: 1638 + } else if (var5.field1921 == 3) { + var6 = var5.minZ - var3; + if (var6 > 0) { + var7 = (var6 * var5.field1925 >> 8) + var5.minX; + var8 = (var6 * var5.field1923 >> 8) + var5.maxX; + var9 = (var6 * var5.field1926 >> 8) + var5.minY; + var10 = (var6 * var5.field1927 >> 8) + var5.maxY; + if (var1 >= var7 && var1 <= var8 && var2 >= var9 && var2 <= var10) { return true; } } - } else if (var5.field1931 == 4) { // L: 1642 - var6 = var3 - var5.minZ; // L: 1643 - if (var6 > 0) { // L: 1644 - var7 = (var6 * var5.field1925 >> 8) + var5.minX; // L: 1645 - var8 = (var6 * var5.field1933 >> 8) + var5.maxX; // L: 1646 - var9 = (var6 * var5.field1936 >> 8) + var5.minY; // L: 1647 - var10 = (var6 * var5.field1937 >> 8) + var5.maxY; // L: 1648 - if (var1 >= var7 && var1 <= var8 && var2 >= var9 && var2 <= var10) { // L: 1649 + } else if (var5.field1921 == 4) { + var6 = var3 - var5.minZ; + if (var6 > 0) { + var7 = (var6 * var5.field1925 >> 8) + var5.minX; + var8 = (var6 * var5.field1923 >> 8) + var5.maxX; + var9 = (var6 * var5.field1926 >> 8) + var5.minY; + var10 = (var6 * var5.field1927 >> 8) + var5.maxY; + if (var1 >= var7 && var1 <= var8 && var2 >= var9 && var2 <= var10) { return true; } } - } else if (var5.field1931 == 5) { // L: 1653 - var6 = var2 - var5.minY; // L: 1654 - if (var6 > 0) { // L: 1655 - var7 = (var6 * var5.field1925 >> 8) + var5.minX; // L: 1656 - var8 = (var6 * var5.field1933 >> 8) + var5.maxX; // L: 1657 - var9 = (var6 * var5.field1920 >> 8) + var5.minZ; // L: 1658 - var10 = (var6 * var5.field1932 >> 8) + var5.maxZ; // L: 1659 - if (var1 >= var7 && var1 <= var8 && var3 >= var9 && var3 <= var10) { // L: 1660 + } else if (var5.field1921 == 5) { + var6 = var2 - var5.minY; + if (var6 > 0) { + var7 = (var6 * var5.field1925 >> 8) + var5.minX; + var8 = (var6 * var5.field1923 >> 8) + var5.maxX; + var9 = (var6 * var5.field1924 >> 8) + var5.minZ; + var10 = (var6 * var5.field1929 >> 8) + var5.maxZ; + if (var1 >= var7 && var1 <= var8 && var3 >= var9 && var3 <= var10) { return true; } } } } - return false; // L: 1665 + return false; } - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("Scene_addOccluder") public static void Scene_addOccluder(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { - Occluder var8 = new Occluder(); // L: 154 - var8.minTileX = var2 / 128; // L: 155 - var8.maxTileX = var3 / 128; // L: 156 - var8.minTileY = var4 / 128; // L: 157 - var8.maxTileY = var5 / 128; // L: 158 - var8.type = var1; // L: 159 - var8.minX = var2; // L: 160 - var8.maxX = var3; // L: 161 - var8.minZ = var4; // L: 162 - var8.maxZ = var5; // L: 163 - var8.minY = var6; // L: 164 - var8.maxY = var7; // L: 165 - Scene_planeOccluders[var0][Scene_planeOccluderCounts[var0]++] = var8; // L: 166 - } // L: 167 + Occluder var8 = new Occluder(); + var8.minTileX = var2 / 128; + var8.maxTileX = var3 / 128; + var8.minTileY = var4 / 128; + var8.maxTileY = var5 / 128; + var8.type = var1; + var8.minX = var2; + var8.maxX = var3; + var8.minZ = var4; + var8.maxZ = var5; + var8.minY = var6; + var8.maxY = var7; + Scene_planeOccluders[var0][Scene_planeOccluderCounts[var0]++] = var8; + } - @ObfuscatedName("ax") + @ObfuscatedName("ao") @Export("Scene_buildVisiblityMap") public static void Scene_buildVisiblityMap(int[] var0, int var1, int var2, int var3, int var4) { - Scene_viewportXMin = 0; // L: 653 - Scene_viewportYMin = 0; // L: 654 - Scene_viewportXMax = var3; // L: 655 - Scene_viewportYMax = var4; // L: 656 - Scene_viewportXCenter = var3 / 2; // L: 657 - Scene_viewportYCenter = var4 / 2; // L: 658 - boolean[][][][] var5 = new boolean[var0.length][32][53][53]; // L: 659 + Scene_viewportXMin = 0; + Scene_viewportYMin = 0; + Scene_viewportXMax = var3; + Scene_viewportYMax = var4; + Scene_viewportXCenter = var3 / 2; + Scene_viewportYCenter = var4 / 2; + boolean[][][][] var5 = new boolean[var0.length][32][53][53]; int var6; int var7; @@ -2462,135 +2456,135 @@ public class Scene { int var9; int var11; int var12; - for (var6 = 128; var6 <= 383; var6 += 32) { // L: 660 - for (var7 = 0; var7 < 2048; var7 += 64) { // L: 661 - Scene_cameraPitchSine = Rasterizer3D.Rasterizer3D_sine[var6]; // L: 662 - Scene_cameraPitchCosine = Rasterizer3D.Rasterizer3D_cosine[var6]; // L: 663 - Scene_cameraYawSine = Rasterizer3D.Rasterizer3D_sine[var7]; // L: 664 - Scene_cameraYawCosine = Rasterizer3D.Rasterizer3D_cosine[var7]; // L: 665 - var8 = (var6 - 128) / 32; // L: 666 - var9 = var7 / 64; // L: 667 + for (var6 = 128; var6 <= 383; var6 += 32) { + for (var7 = 0; var7 < 2048; var7 += 64) { + Scene_cameraPitchSine = Rasterizer3D.Rasterizer3D_sine[var6]; + Scene_cameraPitchCosine = Rasterizer3D.Rasterizer3D_cosine[var6]; + Scene_cameraYawSine = Rasterizer3D.Rasterizer3D_sine[var7]; + Scene_cameraYawCosine = Rasterizer3D.Rasterizer3D_cosine[var7]; + var8 = (var6 - 128) / 32; + var9 = var7 / 64; - for (int var10 = -26; var10 < 26; ++var10) { // L: 668 - for (var11 = -26; var11 < 26; ++var11) { // L: 669 - var12 = var10 * 128; // L: 670 - int var13 = var11 * 128; // L: 671 - boolean var14 = false; // L: 672 + for (int var10 = -26; var10 < 26; ++var10) { + for (var11 = -26; var11 < 26; ++var11) { + var12 = var10 * 128; + int var13 = var11 * 128; + boolean var14 = false; - for (int var15 = -var1; var15 <= var2; var15 += 128) { // L: 673 - if (method3309(var12, var0[var8] + var15, var13)) { // L: 674 - var14 = true; // L: 675 + for (int var15 = -var1; var15 <= var2; var15 += 128) { + if (method3195(var12, var0[var8] + var15, var13)) { + var14 = true; break; } } - var5[var8][var9][var10 + 1 + 25][var11 + 1 + 25] = var14; // L: 679 + var5[var8][var9][var10 + 1 + 25][var11 + 1 + 25] = var14; } } } } - for (var6 = 0; var6 < 8; ++var6) { // L: 684 - for (var7 = 0; var7 < 32; ++var7) { // L: 685 - for (var8 = -25; var8 < 25; ++var8) { // L: 686 - for (var9 = -25; var9 < 25; ++var9) { // L: 687 - boolean var16 = false; // L: 688 + for (var6 = 0; var6 < 8; ++var6) { + for (var7 = 0; var7 < 32; ++var7) { + for (var8 = -25; var8 < 25; ++var8) { + for (var9 = -25; var9 < 25; ++var9) { + boolean var16 = false; label83: - for (var11 = -1; var11 <= 1; ++var11) { // L: 689 - for (var12 = -1; var12 <= 1; ++var12) { // L: 690 - if (var5[var6][var7][var8 + var11 + 1 + 25][var9 + var12 + 1 + 25]) { // L: 691 - var16 = true; // L: 692 + for (var11 = -1; var11 <= 1; ++var11) { + for (var12 = -1; var12 <= 1; ++var12) { + if (var5[var6][var7][var8 + var11 + 1 + 25][var9 + var12 + 1 + 25]) { + var16 = true; break label83; } - if (var5[var6][(var7 + 1) % 31][var8 + var11 + 1 + 25][var9 + var12 + 1 + 25]) { // L: 695 - var16 = true; // L: 696 - break label83; // L: 697 + if (var5[var6][(var7 + 1) % 31][var8 + var11 + 1 + 25][var9 + var12 + 1 + 25]) { + var16 = true; + break label83; } - if (var5[var6 + 1][var7][var8 + var11 + 1 + 25][var9 + var12 + 1 + 25]) { // L: 699 - var16 = true; // L: 700 - break label83; // L: 701 + if (var5[var6 + 1][var7][var8 + var11 + 1 + 25][var9 + var12 + 1 + 25]) { + var16 = true; + break label83; } - if (var5[var6 + 1][(var7 + 1) % 31][var8 + var11 + 1 + 25][var9 + var12 + 1 + 25]) { // L: 703 - var16 = true; // L: 704 - break label83; // L: 705 + if (var5[var6 + 1][(var7 + 1) % 31][var8 + var11 + 1 + 25][var9 + var12 + 1 + 25]) { + var16 = true; + break label83; } } } - visibilityMap[var6][var7][var8 + 25][var9 + 25] = var16; // L: 709 + visibilityMap[var6][var7][var8 + 25][var9 + 25] = var16; } } } } - } // L: 714 + } - @ObfuscatedName("ag") - static boolean method3309(int var0, int var1, int var2) { - int var3 = var0 * Scene_cameraYawCosine + var2 * Scene_cameraYawSine >> 16; // L: 717 - int var4 = var2 * Scene_cameraYawCosine - var0 * Scene_cameraYawSine >> 16; // L: 718 - int var5 = var4 * Scene_cameraPitchCosine + Scene_cameraPitchSine * var1 >> 16; // L: 719 - int var6 = Scene_cameraPitchCosine * var1 - var4 * Scene_cameraPitchSine >> 16; // L: 720 - if (var5 >= 50 && var5 <= 3500) { // L: 721 - int var7 = var3 * 128 / var5 + Scene_viewportXCenter; // L: 722 - int var8 = var6 * 128 / var5 + Scene_viewportYCenter; // L: 723 - return var7 >= Scene_viewportXMin && var7 <= Scene_viewportXMax && var8 >= Scene_viewportYMin && var8 <= Scene_viewportYMax; // L: 724 + @ObfuscatedName("ab") + static boolean method3195(int var0, int var1, int var2) { + int var3 = var0 * Scene_cameraYawCosine + var2 * Scene_cameraYawSine >> 16; + int var4 = var2 * Scene_cameraYawCosine - var0 * Scene_cameraYawSine >> 16; + int var5 = var4 * Scene_cameraPitchCosine + Scene_cameraPitchSine * var1 >> 16; + int var6 = Scene_cameraPitchCosine * var1 - var4 * Scene_cameraPitchSine >> 16; + if (var5 >= 50 && var5 <= 3500) { + int var7 = var3 * 128 / var5 + Scene_viewportXCenter; + int var8 = var6 * 128 / var5 + Scene_viewportYCenter; + return var7 >= Scene_viewportXMin && var7 <= Scene_viewportXMax && var8 >= Scene_viewportYMin && var8 <= Scene_viewportYMax; } else { - return false; // L: 725 + return false; } } - @ObfuscatedName("an") + @ObfuscatedName("ad") @Export("shouldSendWalk") public static boolean shouldSendWalk() { - return viewportWalking && Scene_selectedX != -1; // L: 744 + return viewportWalking && Scene_selectedX != -1; } - @ObfuscatedName("am") - public static void method3253() { - Scene_selectedX = -1; // L: 748 - viewportWalking = false; // L: 749 - } // L: 750 + @ObfuscatedName("ai") + public static void method3199() { + Scene_selectedX = -1; + viewportWalking = false; + } - @ObfuscatedName("ae") - static final int method3262(int var0, int var1) { - var1 = (var0 & 127) * var1 >> 7; // L: 1355 - if (var1 < 2) { // L: 1356 + @ObfuscatedName("az") + static final int method3204(int var0, int var1) { + var1 = (var0 & 127) * var1 >> 7; + if (var1 < 2) { var1 = 2; - } else if (var1 > 126) { // L: 1357 + } else if (var1 > 126) { var1 = 126; } - return (var0 & 65408) + var1; // L: 1358 + return (var0 & 65408) + var1; } - @ObfuscatedName("al") + @ObfuscatedName("at") @Export("containsBounds") static boolean containsBounds(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { - if (var1 < var2 && var1 < var3 && var1 < var4) { // L: 1362 + if (var1 < var2 && var1 < var3 && var1 < var4) { return false; - } else if (var1 > var2 && var1 > var3 && var1 > var4) { // L: 1363 + } else if (var1 > var2 && var1 > var3 && var1 > var4) { return false; - } else if (var0 < var5 && var0 < var6 && var0 < var7) { // L: 1364 + } else if (var0 < var5 && var0 < var6 && var0 < var7) { return false; - } else if (var0 > var5 && var0 > var6 && var0 > var7) { // L: 1365 + } else if (var0 > var5 && var0 > var6 && var0 > var7) { return false; } else { - int var8 = (var1 - var2) * (var6 - var5) - (var0 - var5) * (var3 - var2); // L: 1366 - int var9 = (var7 - var6) * (var1 - var3) - (var0 - var6) * (var4 - var3); // L: 1367 - int var10 = (var5 - var7) * (var1 - var4) - (var2 - var4) * (var0 - var7); // L: 1368 - if (var8 == 0) { // L: 1369 - if (var9 != 0) { // L: 1372 - return var9 < 0 ? var10 <= 0 : var10 >= 0; // L: 1373 + int var8 = (var1 - var2) * (var6 - var5) - (var0 - var5) * (var3 - var2); + int var9 = (var7 - var6) * (var1 - var3) - (var0 - var6) * (var4 - var3); + int var10 = (var5 - var7) * (var1 - var4) - (var2 - var4) * (var0 - var7); + if (var8 == 0) { + if (var9 != 0) { + return var9 < 0 ? var10 <= 0 : var10 >= 0; } else { - return true; // L: 1375 + return true; } } else { - return var8 < 0 ? var9 <= 0 && var10 <= 0 : var9 >= 0 && var10 >= 0; // L: 1370 + return var8 < 0 ? var9 <= 0 && var10 <= 0 : var9 >= 0 && var10 >= 0; } } } diff --git a/runescape-client/src/main/java/Script.java b/runescape-client/src/main/java/Script.java index 45166922ea..fdd3f70b21 100644 --- a/runescape-client/src/main/java/Script.java +++ b/runescape-client/src/main/java/Script.java @@ -3,53 +3,59 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; +import net.runelite.rs.Reflection; -@ObfuscatedName("co") +@ObfuscatedName("cs") @Implements("Script") public class Script extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("Script_cached") static EvictingDualNodeHashTable Script_cached; - @ObfuscatedName("b") + @ObfuscatedName("y") + @ObfuscatedSignature( + descriptor = "Laz;" + ) + @Export("worldMapEvent") + static WorldMapEvent worldMapEvent; + @ObfuscatedName("v") @Export("opcodes") int[] opcodes; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("intOperands") int[] intOperands; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("stringOperands") String[] stringOperands; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -289623255 + intValue = 1311924603 ) @Export("localIntCount") int localIntCount; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -1416487067 + intValue = 1513216297 ) @Export("localStringCount") int localStringCount; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -1408552327 + intValue = 1973345543 ) @Export("intArgumentCount") int intArgumentCount; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 1198237171 + intValue = 1310900639 ) @Export("stringArgumentCount") int stringArgumentCount; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "[Lll;" + descriptor = "[Lla;" ) @Export("switches") IterableNodeHashTable[] switches; @@ -59,124 +65,189 @@ public class Script extends DualNode { } Script() { - } // L: 22 + } - @ObfuscatedName("z") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(II)[Lll;", - garbageValue = "20409592" + descriptor = "(II)[Lla;", + garbageValue = "557069999" ) @Export("newIterableNodeHashTable") IterableNodeHashTable[] newIterableNodeHashTable(int var1) { - return new IterableNodeHashTable[var1]; // L: 125 + return new IterableNodeHashTable[var1]; } - @ObfuscatedName("f") - static double method2356(double var0, double var2, double var4) { - double var8 = (var0 - var2) / var4; // L: 10 - double var6 = Math.exp(var8 * -var8 / 2.0D) / Math.sqrt(6.283185307179586D); // L: 12 - return var6 / var4; // L: 14 - } - - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "1422774584" + descriptor = "(Ljava/lang/String;I)Ljava/lang/Class;", + garbageValue = "877971309" ) - static int method2355(int var0, Script var1, boolean var2) { - int var4; - int var9; - if (var0 == ScriptOpcodes.CC_CREATE) { // L: 430 - MilliClock.Interpreter_intStackSize -= 3; // L: 431 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 432 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 433 - int var11 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 2]; // L: 434 - if (var4 == 0) { // L: 435 - throw new RuntimeException(); // L: 436 - } else { - Widget var6 = UserComparator4.getWidget(var9); // L: 438 - if (var6.children == null) { // L: 439 - var6.children = new Widget[var11 + 1]; - } - - if (var6.children.length <= var11) { // L: 440 - Widget[] var7 = new Widget[var11 + 1]; // L: 441 - - for (int var8 = 0; var8 < var6.children.length; ++var8) { // L: 442 - var7[var8] = var6.children[var8]; - } - - var6.children = var7; // L: 443 - } - - if (var11 > 0 && var6.children[var11 - 1] == null) { // L: 445 - throw new RuntimeException("" + (var11 - 1)); - } else { - Widget var12 = new Widget(); // L: 446 - var12.type = var4; // L: 447 - var12.parentId = var12.id = var6.id; // L: 448 - var12.childIndex = var11; // L: 449 - var12.isIf3 = true; // L: 450 - var6.children[var11] = var12; // L: 451 - if (var2) { // L: 452 - MouseRecorder.field621 = var12; - } else { - Interpreter.field1122 = var12; // L: 453 - } - - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var6); // L: 454 - return 1; // L: 455 - } - } + @Export("loadClassFromDescriptor") + static Class loadClassFromDescriptor(String var0) throws ClassNotFoundException { + if (var0.equals("B")) { + return Byte.TYPE; + } else if (var0.equals("I")) { + return Integer.TYPE; + } else if (var0.equals("S")) { + return Short.TYPE; + } else if (var0.equals("J")) { + return Long.TYPE; + } else if (var0.equals("Z")) { + return Boolean.TYPE; + } else if (var0.equals("F")) { + return Float.TYPE; + } else if (var0.equals("D")) { + return Double.TYPE; + } else if (var0.equals("C")) { + return Character.TYPE; } else { - Widget var3; - if (var0 == ScriptOpcodes.CC_DELETE) { // L: 457 - var3 = var2 ? MouseRecorder.field621 : Interpreter.field1122; // L: 458 - Widget var10 = UserComparator4.getWidget(var3.id); // L: 459 - var10.children[var3.childIndex] = null; // L: 460 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var10); // L: 461 - return 1; // L: 462 - } else if (var0 == ScriptOpcodes.CC_DELETEALL) { // L: 464 - var3 = UserComparator4.getWidget(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 465 - var3.children = null; // L: 466 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 467 - return 1; // L: 468 - } else if (var0 != ScriptOpcodes.CC_FIND) { // L: 470 - if (var0 == ScriptOpcodes.IF_FIND) { // L: 483 - var3 = UserComparator4.getWidget(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 484 - if (var3 != null) { // L: 485 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 1; // L: 486 - if (var2) { // L: 487 - MouseRecorder.field621 = var3; - } else { - Interpreter.field1122 = var3; // L: 488 - } - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 490 - } + return var0.equals("void") ? Void.TYPE : Reflection.findClass(var0); + } + } - return 1; // L: 491 - } else { - return 2; // L: 493 - } - } else { - MilliClock.Interpreter_intStackSize -= 2; // L: 471 - var9 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 472 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 473 - Widget var5 = ItemContainer.getWidgetChild(var9, var4); // L: 474 - if (var5 != null && var4 != -1) { // L: 475 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 1; // L: 476 - if (var2) { // L: 477 - MouseRecorder.field621 = var5; - } else { - Interpreter.field1122 = var5; // L: 478 - } - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 480 - } + @ObfuscatedName("kl") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-1901639369" + ) + @Export("changeGameOptions") + static final void changeGameOptions(int var0) { + class195.method3681(); - return 1; // L: 481 + for (ObjectSound var1 = (ObjectSound)ObjectSound.objectSounds.last(); var1 != null; var1 = (ObjectSound)ObjectSound.objectSounds.previous()) { + if (var1.obj != null) { + var1.set(); } } + + int var4 = class219.VarpDefinition_get(var0).type; + if (var4 != 0) { + int var2 = Varps.Varps_main[var0]; + if (var4 == 1) { + if (var2 == 1) { + WorldMapSection1.method626(0.9D); + } + + if (var2 == 2) { + WorldMapSection1.method626(0.8D); + } + + if (var2 == 3) { + WorldMapSection1.method626(0.7D); + } + + if (var2 == 4) { + WorldMapSection1.method626(0.6D); + } + } + + if (var4 == 3) { + if (var2 == 0) { + WorldMapEvent.method810(255); + } + + if (var2 == 1) { + WorldMapEvent.method810(192); + } + + if (var2 == 2) { + WorldMapEvent.method810(128); + } + + if (var2 == 3) { + WorldMapEvent.method810(64); + } + + if (var2 == 4) { + WorldMapEvent.method810(0); + } + } + + if (var4 == 4) { + if (var2 == 0) { + WorldMapCacheName.method662(127); + } + + if (var2 == 1) { + WorldMapCacheName.method662(96); + } + + if (var2 == 2) { + WorldMapCacheName.method662(64); + } + + if (var2 == 3) { + WorldMapCacheName.method662(32); + } + + if (var2 == 4) { + WorldMapCacheName.method662(0); + } + } + + if (var4 == 5) { + Client.leftClickOpensMenu = var2; + } + + if (var4 == 6) { + Client.chatEffects = var2; + } + + if (var4 == 9) { + Client.field865 = var2; + } + + if (var4 == 10) { + if (var2 == 0) { + class194.method3676(127); + } + + if (var2 == 1) { + class194.method3676(96); + } + + if (var2 == 2) { + class194.method3676(64); + } + + if (var2 == 3) { + class194.method3676(32); + } + + if (var2 == 4) { + class194.method3676(0); + } + } + + if (var4 == 17) { + Client.followerIndex = var2 & 65535; + } + + AttackOption[] var3; + if (var4 == 18) { + var3 = new AttackOption[]{AttackOption.AttackOption_hidden, AttackOption.AttackOption_dependsOnCombatLevels, AttackOption.AttackOption_alwaysRightClick, AttackOption.AttackOption_leftClickWhereAvailable}; + Client.playerAttackOption = (AttackOption)UrlRequester.findEnumerated(var3, var2); + if (Client.playerAttackOption == null) { + Client.playerAttackOption = AttackOption.AttackOption_dependsOnCombatLevels; + } + } + + if (var4 == 19) { + if (var2 == -1) { + Client.combatTargetPlayerIndex = -1; + } else { + Client.combatTargetPlayerIndex = var2 & 2047; + } + } + + if (var4 == 22) { + var3 = new AttackOption[]{AttackOption.AttackOption_hidden, AttackOption.AttackOption_dependsOnCombatLevels, AttackOption.AttackOption_alwaysRightClick, AttackOption.AttackOption_leftClickWhereAvailable}; + Client.npcAttackOption = (AttackOption)UrlRequester.findEnumerated(var3, var2); + if (Client.npcAttackOption == null) { + Client.npcAttackOption = AttackOption.AttackOption_dependsOnCombatLevels; + } + } + + } } } diff --git a/runescape-client/src/main/java/ScriptEvent.java b/runescape-client/src/main/java/ScriptEvent.java index 01a304896b..c9f345943e 100644 --- a/runescape-client/src/main/java/ScriptEvent.java +++ b/runescape-client/src/main/java/ScriptEvent.java @@ -4,171 +4,332 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bd") +@ObfuscatedName("bb") @Implements("ScriptEvent") public class ScriptEvent extends Node { - @ObfuscatedName("hk") - @ObfuscatedSignature( - descriptor = "[Llc;" - ) - @Export("mapMarkerSprites") - static Sprite[] mapMarkerSprites; - @ObfuscatedName("f") + @ObfuscatedName("ai") + @Export("hasFocus") + protected static boolean hasFocus; + @ObfuscatedName("h") @Export("args") Object[] args; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("isMouseInputEvent") boolean isMouseInputEvent; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lht;" + descriptor = "Lhe;" ) @Export("widget") Widget widget; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -2101178453 + intValue = -830334431 ) @Export("mouseX") int mouseX; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 405456203 + intValue = -1350109123 ) @Export("mouseY") int mouseY; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = 88513801 + intValue = 2005687405 ) @Export("opIndex") int opIndex; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Lht;" + descriptor = "Lhe;" ) @Export("dragTarget") Widget dragTarget; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 303757317 + intValue = 1876756799 ) @Export("keyTyped") int keyTyped; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = -844549747 + intValue = 1098200111 ) @Export("keyPressed") int keyPressed; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("targetName") String targetName; + @ObfuscatedName("u") + @ObfuscatedGetter( + intValue = 179691203 + ) + int field569; @ObfuscatedName("e") @ObfuscatedGetter( - intValue = 1420605637 - ) - int field600; - @ObfuscatedName("o") - @ObfuscatedGetter( - intValue = -1188452695 + intValue = -1839098173 ) @Export("type") int type; public ScriptEvent() { - this.type = 76; // L: 19 + this.type = 76; } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "([Ljava/lang/Object;S)V", - garbageValue = "31204" + descriptor = "([Ljava/lang/Object;I)V", + garbageValue = "-1890318343" ) @Export("setArgs") public void setArgs(Object[] var1) { this.args = var1; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-370918947" + garbageValue = "-2116141310" ) @Export("setType") public void setType(int var1) { this.type = var1; } - @ObfuscatedName("f") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IB)Lje;", - garbageValue = "-32" + descriptor = "(Ljava/lang/String;IB)Z", + garbageValue = "-119" ) - @Export("getObjectDefinition") - public static ObjectDefinition getObjectDefinition(int var0) { - ObjectDefinition var1 = (ObjectDefinition)ObjectDefinition.ObjectDefinition_cached.get((long)var0); // L: 72 - if (var1 != null) { // L: 73 - return var1; + static boolean method1260(String var0, int var1) { + return class13.method131(var0, var1, "openjs"); + } + + @ObfuscatedName("r") + @ObfuscatedSignature( + descriptor = "(IIIIIIILeo;Lfo;B)V", + garbageValue = "-82" + ) + static final void method1259(int var0, int var1, int var2, int var3, int var4, int var5, int var6, Scene var7, CollisionMap var8) { + ObjectDefinition var9 = WorldMapDecoration.getObjectDefinition(var4); + int var10; + int var11; + if (var5 != 1 && var5 != 3) { + var10 = var9.sizeX; + var11 = var9.sizeY; } else { - byte[] var2 = ObjectDefinition.ObjectDefinition_archive.takeFile(6, var0); // L: 74 - var1 = new ObjectDefinition(); // L: 75 - var1.id = var0; // L: 76 - if (var2 != null) { // L: 77 - var1.decode(new Buffer(var2)); - } - - var1.postDecode(); // L: 78 - if (var1.isSolid) { // L: 79 - var1.interactType = 0; // L: 80 - var1.boolean1 = false; // L: 81 - } - - ObjectDefinition.ObjectDefinition_cached.put(var1, (long)var0); // L: 83 - return var1; // L: 84 + var10 = var9.sizeY; + var11 = var9.sizeX; } - } - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(I)[Lir;", - garbageValue = "2092789749" - ) - static VerticalAlignment[] method1279() { - return new VerticalAlignment[]{VerticalAlignment.field3223, VerticalAlignment.VerticalAlignment_centered, VerticalAlignment.field3226}; // L: 14 - } - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(II)Lit;", - garbageValue = "2033153348" - ) - @Export("getInvDefinition") - public static InvDefinition getInvDefinition(int var0) { - InvDefinition var1 = (InvDefinition)InvDefinition.InvDefinition_cached.get((long)var0); // L: 21 - if (var1 != null) { // L: 22 - return var1; + int var12; + int var13; + if (var10 + var2 <= 104) { + var12 = (var10 >> 1) + var2; + var13 = var2 + (var10 + 1 >> 1); } else { - byte[] var2 = InvDefinition.InvDefinition_archive.takeFile(5, var0); // L: 23 - var1 = new InvDefinition(); // L: 24 - if (var2 != null) { // L: 25 - var1.decode(new Buffer(var2)); + var12 = var2; + var13 = var2 + 1; + } + + int var14; + int var15; + if (var3 + var11 <= 104) { + var14 = var3 + (var11 >> 1); + var15 = var3 + (var11 + 1 >> 1); + } else { + var14 = var3; + var15 = var3 + 1; + } + + int[][] var16 = Tiles.Tiles_heights[var1]; + int var17 = var16[var12][var14] + var16[var13][var14] + var16[var12][var15] + var16[var13][var15] >> 2; + int var18 = (var2 << 7) + (var10 << 6); + int var19 = (var3 << 7) + (var11 << 6); + long var20 = NPC.calculateTag(var2, var3, 2, var9.int1 == 0, var4); + int var22 = (var5 << 6) + var6; + if (var9.int3 == 1) { + var22 += 256; + } + + Object var30; + if (var6 == 22) { + if (var9.animationId == -1 && var9.transforms == null) { + var30 = var9.getModel(22, var5, var16, var18, var17, var19); + } else { + var30 = new DynamicObject(var4, 22, var5, var1, var2, var3, var9.animationId, var9.field3429, (Entity)null); + } + + var7.newFloorDecoration(var0, var2, var3, var17, (Entity)var30, var20, var22); + if (var9.interactType == 1) { + var8.setBlockedByFloorDec(var2, var3); + } + + } else if (var6 != 10 && var6 != 11) { + if (var6 >= 12) { + if (var9.animationId == -1 && var9.transforms == null) { + var30 = var9.getModel(var6, var5, var16, var18, var17, var19); + } else { + var30 = new DynamicObject(var4, var6, var5, var1, var2, var3, var9.animationId, var9.field3429, (Entity)null); + } + + var7.method3160(var0, var2, var3, var17, 1, 1, (Entity)var30, 0, var20, var22); + if (var9.interactType != 0) { + var8.addGameObject(var2, var3, var10, var11, var9.boolean1); + } + + } else if (var6 == 0) { + if (var9.animationId == -1 && var9.transforms == null) { + var30 = var9.getModel(0, var5, var16, var18, var17, var19); + } else { + var30 = new DynamicObject(var4, 0, var5, var1, var2, var3, var9.animationId, var9.field3429, (Entity)null); + } + + var7.newBoundaryObject(var0, var2, var3, var17, (Entity)var30, (Entity)null, Tiles.field512[var5], 0, var20, var22); + if (var9.interactType != 0) { + var8.method3611(var2, var3, var6, var5, var9.boolean1); + } + + } else if (var6 == 1) { + if (var9.animationId == -1 && var9.transforms == null) { + var30 = var9.getModel(1, var5, var16, var18, var17, var19); + } else { + var30 = new DynamicObject(var4, 1, var5, var1, var2, var3, var9.animationId, var9.field3429, (Entity)null); + } + + var7.newBoundaryObject(var0, var2, var3, var17, (Entity)var30, (Entity)null, Tiles.field513[var5], 0, var20, var22); + if (var9.interactType != 0) { + var8.method3611(var2, var3, var6, var5, var9.boolean1); + } + + } else { + int var23; + if (var6 == 2) { + var23 = var5 + 1 & 3; + Object var25; + Object var31; + if (var9.animationId == -1 && var9.transforms == null) { + var31 = var9.getModel(2, var5 + 4, var16, var18, var17, var19); + var25 = var9.getModel(2, var23, var16, var18, var17, var19); + } else { + var31 = new DynamicObject(var4, 2, var5 + 4, var1, var2, var3, var9.animationId, var9.field3429, (Entity)null); + var25 = new DynamicObject(var4, 2, var23, var1, var2, var3, var9.animationId, var9.field3429, (Entity)null); + } + + var7.newBoundaryObject(var0, var2, var3, var17, (Entity)var31, (Entity)var25, Tiles.field512[var5], Tiles.field512[var23], var20, var22); + if (var9.interactType != 0) { + var8.method3611(var2, var3, var6, var5, var9.boolean1); + } + + } else if (var6 == 3) { + if (var9.animationId == -1 && var9.transforms == null) { + var30 = var9.getModel(3, var5, var16, var18, var17, var19); + } else { + var30 = new DynamicObject(var4, 3, var5, var1, var2, var3, var9.animationId, var9.field3429, (Entity)null); + } + + var7.newBoundaryObject(var0, var2, var3, var17, (Entity)var30, (Entity)null, Tiles.field513[var5], 0, var20, var22); + if (var9.interactType != 0) { + var8.method3611(var2, var3, var6, var5, var9.boolean1); + } + + } else if (var6 == 9) { + if (var9.animationId == -1 && var9.transforms == null) { + var30 = var9.getModel(var6, var5, var16, var18, var17, var19); + } else { + var30 = new DynamicObject(var4, var6, var5, var1, var2, var3, var9.animationId, var9.field3429, (Entity)null); + } + + var7.method3160(var0, var2, var3, var17, 1, 1, (Entity)var30, 0, var20, var22); + if (var9.interactType != 0) { + var8.addGameObject(var2, var3, var10, var11, var9.boolean1); + } + + } else if (var6 == 4) { + if (var9.animationId == -1 && var9.transforms == null) { + var30 = var9.getModel(4, var5, var16, var18, var17, var19); + } else { + var30 = new DynamicObject(var4, 4, var5, var1, var2, var3, var9.animationId, var9.field3429, (Entity)null); + } + + var7.newWallDecoration(var0, var2, var3, var17, (Entity)var30, (Entity)null, Tiles.field512[var5], 0, 0, 0, var20, var22); + } else { + long var24; + Object var26; + if (var6 == 5) { + var23 = 16; + var24 = var7.getBoundaryObjectTag(var0, var2, var3); + if (var24 != 0L) { + var23 = WorldMapDecoration.getObjectDefinition(Occluder.Entity_unpackID(var24)).int2; + } + + if (var9.animationId == -1 && var9.transforms == null) { + var26 = var9.getModel(4, var5, var16, var18, var17, var19); + } else { + var26 = new DynamicObject(var4, 4, var5, var1, var2, var3, var9.animationId, var9.field3429, (Entity)null); + } + + var7.newWallDecoration(var0, var2, var3, var17, (Entity)var26, (Entity)null, Tiles.field512[var5], 0, var23 * Tiles.field518[var5], var23 * Tiles.field515[var5], var20, var22); + } else if (var6 == 6) { + var23 = 8; + var24 = var7.getBoundaryObjectTag(var0, var2, var3); + if (var24 != 0L) { + var23 = WorldMapDecoration.getObjectDefinition(Occluder.Entity_unpackID(var24)).int2 / 2; + } + + if (var9.animationId == -1 && var9.transforms == null) { + var26 = var9.getModel(4, var5 + 4, var16, var18, var17, var19); + } else { + var26 = new DynamicObject(var4, 4, var5 + 4, var1, var2, var3, var9.animationId, var9.field3429, (Entity)null); + } + + var7.newWallDecoration(var0, var2, var3, var17, (Entity)var26, (Entity)null, 256, var5, var23 * Tiles.field509[var5], var23 * Tiles.field517[var5], var20, var22); + } else if (var6 == 7) { + int var29 = var5 + 2 & 3; + if (var9.animationId == -1 && var9.transforms == null) { + var30 = var9.getModel(4, var29 + 4, var16, var18, var17, var19); + } else { + var30 = new DynamicObject(var4, 4, var29 + 4, var1, var2, var3, var9.animationId, var9.field3429, (Entity)null); + } + + var7.newWallDecoration(var0, var2, var3, var17, (Entity)var30, (Entity)null, 256, var29, 0, 0, var20, var22); + } else if (var6 == 8) { + var23 = 8; + var24 = var7.getBoundaryObjectTag(var0, var2, var3); + if (var24 != 0L) { + var23 = WorldMapDecoration.getObjectDefinition(Occluder.Entity_unpackID(var24)).int2 / 2; + } + + int var28 = var5 + 2 & 3; + Object var27; + if (var9.animationId == -1 && var9.transforms == null) { + var26 = var9.getModel(4, var5 + 4, var16, var18, var17, var19); + var27 = var9.getModel(4, var28 + 4, var16, var18, var17, var19); + } else { + var26 = new DynamicObject(var4, 4, var5 + 4, var1, var2, var3, var9.animationId, var9.field3429, (Entity)null); + var27 = new DynamicObject(var4, 4, var28 + 4, var1, var2, var3, var9.animationId, var9.field3429, (Entity)null); + } + + var7.newWallDecoration(var0, var2, var3, var17, (Entity)var26, (Entity)var27, 256, var5, var23 * Tiles.field509[var5], var23 * Tiles.field517[var5], var20, var22); + } + } + } + } else { + if (var9.animationId == -1 && var9.transforms == null) { + var30 = var9.getModel(10, var5, var16, var18, var17, var19); + } else { + var30 = new DynamicObject(var4, 10, var5, var1, var2, var3, var9.animationId, var9.field3429, (Entity)null); + } + + if (var30 != null) { + var7.method3160(var0, var2, var3, var17, var10, var11, (Entity)var30, var6 == 11 ? 256 : 0, var20, var22); + } + + if (var9.interactType != 0) { + var8.addGameObject(var2, var3, var10, var11, var9.boolean1); } - InvDefinition.InvDefinition_cached.put(var1, (long)var0); // L: 26 - return var1; // L: 27 } } - - @ObfuscatedName("kn") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-6" - ) - static void method1282() { - if (Client.oculusOrbState == 1) { // L: 11669 - Client.field725 = true; // L: 11670 - } - - } // L: 11672 } diff --git a/runescape-client/src/main/java/ScriptFrame.java b/runescape-client/src/main/java/ScriptFrame.java index 1514e07315..92920de433 100644 --- a/runescape-client/src/main/java/ScriptFrame.java +++ b/runescape-client/src/main/java/ScriptFrame.java @@ -3,131 +3,176 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("bm") +@ObfuscatedName("bk") @Implements("ScriptFrame") public class ScriptFrame { - @ObfuscatedName("ea") + @ObfuscatedName("nn") @ObfuscatedGetter( - intValue = 1760304111 + intValue = 1247485995 ) - static int field552; - @ObfuscatedName("f") + @Export("widgetDragDuration") + static int widgetDragDuration; + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lco;" + descriptor = "Lcs;" ) @Export("script") Script script; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 1649848391 + intValue = 555040569 ) @Export("pc") int pc; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("intLocals") int[] intLocals; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("stringLocals") String[] stringLocals; ScriptFrame() { - this.pc = -1; // L: 5 - } // L: 9 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(Liw;I)V", - garbageValue = "181624025" - ) - public static void method1224(AbstractArchive var0) { - FloorUnderlayDefinition.FloorUnderlayDefinition_archive = var0; // L: 21 - } // L: 22 - - @ObfuscatedName("l") - public static int method1228(long var0) { - return (int)(var0 >>> 0 & 127L); // L: 52 + this.pc = -1; } - @ObfuscatedName("m") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-1190180925" + descriptor = "(ILcs;ZI)I", + garbageValue = "259452362" ) - @Export("loadInterface") - public static boolean loadInterface(int var0) { - if (Widget.Widget_loadedInterfaces[var0]) { // L: 212 - return true; - } else if (!Decimator.Widget_archive.tryLoadGroup(var0)) { // L: 213 - return false; + static int method1213(int var0, Script var1, boolean var2) { + boolean var3 = true; + Widget var4; + if (var0 >= 2000) { + var0 -= 1000; + var4 = CollisionMap.getWidget(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + var3 = false; } else { - int var1 = Decimator.Widget_archive.getGroupFileCount(var0); // L: 214 - if (var1 == 0) { // L: 215 - Widget.Widget_loadedInterfaces[var0] = true; // L: 216 - return true; // L: 217 - } else { - if (Widget.Widget_interfaceComponents[var0] == null) { // L: 219 - Widget.Widget_interfaceComponents[var0] = new Widget[var1]; - } + var4 = var2 ? PlayerAppearance.field2561 : VarcInt.field3264; + } - for (int var2 = 0; var2 < var1; ++var2) { // L: 220 - if (Widget.Widget_interfaceComponents[var0][var2] == null) { // L: 221 - byte[] var3 = Decimator.Widget_archive.takeFile(var0, var2); // L: 222 - if (var3 != null) { // L: 223 - Widget.Widget_interfaceComponents[var0][var2] = new Widget(); // L: 224 - Widget.Widget_interfaceComponents[var0][var2].id = var2 + (var0 << 16); // L: 225 - if (var3[0] == -1) { // L: 226 - Widget.Widget_interfaceComponents[var0][var2].decode(new Buffer(var3)); - } else { - Widget.Widget_interfaceComponents[var0][var2].decodeLegacy(new Buffer(var3)); // L: 227 + int var11; + if (var0 == ScriptOpcodes.CC_SETOP) { + var11 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] - 1; + if (var11 >= 0 && var11 <= 9) { + var4.setAction(var11, Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]); + return 1; + } else { + --Interpreter.Interpreter_stringStackSize; + return 1; + } + } else { + int var6; + if (var0 == ScriptOpcodes.CC_SETDRAGGABLE) { + VarcInt.Interpreter_intStackSize -= 2; + var11 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var6 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + var4.parent = class92.getWidgetChild(var11, var6); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETDRAGGABLEBEHAVIOR) { + var4.isScrollBar = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == ScriptOpcodes.CC_SETDRAGDEADZONE) { + var4.dragZoneSize = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + return 1; + } else if (var0 == ScriptOpcodes.CC_SETDRAGDEADTIME) { + var4.dragThreshold = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + return 1; + } else if (var0 == ScriptOpcodes.CC_SETOPBASE) { + var4.dataText = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + return 1; + } else if (var0 == ScriptOpcodes.CC_SETTARGETVERB) { + var4.spellActionName = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + return 1; + } else if (var0 == ScriptOpcodes.CC_CLEAROPS) { + var4.actions = null; + return 1; + } else if (var0 == 1308) { + var4.prioritizeMenuEntry = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == 1309) { + --VarcInt.Interpreter_intStackSize; + return 1; + } else { + int var7; + byte[] var8; + if (var0 != ScriptOpcodes.CC_SETOPKEY) { + byte var5; + if (var0 == ScriptOpcodes.CC_SETOPTKEY) { + VarcInt.Interpreter_intStackSize -= 2; + var5 = 10; + var8 = new byte[]{(byte)Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]}; + byte[] var9 = new byte[]{(byte)Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]}; + ItemContainer.Widget_setKey(var4, var5, var8, var9); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETOPKEYRATE) { + VarcInt.Interpreter_intStackSize -= 3; + var11 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize] - 1; + var6 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + var7 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 2]; + if (var11 >= 0 && var11 <= 9) { + Player.Widget_setKeyRate(var4, var11, var6, var7); + return 1; + } else { + throw new RuntimeException(); + } + } else if (var0 == ScriptOpcodes.CC_SETOPTKEYRATE) { + var5 = 10; + var6 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Player.Widget_setKeyRate(var4, var5, var6, var7); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETOPKEYIGNOREHELD) { + --VarcInt.Interpreter_intStackSize; + var11 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize] - 1; + if (var11 >= 0 && var11 <= 9) { + GrandExchangeOfferUnitPriceComparator.Widget_setKeyIgnoreHeld(var4, var11); + return 1; + } else { + throw new RuntimeException(); + } + } else if (var0 == ScriptOpcodes.CC_SETOPTKEYIGNOREHELD) { + var5 = 10; + GrandExchangeOfferUnitPriceComparator.Widget_setKeyIgnoreHeld(var4, var5); + return 1; + } else { + return 2; + } + } else { + byte[] var10 = null; + var8 = null; + if (var3) { + VarcInt.Interpreter_intStackSize -= 10; + + for (var7 = 0; var7 < 10 && Interpreter.Interpreter_intStack[var7 + VarcInt.Interpreter_intStackSize] >= 0; var7 += 2) { + } + + if (var7 > 0) { + var10 = new byte[var7 / 2]; + var8 = new byte[var7 / 2]; + + for (var7 -= 2; var7 >= 0; var7 -= 2) { + var10[var7 / 2] = (byte)Interpreter.Interpreter_intStack[var7 + VarcInt.Interpreter_intStackSize]; + var8[var7 / 2] = (byte)Interpreter.Interpreter_intStack[var7 + VarcInt.Interpreter_intStackSize + 1]; } } + } else { + VarcInt.Interpreter_intStackSize -= 2; + var10 = new byte[]{(byte)Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]}; + var8 = new byte[]{(byte)Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]}; + } + + var7 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] - 1; + if (var7 >= 0 && var7 <= 9) { + ItemContainer.Widget_setKey(var4, var7, var10, var8); + return 1; + } else { + throw new RuntimeException(); } } - - Widget.Widget_loadedInterfaces[var0] = true; // L: 231 - return true; // L: 232 } } } - - @ObfuscatedName("an") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-398927315" - ) - @Export("runWidgetOnLoadListener") - static void runWidgetOnLoadListener(int var0) { - if (var0 != -1) { // L: 3836 - if (loadInterface(var0)) { // L: 3837 - Widget[] var1 = Widget.Widget_interfaceComponents[var0]; // L: 3838 - - for (int var2 = 0; var2 < var1.length; ++var2) { // L: 3839 - Widget var3 = var1[var2]; // L: 3840 - if (var3.onLoad != null) { // L: 3841 - ScriptEvent var4 = new ScriptEvent(); // L: 3842 - var4.widget = var3; // L: 3843 - var4.args = var3.onLoad; // L: 3844 - class58.runScript(var4, 5000000); // L: 3845 - } - } - - } - } - } // L: 3848 - - @ObfuscatedName("jz") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-3110189" - ) - @Export("clanKickUser") - static final void clanKickUser(String var0) { - if (DevicePcmPlayerProvider.clanChat != null) { // L: 11494 - PacketBufferNode var1 = class4.getPacketBufferNode(ClientPacket.field2333, Client.packetWriter.isaacCipher); // L: 11495 - var1.packetBuffer.writeByte(SpriteMask.stringCp1252NullTerminatedByteSize(var0)); // L: 11496 - var1.packetBuffer.writeStringCp1252NullTerminated(var0); // L: 11497 - Client.packetWriter.addNode(var1); // L: 11498 - } - } // L: 11499 } diff --git a/runescape-client/src/main/java/SecureRandomCallable.java b/runescape-client/src/main/java/SecureRandomCallable.java index bbca859b80..b677556bab 100644 --- a/runescape-client/src/main/java/SecureRandomCallable.java +++ b/runescape-client/src/main/java/SecureRandomCallable.java @@ -1,165 +1,256 @@ -import java.io.File; -import java.io.IOException; +import java.security.SecureRandom; import java.util.concurrent.Callable; 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("by") +@ObfuscatedName("bw") @Implements("SecureRandomCallable") public class SecureRandomCallable implements Callable { - @ObfuscatedName("t") - @ObfuscatedGetter( - intValue = 2147326651 - ) - static int field553; - @ObfuscatedName("cn") - @ObfuscatedGetter( - intValue = 417708035 - ) - public static int field555; + @ObfuscatedName("bh") + @Export("otp") + static String otp; SecureRandomCallable() { - } // L: 36 + } public Object call() { - return ServerPacket.method3740(); // L: 45 + SecureRandom var2 = new SecureRandom(); + var2.nextInt(); + return var2; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Ljava/io/File;Ljava/io/File;I)V", - garbageValue = "-2079268292" + descriptor = "(II)Ljq;", + garbageValue = "97561494" ) - static void method1237(File var0, File var1) { - try { - AccessFile var2 = new AccessFile(class277.JagexCache_locationFile, "rw", 10000L); // L: 237 - Buffer var3 = new Buffer(500); // L: 238 - var3.writeByte(3); // L: 239 - var3.writeByte(var1 != null ? 1 : 0); // L: 240 - var3.writeCESU8(var0.getPath()); // L: 241 - if (var1 != null) { - var3.writeCESU8(""); // L: 242 + @Export("ItemDefinition_get") + public static ItemDefinition ItemDefinition_get(int var0) { + ItemDefinition var1 = (ItemDefinition)ItemDefinition.ItemDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = NPC.ItemDefinition_archive.takeFile(10, var0); + var1 = new ItemDefinition(); + var1.id = var0; + if (var2 != null) { + var1.decode(new Buffer(var2)); } - var2.write(var3.array, 0, var3.offset); // L: 243 - var2.close(); // L: 244 - } catch (IOException var4) { // L: 246 - var4.printStackTrace(); // L: 247 + var1.post(); + if (var1.noteTemplate != -1) { + var1.genCert(ItemDefinition_get(var1.noteTemplate), ItemDefinition_get(var1.note)); + } + + if (var1.notedId != -1) { + var1.genBought(ItemDefinition_get(var1.notedId), ItemDefinition_get(var1.unnotedId)); + } + + if (var1.placeholderTemplate != -1) { + var1.genPlaceholder(ItemDefinition_get(var1.placeholderTemplate), ItemDefinition_get(var1.placeholder)); + } + + if (!ItemDefinition.ItemDefinition_inMembersWorld && var1.isMembersOnly) { + var1.name = "Members object"; + var1.isTradable = false; + var1.groundActions = null; + var1.inventoryActions = null; + var1.shiftClickIndex = -1; + var1.team = 0; + if (var1.params != null) { + boolean var3 = false; + + for (Node var4 = var1.params.first(); var4 != null; var4 = var1.params.next()) { + ParamDefinition var5 = ChatChannel.getParamDefinition((int)var4.key); + if (var5.autoDisable) { + var4.remove(); + } else { + var3 = true; + } + } + + if (!var3) { + var1.params = null; + } + } + } + + ItemDefinition.ItemDefinition_cached.put(var1, (long)var0); + return var1; } + } - } // L: 249 - - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;IZI)I", - garbageValue = "-1129917502" - ) - @Export("parseIntCustomRadix") - public static int parseIntCustomRadix(CharSequence var0, int var1, boolean var2) { - if (var1 >= 2 && var1 <= 36) { // L: 80 - boolean var3 = false; // L: 81 - boolean var4 = false; // L: 82 - int var5 = 0; // L: 83 - int var6 = var0.length(); - - for (int var7 = 0; var7 < var6; ++var7) { - char var8 = var0.charAt(var7); // L: 86 - if (var7 == 0) { // L: 87 - if (var8 == '-') { // L: 88 - var3 = true; // L: 89 - continue; - } - - if (var8 == '+') { // L: 92 - continue; - } - } - - int var10; - if (var8 >= '0' && var8 <= '9') { // L: 94 - var10 = var8 - '0'; - } else if (var8 >= 'A' && var8 <= 'Z') { // L: 95 - var10 = var8 - '7'; - } else { - if (var8 < 'a' || var8 > 'z') { // L: 96 - throw new NumberFormatException(); // L: 97 - } - - var10 = var8 - 'W'; - } - - if (var10 >= var1) { // L: 98 - throw new NumberFormatException(); - } - - if (var3) { // L: 99 - var10 = -var10; - } - - int var9 = var5 * var1 + var10; // L: 100 - if (var9 / var1 != var5) { // L: 101 - throw new NumberFormatException(); - } - - var5 = var9; // L: 102 - var4 = true; // L: 103 - } - - if (!var4) { // L: 105 - throw new NumberFormatException(); + @ObfuscatedName("v") + public static String method1218(long var0) { + if (var0 > 0L && var0 < 6582952005840035281L) { + if (0L == var0 % 37L) { + return null; } else { - return var5; // L: 106 + int var2 = 0; + + for (long var3 = var0; var3 != 0L; var3 /= 37L) { + ++var2; + } + + StringBuilder var5 = new StringBuilder(var2); + + while (0L != var0) { + long var6 = var0; + var0 /= 37L; + var5.append(class299.base37Table[(int)(var6 - 37L * var0)]); + } + + return var5.reverse().toString(); } } else { - throw new IllegalArgumentException("" + var1); + return null; } } - @ObfuscatedName("z") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "1149121" + descriptor = "(II)Z", + garbageValue = "1753340272" ) - public static int method1238(int var0, int var1) { - int var2 = var0 >>> 31; // L: 84 - return (var0 + var2) / var1 - var2; // L: 85 + public static boolean method1216(int var0) { + return (var0 >> 20 & 1) != 0; } - @ObfuscatedName("ix") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lht;Ljk;IIZI)V", - garbageValue = "-59300685" + descriptor = "(ILib;IIIZI)V", + garbageValue = "141166757" ) - @Export("addWidgetItemMenuItem") - static final void addWidgetItemMenuItem(Widget var0, ItemDefinition var1, int var2, int var3, boolean var4) { - String[] var5 = var1.inventoryActions; // L: 10094 - byte var6 = -1; // L: 10095 - String var7 = null; // L: 10096 - if (var5 != null && var5[var3] != null) { // L: 10097 - if (var3 == 0) { // L: 10098 - var6 = 33; - } else if (var3 == 1) { // L: 10099 - var6 = 34; - } else if (var3 == 2) { - var6 = 35; // L: 10100 - } else if (var3 == 3) { // L: 10101 - var6 = 36; + public static void method1221(int var0, AbstractArchive var1, int var2, int var3, int var4, boolean var5) { + class206.musicPlayerStatus = 1; + Varps.musicTrackArchive = var1; + HealthBarUpdate.musicTrackGroupId = var2; + class206.musicTrackFileId = var3; + GrandExchangeEvent.musicTrackVolume = var4; + class231.musicTrackBoolean = var5; + WorldMapSection1.pcmSampleLength = var0; + } + + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "(IB)V", + garbageValue = "5" + ) + public static void method1220(int var0) { + class206.musicPlayerStatus = 1; + Varps.musicTrackArchive = null; + HealthBarUpdate.musicTrackGroupId = -1; + class206.musicTrackFileId = -1; + GrandExchangeEvent.musicTrackVolume = 0; + class231.musicTrackBoolean = false; + WorldMapSection1.pcmSampleLength = var0; + } + + @ObfuscatedName("c") + @ObfuscatedSignature( + descriptor = "(Lcj;I)V", + garbageValue = "997445897" + ) + @Export("changeWorld") + static void changeWorld(World var0) { + if (var0.isMembersOnly() != Client.isMembersWorld) { + Client.isMembersWorld = var0.isMembersOnly(); + SecureRandomFuture.method2205(var0.isMembersOnly()); + } + + if (var0.properties != Client.worldProperties) { + Archive var1 = Messages.archive8; + int var2 = var0.properties; + if ((var2 & 536870912) != 0) { + class224.logoSprite = class51.SpriteBuffer_getIndexedSpriteByName(var1, "logo_deadman_mode", ""); + } else if ((var2 & 1073741824) != 0) { + class224.logoSprite = class51.SpriteBuffer_getIndexedSpriteByName(var1, "logo_seasonal_mode", ""); } else { - var6 = 37; // L: 10102 + class224.logoSprite = class51.SpriteBuffer_getIndexedSpriteByName(var1, "logo", ""); + } + } + + WorldMapSprite.worldHost = var0.host; + Client.worldId = var0.id; + Client.worldProperties = var0.properties; + class278.port1 = Client.gameBuild == 0 ? 43594 : var0.id + 40000; + Players.port2 = Client.gameBuild == 0 ? 443 : var0.id + 50000; + ArchiveDiskAction.port3 = class278.port1; + } + + @ObfuscatedName("gt") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;B)V", + garbageValue = "90" + ) + @Export("doCheat") + static final void doCheat(String var0) { + if (var0.equalsIgnoreCase("toggleroof")) { + Timer.clientPreferences.roofsHidden = !Timer.clientPreferences.roofsHidden; + GrandExchangeOffer.savePreferences(); + if (Timer.clientPreferences.roofsHidden) { + class234.addGameMessage(99, "", "Roofs are now all hidden"); + } else { + class234.addGameMessage(99, "", "Roofs will only be removed selectively"); + } + } + + if (var0.equalsIgnoreCase("displayfps")) { + Client.displayFps = !Client.displayFps; + } + + if (var0.equalsIgnoreCase("renderself")) { + Client.renderSelf = !Client.renderSelf; + } + + if (var0.equalsIgnoreCase("mouseovertext")) { + Client.showMouseOverText = !Client.showMouseOverText; + } + + if (Client.staffModLevel >= 2) { + if (var0.equalsIgnoreCase("errortest")) { + throw new RuntimeException(); } - var7 = var5[var3]; // L: 10103 - } else if (var3 == 4) { // L: 10106 - var6 = 37; // L: 10107 - var7 = "Drop"; // L: 10108 + if (var0.equalsIgnoreCase("showcoord")) { + WorldMapRectangle.worldMap.showCoord = !WorldMapRectangle.worldMap.showCoord; + } + + if (var0.equalsIgnoreCase("fpson")) { + Client.displayFps = true; + } + + if (var0.equalsIgnoreCase("fpsoff")) { + Client.displayFps = false; + } + + if (var0.equalsIgnoreCase("gc")) { + System.gc(); + } + + if (var0.equalsIgnoreCase("clientdrop")) { + LoginScreenAnimation.method1903(); + } } - if (var6 != -1 && var7 != null) { // L: 10111 - KeyHandler.insertMenuItem(var7, Client.colorStartTag(16748608) + var1.name, var6, var1.id, var2, var0.id, var4); // L: 10112 + PacketBufferNode var1 = ItemContainer.getPacketBufferNode(ClientPacket.field2243, Client.packetWriter.isaacCipher); + var1.packetBuffer.writeByte(var0.length() + 1); + var1.packetBuffer.writeStringCp1252NullTerminated(var0); + Client.packetWriter.addNode(var1); + } + + @ObfuscatedName("lt") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1703246278" + ) + static final void method1217() { + for (int var0 = 0; var0 < Players.Players_count; ++var0) { + Player var1 = Client.players[Players.Players_indices[var0]]; + var1.clearIsInClanChat(); } - } // L: 10114 + } } diff --git a/runescape-client/src/main/java/SecureRandomFuture.java b/runescape-client/src/main/java/SecureRandomFuture.java index c41fc5b616..f824e8529b 100644 --- a/runescape-client/src/main/java/SecureRandomFuture.java +++ b/runescape-client/src/main/java/SecureRandomFuture.java @@ -4,110 +4,595 @@ import java.util.concurrent.Executors; import java.util.concurrent.Future; 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("ct") +@ObfuscatedName("ck") @Implements("SecureRandomFuture") public class SecureRandomFuture { - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "Lle;" + @ObfuscatedName("j") + @Export("ArchiveDiskActionHandler_thread") + static Thread ArchiveDiskActionHandler_thread; + @ObfuscatedName("ii") + @ObfuscatedGetter( + intValue = 366779581 ) - @Export("logoSprite") - static IndexedSprite logoSprite; - @ObfuscatedName("f") + @Export("oculusOrbFocalPointX") + static int oculusOrbFocalPointX; + @ObfuscatedName("h") @Export("executor") ExecutorService executor; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("future") Future future; SecureRandomFuture() { - this.executor = Executors.newSingleThreadExecutor(); // L: 10 - this.future = this.executor.submit(new SecureRandomCallable()); // L: 14 - } // L: 15 + this.executor = Executors.newSingleThreadExecutor(); + this.future = this.executor.submit(new SecureRandomCallable()); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "22" + descriptor = "(I)V", + garbageValue = "-1052169316" ) @Export("shutdown") void shutdown() { - this.executor.shutdown(); // L: 18 - this.executor = null; // L: 19 - } // L: 20 + this.executor.shutdown(); + this.executor = null; + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "19" + descriptor = "(I)Z", + garbageValue = "63706826" ) @Export("isDone") boolean isDone() { - return this.future.isDone(); // L: 23 + return this.future.isDone(); } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(I)Ljava/security/SecureRandom;", - garbageValue = "-2492664" + garbageValue = "1655382452" ) @Export("get") SecureRandom get() { try { - return (SecureRandom)this.future.get(); // L: 28 - } catch (Exception var2) { // L: 30 - return ServerPacket.method3740(); // L: 31 + return (SecureRandom)this.future.get(); + } catch (Exception var4) { + SecureRandom var3 = new SecureRandom(); + var3.nextInt(); + return var3; } } - @ObfuscatedName("e") + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "-623024875" + descriptor = "(ZI)V", + garbageValue = "109574038" ) - static final int method2252(int var0, int var1) { - int var2 = var1 * 57 + var0; // L: 462 - var2 ^= var2 << 13; // L: 463 - int var3 = var2 * (var2 * var2 * 15731 + 789221) + 1376312589 & Integer.MAX_VALUE; // L: 464 - return var3 >> 19 & 255; // L: 465 + public static void method2205(boolean var0) { + if (var0 != ItemDefinition.ItemDefinition_inMembersWorld) { + TileItem.method2187(); + ItemDefinition.ItemDefinition_inMembersWorld = var0; + } + } - @ObfuscatedName("ir") + @ObfuscatedName("gl") @ObfuscatedSignature( - descriptor = "([Lht;IIIZI)V", - garbageValue = "1783989616" + descriptor = "(IIIII)V", + garbageValue = "1070154541" ) - @Export("resizeInterface") - static void resizeInterface(Widget[] var0, int var1, int var2, int var3, boolean var4) { - for (int var5 = 0; var5 < var0.length; ++var5) { // L: 9890 - Widget var6 = var0[var5]; // L: 9891 - if (var6 != null && var6.parentId == var1) { // L: 9892 9893 - WorldMapIcon_0.alignWidgetSize(var6, var2, var3, var4); // L: 9894 - FileSystem.alignWidgetPosition(var6, var2, var3); // L: 9895 - if (var6.scrollX > var6.scrollWidth - var6.width) { // L: 9896 - var6.scrollX = var6.scrollWidth - var6.width; + @Export("drawEntities") + static final void drawEntities(int var0, int var1, int var2, int var3) { + ++Client.viewportDrawCount; + AttackOption.method2138(); + class51.method832(); + if (Client.combatTargetPlayerIndex >= 0 && Client.players[Client.combatTargetPlayerIndex] != null) { + ClientPreferences.addPlayerToScene(Client.players[Client.combatTargetPlayerIndex], false); + } + + Skeleton.addNpcsToScene(true); + WorldMapRectangle.method332(); + Skeleton.addNpcsToScene(false); + + int var6; + for (Projectile var4 = (Projectile)Client.projectiles.last(); var4 != null; var4 = (Projectile)Client.projectiles.previous()) { + if (var4.plane == GameObject.Client_plane && Client.cycle <= var4.cycleEnd) { + if (Client.cycle >= var4.cycleStart) { + if (var4.targetIndex > 0) { + NPC var33 = Client.npcs[var4.targetIndex - 1]; + if (var33 != null && var33.x >= 0 && var33.x < 13312 && var33.y >= 0 && var33.y < 13312) { + var4.setDestination(var33.x, var33.y, getTileHeight(var33.x, var33.y, var4.plane) - var4.endHeight, Client.cycle); + } + } + + if (var4.targetIndex < 0) { + var6 = -var4.targetIndex - 1; + Player var36; + if (var6 == Client.localPlayerIndex) { + var36 = PlayerAppearance.localPlayer; + } else { + var36 = Client.players[var6]; + } + + if (var36 != null && var36.x >= 0 && var36.x < 13312 && var36.y >= 0 && var36.y < 13312) { + var4.setDestination(var36.x, var36.y, getTileHeight(var36.x, var36.y, var4.plane) - var4.endHeight, Client.cycle); + } + } + + var4.advance(Client.field850); + ArchiveLoader.scene.drawEntity(GameObject.Client_plane, (int)var4.x, (int)var4.y, (int)var4.z, 60, var4, var4.yaw, -1L, false); + } + } else { + var4.remove(); + } + } + + WorldMapSprite.method467(); + class25.setViewportShape(var0, var1, var2, var3, true); + var0 = Client.viewportOffsetX; + var1 = Client.viewportOffsetY; + var2 = Client.viewportWidth; + var3 = Client.viewportHeight; + Rasterizer2D.Rasterizer2D_setClip(var0, var1, var0 + var2, var3 + var1); + Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D(); + int var5; + int var7; + int var8; + int var9; + int var10; + int var11; + int var12; + int var13; + int var14; + int var15; + int var16; + int var28; + if (!Client.isCameraLocked) { + var28 = Client.camAngleX; + if (Client.field918 / 256 > var28) { + var28 = Client.field918 / 256; + } + + if (Client.field902[4] && Client.field893[4] + 128 > var28) { + var28 = Client.field893[4] + 128; + } + + var5 = Client.camAngleY & 2047; + var6 = oculusOrbFocalPointX; + var7 = PacketWriter.field1341; + var8 = Decimator.oculusOrbFocalPointY; + var9 = WorldMapManager.method704(var28); + var9 = NetSocket.method3587(var9, var3); + var10 = 2048 - var28 & 2047; + var11 = 2048 - var5 & 2047; + var12 = 0; + var13 = 0; + var14 = var9; + int var17; + if (var10 != 0) { + var15 = Rasterizer3D.Rasterizer3D_sine[var10]; + var16 = Rasterizer3D.Rasterizer3D_cosine[var10]; + var17 = var16 * var13 - var15 * var9 >> 16; + var14 = var15 * var13 + var16 * var9 >> 16; + var13 = var17; + } + + if (var11 != 0) { + var15 = Rasterizer3D.Rasterizer3D_sine[var11]; + var16 = Rasterizer3D.Rasterizer3D_cosine[var11]; + var17 = var12 * var16 + var14 * var15 >> 16; + var14 = var14 * var16 - var15 * var12 >> 16; + var12 = var17; + } + + Player.cameraX = var6 - var12; + KeyHandler.cameraY = var7 - var13; + class69.cameraZ = var8 - var14; + Skeleton.cameraPitch = var28; + AbstractArchive.cameraYaw = var5; + if (Client.oculusOrbState == 1 && Client.staffModLevel >= 2 && Client.cycle % 50 == 0 && (oculusOrbFocalPointX >> 7 != PlayerAppearance.localPlayer.x >> 7 || Decimator.oculusOrbFocalPointY >> 7 != PlayerAppearance.localPlayer.y >> 7)) { + var15 = PlayerAppearance.localPlayer.plane; + var16 = NetFileRequest.baseX * 64 + (oculusOrbFocalPointX >> 7); + var17 = class41.baseY * 64 + (Decimator.oculusOrbFocalPointY >> 7); + PacketBufferNode var18 = ItemContainer.getPacketBufferNode(ClientPacket.field2269, Client.packetWriter.isaacCipher); + var18.packetBuffer.method5578(var16); + var18.packetBuffer.method5587(Client.field730); + var18.packetBuffer.method5739(var17); + var18.packetBuffer.writeByte(var15); + Client.packetWriter.addNode(var18); + } + } + + if (!Client.isCameraLocked) { + if (Timer.clientPreferences.roofsHidden) { + var5 = GameObject.Client_plane; + } else { + label625: { + var6 = 3; + if (Skeleton.cameraPitch < 310) { + if (Client.oculusOrbState == 1) { + var7 = oculusOrbFocalPointX >> 7; + var8 = Decimator.oculusOrbFocalPointY >> 7; + } else { + var7 = PlayerAppearance.localPlayer.x >> 7; + var8 = PlayerAppearance.localPlayer.y >> 7; + } + + var9 = Player.cameraX >> 7; + var10 = class69.cameraZ >> 7; + if (var9 < 0 || var10 < 0 || var9 >= 104 || var10 >= 104) { + var5 = GameObject.Client_plane; + break label625; + } + + if (var7 < 0 || var8 < 0 || var7 >= 104 || var8 >= 104) { + var5 = GameObject.Client_plane; + break label625; + } + + if ((Tiles.Tiles_renderFlags[GameObject.Client_plane][var9][var10] & 4) != 0) { + var6 = GameObject.Client_plane; + } + + if (var7 > var9) { + var11 = var7 - var9; + } else { + var11 = var9 - var7; + } + + if (var8 > var10) { + var12 = var8 - var10; + } else { + var12 = var10 - var8; + } + + if (var11 > var12) { + var13 = var12 * 65536 / var11; + var14 = 32768; + + while (var7 != var9) { + if (var9 < var7) { + ++var9; + } else if (var9 > var7) { + --var9; + } + + if ((Tiles.Tiles_renderFlags[GameObject.Client_plane][var9][var10] & 4) != 0) { + var6 = GameObject.Client_plane; + } + + var14 += var13; + if (var14 >= 65536) { + var14 -= 65536; + if (var10 < var8) { + ++var10; + } else if (var10 > var8) { + --var10; + } + + if ((Tiles.Tiles_renderFlags[GameObject.Client_plane][var9][var10] & 4) != 0) { + var6 = GameObject.Client_plane; + } + } + } + } else if (var12 > 0) { + var13 = var11 * 65536 / var12; + var14 = 32768; + + while (var10 != var8) { + if (var10 < var8) { + ++var10; + } else if (var10 > var8) { + --var10; + } + + if ((Tiles.Tiles_renderFlags[GameObject.Client_plane][var9][var10] & 4) != 0) { + var6 = GameObject.Client_plane; + } + + var14 += var13; + if (var14 >= 65536) { + var14 -= 65536; + if (var9 < var7) { + ++var9; + } else if (var9 > var7) { + --var9; + } + + if ((Tiles.Tiles_renderFlags[GameObject.Client_plane][var9][var10] & 4) != 0) { + var6 = GameObject.Client_plane; + } + } + } + } + } + + if (PlayerAppearance.localPlayer.x >= 0 && PlayerAppearance.localPlayer.y >= 0 && PlayerAppearance.localPlayer.x < 13312 && PlayerAppearance.localPlayer.y < 13312) { + if ((Tiles.Tiles_renderFlags[GameObject.Client_plane][PlayerAppearance.localPlayer.x >> 7][PlayerAppearance.localPlayer.y >> 7] & 4) != 0) { + var6 = GameObject.Client_plane; + } + + var5 = var6; + } else { + var5 = GameObject.Client_plane; + } + } + } + + var28 = var5; + } else { + var28 = WorldMapManager.method712(); + } + + var5 = Player.cameraX; + var6 = KeyHandler.cameraY; + var7 = class69.cameraZ; + var8 = Skeleton.cameraPitch; + var9 = AbstractArchive.cameraYaw; + + for (var10 = 0; var10 < 5; ++var10) { + if (Client.field902[var10]) { + var11 = (int)(Math.random() * (double)(Client.field679[var10] * 2 + 1) - (double)Client.field679[var10] + Math.sin((double)Client.field705[var10] / 100.0D * (double)Client.field644[var10]) * (double)Client.field893[var10]); + if (var10 == 0) { + Player.cameraX += var11; } - if (var6.scrollX < 0) { // L: 9897 - var6.scrollX = 0; + if (var10 == 1) { + KeyHandler.cameraY += var11; } - if (var6.scrollY > var6.scrollHeight - var6.height) { - var6.scrollY = var6.scrollHeight - var6.height; // L: 9898 + if (var10 == 2) { + class69.cameraZ += var11; } - if (var6.scrollY < 0) { // L: 9899 - var6.scrollY = 0; + if (var10 == 3) { + AbstractArchive.cameraYaw = var11 + AbstractArchive.cameraYaw & 2047; } - if (var6.type == 0) { // L: 9900 - UserComparator9.revalidateWidgetScroll(var0, var6, var4); + if (var10 == 4) { + Skeleton.cameraPitch += var11; + if (Skeleton.cameraPitch < 128) { + Skeleton.cameraPitch = 128; + } + + if (Skeleton.cameraPitch > 383) { + Skeleton.cameraPitch = 383; + } } } } - } // L: 9902 + var10 = MouseHandler.MouseHandler_x; + var11 = MouseHandler.MouseHandler_y; + if (MouseHandler.MouseHandler_lastButton != 0) { + var10 = MouseHandler.MouseHandler_lastPressedX; + var11 = MouseHandler.MouseHandler_lastPressedY; + } + + if (var10 >= var0 && var10 < var0 + var2 && var11 >= var1 && var11 < var3 + var1) { + class3.method41(var10 - var0, var11 - var1); + } else { + ViewportMouse.ViewportMouse_isInViewport = false; + ViewportMouse.ViewportMouse_entityCount = 0; + } + + FontName.playPcmPlayers(); + Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var2, var3, 0); + FontName.playPcmPlayers(); + var12 = Rasterizer3D.Rasterizer3D_zoom; + Rasterizer3D.Rasterizer3D_zoom = Client.viewportZoom; + ArchiveLoader.scene.draw(Player.cameraX, KeyHandler.cameraY, class69.cameraZ, Skeleton.cameraPitch, AbstractArchive.cameraYaw, var28); + Rasterizer3D.Rasterizer3D_zoom = var12; + FontName.playPcmPlayers(); + ArchiveLoader.scene.clearTempGameObjects(); + Client.overheadTextCount = 0; + boolean var34 = false; + var14 = -1; + var15 = -1; + var16 = Players.Players_count; + int[] var29 = Players.Players_indices; + + int var30; + for (var30 = 0; var30 < var16 + Client.npcCount; ++var30) { + Object var32; + if (var30 < var16) { + var32 = Client.players[var29[var30]]; + if (var29[var30] == Client.combatTargetPlayerIndex) { + var34 = true; + var14 = var30; + continue; + } + + if (var32 == PlayerAppearance.localPlayer) { + var15 = var30; + continue; + } + } else { + var32 = Client.npcs[Client.npcIndices[var30 - var16]]; + } + + AbstractWorldMapIcon.drawActor2d((Actor)var32, var30, var0, var1, var2, var3); + } + + if (Client.renderSelf && var15 != -1) { + AbstractWorldMapIcon.drawActor2d(PlayerAppearance.localPlayer, var15, var0, var1, var2, var3); + } + + if (var34) { + AbstractWorldMapIcon.drawActor2d(Client.players[Client.combatTargetPlayerIndex], var14, var0, var1, var2, var3); + } + + for (var30 = 0; var30 < Client.overheadTextCount; ++var30) { + int var19 = Client.overheadTextXs[var30]; + int var20 = Client.overheadTextYs[var30]; + int var21 = Client.overheadTextXOffsets[var30]; + int var22 = Client.overheadTextAscents[var30]; + boolean var23 = true; + + while (var23) { + var23 = false; + + for (int var31 = 0; var31 < var30; ++var31) { + if (var20 + 2 > Client.overheadTextYs[var31] - Client.overheadTextAscents[var31] && var20 - var22 < Client.overheadTextYs[var31] + 2 && var19 - var21 < Client.overheadTextXOffsets[var31] + Client.overheadTextXs[var31] && var19 + var21 > Client.overheadTextXs[var31] - Client.overheadTextXOffsets[var31] && Client.overheadTextYs[var31] - Client.overheadTextAscents[var31] < var20) { + var20 = Client.overheadTextYs[var31] - Client.overheadTextAscents[var31]; + var23 = true; + } + } + } + + Client.viewportTempX = Client.overheadTextXs[var30]; + Client.viewportTempY = Client.overheadTextYs[var30] = var20; + String var24 = Client.overheadText[var30]; + if (Client.chatEffects == 0) { + int var25 = 16776960; + if (Client.overheadTextColors[var30] < 6) { + var25 = Client.field863[Client.overheadTextColors[var30]]; + } + + if (Client.overheadTextColors[var30] == 6) { + var25 = Client.viewportDrawCount % 20 < 10 ? 16711680 : 16776960; + } + + if (Client.overheadTextColors[var30] == 7) { + var25 = Client.viewportDrawCount % 20 < 10 ? 255 : '\uffff'; + } + + if (Client.overheadTextColors[var30] == 8) { + var25 = Client.viewportDrawCount % 20 < 10 ? '뀀' : 8454016; + } + + int var26; + if (Client.overheadTextColors[var30] == 9) { + var26 = 150 - Client.overheadTextCyclesRemaining[var30]; + if (var26 < 50) { + var25 = var26 * 1280 + 16711680; + } else if (var26 < 100) { + var25 = 16776960 - (var26 - 50) * 327680; + } else if (var26 < 150) { + var25 = (var26 - 100) * 5 + 65280; + } + } + + if (Client.overheadTextColors[var30] == 10) { + var26 = 150 - Client.overheadTextCyclesRemaining[var30]; + if (var26 < 50) { + var25 = var26 * 5 + 16711680; + } else if (var26 < 100) { + var25 = 16711935 - (var26 - 50) * 327680; + } else if (var26 < 150) { + var25 = (var26 - 100) * 327680 + 255 - (var26 - 100) * 5; + } + } + + if (Client.overheadTextColors[var30] == 11) { + var26 = 150 - Client.overheadTextCyclesRemaining[var30]; + if (var26 < 50) { + var25 = 16777215 - var26 * 327685; + } else if (var26 < 100) { + var25 = (var26 - 50) * 327685 + 65280; + } else if (var26 < 150) { + var25 = 16777215 - (var26 - 100) * 327680; + } + } + + if (Client.overheadTextEffects[var30] == 0) { + GrandExchangeOfferTotalQuantityComparator.fontBold12.drawCentered(var24, var0 + Client.viewportTempX, Client.viewportTempY + var1, var25, 0); + } + + if (Client.overheadTextEffects[var30] == 1) { + GrandExchangeOfferTotalQuantityComparator.fontBold12.drawCenteredWave(var24, var0 + Client.viewportTempX, Client.viewportTempY + var1, var25, 0, Client.viewportDrawCount); + } + + if (Client.overheadTextEffects[var30] == 2) { + GrandExchangeOfferTotalQuantityComparator.fontBold12.drawCenteredWave2(var24, var0 + Client.viewportTempX, Client.viewportTempY + var1, var25, 0, Client.viewportDrawCount); + } + + if (Client.overheadTextEffects[var30] == 3) { + GrandExchangeOfferTotalQuantityComparator.fontBold12.drawCenteredShake(var24, var0 + Client.viewportTempX, Client.viewportTempY + var1, var25, 0, Client.viewportDrawCount, 150 - Client.overheadTextCyclesRemaining[var30]); + } + + if (Client.overheadTextEffects[var30] == 4) { + var26 = (150 - Client.overheadTextCyclesRemaining[var30]) * (GrandExchangeOfferTotalQuantityComparator.fontBold12.stringWidth(var24) + 100) / 150; + Rasterizer2D.Rasterizer2D_expandClip(var0 + Client.viewportTempX - 50, var1, var0 + Client.viewportTempX + 50, var3 + var1); + GrandExchangeOfferTotalQuantityComparator.fontBold12.draw(var24, var0 + Client.viewportTempX + 50 - var26, Client.viewportTempY + var1, var25, 0); + Rasterizer2D.Rasterizer2D_setClip(var0, var1, var0 + var2, var3 + var1); + } + + if (Client.overheadTextEffects[var30] == 5) { + var26 = 150 - Client.overheadTextCyclesRemaining[var30]; + int var27 = 0; + if (var26 < 25) { + var27 = var26 - 25; + } else if (var26 > 125) { + var27 = var26 - 125; + } + + Rasterizer2D.Rasterizer2D_expandClip(var0, Client.viewportTempY + var1 - GrandExchangeOfferTotalQuantityComparator.fontBold12.ascent - 1, var0 + var2, Client.viewportTempY + var1 + 5); + GrandExchangeOfferTotalQuantityComparator.fontBold12.drawCentered(var24, var0 + Client.viewportTempX, var27 + Client.viewportTempY + var1, var25, 0); + Rasterizer2D.Rasterizer2D_setClip(var0, var1, var0 + var2, var3 + var1); + } + } else { + GrandExchangeOfferTotalQuantityComparator.fontBold12.drawCentered(var24, var0 + Client.viewportTempX, Client.viewportTempY + var1, 16776960, 0); + } + } + + if (Client.hintArrowType == 2) { + GrandExchangeOffer.worldToScreen(Client.hintArrowSubX * 64 + (Client.hintArrowX - NetFileRequest.baseX * 64 << 7), Client.hintArrowSubY * 64 + (Client.hintArrowY - class41.baseY * 64 << 7), Client.hintArrowHeight * 2); + if (Client.viewportTempX > -1 && Client.cycle % 20 < 10) { + AbstractWorldMapIcon.headIconHintSprites[0].drawTransBgAt(var0 + Client.viewportTempX - 12, Client.viewportTempY + var1 - 28); + } + } + + ((TextureProvider)Rasterizer3D.Rasterizer3D_textureLoader).animate(Client.field850); + class231.method4153(); + Player.cameraX = var5; + KeyHandler.cameraY = var6; + class69.cameraZ = var7; + Skeleton.cameraPitch = var8; + AbstractArchive.cameraYaw = var9; + if (Client.isLoading) { + byte var35 = 0; + var14 = var35 + NetCache.NetCache_pendingPriorityWritesCount + NetCache.NetCache_pendingPriorityResponsesCount; + if (var14 == 0) { + Client.isLoading = false; + } + } + + if (Client.isLoading) { + Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var2, var3, 0); + Varps.drawLoadingMessage("Loading - please wait.", false); + } + + } + + @ObfuscatedName("ho") + @ObfuscatedSignature( + descriptor = "(IIII)I", + garbageValue = "1783095333" + ) + @Export("getTileHeight") + static final int getTileHeight(int var0, int var1, int var2) { + int var3 = var0 >> 7; + int var4 = var1 >> 7; + if (var3 >= 0 && var4 >= 0 && var3 <= 103 && var4 <= 103) { + int var5 = var2; + if (var2 < 3 && (Tiles.Tiles_renderFlags[1][var3][var4] & 2) == 2) { + var5 = var2 + 1; + } + + int var6 = var0 & 127; + int var7 = var1 & 127; + int var8 = (128 - var6) * Tiles.Tiles_heights[var5][var3][var4] + Tiles.Tiles_heights[var5][var3 + 1][var4] * var6 >> 7; + int var9 = var6 * Tiles.Tiles_heights[var5][var3 + 1][var4 + 1] + Tiles.Tiles_heights[var5][var3][var4 + 1] * (128 - var6) >> 7; + return var8 * (128 - var7) + var9 * var7 >> 7; + } else { + return 0; + } + } } diff --git a/runescape-client/src/main/java/SequenceDefinition.java b/runescape-client/src/main/java/SequenceDefinition.java index c7d87e127d..3b20824538 100644 --- a/runescape-client/src/main/java/SequenceDefinition.java +++ b/runescape-client/src/main/java/SequenceDefinition.java @@ -1,365 +1,1145 @@ +import java.awt.Toolkit; +import java.awt.datatransfer.Clipboard; +import java.awt.datatransfer.DataFlavor; +import java.awt.datatransfer.Transferable; +import java.awt.datatransfer.UnsupportedFlavorException; +import java.io.IOException; 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("jg") +@ObfuscatedName("jy") @Implements("SequenceDefinition") public class SequenceDefinition extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("SequenceDefinition_archive") - public static AbstractArchive SequenceDefinition_archive; - @ObfuscatedName("b") + static AbstractArchive SequenceDefinition_archive; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("SequenceDefinition_animationsArchive") - public static AbstractArchive SequenceDefinition_animationsArchive; - @ObfuscatedName("m") + static AbstractArchive SequenceDefinition_animationsArchive; + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lib;" + ) + @Export("SequenceDefinition_skeletonsArchive") + static AbstractArchive SequenceDefinition_skeletonsArchive; + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "Lez;" ) @Export("SequenceDefinition_cached") public static EvictingDualNodeHashTable SequenceDefinition_cached; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("SequenceDefinition_cachedFrames") public static EvictingDualNodeHashTable SequenceDefinition_cachedFrames; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("frameIds") public int[] frameIds; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("chatFrameIds") int[] chatFrameIds; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("frameLengths") public int[] frameLengths; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("soundEffects") public int[] soundEffects; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = 1610785433 + intValue = -478695053 ) @Export("frameCount") public int frameCount; + @ObfuscatedName("u") + int[] field3545; @ObfuscatedName("e") - int[] field3543; - @ObfuscatedName("o") - public boolean field3544; - @ObfuscatedName("n") + public boolean field3556; + @ObfuscatedName("m") @ObfuscatedGetter( - intValue = -780702177 + intValue = 496670999 ) - public int field3545; - @ObfuscatedName("x") + public int field3557; + @ObfuscatedName("c") @ObfuscatedGetter( - intValue = -825305281 + intValue = 844319139 ) @Export("shield") public int shield; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedGetter( - intValue = -1577634901 + intValue = -1836378725 ) @Export("weapon") public int weapon; - @ObfuscatedName("r") + @ObfuscatedName("f") @ObfuscatedGetter( - intValue = 508955331 + intValue = -647894777 ) - public int field3547; + public int field3554; + @ObfuscatedName("a") + @ObfuscatedGetter( + intValue = -2080076169 + ) + public int field3560; + @ObfuscatedName("b") + @ObfuscatedGetter( + intValue = 2098241255 + ) + public int field3555; @ObfuscatedName("y") @ObfuscatedGetter( - intValue = -370859363 + intValue = 384491885 ) - public int field3549; - @ObfuscatedName("s") - @ObfuscatedGetter( - intValue = -190010935 - ) - public int field3550; - @ObfuscatedName("j") - @ObfuscatedGetter( - intValue = 758592065 - ) - public int field3551; + public int field3548; static { - SequenceDefinition_cached = new EvictingDualNodeHashTable(64); // L: 15 - SequenceDefinition_cachedFrames = new EvictingDualNodeHashTable(100); // L: 16 + SequenceDefinition_cached = new EvictingDualNodeHashTable(64); + SequenceDefinition_cachedFrames = new EvictingDualNodeHashTable(100); } SequenceDefinition() { - this.frameCount = -1; // L: 21 - this.field3544 = false; // L: 23 - this.field3545 = 5; // L: 24 - this.shield = -1; // L: 25 - this.weapon = -1; // L: 26 - this.field3547 = 99; // L: 27 - this.field3549 = -1; // L: 28 - this.field3550 = -1; // L: 29 - this.field3551 = 2; // L: 30 - } // L: 32 + this.frameCount = -1; + this.field3556 = false; + this.field3557 = 5; + this.shield = -1; + this.weapon = -1; + this.field3554 = 99; + this.field3560 = -1; + this.field3555 = -1; + this.field3548 = 2; + } - @ObfuscatedName("b") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "1755425441" + descriptor = "(Lkj;B)V", + garbageValue = "-72" ) @Export("decode") void decode(Buffer var1) { while (true) { - int var2 = var1.readUnsignedByte(); // L: 47 - if (var2 == 0) { // L: 48 - return; // L: 51 + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; } - this.decodeNext(var1, var2); // L: 49 + this.decodeNext(var1, var2); } } - @ObfuscatedName("l") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "-1461293345" + descriptor = "(Lkj;II)V", + garbageValue = "360291550" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { int var3; int var4; - if (var2 == 1) { // L: 54 - var3 = var1.readUnsignedShort(); // L: 55 - this.frameLengths = new int[var3]; // L: 56 + if (var2 == 1) { + var3 = var1.readUnsignedShort(); + this.frameLengths = new int[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 57 + for (var4 = 0; var4 < var3; ++var4) { this.frameLengths[var4] = var1.readUnsignedShort(); } - this.frameIds = new int[var3]; // L: 58 + this.frameIds = new int[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 59 + for (var4 = 0; var4 < var3; ++var4) { this.frameIds[var4] = var1.readUnsignedShort(); } - for (var4 = 0; var4 < var3; ++var4) { // L: 60 + for (var4 = 0; var4 < var3; ++var4) { this.frameIds[var4] += var1.readUnsignedShort() << 16; } - } else if (var2 == 2) { // L: 62 + } else if (var2 == 2) { this.frameCount = var1.readUnsignedShort(); - } else if (var2 == 3) { // L: 63 - var3 = var1.readUnsignedByte(); // L: 64 - this.field3543 = new int[var3 + 1]; // L: 65 + } else if (var2 == 3) { + var3 = var1.readUnsignedByte(); + this.field3545 = new int[var3 + 1]; - for (var4 = 0; var4 < var3; ++var4) { // L: 66 - this.field3543[var4] = var1.readUnsignedByte(); + for (var4 = 0; var4 < var3; ++var4) { + this.field3545[var4] = var1.readUnsignedByte(); } - this.field3543[var3] = 9999999; // L: 67 - } else if (var2 == 4) { // L: 69 - this.field3544 = true; - } else if (var2 == 5) { // L: 70 - this.field3545 = var1.readUnsignedByte(); - } else if (var2 == 6) { // L: 71 + this.field3545[var3] = 9999999; + } else if (var2 == 4) { + this.field3556 = true; + } else if (var2 == 5) { + this.field3557 = var1.readUnsignedByte(); + } else if (var2 == 6) { this.shield = var1.readUnsignedShort(); - } else if (var2 == 7) { // L: 72 + } else if (var2 == 7) { this.weapon = var1.readUnsignedShort(); - } else if (var2 == 8) { // L: 73 - this.field3547 = var1.readUnsignedByte(); - } else if (var2 == 9) { // L: 74 - this.field3549 = var1.readUnsignedByte(); - } else if (var2 == 10) { // L: 75 - this.field3550 = var1.readUnsignedByte(); - } else if (var2 == 11) { // L: 76 - this.field3551 = var1.readUnsignedByte(); - } else if (var2 == 12) { // L: 77 - var3 = var1.readUnsignedByte(); // L: 78 - this.chatFrameIds = new int[var3]; // L: 79 + } else if (var2 == 8) { + this.field3554 = var1.readUnsignedByte(); + } else if (var2 == 9) { + this.field3560 = var1.readUnsignedByte(); + } else if (var2 == 10) { + this.field3555 = var1.readUnsignedByte(); + } else if (var2 == 11) { + this.field3548 = var1.readUnsignedByte(); + } else if (var2 == 12) { + var3 = var1.readUnsignedByte(); + this.chatFrameIds = new int[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 80 + for (var4 = 0; var4 < var3; ++var4) { this.chatFrameIds[var4] = var1.readUnsignedShort(); } - for (var4 = 0; var4 < var3; ++var4) { // L: 81 + for (var4 = 0; var4 < var3; ++var4) { this.chatFrameIds[var4] += var1.readUnsignedShort() << 16; } - } else if (var2 == 13) { // L: 83 - var3 = var1.readUnsignedByte(); // L: 84 - this.soundEffects = new int[var3]; // L: 85 + } else if (var2 == 13) { + var3 = var1.readUnsignedByte(); + this.soundEffects = new int[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 86 + for (var4 = 0; var4 < var3; ++var4) { this.soundEffects[var4] = var1.readMedium(); } } - } // L: 89 + } - @ObfuscatedName("m") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "498097204" + garbageValue = "-1714495810" ) @Export("postDecode") void postDecode() { - if (this.field3549 == -1) { // L: 92 - if (this.field3543 != null) { // L: 93 - this.field3549 = 2; + if (this.field3560 == -1) { + if (this.field3545 != null) { + this.field3560 = 2; } else { - this.field3549 = 0; // L: 94 + this.field3560 = 0; } } - if (this.field3550 == -1) { // L: 96 - if (this.field3543 != null) { // L: 97 - this.field3550 = 2; + if (this.field3555 == -1) { + if (this.field3545 != null) { + this.field3555 = 2; } else { - this.field3550 = 0; // L: 98 + this.field3555 = 0; } } - } // L: 100 + } - @ObfuscatedName("z") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(Leh;II)Leh;", - garbageValue = "311789628" + descriptor = "(Leh;IB)Leh;", + garbageValue = "17" ) @Export("transformActorModel") public Model transformActorModel(Model var1, int var2) { - var2 = this.frameIds[var2]; // L: 103 - Frames var3 = LoginPacket.getFrames(var2 >> 16); // L: 104 - var2 &= 65535; // L: 105 + var2 = this.frameIds[var2]; + Frames var3 = ArchiveDiskAction.getFrames(var2 >> 16); + var2 &= 65535; if (var3 == null) { - return var1.toSharedSequenceModel(true); // L: 106 + return var1.toSharedSequenceModel(true); } else { - Model var4 = var1.toSharedSequenceModel(!var3.hasAlphaTransform(var2)); // L: 107 - var4.animate(var3, var2); // L: 108 - return var4; // L: 109 + Model var4 = var1.toSharedSequenceModel(!var3.hasAlphaTransform(var2)); + var4.animate(var3, var2); + return var4; } } - @ObfuscatedName("q") + @ObfuscatedName("n") @ObfuscatedSignature( descriptor = "(Leh;III)Leh;", - garbageValue = "-1889831767" + garbageValue = "-2055004440" ) @Export("transformObjectModel") Model transformObjectModel(Model var1, int var2, int var3) { - var2 = this.frameIds[var2]; // L: 113 - Frames var4 = LoginPacket.getFrames(var2 >> 16); // L: 114 - var2 &= 65535; // L: 115 - if (var4 == null) { // L: 116 + var2 = this.frameIds[var2]; + Frames var4 = ArchiveDiskAction.getFrames(var2 >> 16); + var2 &= 65535; + if (var4 == null) { return var1.toSharedSequenceModel(true); } else { - Model var5 = var1.toSharedSequenceModel(!var4.hasAlphaTransform(var2)); // L: 117 - var3 &= 3; // L: 118 - if (var3 == 1) { // L: 119 + Model var5 = var1.toSharedSequenceModel(!var4.hasAlphaTransform(var2)); + var3 &= 3; + if (var3 == 1) { var5.rotateY270Ccw(); - } else if (var3 == 2) { // L: 120 + } else if (var3 == 2) { var5.rotateY180(); - } else if (var3 == 3) { // L: 121 + } else if (var3 == 3) { var5.rotateY90Ccw(); } - var5.animate(var4, var2); // L: 122 - if (var3 == 1) { // L: 123 + var5.animate(var4, var2); + if (var3 == 1) { var5.rotateY90Ccw(); - } else if (var3 == 2) { // L: 124 + } else if (var3 == 2) { var5.rotateY180(); - } else if (var3 == 3) { // L: 125 + } else if (var3 == 3) { var5.rotateY270Ccw(); } - return var5; // L: 126 + return var5; } } - @ObfuscatedName("k") + @ObfuscatedName("p") @ObfuscatedSignature( descriptor = "(Leh;II)Leh;", - garbageValue = "-52965568" + garbageValue = "-109933088" ) @Export("transformSpotAnimationModel") Model transformSpotAnimationModel(Model var1, int var2) { - var2 = this.frameIds[var2]; // L: 130 - Frames var3 = LoginPacket.getFrames(var2 >> 16); // L: 131 - var2 &= 65535; // L: 132 + var2 = this.frameIds[var2]; + Frames var3 = ArchiveDiskAction.getFrames(var2 >> 16); + var2 &= 65535; if (var3 == null) { - return var1.toSharedSpotAnimationModel(true); // L: 133 + return var1.toSharedSpotAnimationModel(true); } else { - Model var4 = var1.toSharedSpotAnimationModel(!var3.hasAlphaTransform(var2)); // L: 134 - var4.animate(var3, var2); // L: 135 - return var4; // L: 136 + Model var4 = var1.toSharedSpotAnimationModel(!var3.hasAlphaTransform(var2)); + var4.animate(var3, var2); + return var4; } } - @ObfuscatedName("c") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "(Leh;ILjg;II)Leh;", - garbageValue = "-1275419577" + descriptor = "(Leh;ILjy;IB)Leh;", + garbageValue = "-74" ) @Export("applyTransformations") public Model applyTransformations(Model var1, int var2, SequenceDefinition var3, int var4) { - var2 = this.frameIds[var2]; // L: 140 - Frames var5 = LoginPacket.getFrames(var2 >> 16); // L: 141 - var2 &= 65535; // L: 142 - if (var5 == null) { // L: 143 + var2 = this.frameIds[var2]; + Frames var5 = ArchiveDiskAction.getFrames(var2 >> 16); + var2 &= 65535; + if (var5 == null) { return var3.transformActorModel(var1, var4); } else { - var4 = var3.frameIds[var4]; // L: 144 - Frames var6 = LoginPacket.getFrames(var4 >> 16); // L: 145 - var4 &= 65535; // L: 146 + var4 = var3.frameIds[var4]; + Frames var6 = ArchiveDiskAction.getFrames(var4 >> 16); + var4 &= 65535; Model var7; - if (var6 == null) { // L: 147 - var7 = var1.toSharedSequenceModel(!var5.hasAlphaTransform(var2)); // L: 148 - var7.animate(var5, var2); // L: 149 - return var7; // L: 150 + if (var6 == null) { + var7 = var1.toSharedSequenceModel(!var5.hasAlphaTransform(var2)); + var7.animate(var5, var2); + return var7; } else { - var7 = var1.toSharedSequenceModel(!var5.hasAlphaTransform(var2) & !var6.hasAlphaTransform(var4)); // L: 152 - var7.animate2(var5, var2, var6, var4, this.field3543); // L: 153 - return var7; // L: 154 + var7 = var1.toSharedSequenceModel(!var5.hasAlphaTransform(var2) & !var6.hasAlphaTransform(var4)); + var7.animate2(var5, var2, var6, var4, this.field3545); + return var7; } } } - @ObfuscatedName("u") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "(Leh;II)Leh;", - garbageValue = "211879185" + descriptor = "(Leh;IB)Leh;", + garbageValue = "4" ) @Export("transformWidgetModel") public Model transformWidgetModel(Model var1, int var2) { - int var3 = this.frameIds[var2]; // L: 158 - Frames var4 = LoginPacket.getFrames(var3 >> 16); // L: 159 - var3 &= 65535; // L: 160 - if (var4 == null) { // L: 161 + int var3 = this.frameIds[var2]; + Frames var4 = ArchiveDiskAction.getFrames(var3 >> 16); + var3 &= 65535; + if (var4 == null) { return var1.toSharedSequenceModel(true); } else { - Frames var5 = null; // L: 162 - int var6 = 0; // L: 163 - if (this.chatFrameIds != null && var2 < this.chatFrameIds.length) { // L: 164 - var6 = this.chatFrameIds[var2]; // L: 165 - var5 = LoginPacket.getFrames(var6 >> 16); // L: 166 - var6 &= 65535; // L: 167 + Frames var5 = null; + int var6 = 0; + if (this.chatFrameIds != null && var2 < this.chatFrameIds.length) { + var6 = this.chatFrameIds[var2]; + var5 = ArchiveDiskAction.getFrames(var6 >> 16); + var6 &= 65535; } Model var7; - if (var5 != null && var6 != 65535) { // L: 169 - var7 = var1.toSharedSequenceModel(!var4.hasAlphaTransform(var3) & !var5.hasAlphaTransform(var6)); // L: 174 - var7.animate(var4, var3); // L: 175 - var7.animate(var5, var6); // L: 176 - return var7; // L: 177 + if (var5 != null && var6 != 65535) { + var7 = var1.toSharedSequenceModel(!var4.hasAlphaTransform(var3) & !var5.hasAlphaTransform(var6)); + var7.animate(var4, var3); + var7.animate(var5, var6); + return var7; } else { - var7 = var1.toSharedSequenceModel(!var4.hasAlphaTransform(var3)); // L: 170 - var7.animate(var4, var3); // L: 171 - return var7; // L: 172 + var7 = var1.toSharedSequenceModel(!var4.hasAlphaTransform(var3)); + var7.animate(var4, var3); + return var7; } } } + + @ObfuscatedName("p") + @ObfuscatedSignature( + descriptor = "(Lbd;B)V", + garbageValue = "1" + ) + @Export("doCycleTitle") + static void doCycleTitle(GameShell var0) { + int var2; + int var3; + int var4; + if (Login.worldSelectOpen) { + while (true) { + if (!GrandExchangeOfferNameComparator.isKeyDown()) { + if (MouseHandler.MouseHandler_lastButton != 1 && (UserComparator9.mouseCam || MouseHandler.MouseHandler_lastButton != 4)) { + break; + } + + int var1 = Login.xPadding + 280; + if (MouseHandler.MouseHandler_lastPressedX >= var1 && MouseHandler.MouseHandler_lastPressedX <= var1 + 14 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { + HealthBarDefinition.changeWorldSelectSorting(0, 0); + break; + } + + if (MouseHandler.MouseHandler_lastPressedX >= var1 + 15 && MouseHandler.MouseHandler_lastPressedX <= var1 + 80 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { + HealthBarDefinition.changeWorldSelectSorting(0, 1); + break; + } + + var2 = Login.xPadding + 390; + if (MouseHandler.MouseHandler_lastPressedX >= var2 && MouseHandler.MouseHandler_lastPressedX <= var2 + 14 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { + HealthBarDefinition.changeWorldSelectSorting(1, 0); + break; + } + + if (MouseHandler.MouseHandler_lastPressedX >= var2 + 15 && MouseHandler.MouseHandler_lastPressedX <= var2 + 80 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { + HealthBarDefinition.changeWorldSelectSorting(1, 1); + break; + } + + var3 = Login.xPadding + 500; + if (MouseHandler.MouseHandler_lastPressedX >= var3 && MouseHandler.MouseHandler_lastPressedX <= var3 + 14 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { + HealthBarDefinition.changeWorldSelectSorting(2, 0); + break; + } + + if (MouseHandler.MouseHandler_lastPressedX >= var3 + 15 && MouseHandler.MouseHandler_lastPressedX <= var3 + 80 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { + HealthBarDefinition.changeWorldSelectSorting(2, 1); + break; + } + + var4 = Login.xPadding + 610; + if (MouseHandler.MouseHandler_lastPressedX >= var4 && MouseHandler.MouseHandler_lastPressedX <= var4 + 14 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { + HealthBarDefinition.changeWorldSelectSorting(3, 0); + break; + } + + if (MouseHandler.MouseHandler_lastPressedX >= var4 + 15 && MouseHandler.MouseHandler_lastPressedX <= var4 + 80 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { + HealthBarDefinition.changeWorldSelectSorting(3, 1); + break; + } + + if (MouseHandler.MouseHandler_lastPressedX >= Login.xPadding + 708 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedX <= Login.xPadding + 708 + 50 && MouseHandler.MouseHandler_lastPressedY <= 20) { + Login.worldSelectOpen = false; + class25.leftTitleSprite.drawAt(Login.xPadding, 0); + class224.rightTitleSprite.drawAt(Login.xPadding + 382, 0); + class224.logoSprite.drawAt(Login.xPadding + 382 - class224.logoSprite.subWidth / 2, 18); + break; + } + + if (Login.hoveredWorldIndex != -1) { + World var5 = World.World_worlds[Login.hoveredWorldIndex]; + SecureRandomCallable.changeWorld(var5); + Login.worldSelectOpen = false; + class25.leftTitleSprite.drawAt(Login.xPadding, 0); + class224.rightTitleSprite.drawAt(Login.xPadding + 382, 0); + class224.logoSprite.drawAt(Login.xPadding + 382 - class224.logoSprite.subWidth / 2, 18); + } else { + if (Login.worldSelectPage > 0 && VerticalAlignment.worldSelectLeftSprite != null && MouseHandler.MouseHandler_lastPressedX >= 0 && MouseHandler.MouseHandler_lastPressedX <= VerticalAlignment.worldSelectLeftSprite.subWidth && MouseHandler.MouseHandler_lastPressedY >= ModelData0.canvasHeight / 2 - 50 && MouseHandler.MouseHandler_lastPressedY <= ModelData0.canvasHeight / 2 + 50) { + --Login.worldSelectPage; + } + + if (Login.worldSelectPage < Login.worldSelectPagesCount && class8.worldSelectRightSprite != null && MouseHandler.MouseHandler_lastPressedX >= IgnoreList.canvasWidth - class8.worldSelectRightSprite.subWidth - 5 && MouseHandler.MouseHandler_lastPressedX <= IgnoreList.canvasWidth && MouseHandler.MouseHandler_lastPressedY >= ModelData0.canvasHeight / 2 - 50 && MouseHandler.MouseHandler_lastPressedY <= ModelData0.canvasHeight / 2 + 50) { + ++Login.worldSelectPage; + } + } + break; + } + + if (StudioGame.field3135 == 13) { + Login.worldSelectOpen = false; + class25.leftTitleSprite.drawAt(Login.xPadding, 0); + class224.rightTitleSprite.drawAt(Login.xPadding + 382, 0); + class224.logoSprite.drawAt(Login.xPadding + 382 - class224.logoSprite.subWidth / 2, 18); + break; + } + + if (StudioGame.field3135 == 96) { + if (Login.worldSelectPage > 0 && VerticalAlignment.worldSelectLeftSprite != null) { + --Login.worldSelectPage; + } + } else if (StudioGame.field3135 == 97 && Login.worldSelectPage < Login.worldSelectPagesCount && class8.worldSelectRightSprite != null) { + ++Login.worldSelectPage; + } + } + + } else { + if ((MouseHandler.MouseHandler_lastButton == 1 || !UserComparator9.mouseCam && MouseHandler.MouseHandler_lastButton == 4) && MouseHandler.MouseHandler_lastPressedX >= Login.xPadding + 765 - 50 && MouseHandler.MouseHandler_lastPressedY >= 453) { + Timer.clientPreferences.titleMusicDisabled = !Timer.clientPreferences.titleMusicDisabled; + GrandExchangeOffer.savePreferences(); + if (!Timer.clientPreferences.titleMusicDisabled) { + Archive var21 = class217.archive6; + var2 = var21.getGroupId("scape main"); + var3 = var21.getFileId(var2, ""); + Interpreter.method2082(var21, var2, var3, 255, false); + } else { + WorldMapRegion.method588(); + } + } + + if (Client.gameState != 5) { + if (-1L == Login.field1208) { + Login.field1208 = class298.currentTimeMillis() + 1000L; + } + + long var22 = class298.currentTimeMillis(); + boolean var33; + if (Client.archiveLoaders != null && Client.archiveLoadersDone < Client.archiveLoaders.size()) { + while (true) { + if (Client.archiveLoadersDone >= Client.archiveLoaders.size()) { + var33 = true; + break; + } + + ArchiveLoader var24 = (ArchiveLoader)Client.archiveLoaders.get(Client.archiveLoadersDone); + if (!var24.isLoaded()) { + var33 = false; + break; + } + + ++Client.archiveLoadersDone; + } + } else { + var33 = true; + } + + if (var33 && Login.field1209 == -1L) { + Login.field1209 = var22; + if (Login.field1209 > Login.field1208) { + Login.field1208 = Login.field1209; + } + } + + if (Client.gameState == 10 || Client.gameState == 11) { + if (Language.Language_EN == WorldMapScaleHandler.clientLanguage) { + if (MouseHandler.MouseHandler_lastButton == 1 || !UserComparator9.mouseCam && MouseHandler.MouseHandler_lastButton == 4) { + var4 = Login.xPadding + 5; + short var25 = 463; + byte var6 = 100; + byte var7 = 35; + if (MouseHandler.MouseHandler_lastPressedX >= var4 && MouseHandler.MouseHandler_lastPressedX <= var6 + var4 && MouseHandler.MouseHandler_lastPressedY >= var25 && MouseHandler.MouseHandler_lastPressedY <= var25 + var7) { + if (GrandExchangeEvent.loadWorlds()) { + Login.worldSelectOpen = true; + Login.worldSelectPage = 0; + Login.worldSelectPagesCount = 0; + } + + return; + } + } + + if (World.World_request != null && GrandExchangeEvent.loadWorlds()) { + Login.worldSelectOpen = true; + Login.worldSelectPage = 0; + Login.worldSelectPagesCount = 0; + } + } + + var4 = MouseHandler.MouseHandler_lastButton; + int var44 = MouseHandler.MouseHandler_lastPressedX; + int var34 = MouseHandler.MouseHandler_lastPressedY; + if (var4 == 0) { + var44 = MouseHandler.MouseHandler_x; + var34 = MouseHandler.MouseHandler_y; + } + + if (!UserComparator9.mouseCam && var4 == 4) { + var4 = 1; + } + + short var37; + int var38; + if (Login.loginIndex == 0) { + boolean var42 = false; + + while (GrandExchangeOfferNameComparator.isKeyDown()) { + if (StudioGame.field3135 == 84) { + var42 = true; + } + } + + var38 = Login.loginBoxCenter - 80; + var37 = 291; + if (var4 == 1 && var44 >= var38 - 75 && var44 <= var38 + 75 && var34 >= var37 - 20 && var34 <= var37 + 20) { + AttackOption.openURL(AbstractWorldMapIcon.method632("secure", true) + "m=account-creation/g=oldscape/create_account_funnel.ws", true, false); + } + + var38 = Login.loginBoxCenter + 80; + if (var4 == 1 && var44 >= var38 - 75 && var44 <= var38 + 75 && var34 >= var37 - 20 && var34 <= var37 + 20 || var42) { + if ((Client.worldProperties & 33554432) != 0) { + Login.Login_response0 = ""; + Login.Login_response1 = "This is a Beta world."; + Login.Login_response2 = "Your normal account will not be affected."; + Login.Login_response3 = ""; + Login.loginIndex = 1; + if (Client.Login_isUsernameRemembered && Login.Login_username != null && Login.Login_username.length() > 0) { + Login.currentLoginField = 1; + } else { + Login.currentLoginField = 0; + } + } else if ((Client.worldProperties & 4) != 0) { + if ((Client.worldProperties & 1024) != 0) { + Login.Login_response1 = "This is a High Risk PvP world."; + Login.Login_response2 = "Players can attack each other almost everywhere"; + Login.Login_response3 = "and the Protect Item prayer won't work."; + } else { + Login.Login_response1 = "This is a PvP world."; + Login.Login_response2 = "Players can attack each other"; + Login.Login_response3 = "almost everywhere."; + } + + Login.Login_response0 = "Warning!"; + Login.loginIndex = 1; + Client.method1799(); + } else if ((Client.worldProperties & 1024) != 0) { + Login.Login_response1 = "This is a High Risk world."; + Login.Login_response2 = "The Protect Item prayer will"; + Login.Login_response3 = "not work on this world."; + Login.Login_response0 = "Warning!"; + Login.loginIndex = 1; + Client.method1799(); + } else { + AbstractWorldMapIcon.Login_promptCredentials(false); + } + } + } else { + short var8; + int var35; + if (Login.loginIndex == 1) { + while (true) { + if (!GrandExchangeOfferNameComparator.isKeyDown()) { + var35 = Login.loginBoxCenter - 80; + var8 = 321; + if (var4 == 1 && var44 >= var35 - 75 && var44 <= var35 + 75 && var34 >= var8 - 20 && var34 <= var8 + 20) { + AbstractWorldMapIcon.Login_promptCredentials(false); + } + + var35 = Login.loginBoxCenter + 80; + if (var4 == 1 && var44 >= var35 - 75 && var44 <= var35 + 75 && var34 >= var8 - 20 && var34 <= var8 + 20) { + Login.loginIndex = 0; + } + break; + } + + if (StudioGame.field3135 == 84) { + AbstractWorldMapIcon.Login_promptCredentials(false); + } else if (StudioGame.field3135 == 13) { + Login.loginIndex = 0; + } + } + } else { + int var11; + short var36; + boolean var39; + if (Login.loginIndex == 2) { + var36 = 201; + var35 = var36 + 52; + if (var4 == 1 && var34 >= var35 - 12 && var34 < var35 + 2) { + Login.currentLoginField = 0; + } + + var35 += 15; + if (var4 == 1 && var34 >= var35 - 12 && var34 < var35 + 2) { + Login.currentLoginField = 1; + } + + var35 += 15; + var36 = 361; + if (GameShell.field481 != null) { + var38 = GameShell.field481.highX / 2; + if (var4 == 1 && var44 >= GameShell.field481.lowX - var38 && var44 <= var38 + GameShell.field481.lowX && var34 >= var36 - 15 && var34 < var36) { + switch(Login.field1190) { + case 1: + GameShell.setLoginResponseString("Please enter your username.", "If you created your account after November", "2010, this will be the creation email address."); + Login.loginIndex = 5; + return; + case 2: + AttackOption.openURL("https://support.runescape.com/hc/en-gb", true, false); + } + } + } + + var38 = Login.loginBoxCenter - 80; + var37 = 321; + if (var4 == 1 && var44 >= var38 - 75 && var44 <= var38 + 75 && var34 >= var37 - 20 && var34 <= var37 + 20) { + Login.Login_username = Login.Login_username.trim(); + if (Login.Login_username.length() == 0) { + GameShell.setLoginResponseString("", "Please enter your username/email address.", ""); + return; + } + + if (Login.Login_password.length() == 0) { + GameShell.setLoginResponseString("", "Please enter your password.", ""); + return; + } + + GameShell.setLoginResponseString("", "Connecting to server...", ""); + WorldMapDecoration.method380(false); + WorldMapCacheName.updateGameState(20); + return; + } + + var38 = Login.loginBoxX + 180 + 80; + if (var4 == 1 && var44 >= var38 - 75 && var44 <= var38 + 75 && var34 >= var37 - 20 && var34 <= var37 + 20) { + Login.loginIndex = 0; + Login.Login_username = ""; + Login.Login_password = ""; + WorldMapSection1.field313 = 0; + SecureRandomCallable.otp = ""; + Login.field1200 = true; + } + + var38 = Login.loginBoxCenter + -117; + var37 = 277; + Login.field1192 = var44 >= var38 && var44 < var38 + FriendSystem.field1071 && var34 >= var37 && var34 < var37 + Players.field1260; + if (var4 == 1 && Login.field1192) { + Client.Login_isUsernameRemembered = !Client.Login_isUsernameRemembered; + if (!Client.Login_isUsernameRemembered && Timer.clientPreferences.rememberedUsername != null) { + Timer.clientPreferences.rememberedUsername = null; + GrandExchangeOffer.savePreferences(); + } + } + + var38 = Login.loginBoxCenter + 24; + var37 = 277; + Login.field1180 = var44 >= var38 && var44 < var38 + FriendSystem.field1071 && var34 >= var37 && var34 < var37 + Players.field1260; + if (var4 == 1 && Login.field1180) { + Timer.clientPreferences.hideUsername = !Timer.clientPreferences.hideUsername; + if (!Timer.clientPreferences.hideUsername) { + Login.Login_username = ""; + Timer.clientPreferences.rememberedUsername = null; + Client.method1799(); + } + + GrandExchangeOffer.savePreferences(); + } + + while (true) { + int var12; + Transferable var27; + do { + while (true) { + label1161: + do { + while (true) { + while (GrandExchangeOfferNameComparator.isKeyDown()) { + if (StudioGame.field3135 != 13) { + if (Login.currentLoginField != 0) { + continue label1161; + } + + char var40 = WorldMapIcon_1.field200; + + for (var11 = 0; var11 < "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"£$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".length() && var40 != "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"£$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".charAt(var11); ++var11) { + } + + if (StudioGame.field3135 == 85 && Login.Login_username.length() > 0) { + Login.Login_username = Login.Login_username.substring(0, Login.Login_username.length() - 1); + } + + if (StudioGame.field3135 == 84 || StudioGame.field3135 == 80) { + Login.currentLoginField = 1; + } + + if (Interpreter.method1995(WorldMapIcon_1.field200) && Login.Login_username.length() < 320) { + Login.Login_username = Login.Login_username + WorldMapIcon_1.field200; + } + } else { + Login.loginIndex = 0; + Login.Login_username = ""; + Login.Login_password = ""; + WorldMapSection1.field313 = 0; + SecureRandomCallable.otp = ""; + Login.field1200 = true; + } + } + + return; + } + } while(Login.currentLoginField != 1); + + if (StudioGame.field3135 == 85 && Login.Login_password.length() > 0) { + Login.Login_password = Login.Login_password.substring(0, Login.Login_password.length() - 1); + } else if (StudioGame.field3135 == 84 || StudioGame.field3135 == 80) { + Login.currentLoginField = 0; + if (StudioGame.field3135 == 84) { + Login.Login_username = Login.Login_username.trim(); + if (Login.Login_username.length() == 0) { + GameShell.setLoginResponseString("", "Please enter your username/email address.", ""); + return; + } + + if (Login.Login_password.length() == 0) { + GameShell.setLoginResponseString("", "Please enter your password.", ""); + return; + } + + GameShell.setLoginResponseString("", "Connecting to server...", ""); + WorldMapDecoration.method380(false); + WorldMapCacheName.updateGameState(20); + return; + } + } + + if ((KeyHandler.KeyHandler_pressedKeys[82] || KeyHandler.KeyHandler_pressedKeys[87]) && StudioGame.field3135 == 67) { + Clipboard var26 = Toolkit.getDefaultToolkit().getSystemClipboard(); + var27 = var26.getContents(WorldMapIcon_0.client); + var12 = 20 - Login.Login_password.length(); + break; + } + + char var41 = WorldMapIcon_1.field200; + if ((var41 < ' ' || var41 >= 127) && (var41 <= 127 || var41 >= 160) && (var41 <= 160 || var41 > 255)) { + label1364: { + if (var41 != 0) { + char[] var28 = class298.cp1252AsciiExtension; + + for (int var29 = 0; var29 < var28.length; ++var29) { + char var14 = var28[var29]; + if (var14 == var41) { + var39 = true; + break label1364; + } + } + } + + var39 = false; + } + } else { + var39 = true; + } + + if (var39 && Interpreter.method1995(WorldMapIcon_1.field200) && Login.Login_password.length() < 20) { + Login.Login_password = Login.Login_password + WorldMapIcon_1.field200; + } + } + } while(var12 <= 0); + + try { + String var13 = (String)var27.getTransferData(DataFlavor.stringFlavor); + int var43 = Math.min(var12, var13.length()); + + for (int var15 = 0; var15 < var43; ++var15) { + char var17 = var13.charAt(var15); + boolean var16; + if (var17 >= ' ' && var17 < 127 || var17 > 127 && var17 < 160 || var17 > 160 && var17 <= 255) { + var16 = true; + } else { + label1378: { + if (var17 != 0) { + char[] var18 = class298.cp1252AsciiExtension; + + for (int var19 = 0; var19 < var18.length; ++var19) { + char var20 = var18[var19]; + if (var17 == var20) { + var16 = true; + break label1378; + } + } + } + + var16 = false; + } + } + + if (!var16 || !Interpreter.method1995(var13.charAt(var15))) { + Login.loginIndex = 3; + return; + } + } + + Login.Login_password = Login.Login_password + var13.substring(0, var43); + } catch (UnsupportedFlavorException var31) { + } catch (IOException var32) { + } + } + } else if (Login.loginIndex == 3) { + var35 = Login.loginBoxX + 180; + var8 = 276; + if (var4 == 1 && var44 >= var35 - 75 && var44 <= var35 + 75 && var34 >= var8 - 20 && var34 <= var8 + 20) { + AbstractWorldMapIcon.Login_promptCredentials(false); + } + + var35 = Login.loginBoxX + 180; + var8 = 326; + if (var4 == 1 && var44 >= var35 - 75 && var44 <= var35 + 75 && var34 >= var8 - 20 && var34 <= var8 + 20) { + GameShell.setLoginResponseString("Please enter your username.", "If you created your account after November", "2010, this will be the creation email address."); + Login.loginIndex = 5; + return; + } + } else { + int var10; + if (Login.loginIndex == 4) { + var35 = Login.loginBoxX + 180 - 80; + var8 = 321; + if (var4 == 1 && var44 >= var35 - 75 && var44 <= var35 + 75 && var34 >= var8 - 20 && var34 <= var8 + 20) { + SecureRandomCallable.otp.trim(); + if (SecureRandomCallable.otp.length() != 6) { + GameShell.setLoginResponseString("", "Please enter a 6-digit PIN.", ""); + return; + } + + WorldMapSection1.field313 = Integer.parseInt(SecureRandomCallable.otp); + SecureRandomCallable.otp = ""; + WorldMapDecoration.method380(true); + GameShell.setLoginResponseString("", "Connecting to server...", ""); + WorldMapCacheName.updateGameState(20); + return; + } + + if (var4 == 1 && var44 >= Login.loginBoxX + 180 - 9 && var44 <= Login.loginBoxX + 180 + 130 && var34 >= 263 && var34 <= 296) { + Login.field1200 = !Login.field1200; + } + + if (var4 == 1 && var44 >= Login.loginBoxX + 180 - 34 && var44 <= Login.loginBoxX + 34 + 180 && var34 >= 351 && var34 <= 363) { + AttackOption.openURL(AbstractWorldMapIcon.method632("secure", true) + "m=totp-authenticator/disableTOTPRequest", true, false); + } + + var35 = Login.loginBoxX + 180 + 80; + if (var4 == 1 && var44 >= var35 - 75 && var44 <= var35 + 75 && var34 >= var8 - 20 && var34 <= var8 + 20) { + Login.loginIndex = 0; + Login.Login_username = ""; + Login.Login_password = ""; + WorldMapSection1.field313 = 0; + SecureRandomCallable.otp = ""; + } + + while (GrandExchangeOfferNameComparator.isKeyDown()) { + boolean var9 = false; + + for (var10 = 0; var10 < "1234567890".length(); ++var10) { + if (WorldMapIcon_1.field200 == "1234567890".charAt(var10)) { + var9 = true; + break; + } + } + + if (StudioGame.field3135 == 13) { + Login.loginIndex = 0; + Login.Login_username = ""; + Login.Login_password = ""; + WorldMapSection1.field313 = 0; + SecureRandomCallable.otp = ""; + } else { + if (StudioGame.field3135 == 85 && SecureRandomCallable.otp.length() > 0) { + SecureRandomCallable.otp = SecureRandomCallable.otp.substring(0, SecureRandomCallable.otp.length() - 1); + } + + if (StudioGame.field3135 == 84) { + SecureRandomCallable.otp.trim(); + if (SecureRandomCallable.otp.length() != 6) { + GameShell.setLoginResponseString("", "Please enter a 6-digit PIN.", ""); + return; + } + + WorldMapSection1.field313 = Integer.parseInt(SecureRandomCallable.otp); + SecureRandomCallable.otp = ""; + WorldMapDecoration.method380(true); + GameShell.setLoginResponseString("", "Connecting to server...", ""); + WorldMapCacheName.updateGameState(20); + return; + } + + if (var9 && SecureRandomCallable.otp.length() < 6) { + SecureRandomCallable.otp = SecureRandomCallable.otp + WorldMapIcon_1.field200; + } + } + } + } else if (Login.loginIndex == 5) { + var35 = Login.loginBoxX + 180 - 80; + var8 = 321; + if (var4 == 1 && var44 >= var35 - 75 && var44 <= var35 + 75 && var34 >= var8 - 20 && var34 <= var8 + 20) { + class7.method83(); + return; + } + + var35 = Login.loginBoxX + 180 + 80; + if (var4 == 1 && var44 >= var35 - 75 && var44 <= var35 + 75 && var34 >= var8 - 20 && var34 <= var8 + 20) { + AbstractWorldMapIcon.Login_promptCredentials(true); + } + + var37 = 361; + if (GrandExchangeOfferOwnWorldComparator.field643 != null) { + var10 = GrandExchangeOfferOwnWorldComparator.field643.highX / 2; + if (var4 == 1 && var44 >= GrandExchangeOfferOwnWorldComparator.field643.lowX - var10 && var44 <= var10 + GrandExchangeOfferOwnWorldComparator.field643.lowX && var34 >= var37 - 15 && var34 < var37) { + AttackOption.openURL(AbstractWorldMapIcon.method632("secure", true) + "m=weblogin/g=oldscape/cant_log_in", true, false); + } + } + + while (GrandExchangeOfferNameComparator.isKeyDown()) { + var39 = false; + + for (var11 = 0; var11 < "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"£$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".length(); ++var11) { + if (WorldMapIcon_1.field200 == "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"£$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".charAt(var11)) { + var39 = true; + break; + } + } + + if (StudioGame.field3135 == 13) { + AbstractWorldMapIcon.Login_promptCredentials(true); + } else { + if (StudioGame.field3135 == 85 && Login.Login_username.length() > 0) { + Login.Login_username = Login.Login_username.substring(0, Login.Login_username.length() - 1); + } + + if (StudioGame.field3135 == 84) { + class7.method83(); + return; + } + + if (var39 && Login.Login_username.length() < 320) { + Login.Login_username = Login.Login_username + WorldMapIcon_1.field200; + } + } + } + } else if (Login.loginIndex != 6) { + if (Login.loginIndex == 7) { + var35 = Login.loginBoxX + 180 - 80; + var8 = 321; + if (var4 == 1 && var44 >= var35 - 75 && var44 <= var35 + 75 && var34 >= var8 - 20 && var34 <= var8 + 20) { + AttackOption.openURL(AbstractWorldMapIcon.method632("secure", true) + "m=dob/set_dob.ws", true, false); + GameShell.setLoginResponseString("", "Page has opened in a new window.", "(Please check your popup blocker.)"); + Login.loginIndex = 6; + return; + } + + var35 = Login.loginBoxX + 180 + 80; + if (var4 == 1 && var44 >= var35 - 75 && var44 <= var35 + 75 && var34 >= var8 - 20 && var34 <= var8 + 20) { + AbstractWorldMapIcon.Login_promptCredentials(true); + } + } else if (Login.loginIndex == 8) { + var35 = Login.loginBoxX + 180 - 80; + var8 = 321; + if (var4 == 1 && var44 >= var35 - 75 && var44 <= var35 + 75 && var34 >= var8 - 20 && var34 <= var8 + 20) { + AttackOption.openURL("https://www.jagex.com/terms/privacy", true, false); + GameShell.setLoginResponseString("", "Page has opened in a new window.", "(Please check your popup blocker.)"); + Login.loginIndex = 6; + return; + } + + var35 = Login.loginBoxX + 180 + 80; + if (var4 == 1 && var44 >= var35 - 75 && var44 <= var35 + 75 && var34 >= var8 - 20 && var34 <= var8 + 20) { + AbstractWorldMapIcon.Login_promptCredentials(true); + } + } else if (Login.loginIndex == 12) { + String var30 = ""; + switch(Login.field1199) { + case 0: + var30 = "https://support.runescape.com/hc/en-gb/articles/115002238729-Account-Bans"; + break; + case 1: + var30 = "https://support.runescape.com/hc/en-gb/articles/206103939-My-account-is-locked"; + break; + default: + AbstractWorldMapIcon.Login_promptCredentials(false); + } + + var38 = Login.loginBoxX + 180; + var37 = 276; + if (var4 == 1 && var44 >= var38 - 75 && var44 <= var38 + 75 && var34 >= var37 - 20 && var34 <= var37 + 20) { + AttackOption.openURL(var30, true, false); + GameShell.setLoginResponseString("", "Page has opened in a new window.", "(Please check your popup blocker.)"); + Login.loginIndex = 6; + return; + } + + var38 = Login.loginBoxX + 180; + var37 = 326; + if (var4 == 1 && var44 >= var38 - 75 && var44 <= var38 + 75 && var34 >= var37 - 20 && var34 <= var37 + 20) { + AbstractWorldMapIcon.Login_promptCredentials(false); + } + } else if (Login.loginIndex == 24) { + var35 = Login.loginBoxX + 180; + var8 = 301; + if (var4 == 1 && var44 >= var35 - 75 && var44 <= var35 + 75 && var34 >= var8 - 20 && var34 <= var8 + 20) { + AbstractWorldMapIcon.Login_promptCredentials(false); + } + } + } else { + while (true) { + do { + if (!GrandExchangeOfferNameComparator.isKeyDown()) { + var36 = 321; + if (var4 == 1 && var34 >= var36 - 20 && var34 <= var36 + 20) { + AbstractWorldMapIcon.Login_promptCredentials(true); + } + + return; + } + } while(StudioGame.field3135 != 84 && StudioGame.field3135 != 13); + + AbstractWorldMapIcon.Login_promptCredentials(true); + } + } + } + } + } + + } + } + } + } + + @ObfuscatedName("jw") + @ObfuscatedSignature( + descriptor = "(Lhe;IIIIIII)V", + garbageValue = "1825223582" + ) + static final void method4797(Widget var0, int var1, int var2, int var3, int var4, int var5, int var6) { + if (Client.field692) { + Client.alternativeScrollbarWidth = 32; + } else { + Client.alternativeScrollbarWidth = 0; + } + + Client.field692 = false; + int var7; + if (MouseHandler.MouseHandler_currentButton == 1 || !UserComparator9.mouseCam && MouseHandler.MouseHandler_currentButton == 4) { + if (var5 >= var1 && var5 < var1 + 16 && var6 >= var2 && var6 < var2 + 16) { + var0.scrollY -= 4; + CollisionMap.invalidateWidget(var0); + } else if (var5 >= var1 && var5 < var1 + 16 && var6 >= var3 + var2 - 16 && var6 < var3 + var2) { + var0.scrollY += 4; + CollisionMap.invalidateWidget(var0); + } else if (var5 >= var1 - Client.alternativeScrollbarWidth && var5 < Client.alternativeScrollbarWidth + var1 + 16 && var6 >= var2 + 16 && var6 < var3 + var2 - 16) { + var7 = var3 * (var3 - 32) / var4; + if (var7 < 8) { + var7 = 8; + } + + int var8 = var6 - var2 - 16 - var7 / 2; + int var9 = var3 - 32 - var7; + var0.scrollY = var8 * (var4 - var3) / var9; + CollisionMap.invalidateWidget(var0); + Client.field692 = true; + } + } + + if (Client.mouseWheelRotation != 0) { + var7 = var0.width; + if (var5 >= var1 - var7 && var6 >= var2 && var5 < var1 + 16 && var6 <= var3 + var2) { + var0.scrollY += Client.mouseWheelRotation * 45; + CollisionMap.invalidateWidget(var0); + } + } + + } } diff --git a/runescape-client/src/main/java/ServerPacket.java b/runescape-client/src/main/java/ServerPacket.java index dd080cbd42..2c3787f950 100644 --- a/runescape-client/src/main/java/ServerPacket.java +++ b/runescape-client/src/main/java/ServerPacket.java @@ -1,578 +1,644 @@ -import java.security.SecureRandom; 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("gw") +@ObfuscatedName("gt") @Implements("ServerPacket") public class ServerPacket { - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2215; - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2202; - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2175; - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2145; - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2146; - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2147; - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2148; - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2142; - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2150; - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2218; - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2152; - @ObfuscatedName("o") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2178; - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2154; - @ObfuscatedName("x") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2155; - @ObfuscatedName("p") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2156; - @ObfuscatedName("r") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2170; - @ObfuscatedName("y") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2158; - @ObfuscatedName("s") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2159; - @ObfuscatedName("j") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2160; - @ObfuscatedName("w") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2161; - @ObfuscatedName("v") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2162; - @ObfuscatedName("d") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2163; - @ObfuscatedName("a") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2149; - @ObfuscatedName("g") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2186; @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2166; - @ObfuscatedName("i") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2153; - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2168; - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2197; - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2144; - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2171; - @ObfuscatedName("av") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2172; - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2173; - @ObfuscatedName("ay") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2174; - @ObfuscatedName("ah") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2165; - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2176; - @ObfuscatedName("ak") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2177; - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2200; - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) public static final ServerPacket field2179; - @ObfuscatedName("ax") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2180; - @ObfuscatedName("ag") + public static final ServerPacket field2202; + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2181; - @ObfuscatedName("aq") + public static final ServerPacket field2141; + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2182; - @ObfuscatedName("aw") + public static final ServerPacket field2142; + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2183; - @ObfuscatedName("an") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2227; - @ObfuscatedName("am") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2185; - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2221; - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2190; - @ObfuscatedName("as") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2167; - @ObfuscatedName("aj") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2199; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2211; - @ObfuscatedName("al") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2191; - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2187; - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2193; - @ObfuscatedName("bb") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2194; - @ObfuscatedName("bf") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2195; - @ObfuscatedName("bp") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2196; - @ObfuscatedName("bg") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2220; - @ObfuscatedName("bc") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2198; - @ObfuscatedName("bj") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2219; - @ObfuscatedName("bl") - @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) public static final ServerPacket field2143; - @ObfuscatedName("bn") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" + ) + public static final ServerPacket field2144; + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "Lgt;" ) public static final ServerPacket field2201; - @ObfuscatedName("bo") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2216; - @ObfuscatedName("be") + public static final ServerPacket field2146; + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2203; - @ObfuscatedName("ba") + public static final ServerPacket field2182; + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2204; - @ObfuscatedName("bt") + public static final ServerPacket field2148; + @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2205; - @ObfuscatedName("bw") + public static final ServerPacket field2200; + @ObfuscatedName("e") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2206; - @ObfuscatedName("bm") + public static final ServerPacket field2150; + @ObfuscatedName("m") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2207; - @ObfuscatedName("by") + public static final ServerPacket field2190; + @ObfuscatedName("c") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" + ) + public static final ServerPacket field2152; + @ObfuscatedName("i") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2139; + @ObfuscatedName("f") + @ObfuscatedSignature( + descriptor = "Lgt;" ) public static final ServerPacket field2188; - @ObfuscatedName("bq") + @ObfuscatedName("a") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2209; - @ObfuscatedName("bv") + public static final ServerPacket field2155; + @ObfuscatedName("b") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2210; - @ObfuscatedName("br") + public static final ServerPacket field2156; + @ObfuscatedName("y") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2230; - @ObfuscatedName("bs") + public static final ServerPacket field2163; + @ObfuscatedName("r") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2212; - @ObfuscatedName("bd") + public static final ServerPacket field2158; + @ObfuscatedName("q") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2213; - @ObfuscatedName("bh") + public static final ServerPacket field2159; + @ObfuscatedName("g") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2214; - @ObfuscatedName("bk") + public static final ServerPacket field2160; + @ObfuscatedName("s") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2189; - @ObfuscatedName("bx") + public static final ServerPacket field2161; + @ObfuscatedName("o") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2151; - @ObfuscatedName("bi") + public static final ServerPacket field2162; + @ObfuscatedName("k") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2217; - @ObfuscatedName("bu") + public static final ServerPacket field2218; + @ObfuscatedName("d") @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2192; - @ObfuscatedName("bz") - @ObfuscatedSignature( - descriptor = "Lgw;" - ) - public static final ServerPacket field2157; - @ObfuscatedName("cs") - @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) public static final ServerPacket field2164; - @ObfuscatedName("ce") + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" + ) + public static final ServerPacket field2165; + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2192; + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2167; + @ObfuscatedName("ag") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2212; + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2208; + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2170; + @ObfuscatedName("ae") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2171; + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2172; + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2173; + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2174; + @ObfuscatedName("aq") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2175; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2176; + @ObfuscatedName("am") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2140; + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2178; + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2151; + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2180; + @ObfuscatedName("aw") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2181; + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2157; + @ObfuscatedName("ad") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2166; + @ObfuscatedName("ai") + @ObfuscatedSignature( + descriptor = "Lgt;" ) public static final ServerPacket field2184; - @ObfuscatedName("cf") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2222; - @ObfuscatedName("cg") + public static final ServerPacket field2197; + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2223; - @ObfuscatedName("cp") + public static final ServerPacket field2186; + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" + ) + public static final ServerPacket field2149; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2214; + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2189; + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2209; + @ObfuscatedName("bh") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2191; + @ObfuscatedName("by") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2145; + @ObfuscatedName("bs") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2183; + @ObfuscatedName("br") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2194; + @ObfuscatedName("bl") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2195; + @ObfuscatedName("bx") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2196; + @ObfuscatedName("bf") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2215; + @ObfuscatedName("bz") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2198; + @ObfuscatedName("bm") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2177; + @ObfuscatedName("bn") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2207; + @ObfuscatedName("bd") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2154; + @ObfuscatedName("bc") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2153; + @ObfuscatedName("bi") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2203; + @ObfuscatedName("bk") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2204; + @ObfuscatedName("bw") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2205; + @ObfuscatedName("bo") + @ObfuscatedSignature( + descriptor = "Lgt;" ) public static final ServerPacket field2169; - @ObfuscatedName("cc") + @ObfuscatedName("bj") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2225; - @ObfuscatedName("cl") + public static final ServerPacket field2206; + @ObfuscatedName("bu") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" ) - public static final ServerPacket field2226; + public static final ServerPacket field2185; + @ObfuscatedName("bt") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2187; + @ObfuscatedName("bb") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2210; + @ObfuscatedName("bv") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2211; + @ObfuscatedName("bg") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2193; + @ObfuscatedName("ba") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2213; + @ObfuscatedName("bq") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2168; + @ObfuscatedName("be") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2199; + @ObfuscatedName("bp") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2216; + @ObfuscatedName("cx") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2217; @ObfuscatedName("ci") @ObfuscatedSignature( - descriptor = "Lgw;" + descriptor = "Lgt;" + ) + public static final ServerPacket field2147; + @ObfuscatedName("cj") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2219; + @ObfuscatedName("ca") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2220; + @ObfuscatedName("cd") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2221; + @ObfuscatedName("cm") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2222; + @ObfuscatedName("cz") + @ObfuscatedSignature( + descriptor = "Lgt;" + ) + public static final ServerPacket field2223; + @ObfuscatedName("cc") + @ObfuscatedSignature( + descriptor = "Lgt;" ) public static final ServerPacket field2224; - @ObfuscatedName("lt") + @ObfuscatedName("ce") @ObfuscatedGetter( - intValue = 271502915 - ) - @Export("menuHeight") - static int menuHeight; - @ObfuscatedName("cy") - @ObfuscatedGetter( - intValue = 1695854657 + intValue = -61586593 ) @Export("id") public final int id; - @ObfuscatedName("cx") + @ObfuscatedName("cb") @ObfuscatedGetter( - intValue = -2114394893 + intValue = 875851551 ) @Export("length") public final int length; static { - field2215 = new ServerPacket(0, 5); // L: 5 - field2202 = new ServerPacket(1, 0); // L: 6 - field2175 = new ServerPacket(2, 14); // L: 7 - field2145 = new ServerPacket(3, 1); // L: 8 - field2146 = new ServerPacket(4, 6); - field2147 = new ServerPacket(5, 6); // L: 10 - field2148 = new ServerPacket(6, -2); // L: 11 - field2142 = new ServerPacket(7, 4); - field2150 = new ServerPacket(8, 6); // L: 13 - field2218 = new ServerPacket(9, 4); // L: 14 - field2152 = new ServerPacket(10, 2); // L: 15 - field2178 = new ServerPacket(11, 5); - field2154 = new ServerPacket(12, 0); // L: 17 - field2155 = new ServerPacket(13, 2); // L: 18 - field2156 = new ServerPacket(14, 1); // L: 19 - field2170 = new ServerPacket(15, 5); // L: 20 - field2158 = new ServerPacket(16, -2); // L: 21 - field2159 = new ServerPacket(17, 2); // L: 22 - field2160 = new ServerPacket(18, 2); // L: 23 - field2161 = new ServerPacket(19, 0); // L: 24 - field2162 = new ServerPacket(20, 8); // L: 25 - field2163 = new ServerPacket(21, -2); // L: 26 - field2149 = new ServerPacket(22, 4); // L: 27 - field2186 = new ServerPacket(23, 2); // L: 28 - field2166 = new ServerPacket(24, 0); // L: 29 - field2153 = new ServerPacket(25, -1); // L: 30 - field2168 = new ServerPacket(26, -2); // L: 31 - field2197 = new ServerPacket(27, 8); // L: 32 - field2144 = new ServerPacket(28, 20); // L: 33 - field2171 = new ServerPacket(29, 6); // L: 34 - field2172 = new ServerPacket(30, 4); // L: 35 - field2173 = new ServerPacket(31, -2); // L: 36 - field2174 = new ServerPacket(32, 3); // L: 37 - field2165 = new ServerPacket(33, 6); // L: 38 - field2176 = new ServerPacket(34, -2); - field2177 = new ServerPacket(35, -2); - field2200 = new ServerPacket(36, -1); - field2179 = new ServerPacket(37, 6); // L: 42 - field2180 = new ServerPacket(38, -2); // L: 43 - field2181 = new ServerPacket(39, -1); // L: 44 - field2182 = new ServerPacket(40, -2); // L: 45 - field2183 = new ServerPacket(41, -2); // L: 46 - field2227 = new ServerPacket(42, 4); // L: 47 - field2185 = new ServerPacket(43, -2); // L: 48 - field2221 = new ServerPacket(44, 3); // L: 49 - field2190 = new ServerPacket(45, 6); // L: 50 - field2167 = new ServerPacket(46, 1); // L: 51 - field2199 = new ServerPacket(47, 28); // L: 52 - field2211 = new ServerPacket(48, 2); // L: 53 - field2191 = new ServerPacket(49, 15); // L: 54 - field2187 = new ServerPacket(50, 1); // L: 55 - field2193 = new ServerPacket(51, 2); // L: 56 - field2194 = new ServerPacket(52, 2); // L: 57 - field2195 = new ServerPacket(53, -2); // L: 58 - field2196 = new ServerPacket(54, 12); // L: 59 - field2220 = new ServerPacket(55, 4); // L: 60 - field2198 = new ServerPacket(56, 0); // L: 61 - field2219 = new ServerPacket(57, 10); // L: 62 - field2143 = new ServerPacket(58, 6); // L: 63 - field2201 = new ServerPacket(59, 8); // L: 64 - field2216 = new ServerPacket(60, 1); // L: 65 - field2203 = new ServerPacket(61, 2); // L: 66 - field2204 = new ServerPacket(62, -2); // L: 67 - field2205 = new ServerPacket(63, 5); // L: 68 - field2206 = new ServerPacket(64, 8); // L: 69 - field2207 = new ServerPacket(65, 7); // L: 70 - field2188 = new ServerPacket(66, 10); // L: 71 - field2209 = new ServerPacket(67, -2); // L: 72 - field2210 = new ServerPacket(68, 0); // L: 73 - field2230 = new ServerPacket(69, 6); // L: 74 - field2212 = new ServerPacket(70, -2); // L: 75 - field2213 = new ServerPacket(71, 4); // L: 76 - field2214 = new ServerPacket(72, -1); // L: 77 - field2189 = new ServerPacket(73, -1); // L: 78 - field2151 = new ServerPacket(74, 0); // L: 79 - field2217 = new ServerPacket(75, 7); // L: 80 - field2192 = new ServerPacket(76, 1); // L: 81 - field2157 = new ServerPacket(77, -1); // L: 82 - field2164 = new ServerPacket(78, -2); // L: 83 - field2184 = new ServerPacket(79, 5); // L: 84 - field2222 = new ServerPacket(80, -2); // L: 85 - field2223 = new ServerPacket(81, 6); // L: 86 - field2169 = new ServerPacket(82, -2); // L: 87 - field2225 = new ServerPacket(83, 6); // L: 88 - field2226 = new ServerPacket(84, 2); // L: 89 - field2224 = new ServerPacket(85, -2); // L: 90 + field2179 = new ServerPacket(0, 28); + field2202 = new ServerPacket(1, -2); + field2141 = new ServerPacket(2, -1); + field2142 = new ServerPacket(3, -2); + field2143 = new ServerPacket(4, -2); + field2144 = new ServerPacket(5, 6); + field2201 = new ServerPacket(6, 0); + field2146 = new ServerPacket(7, 4); + field2182 = new ServerPacket(8, 6); + field2148 = new ServerPacket(9, 0); + field2200 = new ServerPacket(10, 2); + field2150 = new ServerPacket(11, 4); + field2190 = new ServerPacket(12, 6); + field2152 = new ServerPacket(13, 5); + field2139 = new ServerPacket(14, -1); + field2188 = new ServerPacket(15, 5); + field2155 = new ServerPacket(16, 8); + field2156 = new ServerPacket(17, 15); + field2163 = new ServerPacket(18, 6); + field2158 = new ServerPacket(19, 2); + field2159 = new ServerPacket(20, -2); + field2160 = new ServerPacket(21, 4); + field2161 = new ServerPacket(22, 8); + field2162 = new ServerPacket(23, -2); + field2218 = new ServerPacket(24, 8); + field2164 = new ServerPacket(25, 14); + field2165 = new ServerPacket(26, 4); + field2192 = new ServerPacket(27, -1); + field2167 = new ServerPacket(28, 0); + field2212 = new ServerPacket(29, 7); + field2208 = new ServerPacket(30, 2); + field2170 = new ServerPacket(31, 6); + field2171 = new ServerPacket(32, 4); + field2172 = new ServerPacket(33, 2); + field2173 = new ServerPacket(34, 0); + field2174 = new ServerPacket(35, 20); + field2175 = new ServerPacket(36, -2); + field2176 = new ServerPacket(37, -2); + field2140 = new ServerPacket(38, -2); + field2178 = new ServerPacket(39, 2); + field2151 = new ServerPacket(40, 6); + field2180 = new ServerPacket(41, 1); + field2181 = new ServerPacket(42, 5); + field2157 = new ServerPacket(43, -2); + field2166 = new ServerPacket(44, 1); + field2184 = new ServerPacket(45, -2); + field2197 = new ServerPacket(46, 10); + field2186 = new ServerPacket(47, 2); + field2149 = new ServerPacket(48, 5); + field2214 = new ServerPacket(49, 0); + field2189 = new ServerPacket(50, -2); + field2209 = new ServerPacket(51, -2); + field2191 = new ServerPacket(52, 6); + field2145 = new ServerPacket(53, 1); + field2183 = new ServerPacket(54, -1); + field2194 = new ServerPacket(55, -2); + field2195 = new ServerPacket(56, -2); + field2196 = new ServerPacket(57, 5); + field2215 = new ServerPacket(58, 2); + field2198 = new ServerPacket(59, 3); + field2177 = new ServerPacket(60, 4); + field2207 = new ServerPacket(61, 1); + field2154 = new ServerPacket(62, 3); + field2153 = new ServerPacket(63, 6); + field2203 = new ServerPacket(64, -2); + field2204 = new ServerPacket(65, -2); + field2205 = new ServerPacket(66, 2); + field2169 = new ServerPacket(67, 4); + field2206 = new ServerPacket(68, -2); + field2185 = new ServerPacket(69, 7); + field2187 = new ServerPacket(70, 0); + field2210 = new ServerPacket(71, -1); + field2211 = new ServerPacket(72, 10); + field2193 = new ServerPacket(73, 6); + field2213 = new ServerPacket(74, 2); + field2168 = new ServerPacket(75, -2); + field2199 = new ServerPacket(76, 6); + field2216 = new ServerPacket(77, -2); + field2217 = new ServerPacket(78, -1); + field2147 = new ServerPacket(79, 12); + field2219 = new ServerPacket(80, 1); + field2220 = new ServerPacket(81, 1); + field2221 = new ServerPacket(82, 2); + field2222 = new ServerPacket(83, 8); + field2223 = new ServerPacket(84, 6); + field2224 = new ServerPacket(85, 0); } ServerPacket(int var1, int var2) { - this.id = var1; // L: 99 - this.length = var2; // L: 100 - } // L: 101 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(Lc;I)Ln;", - garbageValue = "-1940204105" - ) - public static class12 method3742(class7 var0) { - switch(var0.field23) { // L: 9 - case 0: - return new class5(); // L: 16 - default: - throw new IllegalArgumentException(); // L: 12 - } + this.id = var1; + this.length = var2; } - @ObfuscatedName("m") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(B)Ljava/security/SecureRandom;", - garbageValue = "-85" + descriptor = "(II)I", + garbageValue = "-1751724590" ) - static SecureRandom method3740() { - SecureRandom var0 = new SecureRandom(); // L: 39 - var0.nextInt(); // L: 40 - return var0; // L: 41 + @Export("Widget_unpackTargetMask") + public static int Widget_unpackTargetMask(int var0) { + return var0 >> 11 & 63; + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Lib;Lib;I)V", + garbageValue = "-1425205882" + ) + public static void method3669(AbstractArchive var0, AbstractArchive var1) { + class225.HealthBarDefinition_archive = var0; + HealthBarDefinition.HitSplatDefinition_spritesArchive = var1; + } + + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;I)Ljava/lang/String;", + garbageValue = "1710358127" + ) + public static String method3663(String var0) { + int var1 = var0.length(); + char[] var2 = new char[var1]; + byte var3 = 2; + + for (int var4 = 0; var4 < var1; ++var4) { + char var5 = var0.charAt(var4); + if (var3 == 0) { + var5 = Character.toLowerCase(var5); + } else if (var3 == 2 || Character.isUpperCase(var5)) { + char var6; + if (var5 != 181 && var5 != 402) { + var6 = Character.toTitleCase(var5); + } else { + var6 = var5; + } + + var5 = var6; + } + + if (Character.isLetter(var5)) { + var3 = 0; + } else if (var5 != '.' && var5 != '?' && var5 != '!') { + if (Character.isSpaceChar(var5)) { + if (var3 != 2) { + var3 = 1; + } + } else { + var3 = 1; + } + } else { + var3 = 2; + } + + var2[var4] = var5; + } + + return new String(var2); + } + + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1225574522" + ) + static final void method3668() { + Object var10000 = null; + String var0 = "You can't add yourself to your own friend list"; + class234.addGameMessage(30, "", var0); + } + + @ObfuscatedName("kv") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "36" + ) + static final void method3664() { + PacketBufferNode var0 = ItemContainer.getPacketBufferNode(ClientPacket.field2306, Client.packetWriter.isaacCipher); + Client.packetWriter.addNode(var0); + + for (InterfaceParent var1 = (InterfaceParent)Client.interfaceParents.first(); var1 != null; var1 = (InterfaceParent)Client.interfaceParents.next()) { + if (var1.type == 0 || var1.type == 3) { + MouseRecorder.closeInterface(var1, true); + } + } + + if (Client.meslayerContinueWidget != null) { + CollisionMap.invalidateWidget(Client.meslayerContinueWidget); + Client.meslayerContinueWidget = null; + } + } } diff --git a/runescape-client/src/main/java/Skeleton.java b/runescape-client/src/main/java/Skeleton.java index 6a3202e687..0f0066b78b 100644 --- a/runescape-client/src/main/java/Skeleton.java +++ b/runescape-client/src/main/java/Skeleton.java @@ -1,52 +1,55 @@ -import java.awt.Desktop; -import java.awt.Desktop.Action; -import java.net.URI; 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("ei") +@ObfuscatedName("ej") @Implements("Skeleton") public class Skeleton extends Node { - @ObfuscatedName("f") + @ObfuscatedName("he") @ObfuscatedGetter( - intValue = -1443412059 + intValue = -502356211 + ) + @Export("cameraPitch") + static int cameraPitch; + @ObfuscatedName("h") + @ObfuscatedGetter( + intValue = 1773427771 ) @Export("id") int id; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 815931901 + intValue = -1481451601 ) @Export("count") int count; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("transformTypes") int[] transformTypes; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("labels") int[][] labels; Skeleton(int var1, byte[] var2) { - this.id = var1; // L: 13 - Buffer var3 = new Buffer(var2); // L: 14 - this.count = var3.readUnsignedByte(); // L: 15 - this.transformTypes = new int[this.count]; // L: 16 - this.labels = new int[this.count][]; // L: 17 + this.id = var1; + Buffer var3 = new Buffer(var2); + this.count = var3.readUnsignedByte(); + this.transformTypes = new int[this.count]; + this.labels = new int[this.count][]; int var4; - for (var4 = 0; var4 < this.count; ++var4) { // L: 18 + for (var4 = 0; var4 < this.count; ++var4) { this.transformTypes[var4] = var3.readUnsignedByte(); } - for (var4 = 0; var4 < this.count; ++var4) { // L: 19 + for (var4 = 0; var4 < this.count; ++var4) { this.labels[var4] = new int[var3.readUnsignedByte()]; } - for (var4 = 0; var4 < this.count; ++var4) { // L: 20 - for (int var5 = 0; var5 < this.labels[var4].length; ++var5) { // L: 21 + for (var4 = 0; var4 < this.count; ++var4) { + for (int var5 = 0; var5 < this.labels[var4].length; ++var5) { this.labels[var4][var5] = var3.readUnsignedByte(); } } @@ -55,76 +58,110 @@ public class Skeleton extends Node { @ObfuscatedName("f") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;ZZI)V", - garbageValue = "-1635350138" + descriptor = "(Ljava/lang/String;B)V", + garbageValue = "-5" ) - @Export("openURL") - public static void openURL(String var0, boolean var1, boolean var2) { - if (var1) { // L: 23 - if (Desktop.isDesktopSupported() && Desktop.getDesktop().isSupported(Action.BROWSE)) { // L: 24 - try { - Desktop.getDesktop().browse(new URI(var0)); // L: 26 - return; // L: 47 - } catch (Exception var4) { // L: 29 + static final void method3155(String var0) { + PacketBufferNode var1 = ItemContainer.getPacketBufferNode(ClientPacket.field2319, Client.packetWriter.isaacCipher); + var1.packetBuffer.writeByte(FloorDecoration.stringCp1252NullTerminatedByteSize(var0)); + var1.packetBuffer.writeStringCp1252NullTerminated(var0); + Client.packetWriter.addNode(var1); + } + + @ObfuscatedName("ha") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "-1484457450" + ) + @Export("addNpcsToScene") + static final void addNpcsToScene(boolean var0) { + for (int var1 = 0; var1 < Client.npcCount; ++var1) { + NPC var2 = Client.npcs[Client.npcIndices[var1]]; + if (var2 != null && var2.isVisible() && var2.definition.isVisible == var0 && var2.definition.transformIsVisible()) { + int var3 = var2.x >> 7; + int var4 = var2.y >> 7; + if (var3 >= 0 && var3 < 104 && var4 >= 0 && var4 < 104) { + if (var2.field941 * 68797504 == 1 && (var2.x & 127) == 64 && (var2.y & 127) == 64) { + if (Client.tileLastDrawnActor[var3][var4] == Client.viewportDrawCount) { + continue; + } + + Client.tileLastDrawnActor[var3][var4] = Client.viewportDrawCount; + } + + long var5 = NPC.calculateTag(0, 0, 1, !var2.definition.isInteractable, Client.npcIndices[var1]); + var2.playerCycle = Client.cycle; + ArchiveLoader.scene.drawEntity(GameObject.Client_plane, var2.x, var2.y, SecureRandomFuture.getTileHeight(var2.field941 * 108072960 - 64 + var2.x, var2.field941 * 108072960 - 64 + var2.y, GameObject.Client_plane), var2.field941 * 108072960 - 64 + 60, var2, var2.rotation, var5, var2.isWalking); } } + } - if (class60.field453.startsWith("win")) { // L: 31 - MouseHandler.method1176(var0, 0); // L: 33 - } else if (class60.field453.startsWith("mac")) { // L: 37 - WorldMapManager.method735(var0, 1, "openjs"); // L: 38 - } else { - MouseHandler.method1176(var0, 2); // L: 41 + } + + @ObfuscatedName("ke") + @ObfuscatedSignature( + descriptor = "([Lhe;II)V", + garbageValue = "-1212206355" + ) + @Export("drawModelComponents") + static final void drawModelComponents(Widget[] var0, int var1) { + for (int var2 = 0; var2 < var0.length; ++var2) { + Widget var3 = var0[var2]; + if (var3 != null && var3.parentId == var1 && (!var3.isIf3 || !DevicePcmPlayerProvider.isComponentHidden(var3))) { + if (var3.type == 0) { + if (!var3.isIf3 && DevicePcmPlayerProvider.isComponentHidden(var3) && var3 != EnumDefinition.mousedOverWidgetIf1) { + continue; + } + + drawModelComponents(var0, var3.id); + if (var3.children != null) { + drawModelComponents(var3.children, var3.id); + } + + InterfaceParent var4 = (InterfaceParent)Client.interfaceParents.get((long)var3.id); + if (var4 != null) { + NPCDefinition.method4759(var4.group); + } + } + + if (var3.type == 6) { + int var5; + if (var3.sequenceId != -1 || var3.sequenceId2 != -1) { + boolean var7 = class8.runCs1(var3); + if (var7) { + var5 = var3.sequenceId2; + } else { + var5 = var3.sequenceId; + } + + if (var5 != -1) { + SequenceDefinition var6 = ParamDefinition.SequenceDefinition_get(var5); + + for (var3.modelFrameCycle += Client.field850; var3.modelFrameCycle > var6.frameLengths[var3.modelFrame]; CollisionMap.invalidateWidget(var3)) { + var3.modelFrameCycle -= var6.frameLengths[var3.modelFrame]; + ++var3.modelFrame; + if (var3.modelFrame >= var6.frameIds.length) { + var3.modelFrame -= var6.frameCount; + if (var3.modelFrame < 0 || var3.modelFrame >= var6.frameIds.length) { + var3.modelFrame = 0; + } + } + } + } + } + + if (var3.field2642 != 0 && !var3.isIf3) { + int var8 = var3.field2642 >> 16; + var5 = var3.field2642 << 16 >> 16; + var8 *= Client.field850; + var5 *= Client.field850; + var3.modelAngleX = var8 + var3.modelAngleX & 2047; + var3.modelAngleY = var5 + var3.modelAngleY & 2047; + CollisionMap.invalidateWidget(var3); + } + } } - } else { - MouseHandler.method1176(var0, 3); // L: 44 } } - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(Liw;IIS)Lle;", - garbageValue = "8416" - ) - static IndexedSprite method3215(AbstractArchive var0, int var1, int var2) { - byte[] var4 = var0.takeFile(var1, var2); // L: 64 - boolean var3; - if (var4 == null) { // L: 65 - var3 = false; // L: 66 - } else { - class217.SpriteBuffer_decode(var4); // L: 69 - var3 = true; // L: 70 - } - - if (!var3) { // L: 72 - return null; - } else { - IndexedSprite var5 = new IndexedSprite(); // L: 75 - var5.width = class336.SpriteBuffer_spriteWidth; // L: 76 - var5.height = class336.SpriteBuffer_spriteHeight; // L: 77 - var5.xOffset = class336.SpriteBuffer_xOffsets[0]; // L: 78 - var5.yOffset = class225.SpriteBuffer_yOffsets[0]; // L: 79 - var5.subWidth = class336.SpriteBuffer_spriteWidths[0]; // L: 80 - var5.subHeight = class336.SpriteBuffer_spriteHeights[0]; // L: 81 - var5.palette = WorldMapID.SpriteBuffer_spritePalette; // L: 82 - var5.pixels = class13.SpriteBuffer_pixels[0]; // L: 83 - class336.SpriteBuffer_xOffsets = null; // L: 85 - class225.SpriteBuffer_yOffsets = null; // L: 86 - class336.SpriteBuffer_spriteWidths = null; // L: 87 - class336.SpriteBuffer_spriteHeights = null; // L: 88 - WorldMapID.SpriteBuffer_spritePalette = null; // L: 89 - class13.SpriteBuffer_pixels = null; // L: 90 - return var5; // L: 94 - } - } - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(CI)Z", - garbageValue = "11601118" - ) - static boolean method3212(char var0) { - return "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"£$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".indexOf(var0) != -1; // L: 814 - } } diff --git a/runescape-client/src/main/java/Skills.java b/runescape-client/src/main/java/Skills.java index 7527716bc2..a7e20beff1 100644 --- a/runescape-client/src/main/java/Skills.java +++ b/runescape-client/src/main/java/Skills.java @@ -3,33 +3,110 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hf") +@ObfuscatedName("hp") @Implements("Skills") public class Skills { - @ObfuscatedName("sf") - @ObfuscatedSignature( - descriptor = "Lme;" - ) - @Export("platformInfo") - static PlatformInfo platformInfo; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("Skills_enabled") public static final boolean[] Skills_enabled; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("Skills_experienceTable") public static int[] Skills_experienceTable; static { - Skills_enabled = new boolean[]{true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false}; // L: 5 - Skills_experienceTable = new int[99]; // L: 6 - int var0 = 0; // L: 9 + Skills_enabled = new boolean[]{true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false}; + Skills_experienceTable = new int[99]; + int var0 = 0; - for (int var1 = 0; var1 < 99; ++var1) { // L: 10 - int var2 = var1 + 1; // L: 11 - int var3 = (int)((double)var2 + 300.0D * Math.pow(2.0D, (double)var2 / 7.0D)); // L: 12 - var0 += var3; // L: 13 - Skills_experienceTable[var1] = var0 / 4; // L: 14 + for (int var1 = 0; var1 < 99; ++var1) { + int var2 = var1 + 1; + int var3 = (int)((double)var2 + 300.0D * Math.pow(2.0D, (double)var2 / 7.0D)); + var0 += var3; + Skills_experienceTable[var1] = var0 / 4; } - } // L: 16 + } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(Lib;IIB)Llm;", + garbageValue = "71" + ) + @Export("SpriteBuffer_getSprite") + public static Sprite SpriteBuffer_getSprite(AbstractArchive var0, int var1, int var2) { + if (!class304.method5363(var0, var1, var2)) { + return null; + } else { + Sprite var4 = new Sprite(); + var4.width = DirectByteArrayCopier.SpriteBuffer_spriteWidth; + var4.height = class336.SpriteBuffer_spriteHeight; + var4.xOffset = class336.SpriteBuffer_xOffsets[0]; + var4.yOffset = class336.SpriteBuffer_yOffsets[0]; + var4.subWidth = class336.SpriteBuffer_spriteWidths[0]; + var4.subHeight = class336.SpriteBuffer_spriteHeights[0]; + int var5 = var4.subWidth * var4.subHeight; + byte[] var6 = GrandExchangeEvents.SpriteBuffer_pixels[0]; + var4.pixels = new int[var5]; + + for (int var7 = 0; var7 < var5; ++var7) { + var4.pixels[var7] = class336.SpriteBuffer_spritePalette[var6[var7] & 255]; + } + + class336.SpriteBuffer_xOffsets = null; + class336.SpriteBuffer_yOffsets = null; + class336.SpriteBuffer_spriteWidths = null; + class336.SpriteBuffer_spriteHeights = null; + class336.SpriteBuffer_spritePalette = null; + GrandExchangeEvents.SpriteBuffer_pixels = null; + return var4; + } + } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(ILlx;Lil;I)V", + garbageValue = "-1369689255" + ) + static void method4147(int var0, ArchiveDisk var1, Archive var2) { + ArchiveDiskAction var3 = new ArchiveDiskAction(); + var3.type = 1; + var3.key = (long)var0; + var3.archiveDisk = var1; + var3.archive = var2; + synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue) { + ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.addFirst(var3); + } + + synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_lock) { + if (ArchiveDiskActionHandler.field3178 == 0) { + SecureRandomFuture.ArchiveDiskActionHandler_thread = new Thread(new ArchiveDiskActionHandler()); + SecureRandomFuture.ArchiveDiskActionHandler_thread.setDaemon(true); + SecureRandomFuture.ArchiveDiskActionHandler_thread.start(); + SecureRandomFuture.ArchiveDiskActionHandler_thread.setPriority(5); + } + + ArchiveDiskActionHandler.field3178 = 600; + } + } + + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "(Lky;I)I", + garbageValue = "-1376261869" + ) + static int method4146(PacketBuffer var0) { + int var1 = var0.readBits(2); + int var2; + if (var1 == 0) { + var2 = 0; + } else if (var1 == 1) { + var2 = var0.readBits(5); + } else if (var1 == 2) { + var2 = var0.readBits(8); + } else { + var2 = var0.readBits(11); + } + + return var2; + } } diff --git a/runescape-client/src/main/java/SoftWrapper.java b/runescape-client/src/main/java/SoftWrapper.java index 11338b6d39..37cd7e289a 100644 --- a/runescape-client/src/main/java/SoftWrapper.java +++ b/runescape-client/src/main/java/SoftWrapper.java @@ -3,27 +3,27 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("fj") +@ObfuscatedName("fe") @Implements("SoftWrapper") public class SoftWrapper extends Wrapper { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("ref") SoftReference ref; SoftWrapper(Object var1, int var2) { - super(var2); // L: 10 - this.ref = new SoftReference(var1); // L: 11 - } // L: 12 + super(var2); + this.ref = new SoftReference(var1); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("get") Object get() { - return this.ref.get(); // L: 15 + return this.ref.get(); } - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("isSoft") boolean isSoft() { - return true; // L: 19 + return true; } } diff --git a/runescape-client/src/main/java/SoundCache.java b/runescape-client/src/main/java/SoundCache.java index f76d45e6c7..f68aeaf7e9 100644 --- a/runescape-client/src/main/java/SoundCache.java +++ b/runescape-client/src/main/java/SoundCache.java @@ -6,211 +6,147 @@ import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("ds") @Implements("SoundCache") public class SoundCache { - @ObfuscatedName("c") - @Export("ItemDefinition_inMembersWorld") - public static boolean ItemDefinition_inMembersWorld; - @ObfuscatedName("f") + @ObfuscatedName("n") + @Export("ByteArrayPool_alternativeSizes") + public static int[] ByteArrayPool_alternativeSizes; + @ObfuscatedName("cq") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lbv;" + ) + @Export("mouseRecorder") + static MouseRecorder mouseRecorder; + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "Lib;" ) @Export("soundEffectIndex") AbstractArchive soundEffectIndex; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("musicSampleIndex") AbstractArchive musicSampleIndex; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Llp;" + descriptor = "Lls;" ) @Export("musicSamples") NodeHashTable musicSamples; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Llp;" + descriptor = "Lls;" ) @Export("rawSounds") NodeHashTable rawSounds; @ObfuscatedSignature( - descriptor = "(Liw;Liw;)V" + descriptor = "(Lib;Lib;)V" ) public SoundCache(AbstractArchive var1, AbstractArchive var2) { - this.musicSamples = new NodeHashTable(256); // L: 9 - this.rawSounds = new NodeHashTable(256); // L: 10 - this.soundEffectIndex = var1; // L: 13 - this.musicSampleIndex = var2; // L: 14 - } // L: 15 + this.musicSamples = new NodeHashTable(256); + this.rawSounds = new NodeHashTable(256); + this.soundEffectIndex = var1; + this.musicSampleIndex = var2; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(II[II)Ldo;", - garbageValue = "16776960" + descriptor = "(II[II)Ldf;", + garbageValue = "-2076179570" ) @Export("getSoundEffect0") RawSound getSoundEffect0(int var1, int var2, int[] var3) { - int var4 = var2 ^ (var1 << 4 & 65535 | var1 >>> 12); // L: 18 - var4 |= var1 << 16; // L: 19 - long var5 = (long)var4; // L: 20 - RawSound var7 = (RawSound)this.rawSounds.get(var5); // L: 21 - if (var7 != null) { // L: 22 + int var4 = var2 ^ (var1 << 4 & 65535 | var1 >>> 12); + var4 |= var1 << 16; + long var5 = (long)var4; + RawSound var7 = (RawSound)this.rawSounds.get(var5); + if (var7 != null) { return var7; - } else if (var3 != null && var3[0] <= 0) { // L: 23 + } else if (var3 != null && var3[0] <= 0) { return null; } else { - SoundEffect var8 = SoundEffect.readSoundEffect(this.soundEffectIndex, var1, var2); // L: 24 - if (var8 == null) { // L: 25 + SoundEffect var8 = SoundEffect.readSoundEffect(this.soundEffectIndex, var1, var2); + if (var8 == null) { return null; } else { - var7 = var8.toRawSound(); // L: 26 - this.rawSounds.put(var7, var5); // L: 27 - if (var3 != null) { // L: 28 + var7 = var8.toRawSound(); + this.rawSounds.put(var7, var5); + if (var3 != null) { var3[0] -= var7.samples.length; } - return var7; // L: 29 + return var7; } } } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(II[II)Ldo;", - garbageValue = "-716229534" + descriptor = "(II[II)Ldf;", + garbageValue = "1195097760" ) @Export("getMusicSample0") RawSound getMusicSample0(int var1, int var2, int[] var3) { - int var4 = var2 ^ (var1 << 4 & 65535 | var1 >>> 12); // L: 33 - var4 |= var1 << 16; // L: 34 - long var5 = (long)var4 ^ 4294967296L; // L: 35 - RawSound var7 = (RawSound)this.rawSounds.get(var5); // L: 36 - if (var7 != null) { // L: 37 + int var4 = var2 ^ (var1 << 4 & 65535 | var1 >>> 12); + var4 |= var1 << 16; + long var5 = (long)var4 ^ 4294967296L; + RawSound var7 = (RawSound)this.rawSounds.get(var5); + if (var7 != null) { return var7; - } else if (var3 != null && var3[0] <= 0) { // L: 38 + } else if (var3 != null && var3[0] <= 0) { return null; } else { - VorbisSample var8 = (VorbisSample)this.musicSamples.get(var5); // L: 39 - if (var8 == null) { // L: 40 - var8 = VorbisSample.readMusicSample(this.musicSampleIndex, var1, var2); // L: 41 - if (var8 == null) { // L: 42 + VorbisSample var8 = (VorbisSample)this.musicSamples.get(var5); + if (var8 == null) { + var8 = VorbisSample.readMusicSample(this.musicSampleIndex, var1, var2); + if (var8 == null) { return null; } - this.musicSamples.put(var8, var5); // L: 43 + this.musicSamples.put(var8, var5); } - var7 = var8.toRawSound(var3); // L: 45 - if (var7 == null) { // L: 46 + var7 = var8.toRawSound(var3); + if (var7 == null) { return null; } else { - var8.remove(); // L: 47 - this.rawSounds.put(var7, var5); // L: 48 - return var7; // L: 49 + var8.remove(); + this.rawSounds.put(var7, var5); + return var7; } } } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(I[II)Ldo;", - garbageValue = "-541178737" + descriptor = "(I[II)Ldf;", + garbageValue = "122861408" ) @Export("getSoundEffect") public RawSound getSoundEffect(int var1, int[] var2) { - if (this.soundEffectIndex.getGroupCount() == 1) { // L: 53 + if (this.soundEffectIndex.getGroupCount() == 1) { return this.getSoundEffect0(0, var1, var2); } else if (this.soundEffectIndex.getGroupFileCount(var1) == 1) { - return this.getSoundEffect0(var1, 0, var2); // L: 54 + return this.getSoundEffect0(var1, 0, var2); } else { - throw new RuntimeException(); // L: 55 + throw new RuntimeException(); } } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(I[II)Ldo;", - garbageValue = "-1523377894" + descriptor = "(I[II)Ldf;", + garbageValue = "-2010455709" ) @Export("getMusicSample") public RawSound getMusicSample(int var1, int[] var2) { - if (this.musicSampleIndex.getGroupCount() == 1) { // L: 59 + if (this.musicSampleIndex.getGroupCount() == 1) { return this.getMusicSample0(0, var1, var2); } else if (this.musicSampleIndex.getGroupFileCount(var1) == 1) { - return this.getMusicSample0(var1, 0, var2); // L: 60 + return this.getMusicSample0(var1, 0, var2); } else { - throw new RuntimeException(); // L: 61 + throw new RuntimeException(); } } - - @ObfuscatedName("gi") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "50" - ) - static final void method2646(int var0) { - int[] var1 = InterfaceParent.sceneMinimapSprite.pixels; // L: 5674 - int var2 = var1.length; // L: 5675 - - int var3; - for (var3 = 0; var3 < var2; ++var3) { // L: 5676 - var1[var3] = 0; - } - - int var4; - int var5; - for (var3 = 1; var3 < 103; ++var3) { // L: 5677 - var4 = (103 - var3) * 2048 + 24628; // L: 5678 - - for (var5 = 1; var5 < 103; ++var5) { // L: 5679 - if ((Tiles.Tiles_renderFlags[var0][var5][var3] & 24) == 0) { // L: 5680 - ModeWhere.scene.drawTileMinimap(var1, var4, 512, var0, var5, var3); - } - - if (var0 < 3 && (Tiles.Tiles_renderFlags[var0 + 1][var5][var3] & 8) != 0) { // L: 5681 - ModeWhere.scene.drawTileMinimap(var1, var4, 512, var0 + 1, var5, var3); - } - - var4 += 4; // L: 5682 - } - } - - var3 = (238 + (int)(Math.random() * 20.0D) - 10 << 16) + (238 + (int)(Math.random() * 20.0D) - 10 << 8) + (238 + (int)(Math.random() * 20.0D) - 10); // L: 5685 - var4 = 238 + (int)(Math.random() * 20.0D) - 10 << 16; // L: 5686 - InterfaceParent.sceneMinimapSprite.setRaster(); // L: 5687 - - int var6; - for (var5 = 1; var5 < 103; ++var5) { // L: 5688 - for (var6 = 1; var6 < 103; ++var6) { // L: 5689 - if ((Tiles.Tiles_renderFlags[var0][var6][var5] & 24) == 0) { // L: 5690 - Canvas.drawObject(var0, var6, var5, var3, var4); - } - - if (var0 < 3 && (Tiles.Tiles_renderFlags[var0 + 1][var6][var5] & 8) != 0) { // L: 5691 - Canvas.drawObject(var0 + 1, var6, var5, var3, var4); - } - } - } - - Client.mapIconCount = 0; // L: 5694 - - for (var5 = 0; var5 < 104; ++var5) { // L: 5695 - for (var6 = 0; var6 < 104; ++var6) { // L: 5696 - long var7 = ModeWhere.scene.getFloorDecorationTag(GrandExchangeOfferUnitPriceComparator.Client_plane, var5, var6); // L: 5697 - if (var7 != 0L) { // L: 5698 - int var9 = ObjectSound.Entity_unpackID(var7); // L: 5699 - int var10 = ScriptEvent.getObjectDefinition(var9).mapIconId; // L: 5700 - if (var10 >= 0 && class194.WorldMapElement_get(var10).field3248) { // L: 5701 5702 - Client.mapIcons[Client.mapIconCount] = class194.WorldMapElement_get(var10).getSpriteBool(false); // L: 5705 - Client.mapIconXs[Client.mapIconCount] = var5; // L: 5706 - Client.mapIconYs[Client.mapIconCount] = var6; // L: 5707 - ++Client.mapIconCount; // L: 5708 - } - } - } - } - - class22.rasterProvider.apply(); // L: 5713 - } // L: 5714 } diff --git a/runescape-client/src/main/java/SoundEffect.java b/runescape-client/src/main/java/SoundEffect.java index e1db05bf47..2243a4bec0 100644 --- a/runescape-client/src/main/java/SoundEffect.java +++ b/runescape-client/src/main/java/SoundEffect.java @@ -6,129 +6,129 @@ import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("dq") @Implements("SoundEffect") public class SoundEffect { - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "[Ldk;" + descriptor = "[Ldc;" ) @Export("instruments") Instrument[] instruments; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("start") int start; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("end") int end; @ObfuscatedSignature( - descriptor = "(Lkb;)V" + descriptor = "(Lkj;)V" ) SoundEffect(Buffer var1) { - this.instruments = new Instrument[10]; // L: 10 + this.instruments = new Instrument[10]; - for (int var2 = 0; var2 < 10; ++var2) { // L: 21 - int var3 = var1.readUnsignedByte(); // L: 22 - if (var3 != 0) { // L: 23 - --var1.offset; // L: 24 - this.instruments[var2] = new Instrument(); // L: 25 - this.instruments[var2].decode(var1); // L: 26 + for (int var2 = 0; var2 < 10; ++var2) { + int var3 = var1.readUnsignedByte(); + if (var3 != 0) { + --var1.offset; + this.instruments[var2] = new Instrument(); + this.instruments[var2].decode(var1); } } - this.start = var1.readUnsignedShort(); // L: 28 - this.end = var1.readUnsignedShort(); // L: 29 - } // L: 30 + this.start = var1.readUnsignedShort(); + this.end = var1.readUnsignedShort(); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "()Ldo;" + descriptor = "()Ldf;" ) @Export("toRawSound") public RawSound toRawSound() { - byte[] var1 = this.mix(); // L: 33 - return new RawSound(22050, var1, this.start * 22050 / 1000, this.end * 22050 / 1000); // L: 34 + byte[] var1 = this.mix(); + return new RawSound(22050, var1, this.start * 22050 / 1000, this.end * 22050 / 1000); } - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("calculateDelay") public final int calculateDelay() { - int var1 = 9999999; // L: 38 + int var1 = 9999999; int var2; - for (var2 = 0; var2 < 10; ++var2) { // L: 39 - if (this.instruments[var2] != null && this.instruments[var2].offset / 20 < var1) { // L: 40 41 + for (var2 = 0; var2 < 10; ++var2) { + if (this.instruments[var2] != null && this.instruments[var2].offset / 20 < var1) { var1 = this.instruments[var2].offset / 20; } } - if (this.start < this.end && this.start / 20 < var1) { // L: 44 + if (this.start < this.end && this.start / 20 < var1) { var1 = this.start / 20; } - if (var1 != 9999999 && var1 != 0) { // L: 45 - for (var2 = 0; var2 < 10; ++var2) { // L: 46 + if (var1 != 9999999 && var1 != 0) { + for (var2 = 0; var2 < 10; ++var2) { if (this.instruments[var2] != null) { Instrument var10000 = this.instruments[var2]; - var10000.offset -= var1 * 20; // L: 47 + var10000.offset -= var1 * 20; } } - if (this.start < this.end) { // L: 49 - this.start -= var1 * 20; // L: 50 - this.end -= var1 * 20; // L: 51 + if (this.start < this.end) { + this.start -= var1 * 20; + this.end -= var1 * 20; } - return var1; // L: 53 + return var1; } else { return 0; } } - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("mix") final byte[] mix() { - int var1 = 0; // L: 57 + int var1 = 0; int var2; - for (var2 = 0; var2 < 10; ++var2) { // L: 58 - if (this.instruments[var2] != null && this.instruments[var2].duration + this.instruments[var2].offset > var1) { // L: 59 60 + for (var2 = 0; var2 < 10; ++var2) { + if (this.instruments[var2] != null && this.instruments[var2].duration + this.instruments[var2].offset > var1) { var1 = this.instruments[var2].duration + this.instruments[var2].offset; } } - if (var1 == 0) { // L: 63 + if (var1 == 0) { return new byte[0]; } else { - var2 = var1 * 22050 / 1000; // L: 64 - byte[] var3 = new byte[var2]; // L: 65 + var2 = var1 * 22050 / 1000; + byte[] var3 = new byte[var2]; - for (int var4 = 0; var4 < 10; ++var4) { // L: 66 - if (this.instruments[var4] != null) { // L: 67 - int var5 = this.instruments[var4].duration * 22050 / 1000; // L: 68 - int var6 = this.instruments[var4].offset * 22050 / 1000; // L: 69 - int[] var7 = this.instruments[var4].synthesize(var5, this.instruments[var4].duration); // L: 70 + for (int var4 = 0; var4 < 10; ++var4) { + if (this.instruments[var4] != null) { + int var5 = this.instruments[var4].duration * 22050 / 1000; + int var6 = this.instruments[var4].offset * 22050 / 1000; + int[] var7 = this.instruments[var4].synthesize(var5, this.instruments[var4].duration); - for (int var8 = 0; var8 < var5; ++var8) { // L: 71 - int var9 = (var7[var8] >> 8) + var3[var8 + var6]; // L: 72 - if ((var9 + 128 & -256) != 0) { // L: 73 + for (int var8 = 0; var8 < var5; ++var8) { + int var9 = (var7[var8] >> 8) + var3[var8 + var6]; + if ((var9 + 128 & -256) != 0) { var9 = var9 >> 31 ^ 127; } - var3[var8 + var6] = (byte)var9; // L: 74 + var3[var8 + var6] = (byte)var9; } } } - return var3; // L: 78 + return var3; } } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Liw;II)Ldq;" + descriptor = "(Lib;II)Ldq;" ) @Export("readSoundEffect") public static SoundEffect readSoundEffect(AbstractArchive var0, int var1, int var2) { - byte[] var3 = var0.takeFile(var1, var2); // L: 15 - return var3 == null ? null : new SoundEffect(new Buffer(var3)); // L: 16 + byte[] var3 = var0.takeFile(var1, var2); + return var3 == null ? null : new SoundEffect(new Buffer(var3)); } } diff --git a/runescape-client/src/main/java/SoundEnvelope.java b/runescape-client/src/main/java/SoundEnvelope.java index ad92f3f4f0..29675324a5 100644 --- a/runescape-client/src/main/java/SoundEnvelope.java +++ b/runescape-client/src/main/java/SoundEnvelope.java @@ -3,37 +3,37 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("da") +@ObfuscatedName("dr") @Implements("SoundEnvelope") public class SoundEnvelope { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("segments") int segments; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("durations") int[] durations; - @ObfuscatedName("l") + @ObfuscatedName("w") @Export("phases") int[] phases; - @ObfuscatedName("m") + @ObfuscatedName("t") @Export("start") int start; - @ObfuscatedName("z") + @ObfuscatedName("j") @Export("end") int end; - @ObfuscatedName("q") + @ObfuscatedName("n") @Export("form") int form; - @ObfuscatedName("k") + @ObfuscatedName("p") @Export("ticks") int ticks; - @ObfuscatedName("c") + @ObfuscatedName("l") @Export("phaseIndex") int phaseIndex; - @ObfuscatedName("u") + @ObfuscatedName("z") @Export("step") int step; - @ObfuscatedName("t") + @ObfuscatedName("u") @Export("amplitude") int amplitude; @ObfuscatedName("e") @@ -41,71 +41,71 @@ public class SoundEnvelope { int max; SoundEnvelope() { - this.segments = 2; // L: 21 - this.durations = new int[2]; // L: 22 - this.phases = new int[2]; // L: 23 - this.durations[0] = 0; // L: 24 - this.durations[1] = 65535; // L: 25 - this.phases[0] = 0; // L: 26 - this.phases[1] = 65535; // L: 27 - } // L: 28 + this.segments = 2; + this.durations = new int[2]; + this.phases = new int[2]; + this.durations[0] = 0; + this.durations[1] = 65535; + this.phases[0] = 0; + this.phases[1] = 65535; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkb;)V" + descriptor = "(Lkj;)V" ) @Export("decode") final void decode(Buffer var1) { - this.form = var1.readUnsignedByte(); // L: 31 - this.start = var1.readInt(); // L: 32 - this.end = var1.readInt(); // L: 33 - this.decodeSegments(var1); // L: 34 - } // L: 35 + this.form = var1.readUnsignedByte(); + this.start = var1.readInt(); + this.end = var1.readInt(); + this.decodeSegments(var1); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lkb;)V" + descriptor = "(Lkj;)V" ) @Export("decodeSegments") final void decodeSegments(Buffer var1) { - this.segments = var1.readUnsignedByte(); // L: 38 - this.durations = new int[this.segments]; // L: 39 - this.phases = new int[this.segments]; // L: 40 + this.segments = var1.readUnsignedByte(); + this.durations = new int[this.segments]; + this.phases = new int[this.segments]; - for (int var2 = 0; var2 < this.segments; ++var2) { // L: 41 - this.durations[var2] = var1.readUnsignedShort(); // L: 42 - this.phases[var2] = var1.readUnsignedShort(); // L: 43 + for (int var2 = 0; var2 < this.segments; ++var2) { + this.durations[var2] = var1.readUnsignedShort(); + this.phases[var2] = var1.readUnsignedShort(); } - } // L: 45 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("reset") final void reset() { - this.ticks = 0; // L: 48 - this.phaseIndex = 0; // L: 49 - this.step = 0; // L: 50 - this.amplitude = 0; // L: 51 - this.max = 0; // L: 52 - } // L: 53 + this.ticks = 0; + this.phaseIndex = 0; + this.step = 0; + this.amplitude = 0; + this.max = 0; + } - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("doStep") final int doStep(int var1) { - if (this.max >= this.ticks) { // L: 56 - this.amplitude = this.phases[this.phaseIndex++] << 15; // L: 57 - if (this.phaseIndex >= this.segments) { // L: 58 + if (this.max >= this.ticks) { + this.amplitude = this.phases[this.phaseIndex++] << 15; + if (this.phaseIndex >= this.segments) { this.phaseIndex = this.segments - 1; } - this.ticks = (int)((double)this.durations[this.phaseIndex] / 65536.0D * (double)var1); // L: 59 - if (this.ticks > this.max) { // L: 60 + this.ticks = (int)((double)this.durations[this.phaseIndex] / 65536.0D * (double)var1); + if (this.ticks > this.max) { this.step = ((this.phases[this.phaseIndex] << 15) - this.amplitude) / (this.ticks - this.max); } } - this.amplitude += this.step; // L: 62 - ++this.max; // L: 63 - return this.amplitude - this.step >> 15; // L: 64 + this.amplitude += this.step; + ++this.max; + return this.amplitude - this.step >> 15; } } diff --git a/runescape-client/src/main/java/SoundSystem.java b/runescape-client/src/main/java/SoundSystem.java index e3b3884de6..ebe72b9d9f 100644 --- a/runescape-client/src/main/java/SoundSystem.java +++ b/runescape-client/src/main/java/SoundSystem.java @@ -1,214 +1,196 @@ +import java.io.IOException; +import java.lang.reflect.Field; +import java.lang.reflect.Method; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.Reflection; -@ObfuscatedName("dz") +@ObfuscatedName("dt") @Implements("SoundSystem") public class SoundSystem implements Runnable { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "[Ldh;" + descriptor = "[Ldp;" ) @Export("players") volatile PcmPlayer[] players; SoundSystem() { - this.players = new PcmPlayer[2]; // L: 6 - } // L: 8 + this.players = new PcmPlayer[2]; + } public void run() { try { - for (int var1 = 0; var1 < 2; ++var1) { // L: 12 - PcmPlayer var2 = this.players[var1]; // L: 13 - if (var2 != null) { // L: 14 + for (int var1 = 0; var1 < 2; ++var1) { + PcmPlayer var2 = this.players[var1]; + if (var2 != null) { var2.run(); } } - } catch (Exception var4) { // L: 17 - PacketWriter.RunException_sendStackTrace((String)null, var4); // L: 18 + } catch (Exception var4) { + PlayerAppearance.RunException_sendStackTrace((String)null, var4); } - } // L: 20 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(I)[Lcd;", - garbageValue = "1735365545" - ) - static AttackOption[] method2631() { - return new AttackOption[]{AttackOption.AttackOption_leftClickWhereAvailable, AttackOption.AttackOption_dependsOnCombatLevels, AttackOption.AttackOption_hidden, AttackOption.AttackOption_alwaysRightClick}; // L: 11714 } - @ObfuscatedName("t") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "-1698839968" + descriptor = "(ZI)V", + garbageValue = "1799114096" ) - @Export("Messages_getNextChatID") - static int Messages_getNextChatID(int var0) { - Message var1 = (Message)Messages.Messages_hashTable.get((long)var0); // L: 77 - if (var1 == null) { // L: 78 - return -1; - } else { - return var1.previousDual == Messages.Messages_queue.sentinel ? -1 : ((Message)var1.previousDual).count; // L: 79 80 + public static void method2564(boolean var0) { + if (NetCache.NetCache_socket != null) { + try { + Buffer var1 = new Buffer(4); + var1.writeByte(var0 ? 2 : 3); + var1.writeMedium(0); + NetCache.NetCache_socket.write(var1.array, 0, 4); + } catch (IOException var4) { + try { + NetCache.NetCache_socket.close(); + } catch (Exception var3) { + } + + ++NetCache.NetCache_ioExceptions; + NetCache.NetCache_socket = null; + } + } } - @ObfuscatedName("hn") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lks;I)V", - garbageValue = "-359449402" + descriptor = "(Lkj;II)V", + garbageValue = "-1974988755" ) - static final void method2632(PacketBuffer var0) { - for (int var1 = 0; var1 < Client.field726; ++var1) { // L: 7583 - int var2 = Client.field727[var1]; // L: 7584 - NPC var3 = Client.npcs[var2]; // L: 7585 - int var4 = var0.readUnsignedByte(); // L: 7586 - if ((var4 & 16) != 0) { // L: 7587 - var3.targetIndex = var0.method5659(); // L: 7588 - if (var3.targetIndex == 65535) { // L: 7589 - var3.targetIndex = -1; - } - } + @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][][]; - int var5; - int var6; - int var7; - if ((var4 & 1) != 0) { // L: 7591 - var5 = var0.method5797(); // L: 7592 - if (var5 == 65535) { // L: 7593 - var5 = -1; - } + 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]; - var6 = var0.method5650(); // L: 7594 - if (var5 == var3.sequence && var5 != -1) { // L: 7595 - var7 = class105.SequenceDefinition_get(var5).field3551; // L: 7596 - if (var7 == 1) { // L: 7597 - var3.sequenceFrame = 0; // L: 7598 - var3.sequenceFrameCycle = 0; // L: 7599 - var3.sequenceDelay = var6; // L: 7600 - var3.field1022 = 0; // L: 7601 - } - - if (var7 == 2) { // L: 7603 - var3.field1022 = 0; // L: 7604 - } - } else if (var5 == -1 || var3.sequence == -1 || class105.SequenceDefinition_get(var5).field3545 >= class105.SequenceDefinition_get(var3.sequence).field3545) { // L: 7607 - var3.sequence = var5; // L: 7608 - var3.sequenceFrame = 0; // L: 7609 - var3.sequenceFrameCycle = 0; // L: 7610 - var3.sequenceDelay = var6; // L: 7611 - var3.field1022 = 0; // L: 7612 - var3.field1034 = var3.pathLength; // L: 7613 - } - } - - int var8; - if ((var4 & 2) != 0) { // L: 7617 - var5 = var0.method5659(); // L: 7618 - var6 = var0.method5659(); // L: 7619 - var7 = var3.x - (var5 - FloorDecoration.baseX - FloorDecoration.baseX) * 64; // L: 7620 - var8 = var3.y - (var6 - WorldMapData_0.baseY - WorldMapData_0.baseY) * 64; // L: 7621 - if (var7 != 0 || var8 != 0) { // L: 7622 - var3.field1003 = (int)(Math.atan2((double)var7, (double)var8) * 325.949D) & 2047; - } - } - - if ((var4 & 32) != 0) { // L: 7624 - var3.overheadText = var0.readStringCp1252NullTerminated(); // L: 7625 - var3.overheadTextCyclesRemaining = 100; // L: 7626 - } - - if ((var4 & 8) != 0) { // L: 7628 - var3.field1017 = var0.readByte(); // L: 7629 - var3.field1019 = var0.method5837(); // L: 7630 - var3.field1018 = var0.readByte(); // L: 7631 - var3.field1020 = var0.method5837(); // L: 7632 - var3.field1009 = var0.readUnsignedShort() + Client.cycle; // L: 7633 - var3.field1024 = var0.readUnsignedShort() + Client.cycle; // L: 7634 - var3.field1023 = var0.method5675(); // L: 7635 - var3.pathLength = 1; // L: 7636 - var3.field1034 = 0; // L: 7637 - var3.field1017 += var3.pathX[0]; // L: 7638 - var3.field1019 += var3.pathY[0]; // L: 7639 - var3.field1018 += var3.pathX[0]; // L: 7640 - var3.field1020 += var3.pathY[0]; // L: 7641 - } - - if ((var4 & 128) != 0) { // L: 7643 - var5 = var0.method5668(); // L: 7644 - int var9; - int var10; - int var11; - if (var5 > 0) { // L: 7645 - for (var6 = 0; var6 < var5; ++var6) { // L: 7646 - var8 = -1; // L: 7648 - var9 = -1; // L: 7649 - var10 = -1; // L: 7650 - var7 = var0.readUShortSmart(); // L: 7651 - if (var7 == 32767) { // L: 7652 - var7 = var0.readUShortSmart(); // L: 7653 - var9 = var0.readUShortSmart(); // L: 7654 - var8 = var0.readUShortSmart(); // L: 7655 - var10 = var0.readUShortSmart(); // L: 7656 - } else if (var7 != 32766) { // L: 7658 - var9 = var0.readUShortSmart(); // L: 7659 - } else { - var7 = -1; // L: 7661 + for (int var9 = 0; var9 < var7; ++var9) { + var8[var9] = var0.readStringCp1252NullTerminated(); } - var11 = var0.readUShortSmart(); // L: 7662 - var3.addHitSplat(var7, var9, var8, var10, Client.cycle, var11); // L: 7663 - } - } - - var6 = var0.method5668(); // L: 7666 - if (var6 > 0) { // L: 7667 - for (var7 = 0; var7 < var6; ++var7) { // L: 7668 - var8 = var0.readUShortSmart(); // L: 7669 - var9 = var0.readUShortSmart(); // L: 7670 - if (var9 != 32767) { // L: 7671 - var10 = var0.readUShortSmart(); // L: 7672 - var11 = var0.method5650(); // L: 7673 - int var12 = var9 > 0 ? var0.readUnsignedByte() : var11; // L: 7674 - var3.addHealthBar(var8, Client.cycle, var9, var10, var11, var12); // L: 7675 - } else { - var3.removeHealthBar(var8); // L: 7677 + 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] = Script.loadClassFromDescriptor(var8[var12]); + } + + Class var22 = Script.loadClassFromDescriptor(var20); + if (Script.loadClassFromDescriptor(var5).getClassLoader() == null) { + throw new SecurityException(); + } + + Method[] var13 = Script.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 (var17.length == var21.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(); } - } - } - if ((var4 & 64) != 0) { // L: 7681 - var3.definition = Clock.getNpcDefinition(var0.method5797()); // L: 7682 - var3.field1011 = var3.definition.size; // L: 7683 - var3.field1028 = var3.definition.rotation; // L: 7684 - var3.walkSequence = var3.definition.walkSequence; // L: 7685 - var3.walkBackSequence = var3.definition.walkBackSequence; // L: 7686 - var3.walkLeftSequence = var3.definition.walkLeftSequence; // L: 7687 - var3.walkRightSequence = var3.definition.walkRightSequence; // L: 7688 - var3.idleSequence = var3.definition.idleSequence; // L: 7689 - var3.turnLeftSequence = var3.definition.turnLeftSequence; // L: 7690 - var3.turnRightSequence = var3.definition.turnRightSequence; // L: 7691 - } + var2.operations[var3] = var4; + var2.intReplaceValues[var3] = var7; + if (Script.loadClassFromDescriptor(var5).getClassLoader() == null) { + throw new SecurityException(); + } - if ((var4 & 4) != 0) { // L: 7693 - var3.spotAnimation = var0.readUnsignedShort(); // L: 7694 - var5 = var0.readInt(); // L: 7695 - var3.field1016 = var5 >> 16; // L: 7696 - var3.field1015 = (var5 & 65535) + Client.cycle; // L: 7697 - var3.spotAnimationFrame = 0; // L: 7698 - var3.spotAnimationFrameCycle = 0; // L: 7699 - if (var3.field1015 > Client.cycle) { // L: 7700 - var3.spotAnimationFrame = -1; - } - - if (var3.spotAnimation == 65535) { // L: 7701 - var3.spotAnimation = -1; + var2.fields[var3] = Reflection.findField(Script.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; } } - } // L: 7704 + class105.reflectionChecks.addFirst(var2); + } + + @ObfuscatedName("by") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;B)I", + garbageValue = "-51" + ) + public static int method2566(String var0) { + return var0.length() + 2; + } + + @ObfuscatedName("ga") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "93" + ) + @Export("getWindowedMode") + static int getWindowedMode() { + return Client.isResizable ? 2 : 1; + } } diff --git a/runescape-client/src/main/java/SpotAnimationDefinition.java b/runescape-client/src/main/java/SpotAnimationDefinition.java index 273aad8878..29e22f8837 100644 --- a/runescape-client/src/main/java/SpotAnimationDefinition.java +++ b/runescape-client/src/main/java/SpotAnimationDefinition.java @@ -3,305 +3,232 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("ie") +@ObfuscatedName("ik") @Implements("SpotAnimationDefinition") public class SpotAnimationDefinition extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("SpotAnimationDefinition_archive") static AbstractArchive SpotAnimationDefinition_archive; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("SpotAnimationDefinition_modelArchive") static AbstractArchive SpotAnimationDefinition_modelArchive; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("SpotAnimationDefinition_cached") static EvictingDualNodeHashTable SpotAnimationDefinition_cached; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("SpotAnimationDefinition_cachedModels") static EvictingDualNodeHashTable SpotAnimationDefinition_cachedModels; - @ObfuscatedName("ex") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 324624887 - ) - static int field3282; - @ObfuscatedName("ix") - @ObfuscatedGetter( - intValue = -787495021 - ) - @Export("selectedItemWidget") - static int selectedItemWidget; - @ObfuscatedName("z") - @ObfuscatedGetter( - intValue = -378851373 + intValue = 116853057 ) @Export("id") int id; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -1622885381 + intValue = 1527605981 ) @Export("archive") int archive; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = 1604295303 + intValue = 664616399 ) @Export("sequence") public int sequence; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("recolorFrom") short[] recolorFrom; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("recolorTo") short[] recolorTo; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("retextureFrom") short[] retextureFrom; - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("retextureTo") short[] retextureTo; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedGetter( - intValue = -1171838019 + intValue = 492539667 ) @Export("widthScale") int widthScale; - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedGetter( - intValue = -1777738887 + intValue = 1988933589 ) @Export("heightScale") int heightScale; - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedGetter( - intValue = 439933857 + intValue = 130255545 ) @Export("orientation") int orientation; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedGetter( - intValue = -2047701161 + intValue = 905155291 ) @Export("ambient") int ambient; - @ObfuscatedName("r") + @ObfuscatedName("f") @ObfuscatedGetter( - intValue = -1188839011 + intValue = -1227772685 ) @Export("contrast") int contrast; static { - SpotAnimationDefinition_cached = new EvictingDualNodeHashTable(64); // L: 14 - SpotAnimationDefinition_cachedModels = new EvictingDualNodeHashTable(30); // L: 15 + SpotAnimationDefinition_cached = new EvictingDualNodeHashTable(64); + SpotAnimationDefinition_cachedModels = new EvictingDualNodeHashTable(30); } SpotAnimationDefinition() { - this.sequence = -1; // L: 18 - this.widthScale = 128; // L: 23 - this.heightScale = 128; // L: 24 - this.orientation = 0; // L: 25 - this.ambient = 0; // L: 26 - this.contrast = 0; // L: 27 - } // L: 29 + this.sequence = -1; + this.widthScale = 128; + this.heightScale = 128; + this.orientation = 0; + this.ambient = 0; + this.contrast = 0; + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkb;B)V", - garbageValue = "57" + descriptor = "(Lkj;I)V", + garbageValue = "-1477796181" ) @Export("decode") void decode(Buffer var1) { while (true) { - int var2 = var1.readUnsignedByte(); // L: 49 - if (var2 == 0) { // L: 50 - return; // L: 53 + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; } - this.decodeNext(var1, var2); // L: 51 + this.decodeNext(var1, var2); } } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "-1222478116" + descriptor = "(Lkj;IB)V", + garbageValue = "7" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { - if (var2 == 1) { // L: 56 + if (var2 == 1) { this.archive = var1.readUnsignedShort(); - } else if (var2 == 2) { // L: 57 + } else if (var2 == 2) { this.sequence = var1.readUnsignedShort(); - } else if (var2 == 4) { // L: 58 + } else if (var2 == 4) { this.widthScale = var1.readUnsignedShort(); - } else if (var2 == 5) { // L: 59 + } else if (var2 == 5) { this.heightScale = var1.readUnsignedShort(); - } else if (var2 == 6) { // L: 60 + } else if (var2 == 6) { this.orientation = var1.readUnsignedShort(); - } else if (var2 == 7) { // L: 61 + } else if (var2 == 7) { this.ambient = var1.readUnsignedByte(); - } else if (var2 == 8) { // L: 62 + } else if (var2 == 8) { this.contrast = var1.readUnsignedByte(); } else { int var3; int var4; - if (var2 == 40) { // L: 63 - var3 = var1.readUnsignedByte(); // L: 64 - this.recolorFrom = new short[var3]; // L: 65 - this.recolorTo = new short[var3]; // L: 66 + if (var2 == 40) { + var3 = var1.readUnsignedByte(); + this.recolorFrom = new short[var3]; + this.recolorTo = new short[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 67 - this.recolorFrom[var4] = (short)var1.readUnsignedShort(); // L: 68 - this.recolorTo[var4] = (short)var1.readUnsignedShort(); // L: 69 + for (var4 = 0; var4 < var3; ++var4) { + this.recolorFrom[var4] = (short)var1.readUnsignedShort(); + this.recolorTo[var4] = (short)var1.readUnsignedShort(); } - } else if (var2 == 41) { // L: 72 - var3 = var1.readUnsignedByte(); // L: 73 - this.retextureFrom = new short[var3]; // L: 74 - this.retextureTo = new short[var3]; // L: 75 + } else if (var2 == 41) { + var3 = var1.readUnsignedByte(); + this.retextureFrom = new short[var3]; + this.retextureTo = new short[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 76 - this.retextureFrom[var4] = (short)var1.readUnsignedShort(); // L: 77 - this.retextureTo[var4] = (short)var1.readUnsignedShort(); // L: 78 + for (var4 = 0; var4 < var3; ++var4) { + this.retextureFrom[var4] = (short)var1.readUnsignedShort(); + this.retextureTo[var4] = (short)var1.readUnsignedShort(); } } } - } // L: 82 + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(IB)Leh;", - garbageValue = "-32" + descriptor = "(II)Leh;", + garbageValue = "-888239890" ) @Export("getModel") public final Model getModel(int var1) { - Model var2 = (Model)SpotAnimationDefinition_cachedModels.get((long)this.id); // L: 85 - if (var2 == null) { // L: 86 - ModelData var3 = ModelData.ModelData_get(SpotAnimationDefinition_modelArchive, this.archive, 0); // L: 87 - if (var3 == null) { // L: 88 + Model var2 = (Model)SpotAnimationDefinition_cachedModels.get((long)this.id); + if (var2 == null) { + ModelData var3 = ModelData.ModelData_get(SpotAnimationDefinition_modelArchive, this.archive, 0); + if (var3 == null) { return null; } int var4; - if (this.recolorFrom != null) { // L: 89 - for (var4 = 0; var4 < this.recolorFrom.length; ++var4) { // L: 90 - var3.recolor(this.recolorFrom[var4], this.recolorTo[var4]); // L: 91 + if (this.recolorFrom != null) { + for (var4 = 0; var4 < this.recolorFrom.length; ++var4) { + var3.recolor(this.recolorFrom[var4], this.recolorTo[var4]); } } - if (this.retextureFrom != null) { // L: 94 - for (var4 = 0; var4 < this.retextureFrom.length; ++var4) { // L: 95 - var3.retexture(this.retextureFrom[var4], this.retextureTo[var4]); // L: 96 + if (this.retextureFrom != null) { + for (var4 = 0; var4 < this.retextureFrom.length; ++var4) { + var3.retexture(this.retextureFrom[var4], this.retextureTo[var4]); } } - var2 = var3.toModel(this.ambient + 64, this.contrast + 850, -30, -50, -30); // L: 99 - SpotAnimationDefinition_cachedModels.put(var2, (long)this.id); // L: 100 + var2 = var3.toModel(this.ambient + 64, this.contrast + 850, -30, -50, -30); + SpotAnimationDefinition_cachedModels.put(var2, (long)this.id); } Model var5; - if (this.sequence != -1 && var1 != -1) { // L: 103 - var5 = class105.SequenceDefinition_get(this.sequence).transformSpotAnimationModel(var2, var1); + if (this.sequence != -1 && var1 != -1) { + var5 = ParamDefinition.SequenceDefinition_get(this.sequence).transformSpotAnimationModel(var2, var1); } else { - var5 = var2.toSharedSpotAnimationModel(true); // L: 104 + var5 = var2.toSharedSpotAnimationModel(true); } - if (this.widthScale != 128 || this.heightScale != 128) { // L: 105 + if (this.widthScale != 128 || this.heightScale != 128) { var5.scale(this.widthScale, this.heightScale, this.widthScale); } - if (this.orientation != 0) { // L: 106 - if (this.orientation == 90) { // L: 107 + if (this.orientation != 0) { + if (this.orientation == 90) { var5.rotateY90Ccw(); } - if (this.orientation == 180) { // L: 108 - var5.rotateY90Ccw(); // L: 109 - var5.rotateY90Ccw(); // L: 110 + if (this.orientation == 180) { + var5.rotateY90Ccw(); + var5.rotateY90Ccw(); } - if (this.orientation == 270) { // L: 112 - var5.rotateY90Ccw(); // L: 113 - var5.rotateY90Ccw(); // L: 114 - var5.rotateY90Ccw(); // L: 115 + if (this.orientation == 270) { + var5.rotateY90Ccw(); + var5.rotateY90Ccw(); + var5.rotateY90Ccw(); } } - return var5; // L: 118 - } - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "2006459682" - ) - static int method4577(int var0, Script var1, boolean var2) { - int var3 = -1; // L: 497 - Widget var4; - if (var0 >= 2000) { // L: 499 - var0 -= 1000; // L: 500 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 501 - var4 = UserComparator4.getWidget(var3); // L: 502 - } else { - var4 = var2 ? MouseRecorder.field621 : Interpreter.field1122; // L: 504 - } - - if (var0 == ScriptOpcodes.CC_SETPOSITION) { // L: 505 - MilliClock.Interpreter_intStackSize -= 4; // L: 506 - var4.rawX = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 507 - var4.rawY = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 508 - var4.xAlignment = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 2]; // L: 509 - var4.yAlignment = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 3]; // L: 510 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var4); // L: 511 - ByteArrayPool.client.alignWidget(var4); // L: 512 - if (var3 != -1 && var4.type == 0) { // L: 513 - UserComparator9.revalidateWidgetScroll(Widget.Widget_interfaceComponents[var3 >> 16], var4, false); - } - - return 1; // L: 514 - } else if (var0 == ScriptOpcodes.CC_SETSIZE) { // L: 516 - MilliClock.Interpreter_intStackSize -= 4; // L: 517 - var4.rawWidth = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 518 - var4.rawHeight = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 519 - var4.widthAlignment = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 2]; // L: 520 - var4.heightAlignment = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 3]; // L: 521 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var4); // L: 522 - ByteArrayPool.client.alignWidget(var4); // L: 523 - if (var3 != -1 && var4.type == 0) { // L: 524 - UserComparator9.revalidateWidgetScroll(Widget.Widget_interfaceComponents[var3 >> 16], var4, false); - } - - return 1; // L: 525 - } else if (var0 == ScriptOpcodes.CC_SETHIDE) { // L: 527 - boolean var5 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 528 - if (var5 != var4.isHidden) { // L: 529 - var4.isHidden = var5; // L: 530 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var4); // L: 531 - } - - return 1; // L: 533 - } else if (var0 == ScriptOpcodes.CC_SETNOCLICKTHROUGH) { // L: 535 - var4.noClickThrough = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 536 - return 1; // L: 537 - } else if (var0 == ScriptOpcodes.CC_SETNOSCROLLTHROUGH) { // L: 539 - var4.noScrollThrough = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 540 - return 1; // L: 541 - } else { - return 2; // L: 543 - } + return var5; } } diff --git a/runescape-client/src/main/java/Sprite.java b/runescape-client/src/main/java/Sprite.java index 4c8c949db0..9d16a6c67a 100644 --- a/runescape-client/src/main/java/Sprite.java +++ b/runescape-client/src/main/java/Sprite.java @@ -3,899 +3,899 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lc") +@ObfuscatedName("lm") @Implements("Sprite") public final class Sprite extends Rasterizer2D { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("pixels") public int[] pixels; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("subWidth") public int subWidth; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("subHeight") public int subHeight; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("xOffset") public int xOffset; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("yOffset") int yOffset; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("width") public int width; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("height") public int height; public Sprite(int[] var1, int var2, int var3) { - this.pixels = var1; // L: 26 - this.subWidth = this.width = var2; // L: 27 - this.subHeight = this.height = var3; // L: 28 - this.yOffset = 0; // L: 29 - this.xOffset = 0; // L: 30 - } // L: 31 + this.pixels = var1; + this.subWidth = this.width = var2; + this.subHeight = this.height = var3; + this.yOffset = 0; + this.xOffset = 0; + } public Sprite(int var1, int var2) { - this(new int[var2 * var1], var1, var2); // L: 22 - } // L: 23 + this(new int[var2 * var1], var1, var2); + } Sprite() { - } // L: 19 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "()Llc;" + descriptor = "()Llm;" ) @Export("mirrorHorizontally") public Sprite mirrorHorizontally() { - Sprite var1 = new Sprite(this.subWidth, this.subHeight); // L: 34 - var1.width = this.width; // L: 35 - var1.height = this.height; // L: 36 - var1.xOffset = this.width - this.subWidth - this.xOffset; // L: 37 - var1.yOffset = this.yOffset; // L: 38 + Sprite var1 = new Sprite(this.subWidth, this.subHeight); + var1.width = this.width; + var1.height = this.height; + var1.xOffset = this.width - this.subWidth - this.xOffset; + var1.yOffset = this.yOffset; - for (int var2 = 0; var2 < this.subHeight; ++var2) { // L: 39 - for (int var3 = 0; var3 < this.subWidth; ++var3) { // L: 40 - var1.pixels[var3 + var2 * this.subWidth] = this.pixels[var2 * this.subWidth + this.subWidth - 1 - var3]; // L: 41 + for (int var2 = 0; var2 < this.subHeight; ++var2) { + for (int var3 = 0; var3 < this.subWidth; ++var3) { + var1.pixels[var3 + var2 * this.subWidth] = this.pixels[var2 * this.subWidth + this.subWidth - 1 - var3]; } } - return var1; // L: 44 + return var1; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "()Llc;" + descriptor = "()Llm;" ) @Export("copyNormalized") public Sprite copyNormalized() { - Sprite var1 = new Sprite(this.width, this.height); // L: 48 + Sprite var1 = new Sprite(this.width, this.height); - for (int var2 = 0; var2 < this.subHeight; ++var2) { // L: 49 - for (int var3 = 0; var3 < this.subWidth; ++var3) { // L: 50 - var1.pixels[var3 + (var2 + this.yOffset) * this.width + this.xOffset] = this.pixels[var3 + var2 * this.subWidth]; // L: 51 + for (int var2 = 0; var2 < this.subHeight; ++var2) { + for (int var3 = 0; var3 < this.subWidth; ++var3) { + var1.pixels[var3 + (var2 + this.yOffset) * this.width + this.xOffset] = this.pixels[var3 + var2 * this.subWidth]; } } - return var1; // L: 54 + return var1; } - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("setRaster") public void setRaster() { - Rasterizer2D.Rasterizer2D_replace(this.pixels, this.subWidth, this.subHeight); // L: 58 - } // L: 59 + Rasterizer2D.Rasterizer2D_replace(this.pixels, this.subWidth, this.subHeight); + } - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("normalize") public void normalize() { - if (this.subWidth != this.width || this.subHeight != this.height) { // L: 62 - int[] var1 = new int[this.width * this.height]; // L: 63 + if (this.subWidth != this.width || this.subHeight != this.height) { + int[] var1 = new int[this.width * this.height]; - for (int var2 = 0; var2 < this.subHeight; ++var2) { // L: 64 - for (int var3 = 0; var3 < this.subWidth; ++var3) { // L: 65 - var1[var3 + (var2 + this.yOffset) * this.width + this.xOffset] = this.pixels[var3 + var2 * this.subWidth]; // L: 66 + for (int var2 = 0; var2 < this.subHeight; ++var2) { + for (int var3 = 0; var3 < this.subWidth; ++var3) { + var1[var3 + (var2 + this.yOffset) * this.width + this.xOffset] = this.pixels[var3 + var2 * this.subWidth]; } } - this.pixels = var1; // L: 69 - this.subWidth = this.width; // L: 70 - this.subHeight = this.height; // L: 71 - this.xOffset = 0; // L: 72 - this.yOffset = 0; // L: 73 + this.pixels = var1; + this.subWidth = this.width; + this.subHeight = this.height; + this.xOffset = 0; + this.yOffset = 0; } - } // L: 74 + } - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("pad") public void pad(int var1) { - if (this.subWidth != this.width || this.subHeight != this.height) { // L: 77 - int var2 = var1; // L: 78 - if (var1 > this.xOffset) { // L: 79 + if (this.subWidth != this.width || this.subHeight != this.height) { + int var2 = var1; + if (var1 > this.xOffset) { var2 = this.xOffset; } - int var3 = var1; // L: 80 - if (var1 + this.xOffset + this.subWidth > this.width) { // L: 81 + int var3 = var1; + if (var1 + this.xOffset + this.subWidth > this.width) { var3 = this.width - this.xOffset - this.subWidth; } - int var4 = var1; // L: 82 - if (var1 > this.yOffset) { // L: 83 + int var4 = var1; + if (var1 > this.yOffset) { var4 = this.yOffset; } - int var5 = var1; // L: 84 - if (var1 + this.yOffset + this.subHeight > this.height) { // L: 85 + int var5 = var1; + if (var1 + this.yOffset + this.subHeight > this.height) { var5 = this.height - this.yOffset - this.subHeight; } - int var6 = var2 + var3 + this.subWidth; // L: 86 - int var7 = var4 + var5 + this.subHeight; // L: 87 - int[] var8 = new int[var6 * var7]; // L: 88 + int var6 = var2 + var3 + this.subWidth; + int var7 = var4 + var5 + this.subHeight; + int[] var8 = new int[var6 * var7]; - for (int var9 = 0; var9 < this.subHeight; ++var9) { // L: 89 - for (int var10 = 0; var10 < this.subWidth; ++var10) { // L: 90 - var8[var6 * (var9 + var4) + var10 + var2] = this.pixels[var10 + var9 * this.subWidth]; // L: 91 + for (int var9 = 0; var9 < this.subHeight; ++var9) { + for (int var10 = 0; var10 < this.subWidth; ++var10) { + var8[var6 * (var9 + var4) + var10 + var2] = this.pixels[var10 + var9 * this.subWidth]; } } - this.pixels = var8; // L: 94 - this.subWidth = var6; // L: 95 - this.subHeight = var7; // L: 96 - this.xOffset -= var2; // L: 97 - this.yOffset -= var4; // L: 98 + this.pixels = var8; + this.subWidth = var6; + this.subHeight = var7; + this.xOffset -= var2; + this.yOffset -= var4; } - } // L: 99 + } - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("flipHorizontally") public void flipHorizontally() { - int[] var1 = new int[this.subWidth * this.subHeight]; // L: 102 - int var2 = 0; // L: 103 + int[] var1 = new int[this.subWidth * this.subHeight]; + int var2 = 0; - for (int var3 = 0; var3 < this.subHeight; ++var3) { // L: 104 + for (int var3 = 0; var3 < this.subHeight; ++var3) { for (int var4 = this.subWidth - 1; var4 >= 0; --var4) { - var1[var2++] = this.pixels[var4 + var3 * this.subWidth]; // L: 105 - } - } - - this.pixels = var1; // L: 107 - this.xOffset = this.width - this.subWidth - this.xOffset; // L: 108 - } // L: 109 - - @ObfuscatedName("k") - @Export("flipVertically") - public void flipVertically() { - int[] var1 = new int[this.subWidth * this.subHeight]; // L: 112 - int var2 = 0; // L: 113 - - for (int var3 = this.subHeight - 1; var3 >= 0; --var3) { // L: 114 - for (int var4 = 0; var4 < this.subWidth; ++var4) { // L: 115 var1[var2++] = this.pixels[var4 + var3 * this.subWidth]; } } - this.pixels = var1; // L: 117 - this.yOffset = this.height - this.subHeight - this.yOffset; // L: 118 - } // L: 119 + this.pixels = var1; + this.xOffset = this.width - this.subWidth - this.xOffset; + } - @ObfuscatedName("c") + @ObfuscatedName("n") + @Export("flipVertically") + public void flipVertically() { + int[] var1 = new int[this.subWidth * this.subHeight]; + int var2 = 0; + + for (int var3 = this.subHeight - 1; var3 >= 0; --var3) { + for (int var4 = 0; var4 < this.subWidth; ++var4) { + var1[var2++] = this.pixels[var4 + var3 * this.subWidth]; + } + } + + this.pixels = var1; + this.yOffset = this.height - this.subHeight - this.yOffset; + } + + @ObfuscatedName("p") @Export("outline") public void outline(int var1) { - int[] var2 = new int[this.subWidth * this.subHeight]; // L: 122 - int var3 = 0; // L: 123 + int[] var2 = new int[this.subWidth * this.subHeight]; + int var3 = 0; - for (int var4 = 0; var4 < this.subHeight; ++var4) { // L: 124 - for (int var5 = 0; var5 < this.subWidth; ++var5) { // L: 125 - int var6 = this.pixels[var3]; // L: 126 - if (var6 == 0) { // L: 127 - if (var5 > 0 && this.pixels[var3 - 1] != 0) { // L: 128 + for (int var4 = 0; var4 < this.subHeight; ++var4) { + for (int var5 = 0; var5 < this.subWidth; ++var5) { + int var6 = this.pixels[var3]; + if (var6 == 0) { + if (var5 > 0 && this.pixels[var3 - 1] != 0) { var6 = var1; - } else if (var4 > 0 && this.pixels[var3 - this.subWidth] != 0) { // L: 129 + } else if (var4 > 0 && this.pixels[var3 - this.subWidth] != 0) { var6 = var1; - } else if (var5 < this.subWidth - 1 && this.pixels[var3 + 1] != 0) { // L: 130 + } else if (var5 < this.subWidth - 1 && this.pixels[var3 + 1] != 0) { var6 = var1; - } else if (var4 < this.subHeight - 1 && this.pixels[var3 + this.subWidth] != 0) { // L: 131 + } else if (var4 < this.subHeight - 1 && this.pixels[var3 + this.subWidth] != 0) { var6 = var1; } } - var2[var3++] = var6; // L: 133 + var2[var3++] = var6; } } - this.pixels = var2; // L: 136 - } // L: 137 + this.pixels = var2; + } - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("shadow") public void shadow(int var1) { - for (int var2 = this.subHeight - 1; var2 > 0; --var2) { // L: 140 - int var3 = var2 * this.subWidth; // L: 141 + for (int var2 = this.subHeight - 1; var2 > 0; --var2) { + int var3 = var2 * this.subWidth; - for (int var4 = this.subWidth - 1; var4 > 0; --var4) { // L: 142 + for (int var4 = this.subWidth - 1; var4 > 0; --var4) { if (this.pixels[var4 + var3] == 0 && this.pixels[var4 + var3 - 1 - this.subWidth] != 0) { - this.pixels[var4 + var3] = var1; // L: 143 + this.pixels[var4 + var3] = var1; } } } - } // L: 146 + } - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("drawAt") public void drawAt(int var1, int var2) { - var1 += this.xOffset; // L: 149 - var2 += this.yOffset; // L: 150 - int var3 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; // L: 151 - int var4 = 0; // L: 152 - int var5 = this.subHeight; // L: 153 - int var6 = this.subWidth; // L: 154 - int var7 = Rasterizer2D.Rasterizer2D_width - var6; // L: 155 - int var8 = 0; // L: 156 + var1 += this.xOffset; + var2 += this.yOffset; + int var3 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; + int var4 = 0; + int var5 = this.subHeight; + int var6 = this.subWidth; + int var7 = Rasterizer2D.Rasterizer2D_width - var6; + int var8 = 0; int var9; - if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { // L: 157 - var9 = Rasterizer2D.Rasterizer2D_yClipStart - var2; // L: 158 - var5 -= var9; // L: 159 - var2 = Rasterizer2D.Rasterizer2D_yClipStart; // L: 160 - var4 += var9 * var6; // L: 161 - var3 += var9 * Rasterizer2D.Rasterizer2D_width; // L: 162 + if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { + var9 = Rasterizer2D.Rasterizer2D_yClipStart - var2; + var5 -= var9; + var2 = Rasterizer2D.Rasterizer2D_yClipStart; + var4 += var9 * var6; + var3 += var9 * Rasterizer2D.Rasterizer2D_width; } - if (var5 + var2 > Rasterizer2D.Rasterizer2D_yClipEnd) { // L: 164 + if (var5 + var2 > Rasterizer2D.Rasterizer2D_yClipEnd) { var5 -= var5 + var2 - Rasterizer2D.Rasterizer2D_yClipEnd; } - if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { // L: 165 - var9 = Rasterizer2D.Rasterizer2D_xClipStart - var1; // L: 166 - var6 -= var9; // L: 167 - var1 = Rasterizer2D.Rasterizer2D_xClipStart; // L: 168 - var4 += var9; // L: 169 - var3 += var9; // L: 170 - var8 += var9; // L: 171 - var7 += var9; // L: 172 + if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { + var9 = Rasterizer2D.Rasterizer2D_xClipStart - var1; + var6 -= var9; + var1 = Rasterizer2D.Rasterizer2D_xClipStart; + var4 += var9; + var3 += var9; + var8 += var9; + var7 += var9; } - if (var6 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 174 - var9 = var6 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; // L: 175 - var6 -= var9; // L: 176 - var8 += var9; // L: 177 - var7 += var9; // L: 178 + if (var6 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { + var9 = var6 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; + var6 -= var9; + var8 += var9; + var7 += var9; } - if (var6 > 0 && var5 > 0) { // L: 180 - Sprite_draw(Rasterizer2D.Rasterizer2D_pixels, this.pixels, var4, var3, var6, var5, var7, var8); // L: 181 + if (var6 > 0 && var5 > 0) { + Sprite_draw(Rasterizer2D.Rasterizer2D_pixels, this.pixels, var4, var3, var6, var5, var7, var8); } - } // L: 182 + } - @ObfuscatedName("o") + @ObfuscatedName("e") @Export("drawTransBgAt") public void drawTransBgAt(int var1, int var2) { - var1 += this.xOffset; // L: 203 - var2 += this.yOffset; // L: 204 - int var3 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; // L: 205 - int var4 = 0; // L: 206 - int var5 = this.subHeight; // L: 207 - int var6 = this.subWidth; // L: 208 - int var7 = Rasterizer2D.Rasterizer2D_width - var6; // L: 209 - int var8 = 0; // L: 210 + var1 += this.xOffset; + var2 += this.yOffset; + int var3 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; + int var4 = 0; + int var5 = this.subHeight; + int var6 = this.subWidth; + int var7 = Rasterizer2D.Rasterizer2D_width - var6; + int var8 = 0; int var9; - if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { // L: 211 - var9 = Rasterizer2D.Rasterizer2D_yClipStart - var2; // L: 212 - var5 -= var9; // L: 213 - var2 = Rasterizer2D.Rasterizer2D_yClipStart; // L: 214 - var4 += var9 * var6; // L: 215 - var3 += var9 * Rasterizer2D.Rasterizer2D_width; // L: 216 + if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { + var9 = Rasterizer2D.Rasterizer2D_yClipStart - var2; + var5 -= var9; + var2 = Rasterizer2D.Rasterizer2D_yClipStart; + var4 += var9 * var6; + var3 += var9 * Rasterizer2D.Rasterizer2D_width; } - if (var5 + var2 > Rasterizer2D.Rasterizer2D_yClipEnd) { // L: 218 + if (var5 + var2 > Rasterizer2D.Rasterizer2D_yClipEnd) { var5 -= var5 + var2 - Rasterizer2D.Rasterizer2D_yClipEnd; } - if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { // L: 219 - var9 = Rasterizer2D.Rasterizer2D_xClipStart - var1; // L: 220 - var6 -= var9; // L: 221 - var1 = Rasterizer2D.Rasterizer2D_xClipStart; // L: 222 - var4 += var9; // L: 223 - var3 += var9; // L: 224 - var8 += var9; // L: 225 - var7 += var9; // L: 226 + if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { + var9 = Rasterizer2D.Rasterizer2D_xClipStart - var1; + var6 -= var9; + var1 = Rasterizer2D.Rasterizer2D_xClipStart; + var4 += var9; + var3 += var9; + var8 += var9; + var7 += var9; } - if (var6 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 228 - var9 = var6 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; // L: 229 - var6 -= var9; // L: 230 - var8 += var9; // L: 231 - var7 += var9; // L: 232 + if (var6 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { + var9 = var6 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; + var6 -= var9; + var8 += var9; + var7 += var9; } - if (var6 > 0 && var5 > 0) { // L: 234 - Sprite_drawTransBg(Rasterizer2D.Rasterizer2D_pixels, this.pixels, 0, var4, var3, var6, var5, var7, var8); // L: 235 + if (var6 > 0 && var5 > 0) { + Sprite_drawTransBg(Rasterizer2D.Rasterizer2D_pixels, this.pixels, 0, var4, var3, var6, var5, var7, var8); } - } // L: 236 + } - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("drawScaledAt") public void drawScaledAt(int var1, int var2, int var3, int var4) { - if (var3 > 0 && var4 > 0) { // L: 267 - int var5 = this.subWidth; // L: 268 - int var6 = this.subHeight; // L: 269 - int var7 = 0; // L: 270 - int var8 = 0; // L: 271 - int var9 = this.width; // L: 272 - int var10 = this.height; // L: 273 - int var11 = (var9 << 16) / var3; // L: 274 - int var12 = (var10 << 16) / var4; // L: 275 + if (var3 > 0 && var4 > 0) { + int var5 = this.subWidth; + int var6 = this.subHeight; + int var7 = 0; + int var8 = 0; + int var9 = this.width; + int var10 = this.height; + int var11 = (var9 << 16) / var3; + int var12 = (var10 << 16) / var4; int var13; - if (this.xOffset > 0) { // L: 276 - var13 = (var11 + (this.xOffset << 16) - 1) / var11; // L: 277 - var1 += var13; // L: 278 - var7 += var13 * var11 - (this.xOffset << 16); // L: 279 + if (this.xOffset > 0) { + var13 = (var11 + (this.xOffset << 16) - 1) / var11; + var1 += var13; + var7 += var13 * var11 - (this.xOffset << 16); } - if (this.yOffset > 0) { // L: 281 - var13 = (var12 + (this.yOffset << 16) - 1) / var12; // L: 282 - var2 += var13; // L: 283 - var8 += var13 * var12 - (this.yOffset << 16); // L: 284 + if (this.yOffset > 0) { + var13 = (var12 + (this.yOffset << 16) - 1) / var12; + var2 += var13; + var8 += var13 * var12 - (this.yOffset << 16); } - if (var5 < var9) { // L: 286 + if (var5 < var9) { var3 = (var11 + ((var5 << 16) - var7) - 1) / var11; } - if (var6 < var10) { // L: 287 + if (var6 < var10) { var4 = (var12 + ((var6 << 16) - var8) - 1) / var12; } - var13 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; // L: 288 - int var14 = Rasterizer2D.Rasterizer2D_width - var3; // L: 289 - if (var2 + var4 > Rasterizer2D.Rasterizer2D_yClipEnd) { // L: 290 + var13 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; + int var14 = Rasterizer2D.Rasterizer2D_width - var3; + if (var2 + var4 > Rasterizer2D.Rasterizer2D_yClipEnd) { var4 -= var2 + var4 - Rasterizer2D.Rasterizer2D_yClipEnd; } int var15; - if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { // L: 291 - var15 = Rasterizer2D.Rasterizer2D_yClipStart - var2; // L: 292 - var4 -= var15; // L: 293 - var13 += var15 * Rasterizer2D.Rasterizer2D_width; // L: 294 - var8 += var12 * var15; // L: 295 + if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { + var15 = Rasterizer2D.Rasterizer2D_yClipStart - var2; + var4 -= var15; + var13 += var15 * Rasterizer2D.Rasterizer2D_width; + var8 += var12 * var15; } - if (var3 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 297 - var15 = var3 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; // L: 298 - var3 -= var15; // L: 299 - var14 += var15; // L: 300 + if (var3 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { + var15 = var3 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; + var3 -= var15; + var14 += var15; } - if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { // L: 302 - var15 = Rasterizer2D.Rasterizer2D_xClipStart - var1; // L: 303 - var3 -= var15; // L: 304 - var13 += var15; // L: 305 - var7 += var11 * var15; // L: 306 - var14 += var15; // L: 307 + if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { + var15 = Rasterizer2D.Rasterizer2D_xClipStart - var1; + var3 -= var15; + var13 += var15; + var7 += var11 * var15; + var14 += var15; } - Sprite_drawScaled(Rasterizer2D.Rasterizer2D_pixels, this.pixels, 0, var7, var8, var13, var14, var3, var4, var11, var12, var5); // L: 309 + Sprite_drawScaled(Rasterizer2D.Rasterizer2D_pixels, this.pixels, 0, var7, var8, var13, var14, var3, var4, var11, var12, var5); } - } // L: 310 + } - @ObfuscatedName("r") + @ObfuscatedName("f") @Export("drawTransOverlayAt") public void drawTransOverlayAt(int var1, int var2, int var3, int var4) { - if (var3 == 256) { // L: 329 - this.drawTransBgAt(var1, var2); // L: 330 + if (var3 == 256) { + this.drawTransBgAt(var1, var2); } else { - var1 += this.xOffset; // L: 333 - var2 += this.yOffset; // L: 334 - int var5 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; // L: 335 - int var6 = 0; // L: 336 - int var7 = this.subHeight; // L: 337 - int var8 = this.subWidth; // L: 338 - int var9 = Rasterizer2D.Rasterizer2D_width - var8; // L: 339 - int var10 = 0; // L: 340 + var1 += this.xOffset; + var2 += this.yOffset; + int var5 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; + int var6 = 0; + int var7 = this.subHeight; + int var8 = this.subWidth; + int var9 = Rasterizer2D.Rasterizer2D_width - var8; + int var10 = 0; int var11; - if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { // L: 341 - var11 = Rasterizer2D.Rasterizer2D_yClipStart - var2; // L: 342 - var7 -= var11; // L: 343 - var2 = Rasterizer2D.Rasterizer2D_yClipStart; // L: 344 - var6 += var11 * var8; // L: 345 - var5 += var11 * Rasterizer2D.Rasterizer2D_width; // L: 346 + if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { + var11 = Rasterizer2D.Rasterizer2D_yClipStart - var2; + var7 -= var11; + var2 = Rasterizer2D.Rasterizer2D_yClipStart; + var6 += var11 * var8; + var5 += var11 * Rasterizer2D.Rasterizer2D_width; } - if (var7 + var2 > Rasterizer2D.Rasterizer2D_yClipEnd) { // L: 348 + if (var7 + var2 > Rasterizer2D.Rasterizer2D_yClipEnd) { var7 -= var7 + var2 - Rasterizer2D.Rasterizer2D_yClipEnd; } - if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { // L: 349 - var11 = Rasterizer2D.Rasterizer2D_xClipStart - var1; // L: 350 - var8 -= var11; // L: 351 - var1 = Rasterizer2D.Rasterizer2D_xClipStart; // L: 352 - var6 += var11; // L: 353 - var5 += var11; // L: 354 - var10 += var11; // L: 355 - var9 += var11; // L: 356 + if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { + var11 = Rasterizer2D.Rasterizer2D_xClipStart - var1; + var8 -= var11; + var1 = Rasterizer2D.Rasterizer2D_xClipStart; + var6 += var11; + var5 += var11; + var10 += var11; + var9 += var11; } - if (var8 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 358 - var11 = var8 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; // L: 359 - var8 -= var11; // L: 360 - var10 += var11; // L: 361 - var9 += var11; // L: 362 + if (var8 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { + var11 = var8 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; + var8 -= var11; + var10 += var11; + var9 += var11; } - if (var8 > 0 && var7 > 0) { // L: 364 - Sprite_drawTransOverlay(Rasterizer2D.Rasterizer2D_pixels, this.pixels, 0, var6, var5, var8, var7, var9, var10, var3, var4); // L: 365 + if (var8 > 0 && var7 > 0) { + Sprite_drawTransOverlay(Rasterizer2D.Rasterizer2D_pixels, this.pixels, 0, var6, var5, var8, var7, var9, var10, var3, var4); } } - } // L: 331 366 + } - @ObfuscatedName("s") + @ObfuscatedName("r") @Export("drawTransAt") public void drawTransAt(int var1, int var2, int var3) { - var1 += this.xOffset; // L: 389 - var2 += this.yOffset; // L: 390 - int var4 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; // L: 391 - int var5 = 0; // L: 392 - int var6 = this.subHeight; // L: 393 - int var7 = this.subWidth; // L: 394 - int var8 = Rasterizer2D.Rasterizer2D_width - var7; // L: 395 - int var9 = 0; // L: 396 + var1 += this.xOffset; + var2 += this.yOffset; + int var4 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; + int var5 = 0; + int var6 = this.subHeight; + int var7 = this.subWidth; + int var8 = Rasterizer2D.Rasterizer2D_width - var7; + int var9 = 0; int var10; - if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { // L: 397 - var10 = Rasterizer2D.Rasterizer2D_yClipStart - var2; // L: 398 - var6 -= var10; // L: 399 - var2 = Rasterizer2D.Rasterizer2D_yClipStart; // L: 400 - var5 += var10 * var7; // L: 401 - var4 += var10 * Rasterizer2D.Rasterizer2D_width; // L: 402 + if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { + var10 = Rasterizer2D.Rasterizer2D_yClipStart - var2; + var6 -= var10; + var2 = Rasterizer2D.Rasterizer2D_yClipStart; + var5 += var10 * var7; + var4 += var10 * Rasterizer2D.Rasterizer2D_width; } - if (var6 + var2 > Rasterizer2D.Rasterizer2D_yClipEnd) { // L: 404 + if (var6 + var2 > Rasterizer2D.Rasterizer2D_yClipEnd) { var6 -= var6 + var2 - Rasterizer2D.Rasterizer2D_yClipEnd; } - if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { // L: 405 - var10 = Rasterizer2D.Rasterizer2D_xClipStart - var1; // L: 406 - var7 -= var10; // L: 407 - var1 = Rasterizer2D.Rasterizer2D_xClipStart; // L: 408 - var5 += var10; // L: 409 - var4 += var10; // L: 410 - var9 += var10; // L: 411 - var8 += var10; // L: 412 + if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { + var10 = Rasterizer2D.Rasterizer2D_xClipStart - var1; + var7 -= var10; + var1 = Rasterizer2D.Rasterizer2D_xClipStart; + var5 += var10; + var4 += var10; + var9 += var10; + var8 += var10; } - if (var7 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 414 - var10 = var7 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; // L: 415 - var7 -= var10; // L: 416 - var9 += var10; // L: 417 - var8 += var10; // L: 418 + if (var7 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { + var10 = var7 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; + var7 -= var10; + var9 += var10; + var8 += var10; } - if (var7 > 0 && var6 > 0) { // L: 420 - Sprite_drawTransparent(Rasterizer2D.Rasterizer2D_pixels, this.pixels, 0, var5, var4, var7, var6, var8, var9, var3); // L: 421 + if (var7 > 0 && var6 > 0) { + Sprite_drawTransparent(Rasterizer2D.Rasterizer2D_pixels, this.pixels, 0, var5, var4, var7, var6, var8, var9, var3); } - } // L: 422 - - @ObfuscatedName("d") - @Export("drawTransScaledAt") - public void drawTransScaledAt(int var1, int var2, int var3, int var4, int var5) { - if (var3 > 0 && var4 > 0) { // L: 441 - int var6 = this.subWidth; // L: 442 - int var7 = this.subHeight; // L: 443 - int var8 = 0; // L: 444 - int var9 = 0; // L: 445 - int var10 = this.width; // L: 446 - int var11 = this.height; // L: 447 - int var12 = (var10 << 16) / var3; // L: 448 - int var13 = (var11 << 16) / var4; // L: 449 - int var14; - if (this.xOffset > 0) { // L: 450 - var14 = (var12 + (this.xOffset << 16) - 1) / var12; // L: 451 - var1 += var14; // L: 452 - var8 += var14 * var12 - (this.xOffset << 16); // L: 453 - } - - if (this.yOffset > 0) { // L: 455 - var14 = (var13 + (this.yOffset << 16) - 1) / var13; // L: 456 - var2 += var14; // L: 457 - var9 += var14 * var13 - (this.yOffset << 16); // L: 458 - } - - if (var6 < var10) { // L: 460 - var3 = (var12 + ((var6 << 16) - var8) - 1) / var12; - } - - if (var7 < var11) { // L: 461 - var4 = (var13 + ((var7 << 16) - var9) - 1) / var13; - } - - var14 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; // L: 462 - int var15 = Rasterizer2D.Rasterizer2D_width - var3; // L: 463 - if (var2 + var4 > Rasterizer2D.Rasterizer2D_yClipEnd) { // L: 464 - var4 -= var2 + var4 - Rasterizer2D.Rasterizer2D_yClipEnd; - } - - int var16; - if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { // L: 465 - var16 = Rasterizer2D.Rasterizer2D_yClipStart - var2; // L: 466 - var4 -= var16; // L: 467 - var14 += var16 * Rasterizer2D.Rasterizer2D_width; // L: 468 - var9 += var13 * var16; // L: 469 - } - - if (var3 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 471 - var16 = var3 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; // L: 472 - var3 -= var16; // L: 473 - var15 += var16; // L: 474 - } - - if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { // L: 476 - var16 = Rasterizer2D.Rasterizer2D_xClipStart - var1; // L: 477 - var3 -= var16; // L: 478 - var14 += var16; // L: 479 - var8 += var12 * var16; // L: 480 - var15 += var16; // L: 481 - } - - Sprite_drawTransScaled(Rasterizer2D.Rasterizer2D_pixels, this.pixels, 0, var8, var9, var14, var15, var3, var4, var12, var13, var6, var5); // L: 483 - } - } // L: 484 + } @ObfuscatedName("g") - public void method6290(int var1, int var2, int var3) { - var1 += this.xOffset; // L: 507 - var2 += this.yOffset; // L: 508 - int var4 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; // L: 509 - int var5 = 0; // L: 510 - int var6 = this.subHeight; // L: 511 - int var7 = this.subWidth; // L: 512 - int var8 = Rasterizer2D.Rasterizer2D_width - var7; // L: 513 - int var9 = 0; // L: 514 - int var10; - if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { // L: 515 - var10 = Rasterizer2D.Rasterizer2D_yClipStart - var2; // L: 516 - var6 -= var10; // L: 517 - var2 = Rasterizer2D.Rasterizer2D_yClipStart; // L: 518 - var5 += var10 * var7; // L: 519 - var4 += var10 * Rasterizer2D.Rasterizer2D_width; // L: 520 - } - - if (var6 + var2 > Rasterizer2D.Rasterizer2D_yClipEnd) { // L: 522 - var6 -= var6 + var2 - Rasterizer2D.Rasterizer2D_yClipEnd; - } - - if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { // L: 523 - var10 = Rasterizer2D.Rasterizer2D_xClipStart - var1; // L: 524 - var7 -= var10; // L: 525 - var1 = Rasterizer2D.Rasterizer2D_xClipStart; // L: 526 - var5 += var10; // L: 527 - var4 += var10; // L: 528 - var9 += var10; // L: 529 - var8 += var10; // L: 530 - } - - if (var7 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 532 - var10 = var7 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; // L: 533 - var7 -= var10; // L: 534 - var9 += var10; // L: 535 - var8 += var10; // L: 536 - } - - if (var7 > 0 && var6 > 0) { // L: 538 - if (var3 == 256) { - method6291(0, 0, 0, Rasterizer2D.Rasterizer2D_pixels, this.pixels, var5, 0, var4, 0, var7, var6, var8, var9); // L: 539 - } else { - method6297(0, 0, 0, Rasterizer2D.Rasterizer2D_pixels, this.pixels, var5, 0, var4, 0, var7, var6, var8, var9, var3); // L: 540 - } - - } - } // L: 541 - - @ObfuscatedName("ac") - public void method6293(int var1, int var2, int var3, int var4, int var5) { - if (var3 > 0 && var4 > 0) { // L: 582 - int var6 = this.subWidth; // L: 583 - int var7 = this.subHeight; // L: 584 - int var8 = 0; // L: 585 - int var9 = 0; // L: 586 - int var10 = this.width; // L: 587 - int var11 = this.height; // L: 588 - int var12 = (var10 << 16) / var3; // L: 589 - int var13 = (var11 << 16) / var4; // L: 590 + @Export("drawTransScaledAt") + public void drawTransScaledAt(int var1, int var2, int var3, int var4, int var5) { + if (var3 > 0 && var4 > 0) { + int var6 = this.subWidth; + int var7 = this.subHeight; + int var8 = 0; + int var9 = 0; + int var10 = this.width; + int var11 = this.height; + int var12 = (var10 << 16) / var3; + int var13 = (var11 << 16) / var4; int var14; - if (this.xOffset > 0) { // L: 591 - var14 = (var12 + (this.xOffset << 16) - 1) / var12; // L: 592 - var1 += var14; // L: 593 - var8 += var14 * var12 - (this.xOffset << 16); // L: 594 + if (this.xOffset > 0) { + var14 = (var12 + (this.xOffset << 16) - 1) / var12; + var1 += var14; + var8 += var14 * var12 - (this.xOffset << 16); } - if (this.yOffset > 0) { // L: 596 - var14 = (var13 + (this.yOffset << 16) - 1) / var13; // L: 597 - var2 += var14; // L: 598 - var9 += var14 * var13 - (this.yOffset << 16); // L: 599 + if (this.yOffset > 0) { + var14 = (var13 + (this.yOffset << 16) - 1) / var13; + var2 += var14; + var9 += var14 * var13 - (this.yOffset << 16); } - if (var6 < var10) { // L: 601 + if (var6 < var10) { var3 = (var12 + ((var6 << 16) - var8) - 1) / var12; } - if (var7 < var11) { // L: 602 + if (var7 < var11) { var4 = (var13 + ((var7 << 16) - var9) - 1) / var13; } - var14 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; // L: 603 - int var15 = Rasterizer2D.Rasterizer2D_width - var3; // L: 604 - if (var2 + var4 > Rasterizer2D.Rasterizer2D_yClipEnd) { // L: 605 + var14 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; + int var15 = Rasterizer2D.Rasterizer2D_width - var3; + if (var2 + var4 > Rasterizer2D.Rasterizer2D_yClipEnd) { var4 -= var2 + var4 - Rasterizer2D.Rasterizer2D_yClipEnd; } int var16; - if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { // L: 606 - var16 = Rasterizer2D.Rasterizer2D_yClipStart - var2; // L: 607 - var4 -= var16; // L: 608 - var14 += var16 * Rasterizer2D.Rasterizer2D_width; // L: 609 - var9 += var13 * var16; // L: 610 + if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { + var16 = Rasterizer2D.Rasterizer2D_yClipStart - var2; + var4 -= var16; + var14 += var16 * Rasterizer2D.Rasterizer2D_width; + var9 += var13 * var16; } - if (var3 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 612 - var16 = var3 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; // L: 613 - var3 -= var16; // L: 614 - var15 += var16; // L: 615 + if (var3 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { + var16 = var3 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; + var3 -= var16; + var15 += var16; } - if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { // L: 617 - var16 = Rasterizer2D.Rasterizer2D_xClipStart - var1; // L: 618 - var3 -= var16; // L: 619 - var14 += var16; // L: 620 - var8 += var12 * var16; // L: 621 - var15 += var16; // L: 622 + if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { + var16 = Rasterizer2D.Rasterizer2D_xClipStart - var1; + var3 -= var16; + var14 += var16; + var8 += var12 * var16; + var15 += var16; } - if (var5 == 256) { // L: 624 - method6285(0, 0, 0, var8, this.pixels, Rasterizer2D.Rasterizer2D_pixels, 0, 0, -var4, var9, var14, var15, var3, var12, var13, var6); + Sprite_drawTransScaled(Rasterizer2D.Rasterizer2D_pixels, this.pixels, 0, var8, var9, var14, var15, var3, var4, var12, var13, var6, var5); + } + } + + @ObfuscatedName("an") + public void method6181(int var1, int var2, int var3) { + var1 += this.xOffset; + var2 += this.yOffset; + int var4 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; + int var5 = 0; + int var6 = this.subHeight; + int var7 = this.subWidth; + int var8 = Rasterizer2D.Rasterizer2D_width - var7; + int var9 = 0; + int var10; + if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { + var10 = Rasterizer2D.Rasterizer2D_yClipStart - var2; + var6 -= var10; + var2 = Rasterizer2D.Rasterizer2D_yClipStart; + var5 += var10 * var7; + var4 += var10 * Rasterizer2D.Rasterizer2D_width; + } + + if (var6 + var2 > Rasterizer2D.Rasterizer2D_yClipEnd) { + var6 -= var6 + var2 - Rasterizer2D.Rasterizer2D_yClipEnd; + } + + if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { + var10 = Rasterizer2D.Rasterizer2D_xClipStart - var1; + var7 -= var10; + var1 = Rasterizer2D.Rasterizer2D_xClipStart; + var5 += var10; + var4 += var10; + var9 += var10; + var8 += var10; + } + + if (var7 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { + var10 = var7 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; + var7 -= var10; + var9 += var10; + var8 += var10; + } + + if (var7 > 0 && var6 > 0) { + if (var3 == 256) { + method6253(0, 0, 0, Rasterizer2D.Rasterizer2D_pixels, this.pixels, var5, 0, var4, 0, var7, var6, var8, var9); } else { - method6345(0, 0, 0, var8, this.pixels, Rasterizer2D.Rasterizer2D_pixels, 0, 0, -var4, var9, var14, var15, var3, var12, var13, var6, var5); // L: 625 + method6183(0, 0, 0, Rasterizer2D.Rasterizer2D_pixels, this.pixels, var5, 0, var4, 0, var7, var6, var8, var9, var3); } } - } // L: 626 + } - @ObfuscatedName("av") - public void method6296(int var1, int var2, int var3, int var4, int var5, int var6, int[] var7, int[] var8) { - int var9 = var2 < 0 ? -var2 : 0; // L: 675 - int var10 = var2 + this.subHeight <= var6 ? this.subHeight : var6 - var2; // L: 676 - int var11 = var1 < 0 ? -var1 : 0; // L: 677 + @ObfuscatedName("ag") + public void method6184(int var1, int var2, int var3, int var4, int var5) { + if (var3 > 0 && var4 > 0) { + int var6 = this.subWidth; + int var7 = this.subHeight; + int var8 = 0; + int var9 = 0; + int var10 = this.width; + int var11 = this.height; + int var12 = (var10 << 16) / var3; + int var13 = (var11 << 16) / var4; + int var14; + if (this.xOffset > 0) { + var14 = (var12 + (this.xOffset << 16) - 1) / var12; + var1 += var14; + var8 += var14 * var12 - (this.xOffset << 16); + } + + if (this.yOffset > 0) { + var14 = (var13 + (this.yOffset << 16) - 1) / var13; + var2 += var14; + var9 += var14 * var13 - (this.yOffset << 16); + } + + if (var6 < var10) { + var3 = (var12 + ((var6 << 16) - var8) - 1) / var12; + } + + if (var7 < var11) { + var4 = (var13 + ((var7 << 16) - var9) - 1) / var13; + } + + var14 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; + int var15 = Rasterizer2D.Rasterizer2D_width - var3; + if (var2 + var4 > Rasterizer2D.Rasterizer2D_yClipEnd) { + var4 -= var2 + var4 - Rasterizer2D.Rasterizer2D_yClipEnd; + } + + int var16; + if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) { + var16 = Rasterizer2D.Rasterizer2D_yClipStart - var2; + var4 -= var16; + var14 += var16 * Rasterizer2D.Rasterizer2D_width; + var9 += var13 * var16; + } + + if (var3 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) { + var16 = var3 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd; + var3 -= var16; + var15 += var16; + } + + if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) { + var16 = Rasterizer2D.Rasterizer2D_xClipStart - var1; + var3 -= var16; + var14 += var16; + var8 += var12 * var16; + var15 += var16; + } + + if (var5 == 256) { + method6250(0, 0, 0, var8, this.pixels, Rasterizer2D.Rasterizer2D_pixels, 0, 0, -var4, var9, var14, var15, var3, var12, var13, var6); + } else { + method6249(0, 0, 0, var8, this.pixels, Rasterizer2D.Rasterizer2D_pixels, 0, 0, -var4, var9, var14, var15, var3, var12, var13, var6, var5); + } + + } + } + + @ObfuscatedName("ae") + public void method6236(int var1, int var2, int var3, int var4, int var5, int var6, int[] var7, int[] var8) { + int var9 = var2 < 0 ? -var2 : 0; + int var10 = var2 + this.subHeight <= var6 ? this.subHeight : var6 - var2; + int var11 = var1 < 0 ? -var1 : 0; int var10000; - if (this.subWidth + var1 <= var5) { // L: 678 + if (this.subWidth + var1 <= var5) { var10000 = this.subWidth; } else { var10000 = var5 - var1; } - int var13 = var3 + var11 + (var9 + var2 + var4) * Rasterizer2D.Rasterizer2D_width + var1; // L: 679 - int var14 = var9 + var2; // L: 680 + int var13 = var3 + var11 + (var9 + var2 + var4) * Rasterizer2D.Rasterizer2D_width + var1; + int var14 = var9 + var2; - for (int var15 = var9; var15 < var10; ++var15) { // L: 681 - int var16 = var7[var14]; // L: 682 - int var17 = var8[var14++]; // L: 683 - int var18 = var13; // L: 684 + for (int var15 = var9; var15 < var10; ++var15) { + int var16 = var7[var14]; + int var17 = var8[var14++]; + int var18 = var13; int var19; - if (var1 < var16) { // L: 686 - var19 = var16 - var1; // L: 687 - var18 = var13 + (var19 - var11); // L: 688 + if (var1 < var16) { + var19 = var16 - var1; + var18 = var13 + (var19 - var11); } else { - var19 = var11; // L: 690 + var19 = var11; } int var12; - if (this.subWidth + var1 <= var16 + var17) { // L: 691 + if (this.subWidth + var1 <= var16 + var17) { var12 = this.subWidth; } else { - var12 = var16 + var17 - var1; // L: 692 + var12 = var16 + var17 - var1; } - for (int var20 = var19; var20 < var12; ++var20) { // L: 693 - int var21 = this.pixels[var20 + var15 * this.subWidth]; // L: 694 + for (int var20 = var19; var20 < var12; ++var20) { + int var21 = this.pixels[var20 + var15 * this.subWidth]; if (var21 != 0) { - Rasterizer2D.Rasterizer2D_pixels[var18++] = var21; // L: 695 + Rasterizer2D.Rasterizer2D_pixels[var18++] = var21; } else { - ++var18; // L: 696 + ++var18; } } - var13 += Rasterizer2D.Rasterizer2D_width; // L: 698 + var13 += Rasterizer2D.Rasterizer2D_width; } - } // L: 700 + } - @ObfuscatedName("ar") + @ObfuscatedName("ac") @Export("drawRotatedMaskedCenteredAround") public void drawRotatedMaskedCenteredAround(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int[] var9, int[] var10) { try { - int var11 = -var3 / 2; // L: 704 - int var12 = -var4 / 2; // L: 705 - int var13 = (int)(Math.sin((double)var7 / 326.11D) * 65536.0D); // L: 706 - int var14 = (int)(Math.cos((double)var7 / 326.11D) * 65536.0D); // L: 707 - var13 = var13 * var8 >> 8; // L: 708 - var14 = var14 * var8 >> 8; // L: 709 - int var15 = var12 * var13 + var11 * var14 + (var5 << 16); // L: 710 - int var16 = var12 * var14 - var11 * var13 + (var6 << 16); // L: 711 - int var17 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; // L: 712 + int var11 = -var3 / 2; + int var12 = -var4 / 2; + int var13 = (int)(Math.sin((double)var7 / 326.11D) * 65536.0D); + int var14 = (int)(Math.cos((double)var7 / 326.11D) * 65536.0D); + var13 = var13 * var8 >> 8; + var14 = var14 * var8 >> 8; + int var15 = var12 * var13 + var11 * var14 + (var5 << 16); + int var16 = var12 * var14 - var11 * var13 + (var6 << 16); + int var17 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; - for (var2 = 0; var2 < var4; ++var2) { // L: 713 - int var18 = var9[var2]; // L: 714 - int var19 = var17 + var18; // L: 715 - int var20 = var15 + var14 * var18; // L: 716 - int var21 = var16 - var13 * var18; // L: 717 + for (var2 = 0; var2 < var4; ++var2) { + int var18 = var9[var2]; + int var19 = var17 + var18; + int var20 = var15 + var14 * var18; + int var21 = var16 - var13 * var18; - for (var1 = -var10[var2]; var1 < 0; ++var1) { // L: 718 - Rasterizer2D.Rasterizer2D_pixels[var19++] = this.pixels[this.subWidth * (var21 >> 16) + (var20 >> 16)]; // L: 719 - var20 += var14; // L: 720 - var21 -= var13; // L: 721 + for (var1 = -var10[var2]; var1 < 0; ++var1) { + Rasterizer2D.Rasterizer2D_pixels[var19++] = this.pixels[this.subWidth * (var21 >> 16) + (var20 >> 16)]; + var20 += var14; + var21 -= var13; } - var15 += var13; // L: 723 - var16 += var14; // L: 724 - var17 += Rasterizer2D.Rasterizer2D_width; // L: 725 + var15 += var13; + var16 += var14; + var17 += Rasterizer2D.Rasterizer2D_width; } - } catch (Exception var23) { // L: 728 + } catch (Exception var23) { } - } // L: 729 + } - @ObfuscatedName("ay") - public void method6303(int var1, int var2, int var3, int var4, int var5, int var6, double var7, int var9) { + @ObfuscatedName("ak") + public void method6189(int var1, int var2, int var3, int var4, int var5, int var6, double var7, int var9) { try { - int var10 = -var3 / 2; // L: 733 - int var11 = -var4 / 2; // L: 734 - int var12 = (int)(Math.sin(var7) * 65536.0D); // L: 735 - int var13 = (int)(Math.cos(var7) * 65536.0D); // L: 736 - var12 = var12 * var9 >> 8; // L: 737 - var13 = var13 * var9 >> 8; // L: 738 - int var14 = var11 * var12 + var10 * var13 + (var5 << 16); // L: 739 - int var15 = var11 * var13 - var10 * var12 + (var6 << 16); // L: 740 - int var16 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; // L: 741 + int var10 = -var3 / 2; + int var11 = -var4 / 2; + int var12 = (int)(Math.sin(var7) * 65536.0D); + int var13 = (int)(Math.cos(var7) * 65536.0D); + var12 = var12 * var9 >> 8; + var13 = var13 * var9 >> 8; + int var14 = var11 * var12 + var10 * var13 + (var5 << 16); + int var15 = var11 * var13 - var10 * var12 + (var6 << 16); + int var16 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; - for (var2 = 0; var2 < var4; ++var2) { // L: 742 - int var17 = var16; // L: 743 - int var18 = var14; // L: 744 - int var19 = var15; // L: 745 + for (var2 = 0; var2 < var4; ++var2) { + int var17 = var16; + int var18 = var14; + int var19 = var15; - for (var1 = -var3; var1 < 0; ++var1) { // L: 746 - int var20 = this.pixels[this.subWidth * (var19 >> 16) + (var18 >> 16)]; // L: 747 - if (var20 != 0) { // L: 748 + for (var1 = -var3; var1 < 0; ++var1) { + int var20 = this.pixels[this.subWidth * (var19 >> 16) + (var18 >> 16)]; + if (var20 != 0) { Rasterizer2D.Rasterizer2D_pixels[var17++] = var20; } else { - ++var17; // L: 749 + ++var17; } - var18 += var13; // L: 750 - var19 -= var12; // L: 751 + var18 += var13; + var19 -= var12; } - var14 += var12; // L: 753 - var15 += var13; // L: 754 - var16 += Rasterizer2D.Rasterizer2D_width; // L: 755 + var14 += var12; + var15 += var13; + var16 += Rasterizer2D.Rasterizer2D_width; } - } catch (Exception var22) { // L: 758 + } catch (Exception var22) { } - } // L: 759 + } - @ObfuscatedName("ah") - public void method6299(int var1, int var2, int var3, int var4) { - this.method6300(this.width << 3, this.height << 3, var1 << 4, var2 << 4, var3, var4); // L: 762 - } // L: 763 + @ObfuscatedName("av") + public void method6190(int var1, int var2, int var3, int var4) { + this.method6191(this.width << 3, this.height << 3, var1 << 4, var2 << 4, var3, var4); + } - @ObfuscatedName("az") - void method6300(int var1, int var2, int var3, int var4, int var5, int var6) { - if (var6 != 0) { // L: 766 - var1 -= this.xOffset << 4; // L: 767 - var2 -= this.yOffset << 4; // L: 768 - double var7 = (double)(var5 & 65535) * 9.587379924285257E-5D; // L: 769 - int var9 = (int)Math.floor(Math.sin(var7) * (double)var6 + 0.5D); // L: 770 - int var10 = (int)Math.floor(Math.cos(var7) * (double)var6 + 0.5D); // L: 771 - int var11 = var10 * -var1 + -var2 * var9; // L: 772 - int var12 = -var2 * var10 + var9 * -(-var1); // L: 773 - int var13 = var10 * ((this.subWidth << 4) - var1) + -var2 * var9; // L: 774 - int var14 = var9 * -((this.subWidth << 4) - var1) + -var2 * var10; // L: 775 - int var15 = ((this.subHeight << 4) - var2) * var9 + var10 * -var1; // L: 776 - int var16 = ((this.subHeight << 4) - var2) * var10 + var9 * -(-var1); // L: 777 - int var17 = ((this.subHeight << 4) - var2) * var9 + var10 * ((this.subWidth << 4) - var1); // L: 778 - int var18 = ((this.subHeight << 4) - var2) * var10 + var9 * -((this.subWidth << 4) - var1); // L: 779 + @ObfuscatedName("aq") + void method6191(int var1, int var2, int var3, int var4, int var5, int var6) { + if (var6 != 0) { + var1 -= this.xOffset << 4; + var2 -= this.yOffset << 4; + double var7 = (double)(var5 & 65535) * 9.587379924285257E-5D; + int var9 = (int)Math.floor(Math.sin(var7) * (double)var6 + 0.5D); + int var10 = (int)Math.floor(Math.cos(var7) * (double)var6 + 0.5D); + int var11 = var10 * -var1 + -var2 * var9; + int var12 = -var2 * var10 + var9 * -(-var1); + int var13 = var10 * ((this.subWidth << 4) - var1) + -var2 * var9; + int var14 = var9 * -((this.subWidth << 4) - var1) + -var2 * var10; + int var15 = ((this.subHeight << 4) - var2) * var9 + var10 * -var1; + int var16 = ((this.subHeight << 4) - var2) * var10 + var9 * -(-var1); + int var17 = ((this.subHeight << 4) - var2) * var9 + var10 * ((this.subWidth << 4) - var1); + int var18 = ((this.subHeight << 4) - var2) * var10 + var9 * -((this.subWidth << 4) - var1); int var19; int var20; - if (var11 < var13) { // L: 782 - var19 = var11; // L: 783 - var20 = var13; // L: 784 + if (var11 < var13) { + var19 = var11; + var20 = var13; } else { - var19 = var13; // L: 787 - var20 = var11; // L: 788 + var19 = var13; + var20 = var11; } - if (var15 < var19) { // L: 790 + if (var15 < var19) { var19 = var15; } - if (var17 < var19) { // L: 791 + if (var17 < var19) { var19 = var17; } - if (var15 > var20) { // L: 792 + if (var15 > var20) { var20 = var15; } - if (var17 > var20) { // L: 793 + if (var17 > var20) { var20 = var17; } int var21; int var22; - if (var12 < var14) { // L: 796 - var21 = var12; // L: 797 - var22 = var14; // L: 798 + if (var12 < var14) { + var21 = var12; + var22 = var14; } else { - var21 = var14; // L: 801 - var22 = var12; // L: 802 + var21 = var14; + var22 = var12; } - if (var16 < var21) { // L: 804 + if (var16 < var21) { var21 = var16; } - if (var18 < var21) { // L: 805 + if (var18 < var21) { var21 = var18; } - if (var16 > var22) { // L: 806 + if (var16 > var22) { var22 = var16; } - if (var18 > var22) { // L: 807 + if (var18 > var22) { var22 = var18; } - var19 >>= 12; // L: 808 - var20 = var20 + 4095 >> 12; // L: 809 - var21 >>= 12; // L: 810 - var22 = var22 + 4095 >> 12; // L: 811 - var19 += var3; // L: 812 - var20 += var3; // L: 813 - var21 += var4; // L: 814 - var22 += var4; // L: 815 - var19 >>= 4; // L: 816 - var20 = var20 + 15 >> 4; // L: 817 - var21 >>= 4; // L: 818 - var22 = var22 + 15 >> 4; // L: 819 - if (var19 < Rasterizer2D.Rasterizer2D_xClipStart) { // L: 820 + var19 >>= 12; + var20 = var20 + 4095 >> 12; + var21 >>= 12; + var22 = var22 + 4095 >> 12; + var19 += var3; + var20 += var3; + var21 += var4; + var22 += var4; + var19 >>= 4; + var20 = var20 + 15 >> 4; + var21 >>= 4; + var22 = var22 + 15 >> 4; + if (var19 < Rasterizer2D.Rasterizer2D_xClipStart) { var19 = Rasterizer2D.Rasterizer2D_xClipStart; } - if (var20 > Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 821 + if (var20 > Rasterizer2D.Rasterizer2D_xClipEnd) { var20 = Rasterizer2D.Rasterizer2D_xClipEnd; } - if (var21 < Rasterizer2D.Rasterizer2D_yClipStart) { // L: 822 + if (var21 < Rasterizer2D.Rasterizer2D_yClipStart) { var21 = Rasterizer2D.Rasterizer2D_yClipStart; } - if (var22 > Rasterizer2D.Rasterizer2D_yClipEnd) { // L: 823 + if (var22 > Rasterizer2D.Rasterizer2D_yClipEnd) { var22 = Rasterizer2D.Rasterizer2D_yClipEnd; } - var20 = var19 - var20; // L: 824 - if (var20 < 0) { // L: 825 - var22 = var21 - var22; // L: 826 - if (var22 < 0) { // L: 827 - int var23 = var19 + var21 * Rasterizer2D.Rasterizer2D_width; // L: 828 - double var24 = 1.6777216E7D / (double)var6; // L: 829 - int var26 = (int)Math.floor(Math.sin(var7) * var24 + 0.5D); // L: 830 - int var27 = (int)Math.floor(Math.cos(var7) * var24 + 0.5D); // L: 831 - int var28 = (var19 << 4) + 8 - var3; // L: 832 - int var29 = (var21 << 4) + 8 - var4; // L: 833 - int var30 = (var1 << 8) - (var29 * var26 >> 4); // L: 834 - int var31 = (var29 * var27 >> 4) + (var2 << 8); // L: 835 + var20 = var19 - var20; + if (var20 < 0) { + var22 = var21 - var22; + if (var22 < 0) { + int var23 = var19 + var21 * Rasterizer2D.Rasterizer2D_width; + double var24 = 1.6777216E7D / (double)var6; + int var26 = (int)Math.floor(Math.sin(var7) * var24 + 0.5D); + int var27 = (int)Math.floor(Math.cos(var7) * var24 + 0.5D); + int var28 = (var19 << 4) + 8 - var3; + int var29 = (var21 << 4) + 8 - var4; + int var30 = (var1 << 8) - (var29 * var26 >> 4); + int var31 = (var29 * var27 >> 4) + (var2 << 8); int var32; int var33; int var34; @@ -903,350 +903,350 @@ public final class Sprite extends Rasterizer2D { int var36; int var37; int var38; - if (var27 == 0) { // L: 837 - if (var26 == 0) { // L: 838 + if (var27 == 0) { + if (var26 == 0) { for (var33 = var22; var33 < 0; var23 += Rasterizer2D.Rasterizer2D_width) { - var34 = var23; // L: 840 - var35 = var30; // L: 841 - var36 = var31; // L: 842 - var37 = var20; // L: 843 - if (var30 >= 0 && var31 >= 0 && var30 - (this.subWidth << 12) < 0 && var31 - (this.subHeight << 12) < 0) { // L: 844 845 846 847 - for (; var37 < 0; ++var37) { // L: 848 - var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; // L: 849 - if (var38 != 0) { // L: 850 + var34 = var23; + var35 = var30; + var36 = var31; + var37 = var20; + if (var30 >= 0 && var31 >= 0 && var30 - (this.subWidth << 12) < 0 && var31 - (this.subHeight << 12) < 0) { + for (; var37 < 0; ++var37) { + var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; + if (var38 != 0) { Rasterizer2D.Rasterizer2D_pixels[var34++] = var38; } else { - ++var34; // L: 851 + ++var34; } } } - ++var33; // L: 839 + ++var33; } - } else if (var26 < 0) { // L: 855 + } else if (var26 < 0) { for (var33 = var22; var33 < 0; var23 += Rasterizer2D.Rasterizer2D_width) { - var34 = var23; // L: 857 - var35 = var30; // L: 858 - var36 = (var28 * var26 >> 4) + var31; // L: 859 - var37 = var20; // L: 860 - if (var30 >= 0 && var30 - (this.subWidth << 12) < 0) { // L: 861 862 - if ((var32 = var36 - (this.subHeight << 12)) >= 0) { // L: 863 - var32 = (var26 - var32) / var26; // L: 864 - var37 = var20 + var32; // L: 865 - var36 += var26 * var32; // L: 866 - var34 = var23 + var32; // L: 867 + var34 = var23; + var35 = var30; + var36 = (var28 * var26 >> 4) + var31; + var37 = var20; + if (var30 >= 0 && var30 - (this.subWidth << 12) < 0) { + if ((var32 = var36 - (this.subHeight << 12)) >= 0) { + var32 = (var26 - var32) / var26; + var37 = var20 + var32; + var36 += var26 * var32; + var34 = var23 + var32; } - if ((var32 = (var36 - var26) / var26) > var37) { // L: 869 + if ((var32 = (var36 - var26) / var26) > var37) { var37 = var32; } while (var37 < 0) { - var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; // L: 871 - if (var38 != 0) { // L: 872 + var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; + if (var38 != 0) { Rasterizer2D.Rasterizer2D_pixels[var34++] = var38; } else { - ++var34; // L: 873 + ++var34; } - var36 += var26; // L: 874 - ++var37; // L: 870 + var36 += var26; + ++var37; } } - ++var33; // L: 856 + ++var33; var30 -= var26; } } else { for (var33 = var22; var33 < 0; var23 += Rasterizer2D.Rasterizer2D_width) { - var34 = var23; // L: 880 - var35 = var30; // L: 881 - var36 = (var28 * var26 >> 4) + var31; // L: 882 - var37 = var20; // L: 883 - if (var30 >= 0 && var30 - (this.subWidth << 12) < 0) { // L: 884 885 - if (var36 < 0) { // L: 886 - var32 = (var26 - 1 - var36) / var26; // L: 887 - var37 = var20 + var32; // L: 888 - var36 += var26 * var32; // L: 889 - var34 = var23 + var32; // L: 890 + var34 = var23; + var35 = var30; + var36 = (var28 * var26 >> 4) + var31; + var37 = var20; + if (var30 >= 0 && var30 - (this.subWidth << 12) < 0) { + if (var36 < 0) { + var32 = (var26 - 1 - var36) / var26; + var37 = var20 + var32; + var36 += var26 * var32; + var34 = var23 + var32; } - if ((var32 = (var36 + 1 - (this.subHeight << 12) - var26) / var26) > var37) { // L: 892 + if ((var32 = (var36 + 1 - (this.subHeight << 12) - var26) / var26) > var37) { var37 = var32; } while (var37 < 0) { - var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; // L: 894 - if (var38 != 0) { // L: 895 + var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; + if (var38 != 0) { Rasterizer2D.Rasterizer2D_pixels[var34++] = var38; } else { - ++var34; // L: 896 + ++var34; } - var36 += var26; // L: 897 - ++var37; // L: 893 + var36 += var26; + ++var37; } } - ++var33; // L: 879 + ++var33; var30 -= var26; } } - } else if (var27 < 0) { // L: 902 - if (var26 == 0) { // L: 903 + } else if (var27 < 0) { + if (var26 == 0) { for (var33 = var22; var33 < 0; var23 += Rasterizer2D.Rasterizer2D_width) { - var34 = var23; // L: 905 - var35 = (var28 * var27 >> 4) + var30; // L: 906 - var36 = var31; // L: 907 - var37 = var20; // L: 908 - if (var31 >= 0 && var31 - (this.subHeight << 12) < 0) { // L: 909 910 - if ((var32 = var35 - (this.subWidth << 12)) >= 0) { // L: 911 - var32 = (var27 - var32) / var27; // L: 912 - var37 = var20 + var32; // L: 913 - var35 += var27 * var32; // L: 914 - var34 = var23 + var32; // L: 915 + var34 = var23; + var35 = (var28 * var27 >> 4) + var30; + var36 = var31; + var37 = var20; + if (var31 >= 0 && var31 - (this.subHeight << 12) < 0) { + if ((var32 = var35 - (this.subWidth << 12)) >= 0) { + var32 = (var27 - var32) / var27; + var37 = var20 + var32; + var35 += var27 * var32; + var34 = var23 + var32; } - if ((var32 = (var35 - var27) / var27) > var37) { // L: 917 + if ((var32 = (var35 - var27) / var27) > var37) { var37 = var32; } while (var37 < 0) { - var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; // L: 919 - if (var38 != 0) { // L: 920 + var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; + if (var38 != 0) { Rasterizer2D.Rasterizer2D_pixels[var34++] = var38; } else { - ++var34; // L: 921 + ++var34; } - var35 += var27; // L: 922 - ++var37; // L: 918 + var35 += var27; + ++var37; } } - ++var33; // L: 904 + ++var33; var31 += var27; } - } else if (var26 < 0) { // L: 926 + } else if (var26 < 0) { for (var33 = var22; var33 < 0; var23 += Rasterizer2D.Rasterizer2D_width) { - var34 = var23; // L: 928 - var35 = (var28 * var27 >> 4) + var30; // L: 929 - var36 = (var28 * var26 >> 4) + var31; // L: 930 - var37 = var20; // L: 931 - if ((var32 = var35 - (this.subWidth << 12)) >= 0) { // L: 932 - var32 = (var27 - var32) / var27; // L: 933 - var37 = var20 + var32; // L: 934 - var35 += var27 * var32; // L: 935 - var36 += var26 * var32; // L: 936 - var34 = var23 + var32; // L: 937 + var34 = var23; + var35 = (var28 * var27 >> 4) + var30; + var36 = (var28 * var26 >> 4) + var31; + var37 = var20; + if ((var32 = var35 - (this.subWidth << 12)) >= 0) { + var32 = (var27 - var32) / var27; + var37 = var20 + var32; + var35 += var27 * var32; + var36 += var26 * var32; + var34 = var23 + var32; } - if ((var32 = (var35 - var27) / var27) > var37) { // L: 939 + if ((var32 = (var35 - var27) / var27) > var37) { var37 = var32; } - if ((var32 = var36 - (this.subHeight << 12)) >= 0) { // L: 940 - var32 = (var26 - var32) / var26; // L: 941 - var37 += var32; // L: 942 - var35 += var27 * var32; // L: 943 - var36 += var26 * var32; // L: 944 - var34 += var32; // L: 945 + if ((var32 = var36 - (this.subHeight << 12)) >= 0) { + var32 = (var26 - var32) / var26; + var37 += var32; + var35 += var27 * var32; + var36 += var26 * var32; + var34 += var32; } - if ((var32 = (var36 - var26) / var26) > var37) { // L: 947 + if ((var32 = (var36 - var26) / var26) > var37) { var37 = var32; } while (var37 < 0) { - var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; // L: 949 - if (var38 != 0) { // L: 950 + var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; + if (var38 != 0) { Rasterizer2D.Rasterizer2D_pixels[var34++] = var38; } else { - ++var34; // L: 951 + ++var34; } - var35 += var27; // L: 952 - var36 += var26; // L: 953 - ++var37; // L: 948 + var35 += var27; + var36 += var26; + ++var37; } - ++var33; // L: 927 + ++var33; var30 -= var26; var31 += var27; } } else { for (var33 = var22; var33 < 0; var23 += Rasterizer2D.Rasterizer2D_width) { - var34 = var23; // L: 959 - var35 = (var28 * var27 >> 4) + var30; // L: 960 - var36 = (var28 * var26 >> 4) + var31; // L: 961 - var37 = var20; // L: 962 - if ((var32 = var35 - (this.subWidth << 12)) >= 0) { // L: 963 - var32 = (var27 - var32) / var27; // L: 964 - var37 = var20 + var32; // L: 965 - var35 += var27 * var32; // L: 966 - var36 += var26 * var32; // L: 967 - var34 = var23 + var32; // L: 968 + var34 = var23; + var35 = (var28 * var27 >> 4) + var30; + var36 = (var28 * var26 >> 4) + var31; + var37 = var20; + if ((var32 = var35 - (this.subWidth << 12)) >= 0) { + var32 = (var27 - var32) / var27; + var37 = var20 + var32; + var35 += var27 * var32; + var36 += var26 * var32; + var34 = var23 + var32; } - if ((var32 = (var35 - var27) / var27) > var37) { // L: 970 + if ((var32 = (var35 - var27) / var27) > var37) { var37 = var32; } - if (var36 < 0) { // L: 971 - var32 = (var26 - 1 - var36) / var26; // L: 972 - var37 += var32; // L: 973 - var35 += var27 * var32; // L: 974 - var36 += var26 * var32; // L: 975 - var34 += var32; // L: 976 + if (var36 < 0) { + var32 = (var26 - 1 - var36) / var26; + var37 += var32; + var35 += var27 * var32; + var36 += var26 * var32; + var34 += var32; } - if ((var32 = (var36 + 1 - (this.subHeight << 12) - var26) / var26) > var37) { // L: 978 + if ((var32 = (var36 + 1 - (this.subHeight << 12) - var26) / var26) > var37) { var37 = var32; } while (var37 < 0) { - var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; // L: 980 - if (var38 != 0) { // L: 981 + var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; + if (var38 != 0) { Rasterizer2D.Rasterizer2D_pixels[var34++] = var38; } else { - ++var34; // L: 982 + ++var34; } - var35 += var27; // L: 983 - var36 += var26; // L: 984 - ++var37; // L: 979 + var35 += var27; + var36 += var26; + ++var37; } - ++var33; // L: 958 + ++var33; var30 -= var26; var31 += var27; } } - } else if (var26 == 0) { // L: 990 + } else if (var26 == 0) { for (var33 = var22; var33 < 0; var23 += Rasterizer2D.Rasterizer2D_width) { - var34 = var23; // L: 992 - var35 = (var28 * var27 >> 4) + var30; // L: 993 - var36 = var31; // L: 994 - var37 = var20; // L: 995 - if (var31 >= 0 && var31 - (this.subHeight << 12) < 0) { // L: 996 997 - if (var35 < 0) { // L: 998 - var32 = (var27 - 1 - var35) / var27; // L: 999 - var37 = var20 + var32; // L: 1000 - var35 += var27 * var32; // L: 1001 - var34 = var23 + var32; // L: 1002 + var34 = var23; + var35 = (var28 * var27 >> 4) + var30; + var36 = var31; + var37 = var20; + if (var31 >= 0 && var31 - (this.subHeight << 12) < 0) { + if (var35 < 0) { + var32 = (var27 - 1 - var35) / var27; + var37 = var20 + var32; + var35 += var27 * var32; + var34 = var23 + var32; } - if ((var32 = (var35 + 1 - (this.subWidth << 12) - var27) / var27) > var37) { // L: 1004 + if ((var32 = (var35 + 1 - (this.subWidth << 12) - var27) / var27) > var37) { var37 = var32; } while (var37 < 0) { - var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; // L: 1006 - if (var38 != 0) { // L: 1007 + var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; + if (var38 != 0) { Rasterizer2D.Rasterizer2D_pixels[var34++] = var38; } else { - ++var34; // L: 1008 + ++var34; } - var35 += var27; // L: 1009 - ++var37; // L: 1005 + var35 += var27; + ++var37; } } - ++var33; // L: 991 + ++var33; var31 += var27; } - } else if (var26 < 0) { // L: 1013 + } else if (var26 < 0) { for (var33 = var22; var33 < 0; var23 += Rasterizer2D.Rasterizer2D_width) { - var34 = var23; // L: 1015 - var35 = (var28 * var27 >> 4) + var30; // L: 1016 - var36 = (var28 * var26 >> 4) + var31; // L: 1017 - var37 = var20; // L: 1018 - if (var35 < 0) { // L: 1019 - var32 = (var27 - 1 - var35) / var27; // L: 1020 - var37 = var20 + var32; // L: 1021 - var35 += var27 * var32; // L: 1022 - var36 += var26 * var32; // L: 1023 - var34 = var23 + var32; // L: 1024 + var34 = var23; + var35 = (var28 * var27 >> 4) + var30; + var36 = (var28 * var26 >> 4) + var31; + var37 = var20; + if (var35 < 0) { + var32 = (var27 - 1 - var35) / var27; + var37 = var20 + var32; + var35 += var27 * var32; + var36 += var26 * var32; + var34 = var23 + var32; } - if ((var32 = (var35 + 1 - (this.subWidth << 12) - var27) / var27) > var37) { // L: 1026 + if ((var32 = (var35 + 1 - (this.subWidth << 12) - var27) / var27) > var37) { var37 = var32; } - if ((var32 = var36 - (this.subHeight << 12)) >= 0) { // L: 1027 - var32 = (var26 - var32) / var26; // L: 1028 - var37 += var32; // L: 1029 - var35 += var27 * var32; // L: 1030 - var36 += var26 * var32; // L: 1031 - var34 += var32; // L: 1032 + if ((var32 = var36 - (this.subHeight << 12)) >= 0) { + var32 = (var26 - var32) / var26; + var37 += var32; + var35 += var27 * var32; + var36 += var26 * var32; + var34 += var32; } - if ((var32 = (var36 - var26) / var26) > var37) { // L: 1034 + if ((var32 = (var36 - var26) / var26) > var37) { var37 = var32; } while (var37 < 0) { - var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; // L: 1036 - if (var38 != 0) { // L: 1037 + var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; + if (var38 != 0) { Rasterizer2D.Rasterizer2D_pixels[var34++] = var38; } else { - ++var34; // L: 1038 + ++var34; } - var35 += var27; // L: 1039 - var36 += var26; // L: 1040 - ++var37; // L: 1035 + var35 += var27; + var36 += var26; + ++var37; } - ++var33; // L: 1014 + ++var33; var30 -= var26; var31 += var27; } } else { for (var33 = var22; var33 < 0; var23 += Rasterizer2D.Rasterizer2D_width) { - var34 = var23; // L: 1046 - var35 = (var28 * var27 >> 4) + var30; // L: 1047 - var36 = (var28 * var26 >> 4) + var31; // L: 1048 - var37 = var20; // L: 1049 - if (var35 < 0) { // L: 1050 - var32 = (var27 - 1 - var35) / var27; // L: 1051 - var37 = var20 + var32; // L: 1052 - var35 += var27 * var32; // L: 1053 - var36 += var26 * var32; // L: 1054 - var34 = var23 + var32; // L: 1055 + var34 = var23; + var35 = (var28 * var27 >> 4) + var30; + var36 = (var28 * var26 >> 4) + var31; + var37 = var20; + if (var35 < 0) { + var32 = (var27 - 1 - var35) / var27; + var37 = var20 + var32; + var35 += var27 * var32; + var36 += var26 * var32; + var34 = var23 + var32; } - if ((var32 = (var35 + 1 - (this.subWidth << 12) - var27) / var27) > var37) { // L: 1057 + if ((var32 = (var35 + 1 - (this.subWidth << 12) - var27) / var27) > var37) { var37 = var32; } - if (var36 < 0) { // L: 1058 - var32 = (var26 - 1 - var36) / var26; // L: 1059 - var37 += var32; // L: 1060 - var35 += var27 * var32; // L: 1061 - var36 += var26 * var32; // L: 1062 - var34 += var32; // L: 1063 + if (var36 < 0) { + var32 = (var26 - 1 - var36) / var26; + var37 += var32; + var35 += var27 * var32; + var36 += var26 * var32; + var34 += var32; } - if ((var32 = (var36 + 1 - (this.subHeight << 12) - var26) / var26) > var37) { // L: 1065 + if ((var32 = (var36 + 1 - (this.subHeight << 12) - var26) / var26) > var37) { var37 = var32; } while (var37 < 0) { - var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; // L: 1067 - if (var38 != 0) { // L: 1068 + var38 = this.pixels[(var35 >> 12) + (var36 >> 12) * this.subWidth]; + if (var38 != 0) { Rasterizer2D.Rasterizer2D_pixels[var34++] = var38; } else { - ++var34; // L: 1069 + ++var34; } - var35 += var27; // L: 1070 - var36 += var26; // L: 1071 - ++var37; // L: 1066 + var35 += var27; + var36 += var26; + ++var37; } - ++var33; // L: 1045 + ++var33; var30 -= var26; var31 += var27; } @@ -1255,405 +1255,405 @@ public final class Sprite extends Rasterizer2D { } } } - } // L: 1076 + } - @ObfuscatedName("ak") + @ObfuscatedName("ah") @Export("drawScaledWorldmap") public void drawScaledWorldmap(int var1, int var2, int var3, int var4) { - if (var3 <= this.width && var4 <= this.height) { // L: 1079 - int var5 = var3 * this.xOffset / this.width + var1; // L: 1082 - int var6 = (var3 * (this.xOffset + this.subWidth) + this.width - 1) / this.width + var1; // L: 1083 - int var7 = var2 + var4 * this.yOffset / this.height; // L: 1084 - int var8 = var2 + (this.height + (this.yOffset + this.subHeight) * var4 - 1) / this.height; // L: 1085 - if (var5 < Rasterizer2D.Rasterizer2D_xClipStart) { // L: 1086 + if (var3 <= this.width && var4 <= this.height) { + int var5 = var3 * this.xOffset / this.width + var1; + int var6 = (var3 * (this.xOffset + this.subWidth) + this.width - 1) / this.width + var1; + int var7 = var2 + var4 * this.yOffset / this.height; + int var8 = var2 + (this.height + (this.yOffset + this.subHeight) * var4 - 1) / this.height; + if (var5 < Rasterizer2D.Rasterizer2D_xClipStart) { var5 = Rasterizer2D.Rasterizer2D_xClipStart; } - if (var6 > Rasterizer2D.Rasterizer2D_xClipEnd) { // L: 1087 + if (var6 > Rasterizer2D.Rasterizer2D_xClipEnd) { var6 = Rasterizer2D.Rasterizer2D_xClipEnd; } - if (var7 < Rasterizer2D.Rasterizer2D_yClipStart) { // L: 1088 + if (var7 < Rasterizer2D.Rasterizer2D_yClipStart) { var7 = Rasterizer2D.Rasterizer2D_yClipStart; } - if (var8 > Rasterizer2D.Rasterizer2D_yClipEnd) { // L: 1089 + if (var8 > Rasterizer2D.Rasterizer2D_yClipEnd) { var8 = Rasterizer2D.Rasterizer2D_yClipEnd; } - if (var5 < var6 && var7 < var8) { // L: 1090 - int var9 = var5 + var7 * Rasterizer2D.Rasterizer2D_width; // L: 1091 - int var10 = Rasterizer2D.Rasterizer2D_width - (var6 - var5); // L: 1092 - if (var9 < Rasterizer2D.Rasterizer2D_pixels.length) { // L: 1093 - for (int var11 = var7; var11 < var8; ++var11) { // L: 1096 - for (int var12 = var5; var12 < var6; ++var12) { // L: 1097 - int var13 = var12 - var1 << 4; // L: 1098 - int var14 = var11 - var2 << 4; // L: 1099 - int var15 = var13 * this.width / var3 - (this.xOffset << 4); // L: 1100 - int var16 = (var13 + 16) * this.width / var3 - (this.xOffset << 4); // L: 1101 - int var17 = var14 * this.height / var4 - (this.yOffset << 4); // L: 1102 - int var18 = (var14 + 16) * this.height / var4 - (this.yOffset << 4); // L: 1103 - int var19 = (var16 - var15) * (var18 - var17) >> 1; // L: 1104 - if (var19 != 0) { // L: 1105 - if (var15 < 0) { // L: 1106 + if (var5 < var6 && var7 < var8) { + int var9 = var5 + var7 * Rasterizer2D.Rasterizer2D_width; + int var10 = Rasterizer2D.Rasterizer2D_width - (var6 - var5); + if (var9 < Rasterizer2D.Rasterizer2D_pixels.length) { + for (int var11 = var7; var11 < var8; ++var11) { + for (int var12 = var5; var12 < var6; ++var12) { + int var13 = var12 - var1 << 4; + int var14 = var11 - var2 << 4; + int var15 = var13 * this.width / var3 - (this.xOffset << 4); + int var16 = (var13 + 16) * this.width / var3 - (this.xOffset << 4); + int var17 = var14 * this.height / var4 - (this.yOffset << 4); + int var18 = (var14 + 16) * this.height / var4 - (this.yOffset << 4); + int var19 = (var16 - var15) * (var18 - var17) >> 1; + if (var19 != 0) { + if (var15 < 0) { var15 = 0; } - if (var16 >= this.subWidth << 4) { // L: 1107 + if (var16 >= this.subWidth << 4) { var16 = this.subWidth << 4; } - if (var17 < 0) { // L: 1108 + if (var17 < 0) { var17 = 0; } - if (var18 >= this.subHeight << 4) { // L: 1109 + if (var18 >= this.subHeight << 4) { var18 = this.subHeight << 4; } - --var16; // L: 1110 - --var18; // L: 1111 - int var20 = 16 - (var15 & 15); // L: 1112 - int var21 = (var16 & 15) + 1; // L: 1113 - int var22 = 16 - (var17 & 15); // L: 1114 - int var23 = (var18 & 15) + 1; // L: 1115 - var15 >>= 4; // L: 1116 - var16 >>= 4; // L: 1117 - var17 >>= 4; // L: 1118 - var18 >>= 4; // L: 1119 - int var24 = 0; // L: 1120 - int var25 = 0; // L: 1121 - int var26 = 0; // L: 1122 - int var27 = 0; // L: 1123 + --var16; + --var18; + int var20 = 16 - (var15 & 15); + int var21 = (var16 & 15) + 1; + int var22 = 16 - (var17 & 15); + int var23 = (var18 & 15) + 1; + var15 >>= 4; + var16 >>= 4; + var17 >>= 4; + var18 >>= 4; + int var24 = 0; + int var25 = 0; + int var26 = 0; + int var27 = 0; int var28; - for (var28 = var17; var28 <= var18; ++var28) { // L: 1124 - int var29 = 16; // L: 1125 - if (var28 == var17) { // L: 1126 + for (var28 = var17; var28 <= var18; ++var28) { + int var29 = 16; + if (var28 == var17) { var29 = var22; } - if (var28 == var18) { // L: 1127 + if (var28 == var18) { var29 = var23; } - for (int var30 = var15; var30 <= var16; ++var30) { // L: 1128 - int var31 = this.pixels[var30 + var28 * this.subWidth]; // L: 1129 - if (var31 != 0) { // L: 1130 + for (int var30 = var15; var30 <= var16; ++var30) { + int var31 = this.pixels[var30 + var28 * this.subWidth]; + if (var31 != 0) { int var32; - if (var30 == var15) { // L: 1132 + if (var30 == var15) { var32 = var29 * var20; - } else if (var30 == var16) { // L: 1133 + } else if (var30 == var16) { var32 = var29 * var21; } else { - var32 = var29 << 4; // L: 1134 + var32 = var29 << 4; } - var27 += var32; // L: 1135 - var24 += var32 * (var31 >> 16 & 255); // L: 1136 - var25 += var32 * (var31 >> 8 & 255); // L: 1137 - var26 += (var31 & 255) * var32; // L: 1138 + var27 += var32; + var24 += var32 * (var31 >> 16 & 255); + var25 += var32 * (var31 >> 8 & 255); + var26 += (var31 & 255) * var32; } } } - if (var27 >= var19) { // L: 1142 - var28 = var26 / var27 + (var24 / var27 << 16) + (var25 / var27 << 8); // L: 1143 - if (var28 == 0) { // L: 1144 + if (var27 >= var19) { + var28 = var26 / var27 + (var24 / var27 << 16) + (var25 / var27 << 8); + if (var28 == 0) { var28 = 1; } - Rasterizer2D.Rasterizer2D_pixels[var9] = var28; // L: 1145 + Rasterizer2D.Rasterizer2D_pixels[var9] = var28; } - ++var9; // L: 1147 + ++var9; } } - var9 += var10; // L: 1149 + var9 += var10; } } } } else { - throw new IllegalArgumentException(); // L: 1080 + throw new IllegalArgumentException(); } - } // L: 1094 1151 + } - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("Sprite_draw") static void Sprite_draw(int[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7) { - for (int var8 = -var5; var8 < 0; ++var8) { // L: 185 + for (int var8 = -var5; var8 < 0; ++var8) { int var9; - for (var9 = var3 + var4 - 3; var3 < var9; var0[var3++] = var1[var2++]) { // L: 186 187 191 - var0[var3++] = var1[var2++]; // L: 188 - var0[var3++] = var1[var2++]; // L: 189 - var0[var3++] = var1[var2++]; // L: 190 + for (var9 = var3 + var4 - 3; var3 < var9; var0[var3++] = var1[var2++]) { + var0[var3++] = var1[var2++]; + var0[var3++] = var1[var2++]; + var0[var3++] = var1[var2++]; } - for (var9 += 3; var3 < var9; var0[var3++] = var1[var2++]) { // L: 193 194 195 + for (var9 += 3; var3 < var9; var0[var3++] = var1[var2++]) { } - var3 += var6; // L: 197 - var2 += var7; // L: 198 + var3 += var6; + var2 += var7; } - } // L: 200 + } - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("Sprite_drawTransBg") static void Sprite_drawTransBg(int[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { - int var9 = -(var5 >> 2); // L: 239 - var5 = -(var5 & 3); // L: 240 + int var9 = -(var5 >> 2); + var5 = -(var5 & 3); - for (int var10 = -var6; var10 < 0; ++var10) { // L: 241 + for (int var10 = -var6; var10 < 0; ++var10) { int var11; - for (var11 = var9; var11 < 0; ++var11) { // L: 242 - var2 = var1[var3++]; // L: 243 - if (var2 != 0) { // L: 244 + for (var11 = var9; var11 < 0; ++var11) { + var2 = var1[var3++]; + if (var2 != 0) { var0[var4++] = var2; } else { - ++var4; // L: 245 + ++var4; } - var2 = var1[var3++]; // L: 246 - if (var2 != 0) { // L: 247 + var2 = var1[var3++]; + if (var2 != 0) { var0[var4++] = var2; } else { - ++var4; // L: 248 + ++var4; } - var2 = var1[var3++]; // L: 249 - if (var2 != 0) { // L: 250 + var2 = var1[var3++]; + if (var2 != 0) { var0[var4++] = var2; } else { - ++var4; // L: 251 + ++var4; } - var2 = var1[var3++]; // L: 252 - if (var2 != 0) { // L: 253 + var2 = var1[var3++]; + if (var2 != 0) { var0[var4++] = var2; } else { - ++var4; // L: 254 + ++var4; } } - for (var11 = var5; var11 < 0; ++var11) { // L: 256 - var2 = var1[var3++]; // L: 257 - if (var2 != 0) { // L: 258 + for (var11 = var5; var11 < 0; ++var11) { + var2 = var1[var3++]; + if (var2 != 0) { var0[var4++] = var2; } else { - ++var4; // L: 259 + ++var4; } } - var4 += var7; // L: 261 - var3 += var8; // L: 262 + var4 += var7; + var3 += var8; } - } // L: 264 + } - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("Sprite_drawScaled") static void Sprite_drawScaled(int[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11) { - int var12 = var3; // L: 313 + int var12 = var3; - for (int var13 = -var8; var13 < 0; ++var13) { // L: 314 - int var14 = var11 * (var4 >> 16); // L: 315 + for (int var13 = -var8; var13 < 0; ++var13) { + int var14 = var11 * (var4 >> 16); - for (int var15 = -var7; var15 < 0; ++var15) { // L: 316 - var2 = var1[(var3 >> 16) + var14]; // L: 317 - if (var2 != 0) { // L: 318 + for (int var15 = -var7; var15 < 0; ++var15) { + var2 = var1[(var3 >> 16) + var14]; + if (var2 != 0) { var0[var5++] = var2; } else { - ++var5; // L: 319 + ++var5; } - var3 += var9; // L: 320 + var3 += var9; } - var4 += var10; // L: 322 - var3 = var12; // L: 323 - var5 += var6; // L: 324 + var4 += var10; + var3 = var12; + var5 += var6; } - } // L: 326 + } @ObfuscatedName("y") @Export("Sprite_drawTransOverlay") static void Sprite_drawTransOverlay(int[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10) { - int var11 = 256 - var9; // L: 369 - int var12 = (var10 & 16711935) * var11 & -16711936; // L: 370 - int var13 = (var10 & 65280) * var11 & 16711680; // L: 371 - var10 = (var12 | var13) >>> 8; // L: 372 + int var11 = 256 - var9; + int var12 = (var10 & 16711935) * var11 & -16711936; + int var13 = (var10 & 65280) * var11 & 16711680; + var10 = (var12 | var13) >>> 8; - for (int var14 = -var6; var14 < 0; ++var14) { // L: 373 - for (int var15 = -var5; var15 < 0; ++var15) { // L: 374 - var2 = var1[var3++]; // L: 375 - if (var2 != 0) { // L: 376 - var12 = var9 * (var2 & 16711935) & -16711936; // L: 377 - var13 = (var2 & 65280) * var9 & 16711680; // L: 378 - var0[var4++] = var10 + ((var12 | var13) >>> 8); // L: 379 + for (int var14 = -var6; var14 < 0; ++var14) { + for (int var15 = -var5; var15 < 0; ++var15) { + var2 = var1[var3++]; + if (var2 != 0) { + var12 = var9 * (var2 & 16711935) & -16711936; + var13 = (var2 & 65280) * var9 & 16711680; + var0[var4++] = var10 + ((var12 | var13) >>> 8); } else { - ++var4; // L: 381 + ++var4; } } - var4 += var7; // L: 383 - var3 += var8; // L: 384 + var4 += var7; + var3 += var8; } - } // L: 386 + } - @ObfuscatedName("j") + @ObfuscatedName("q") @Export("Sprite_drawTransparent") static void Sprite_drawTransparent(int[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9) { - int var10 = 256 - var9; // L: 425 + int var10 = 256 - var9; - for (int var11 = -var6; var11 < 0; ++var11) { // L: 426 - for (int var12 = -var5; var12 < 0; ++var12) { // L: 427 - var2 = var1[var3++]; // L: 428 - if (var2 != 0) { // L: 429 - int var13 = var0[var4]; // L: 430 - var0[var4++] = ((var13 & 16711935) * var10 + var9 * (var2 & 16711935) & -16711936) + ((var2 & 65280) * var9 + var10 * (var13 & 65280) & 16711680) >> 8; // L: 431 + for (int var11 = -var6; var11 < 0; ++var11) { + for (int var12 = -var5; var12 < 0; ++var12) { + var2 = var1[var3++]; + if (var2 != 0) { + int var13 = var0[var4]; + var0[var4++] = ((var13 & 16711935) * var10 + var9 * (var2 & 16711935) & -16711936) + ((var2 & 65280) * var9 + var10 * (var13 & 65280) & 16711680) >> 8; } else { - ++var4; // L: 433 + ++var4; } } - var4 += var7; // L: 435 - var3 += var8; // L: 436 + var4 += var7; + var3 += var8; } - } // L: 438 + } - @ObfuscatedName("a") + @ObfuscatedName("o") @Export("Sprite_drawTransScaled") static void Sprite_drawTransScaled(int[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12) { - int var13 = 256 - var12; // L: 487 - int var14 = var3; // L: 488 + int var13 = 256 - var12; + int var14 = var3; - for (int var15 = -var8; var15 < 0; ++var15) { // L: 489 - int var16 = var11 * (var4 >> 16); // L: 490 + for (int var15 = -var8; var15 < 0; ++var15) { + int var16 = var11 * (var4 >> 16); - for (int var17 = -var7; var17 < 0; ++var17) { // L: 491 - var2 = var1[(var3 >> 16) + var16]; // L: 492 - if (var2 != 0) { // L: 493 - int var18 = var0[var5]; // L: 494 - var0[var5++] = ((var2 & 65280) * var12 + var13 * (var18 & 65280) & 16711680) + ((var18 & 16711935) * var13 + var12 * (var2 & 16711935) & -16711936) >> 8; // L: 495 + for (int var17 = -var7; var17 < 0; ++var17) { + var2 = var1[(var3 >> 16) + var16]; + if (var2 != 0) { + int var18 = var0[var5]; + var0[var5++] = ((var2 & 65280) * var12 + var13 * (var18 & 65280) & 16711680) + ((var18 & 16711935) * var13 + var12 * (var2 & 16711935) & -16711936) >> 8; } else { - ++var5; // L: 497 + ++var5; } - var3 += var9; // L: 498 + var3 += var9; } - var4 += var10; // L: 500 - var3 = var14; // L: 501 - var5 += var6; // L: 502 + var4 += var10; + var3 = var14; + var5 += var6; } - } // L: 504 + } - @ObfuscatedName("h") - static void method6291(int var0, int var1, int var2, int[] var3, int[] var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12) { - for (var8 = -var10; var8 < 0; ++var8) { // L: 544 - for (var6 = -var9; var6 < 0; ++var6) { // L: 545 - var0 = var4[var5++]; // L: 546 - if (var0 != 0) { // L: 547 - var1 = var3[var7]; // L: 548 - var2 = var0 + var1; // L: 549 - var0 = (var0 & 16711935) + (var1 & 16711935); // L: 550 - var1 = (var0 & 16777472) + (var2 - var0 & 65536); // L: 551 - var3[var7++] = var2 - var1 | var1 - (var1 >>> 8); // L: 552 + @ObfuscatedName("aj") + static void method6253(int var0, int var1, int var2, int[] var3, int[] var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12) { + for (var8 = -var10; var8 < 0; ++var8) { + for (var6 = -var9; var6 < 0; ++var6) { + var0 = var4[var5++]; + if (var0 != 0) { + var1 = var3[var7]; + var2 = var0 + var1; + var0 = (var0 & 16711935) + (var1 & 16711935); + var1 = (var0 & 16777472) + (var2 - var0 & 65536); + var3[var7++] = var2 - var1 | var1 - (var1 >>> 8); } else { - ++var7; // L: 554 + ++var7; } } - var7 += var11; // L: 556 - var5 += var12; // L: 557 + var7 += var11; + var5 += var12; } - } // L: 559 + } - @ObfuscatedName("ab") - static void method6297(int var0, int var1, int var2, int[] var3, int[] var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13) { - for (var8 = -var10; var8 < 0; ++var8) { // L: 562 - for (var6 = -var9; var6 < 0; ++var6) { // L: 563 - var0 = var4[var5++]; // L: 564 - if (var0 != 0) { // L: 565 - var1 = var13 * (var0 & 16711935); // L: 566 - var0 = (var1 & -16711936) + (var13 * var0 - var1 & 16711680) >>> 8; // L: 567 - var1 = var3[var7]; // L: 568 - var2 = var0 + var1; // L: 569 - var0 = (var0 & 16711935) + (var1 & 16711935); // L: 570 - var1 = (var0 & 16777472) + (var2 - var0 & 65536); // L: 571 - var3[var7++] = var2 - var1 | var1 - (var1 >>> 8); // L: 572 + @ObfuscatedName("ax") + static void method6183(int var0, int var1, int var2, int[] var3, int[] var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13) { + for (var8 = -var10; var8 < 0; ++var8) { + for (var6 = -var9; var6 < 0; ++var6) { + var0 = var4[var5++]; + if (var0 != 0) { + var1 = var13 * (var0 & 16711935); + var0 = (var1 & -16711936) + (var13 * var0 - var1 & 16711680) >>> 8; + var1 = var3[var7]; + var2 = var0 + var1; + var0 = (var0 & 16711935) + (var1 & 16711935); + var1 = (var0 & 16777472) + (var2 - var0 & 65536); + var3[var7++] = var2 - var1 | var1 - (var1 >>> 8); } else { - ++var7; // L: 574 + ++var7; } } - var7 += var11; // L: 576 - var5 += var12; // L: 577 + var7 += var11; + var5 += var12; } - } // L: 579 + } - @ObfuscatedName("ao") - static void method6285(int var0, int var1, int var2, int var3, int[] var4, int[] var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15) { - for (int var16 = var3; var8 < 0; ++var8) { // L: 629 630 - var7 = var15 * (var9 >> 16); // L: 631 + @ObfuscatedName("au") + static void method6250(int var0, int var1, int var2, int var3, int[] var4, int[] var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15) { + for (int var16 = var3; var8 < 0; ++var8) { + var7 = var15 * (var9 >> 16); - for (var6 = -var12; var6 < 0; ++var6) { // L: 632 - var0 = var4[(var3 >> 16) + var7]; // L: 633 - if (var0 != 0) { // L: 634 - var1 = var5[var10]; // L: 635 - var2 = var0 + var1; // L: 636 - var0 = (var0 & 16711935) + (var1 & 16711935); // L: 637 - var1 = (var0 & 16777472) + (var2 - var0 & 65536); // L: 638 - var5[var10++] = var2 - var1 | var1 - (var1 >>> 8); // L: 639 + for (var6 = -var12; var6 < 0; ++var6) { + var0 = var4[(var3 >> 16) + var7]; + if (var0 != 0) { + var1 = var5[var10]; + var2 = var0 + var1; + var0 = (var0 & 16711935) + (var1 & 16711935); + var1 = (var0 & 16777472) + (var2 - var0 & 65536); + var5[var10++] = var2 - var1 | var1 - (var1 >>> 8); } else { - ++var10; // L: 641 + ++var10; } - var3 += var13; // L: 642 + var3 += var13; } - var9 += var14; // L: 644 - var3 = var16; // L: 645 - var10 += var11; // L: 646 + var9 += var14; + var3 = var16; + var10 += var11; } - } // L: 648 + } - @ObfuscatedName("af") - static void method6345(int var0, int var1, int var2, int var3, int[] var4, int[] var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16) { - for (int var17 = var3; var8 < 0; ++var8) { // L: 651 652 - var7 = var15 * (var9 >> 16); // L: 653 + @ObfuscatedName("as") + static void method6249(int var0, int var1, int var2, int var3, int[] var4, int[] var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16) { + for (int var17 = var3; var8 < 0; ++var8) { + var7 = var15 * (var9 >> 16); - for (var6 = -var12; var6 < 0; ++var6) { // L: 654 - var0 = var4[(var3 >> 16) + var7]; // L: 655 - if (var0 != 0) { // L: 656 - var1 = (var0 & 16711935) * var16; // L: 657 - var0 = (var1 & -16711936) + (var0 * var16 - var1 & 16711680) >>> 8; // L: 658 - var1 = var5[var10]; // L: 659 - var2 = var0 + var1; // L: 660 - var0 = (var0 & 16711935) + (var1 & 16711935); // L: 661 - var1 = (var0 & 16777472) + (var2 - var0 & 65536); // L: 662 - var5[var10++] = var2 - var1 | var1 - (var1 >>> 8); // L: 663 + for (var6 = -var12; var6 < 0; ++var6) { + var0 = var4[(var3 >> 16) + var7]; + if (var0 != 0) { + var1 = (var0 & 16711935) * var16; + var0 = (var1 & -16711936) + (var0 * var16 - var1 & 16711680) >>> 8; + var1 = var5[var10]; + var2 = var0 + var1; + var0 = (var0 & 16711935) + (var1 & 16711935); + var1 = (var0 & 16777472) + (var2 - var0 & 65536); + var5[var10++] = var2 - var1 | var1 - (var1 >>> 8); } else { - ++var10; // L: 665 + ++var10; } - var3 += var13; // L: 666 + var3 += var13; } - var9 += var14; // L: 668 - var3 = var17; // L: 669 - var10 += var11; // L: 670 + var9 += var14; + var3 = var17; + var10 += var11; } - } // L: 672 + } } diff --git a/runescape-client/src/main/java/SpriteMask.java b/runescape-client/src/main/java/SpriteMask.java index 4d77088da8..7e75e45a46 100644 --- a/runescape-client/src/main/java/SpriteMask.java +++ b/runescape-client/src/main/java/SpriteMask.java @@ -3,433 +3,55 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; @ObfuscatedName("ho") @Implements("SpriteMask") public class SpriteMask extends DualNode { - @ObfuscatedName("rl") + @ObfuscatedName("e") @ObfuscatedGetter( - intValue = -1921410783 + intValue = -541304415 ) - static int field2542; - @ObfuscatedName("hh") - @ObfuscatedSignature( - descriptor = "[Lle;" - ) - @Export("modIconSprites") - static IndexedSprite[] modIconSprites; - @ObfuscatedName("f") + static int field2535; + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 387841137 + intValue = -1788605819 ) @Export("width") public final int width; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 1259434667 + intValue = -4289719 ) @Export("height") public final int height; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("xWidths") public final int[] xWidths; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("xStarts") public final int[] xStarts; SpriteMask(int var1, int var2, int[] var3, int[] var4, int var5) { - this.width = var1; // L: 735 - this.height = var2; // L: 736 - this.xWidths = var3; // L: 737 - this.xStarts = var4; // L: 738 - } // L: 739 + this.width = var1; + this.height = var2; + this.xWidths = var3; + this.xStarts = var4; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "92" + descriptor = "(IIS)Z", + garbageValue = "20494" ) @Export("contains") public boolean contains(int var1, int var2) { - if (var2 >= 0 && var2 < this.xStarts.length) { // L: 742 - int var3 = this.xStarts[var2]; // L: 743 - if (var1 >= var3 && var1 <= var3 + this.xWidths[var2]) { // L: 744 + if (var2 >= 0 && var2 < this.xStarts.length) { + int var3 = this.xStarts[var2]; + if (var1 >= var3 && var1 <= var3 + this.xWidths[var2]) { return true; } } - return false; // L: 746 - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "-239225469" - ) - static int method4119(int var0, Script var1, boolean var2) { - if (var0 == ScriptOpcodes.FRIEND_COUNT) { // L: 1913 - if (WorldMapLabelSize.friendSystem.field1097 == 0) { // L: 1914 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -2; - } else if (WorldMapLabelSize.friendSystem.field1097 == 1) { // L: 1915 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = WorldMapLabelSize.friendSystem.friendsList.getSize(); // L: 1916 - } - - return 1; // L: 1917 - } else { - int var3; - if (var0 == ScriptOpcodes.FRIEND_GETNAME) { - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1920 - if (WorldMapLabelSize.friendSystem.method1958() && var3 >= 0 && var3 < WorldMapLabelSize.friendSystem.friendsList.getSize()) { // L: 1921 - Friend var8 = (Friend)WorldMapLabelSize.friendSystem.friendsList.get(var3); // L: 1922 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var8.getName(); // L: 1923 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var8.getPreviousName(); // L: 1924 - } else { - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 1927 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 1928 - } - - return 1; // L: 1930 - } else if (var0 == ScriptOpcodes.FRIEND_GETWORLD) { - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1933 - if (WorldMapLabelSize.friendSystem.method1958() && var3 >= 0 && var3 < WorldMapLabelSize.friendSystem.friendsList.getSize()) { // L: 1934 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = ((Buddy)WorldMapLabelSize.friendSystem.friendsList.get(var3)).world; // L: 1935 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1937 - } - - return 1; // L: 1938 - } else if (var0 == ScriptOpcodes.FRIEND_GETRANK) { - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1941 - if (WorldMapLabelSize.friendSystem.method1958() && var3 >= 0 && var3 < WorldMapLabelSize.friendSystem.friendsList.getSize()) { // L: 1942 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = ((Buddy)WorldMapLabelSize.friendSystem.friendsList.get(var3)).rank; // L: 1943 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1945 - } - - return 1; // L: 1946 - } else { - String var5; - if (var0 == ScriptOpcodes.FRIEND_SETRANK) { - var5 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 1949 - int var6 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1950 - GameShell.method1138(var5, var6); // L: 1951 - return 1; // L: 1952 - } else if (var0 == ScriptOpcodes.FRIEND_ADD) { - var5 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 1955 - WorldMapLabelSize.friendSystem.addFriend(var5); // L: 1956 - return 1; // L: 1957 - } else if (var0 == ScriptOpcodes.FRIEND_DEL) { - var5 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 1960 - WorldMapLabelSize.friendSystem.removeFriend(var5); // L: 1961 - return 1; // L: 1962 - } else if (var0 == ScriptOpcodes.IGNORE_ADD) { - var5 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 1965 - WorldMapLabelSize.friendSystem.addIgnore(var5); // L: 1966 - return 1; // L: 1967 - } else if (var0 == ScriptOpcodes.IGNORE_DEL) { - var5 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 1970 - WorldMapLabelSize.friendSystem.removeIgnore(var5); // L: 1971 - return 1; // L: 1972 - } else if (var0 == ScriptOpcodes.FRIEND_TEST) { - var5 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 1975 - var5 = GrandExchangeOfferUnitPriceComparator.method218(var5); // L: 1976 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = WorldMapLabelSize.friendSystem.isFriended(new Username(var5, UserComparator4.loginType), false) ? 1 : 0; // L: 1977 - return 1; // L: 1978 - } else if (var0 == ScriptOpcodes.CLAN_GETCHATDISPLAYNAME) { - if (DevicePcmPlayerProvider.clanChat != null) { // L: 1981 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = DevicePcmPlayerProvider.clanChat.name; // L: 1982 - } else { - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 1984 - } - - return 1; // L: 1985 - } else if (var0 == ScriptOpcodes.CLAN_GETCHATCOUNT) { - if (DevicePcmPlayerProvider.clanChat != null) { // L: 1988 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = DevicePcmPlayerProvider.clanChat.getSize(); // L: 1989 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1991 - } - - return 1; // L: 1992 - } else if (var0 == ScriptOpcodes.CLAN_GETCHATUSERNAME) { - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1995 - if (DevicePcmPlayerProvider.clanChat != null && var3 < DevicePcmPlayerProvider.clanChat.getSize()) { // L: 1996 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = DevicePcmPlayerProvider.clanChat.get(var3).getUsername().getName(); // L: 1997 - } else { - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 1999 - } - - return 1; // L: 2000 - } else if (var0 == ScriptOpcodes.CLAN_GETCHATUSERWORLD) { - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2003 - if (DevicePcmPlayerProvider.clanChat != null && var3 < DevicePcmPlayerProvider.clanChat.getSize()) { // L: 2004 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = ((Buddy)DevicePcmPlayerProvider.clanChat.get(var3)).getWorld(); // L: 2005 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 2007 - } - - return 1; // L: 2008 - } else if (var0 == ScriptOpcodes.CLAN_GETCHATUSERRANK) { - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2011 - if (DevicePcmPlayerProvider.clanChat != null && var3 < DevicePcmPlayerProvider.clanChat.getSize()) { // L: 2012 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = ((Buddy)DevicePcmPlayerProvider.clanChat.get(var3)).rank; // L: 2013 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 2015 - } - - return 1; // L: 2016 - } else if (var0 == ScriptOpcodes.CLAN_GETCHATMINKICK) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = DevicePcmPlayerProvider.clanChat != null ? DevicePcmPlayerProvider.clanChat.minKick : 0; // L: 2019 - return 1; // L: 2020 - } else if (var0 == ScriptOpcodes.CLAN_KICKUSER) { - var5 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2023 - ScriptFrame.clanKickUser(var5); // L: 2024 - return 1; // L: 2025 - } else if (var0 == ScriptOpcodes.CLAN_GETCHATRANK) { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = DevicePcmPlayerProvider.clanChat != null ? DevicePcmPlayerProvider.clanChat.rank * 1309828391 * 1444461207 : 0; // L: 2028 - return 1; // L: 2029 - } else if (var0 == ScriptOpcodes.CLAN_JOINCHAT) { - var5 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2032 - Message.Clan_joinChat(var5); // L: 2033 - return 1; // L: 2034 - } else if (var0 == ScriptOpcodes.CLAN_LEAVECHAT) { - class1.Clan_leaveChat(); // L: 2037 - return 1; // L: 2038 - } else if (var0 == ScriptOpcodes.IGNORE_COUNT) { - if (!WorldMapLabelSize.friendSystem.method1958()) { // L: 2041 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = WorldMapLabelSize.friendSystem.ignoreList.getSize(); // L: 2042 - } - - return 1; // L: 2043 - } else if (var0 == ScriptOpcodes.IGNORE_GETNAME) { - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2046 - if (WorldMapLabelSize.friendSystem.method1958() && var3 >= 0 && var3 < WorldMapLabelSize.friendSystem.ignoreList.getSize()) { // L: 2047 - Ignored var4 = (Ignored)WorldMapLabelSize.friendSystem.ignoreList.get(var3); // L: 2048 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var4.getName(); // L: 2049 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var4.getPreviousName(); // L: 2050 - } else { - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 2053 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 2054 - } - - return 1; // L: 2056 - } else if (var0 == ScriptOpcodes.IGNORE_TEST) { - var5 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2059 - var5 = GrandExchangeOfferUnitPriceComparator.method218(var5); // L: 2060 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = WorldMapLabelSize.friendSystem.isIgnored(new Username(var5, UserComparator4.loginType)) ? 1 : 0; // L: 2061 - return 1; // L: 2062 - } else if (var0 == ScriptOpcodes.CLAN_ISSELF) { - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2065 - if (DevicePcmPlayerProvider.clanChat != null && var3 < DevicePcmPlayerProvider.clanChat.getSize() && DevicePcmPlayerProvider.clanChat.get(var3).getUsername().equals(PlayerType.localPlayer.username)) { // L: 2066 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 1; // L: 2067 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 2069 - } - - return 1; // L: 2070 - } else if (var0 == ScriptOpcodes.CLAN_GETCHATOWNERNAME) { - if (DevicePcmPlayerProvider.clanChat != null && DevicePcmPlayerProvider.clanChat.owner != null) { // L: 2073 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = DevicePcmPlayerProvider.clanChat.owner; // L: 2074 - } else { - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 2076 - } - - return 1; // L: 2077 - } else if (var0 == ScriptOpcodes.CLAN_ISFRIEND) { - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2080 - if (DevicePcmPlayerProvider.clanChat != null && var3 < DevicePcmPlayerProvider.clanChat.getSize() && ((ClanMate)DevicePcmPlayerProvider.clanChat.get(var3)).isFriend()) { // L: 2081 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 1; // L: 2082 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 2084 - } - - return 1; // L: 2085 - } else if (var0 != ScriptOpcodes.CLAN_ISIGNORE) { - if (var0 == 3628) { - WorldMapLabelSize.friendSystem.friendsList.removeComparator(); // L: 2096 - return 1; // L: 2097 - } else { - boolean var7; - if (var0 == 3629) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2100 - WorldMapLabelSize.friendSystem.friendsList.addComparator(new UserComparator1(var7)); // L: 2101 - return 1; // L: 2102 - } else if (var0 == 3630) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2105 - WorldMapLabelSize.friendSystem.friendsList.addComparator(new UserComparator2(var7)); // L: 2106 - return 1; // L: 2107 - } else if (var0 == 3631) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2110 - WorldMapLabelSize.friendSystem.friendsList.addComparator(new UserComparator3(var7)); // L: 2111 - return 1; // L: 2112 - } else if (var0 == 3632) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2115 - WorldMapLabelSize.friendSystem.friendsList.addComparator(new UserComparator4(var7)); // L: 2116 - return 1; // L: 2117 - } else if (var0 == 3633) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2120 - WorldMapLabelSize.friendSystem.friendsList.addComparator(new UserComparator5(var7)); // L: 2121 - return 1; // L: 2122 - } else if (var0 == 3634) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2125 - WorldMapLabelSize.friendSystem.friendsList.addComparator(new UserComparator6(var7)); // L: 2126 - return 1; // L: 2127 - } else if (var0 == 3635) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2130 - WorldMapLabelSize.friendSystem.friendsList.addComparator(new UserComparator7(var7)); // L: 2131 - return 1; // L: 2132 - } else if (var0 == 3636) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2135 - WorldMapLabelSize.friendSystem.friendsList.addComparator(new UserComparator8(var7)); // L: 2136 - return 1; // L: 2137 - } else if (var0 == 3637) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2140 - WorldMapLabelSize.friendSystem.friendsList.addComparator(new UserComparator9(var7)); // L: 2141 - return 1; // L: 2142 - } else if (var0 == 3638) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2145 - WorldMapLabelSize.friendSystem.friendsList.addComparator(new UserComparator10(var7)); // L: 2146 - return 1; // L: 2147 - } else if (var0 == 3639) { - WorldMapLabelSize.friendSystem.friendsList.sort(); // L: 2150 - return 1; // L: 2151 - } else if (var0 == 3640) { - WorldMapLabelSize.friendSystem.ignoreList.removeComparator(); // L: 2154 - return 1; // L: 2155 - } else if (var0 == 3641) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2158 - WorldMapLabelSize.friendSystem.ignoreList.addComparator(new UserComparator1(var7)); // L: 2159 - return 1; // L: 2160 - } else if (var0 == 3642) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2163 - WorldMapLabelSize.friendSystem.ignoreList.addComparator(new UserComparator2(var7)); // L: 2164 - return 1; // L: 2165 - } else if (var0 == 3643) { - WorldMapLabelSize.friendSystem.ignoreList.sort(); // L: 2168 - return 1; // L: 2169 - } else if (var0 == 3644) { - if (DevicePcmPlayerProvider.clanChat != null) { // L: 2172 - DevicePcmPlayerProvider.clanChat.removeComparator(); // L: 2173 - } - - return 1; // L: 2175 - } else if (var0 == 3645) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2178 - if (DevicePcmPlayerProvider.clanChat != null) { // L: 2179 - DevicePcmPlayerProvider.clanChat.addComparator(new UserComparator1(var7)); // L: 2180 - } - - return 1; // L: 2182 - } else if (var0 == 3646) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2185 - if (DevicePcmPlayerProvider.clanChat != null) { // L: 2186 - DevicePcmPlayerProvider.clanChat.addComparator(new UserComparator2(var7)); // L: 2187 - } - - return 1; // L: 2189 - } else if (var0 == 3647) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2192 - if (DevicePcmPlayerProvider.clanChat != null) { // L: 2193 - DevicePcmPlayerProvider.clanChat.addComparator(new UserComparator3(var7)); // L: 2194 - } - - return 1; // L: 2196 - } else if (var0 == 3648) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2199 - if (DevicePcmPlayerProvider.clanChat != null) { // L: 2200 - DevicePcmPlayerProvider.clanChat.addComparator(new UserComparator4(var7)); // L: 2201 - } - - return 1; // L: 2203 - } else if (var0 == 3649) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2206 - if (DevicePcmPlayerProvider.clanChat != null) { // L: 2207 - DevicePcmPlayerProvider.clanChat.addComparator(new UserComparator5(var7)); // L: 2208 - } - - return 1; // L: 2210 - } else if (var0 == 3650) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2213 - if (DevicePcmPlayerProvider.clanChat != null) { // L: 2214 - DevicePcmPlayerProvider.clanChat.addComparator(new UserComparator6(var7)); // L: 2215 - } - - return 1; // L: 2217 - } else if (var0 == 3651) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2220 - if (DevicePcmPlayerProvider.clanChat != null) { // L: 2221 - DevicePcmPlayerProvider.clanChat.addComparator(new UserComparator7(var7)); // L: 2222 - } - - return 1; // L: 2224 - } else if (var0 == 3652) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2227 - if (DevicePcmPlayerProvider.clanChat != null) { // L: 2228 - DevicePcmPlayerProvider.clanChat.addComparator(new UserComparator8(var7)); // L: 2229 - } - - return 1; // L: 2231 - } else if (var0 == 3653) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2234 - if (DevicePcmPlayerProvider.clanChat != null) { // L: 2235 - DevicePcmPlayerProvider.clanChat.addComparator(new UserComparator9(var7)); // L: 2236 - } - - return 1; // L: 2238 - } else if (var0 == 3654) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2241 - if (DevicePcmPlayerProvider.clanChat != null) { // L: 2242 - DevicePcmPlayerProvider.clanChat.addComparator(new UserComparator10(var7)); // L: 2243 - } - - return 1; // L: 2245 - } else if (var0 == 3655) { - if (DevicePcmPlayerProvider.clanChat != null) { // L: 2248 - DevicePcmPlayerProvider.clanChat.sort(); // L: 2249 - } - - return 1; // L: 2251 - } else if (var0 == 3656) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2254 - WorldMapLabelSize.friendSystem.friendsList.addComparator(new BuddyRankComparator(var7)); // L: 2255 - return 1; // L: 2256 - } else if (var0 == 3657) { - var7 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2259 - if (DevicePcmPlayerProvider.clanChat != null) { // L: 2260 - DevicePcmPlayerProvider.clanChat.addComparator(new BuddyRankComparator(var7)); // L: 2261 - } - - return 1; // L: 2263 - } else { - return 2; // L: 2265 - } - } - } else { - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2088 - if (DevicePcmPlayerProvider.clanChat != null && var3 < DevicePcmPlayerProvider.clanChat.getSize() && ((ClanMate)DevicePcmPlayerProvider.clanChat.get(var3)).isIgnored()) { // L: 2089 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 1; // L: 2090 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 2092 - } - - return 1; // L: 2093 - } - } - } - } - - @ObfuscatedName("bf") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)I", - garbageValue = "1" - ) - @Export("stringCp1252NullTerminatedByteSize") - public static int stringCp1252NullTerminatedByteSize(String var0) { - return var0.length() + 1; // L: 115 + return false; } } diff --git a/runescape-client/src/main/java/Strings.java b/runescape-client/src/main/java/Strings.java index 4984f7ea82..455a93a583 100644 --- a/runescape-client/src/main/java/Strings.java +++ b/runescape-client/src/main/java/Strings.java @@ -1,72 +1,49 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("he") +@ObfuscatedName("hw") @Implements("Strings") public class Strings { - @ObfuscatedName("bg") - public static String field2839; - @ObfuscatedName("cj") - public static String field3046; - @ObfuscatedName("jv") + @ObfuscatedName("br") + public static String field3011; + @ObfuscatedName("cp") + public static String field2877; + @ObfuscatedName("ji") + public static String field3053; + @ObfuscatedName("jn") public static String field3054; - @ObfuscatedName("js") + @ObfuscatedName("jp") public static String field3055; - @ObfuscatedName("ja") - public static String field3056; static { - field2839 = "Please visit the support page for assistance."; // L: 60 - field3046 = "Please visit the support page for assistance."; // L: 99 - field3054 = ""; // L: 275 - field3055 = "Page has opened in a new window."; // L: 276 - field3056 = "(Please check your popup blocker.)"; // L: 277 - } // L: 307 - - @ObfuscatedName("o") - @ObfuscatedSignature( - descriptor = "(II)Ljava/lang/String;", - garbageValue = "-1467551929" - ) - @Export("inventoryQuantityFormat") - static final String inventoryQuantityFormat(int var0) { - if (var0 < 100000) { // L: 413 - return "" + var0 + ""; - } else { - return var0 < 10000000 ? "" + var0 / 1000 + "K" + "" : "" + var0 / 1000000 + "M" + ""; // L: 414 415 - } + field3011 = "Please visit the support page for assistance."; + field2877 = "Please visit the support page for assistance."; + field3053 = ""; + field3054 = "Page has opened in a new window."; + field3055 = "(Please check your popup blocker.)"; } - @ObfuscatedName("s") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(ILco;ZB)I", - garbageValue = "58" + descriptor = "(ZZI)Llo;", + garbageValue = "1809126106" ) - static int method4259(int var0, Script var1, boolean var2) { - Widget var3 = UserComparator4.getWidget(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 1165 - if (var0 == ScriptOpcodes.IF_GETX) { // L: 1166 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.x; // L: 1167 - return 1; // L: 1168 - } else if (var0 == ScriptOpcodes.IF_GETY) { // L: 1170 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.y; // L: 1171 - return 1; // L: 1172 - } else if (var0 == ScriptOpcodes.IF_GETWIDTH) { // L: 1174 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.width; // L: 1175 - return 1; // L: 1176 - } else if (var0 == ScriptOpcodes.IF_GETHEIGHT) { // L: 1178 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.height; // L: 1179 - return 1; // L: 1180 - } else if (var0 == ScriptOpcodes.IF_GETHIDE) { // L: 1182 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.isHidden ? 1 : 0; // L: 1183 - return 1; // L: 1184 - } else if (var0 == ScriptOpcodes.IF_GETLAYER) { // L: 1186 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.parentId; // L: 1187 - return 1; // L: 1188 - } else { - return 2; // L: 1190 + static IndexedSprite method4158(boolean var0, boolean var1) { + return var0 ? (var1 ? class204.field2408 : ItemContainer.options_buttons_2Sprite) : (var1 ? AccessFile.field4101 : DirectByteArrayCopier.options_buttons_0Sprite); + } + + @ObfuscatedName("ig") + @ObfuscatedSignature( + descriptor = "(IIIII)V", + garbageValue = "-851150981" + ) + static final void method4157(int var0, int var1, int var2, int var3) { + for (int var4 = 0; var4 < Client.rootWidgetCount; ++var4) { + if (Client.rootWidgetXs[var4] + Client.rootWidgetWidths[var4] > var0 && Client.rootWidgetXs[var4] < var0 + var2 && Client.rootWidgetYs[var4] + Client.rootWidgetHeights[var4] > var1 && Client.rootWidgetYs[var4] < var3 + var1) { + Client.field854[var4] = true; + } } + } } diff --git a/runescape-client/src/main/java/StructDefinition.java b/runescape-client/src/main/java/StructDefinition.java index 39105228a7..0f1d3f5673 100644 --- a/runescape-client/src/main/java/StructDefinition.java +++ b/runescape-client/src/main/java/StructDefinition.java @@ -3,123 +3,126 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jo") +@ObfuscatedName("jb") @Implements("StructDefinition") public class StructDefinition extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("StructDefinition_archive") static AbstractArchive StructDefinition_archive; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("StructDefinition_cached") - static EvictingDualNodeHashTable StructDefinition_cached; - @ObfuscatedName("l") + public static EvictingDualNodeHashTable StructDefinition_cached; + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lll;" + descriptor = "Lla;" ) @Export("params") IterableNodeHashTable params; static { - StructDefinition_cached = new EvictingDualNodeHashTable(64); // L: 13 + StructDefinition_cached = new EvictingDualNodeHashTable(64); } StructDefinition() { - } // L: 16 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1231164770" + garbageValue = "-839418144" ) @Export("postDecode") void postDecode() { - } // L: 33 + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-1053369133" + descriptor = "(Lkj;I)V", + garbageValue = "-2120336035" ) @Export("decode") void decode(Buffer var1) { while (true) { - int var2 = var1.readUnsignedByte(); // L: 37 - if (var2 == 0) { // L: 38 - return; // L: 41 + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; } - this.decodeNext(var1, var2); // L: 39 + this.decodeNext(var1, var2); } } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "-941858292" + descriptor = "(Lkj;II)V", + garbageValue = "-2108853566" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { if (var2 == 249) { - this.params = InvDefinition.readStringIntParameters(var1, this.params); // L: 44 + this.params = NetSocket.readStringIntParameters(var1, this.params); } - } // L: 46 + } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "(III)I", - garbageValue = "408521937" + garbageValue = "-1178143086" ) @Export("getIntParam") public int getIntParam(int var1, int var2) { - IterableNodeHashTable var4 = this.params; // L: 50 + IterableNodeHashTable var4 = this.params; int var3; - if (var4 == null) { // L: 52 - var3 = var2; // L: 53 + if (var4 == null) { + var3 = var2; } else { - IntegerNode var5 = (IntegerNode)var4.get((long)var1); // L: 56 - if (var5 == null) { // L: 57 - var3 = var2; // L: 58 + IntegerNode var5 = (IntegerNode)var4.get((long)var1); + if (var5 == null) { + var3 = var2; } else { - var3 = var5.integer; // L: 61 + var3 = var5.integer; } } - return var3; // L: 63 + return var3; } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;S)Ljava/lang/String;", - garbageValue = "7540" + descriptor = "(ILjava/lang/String;I)Ljava/lang/String;", + garbageValue = "116269360" ) @Export("getStringParam") public String getStringParam(int var1, String var2) { - return WorldMapSection0.method307(this.params, var1, var2); // L: 67 + IterableNodeHashTable var4 = this.params; + String var3; + if (var4 == null) { + var3 = var2; + } else { + ObjectNode var5 = (ObjectNode)var4.get((long)var1); + if (var5 == null) { + var3 = var2; + } else { + var3 = (String)var5.obj; + } + } + + return var3; } - @ObfuscatedName("q") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "22" + descriptor = "(Lib;I)V", + garbageValue = "-890013246" ) - @Export("getEntityIdUnderMouse") - public static int getEntityIdUnderMouse(int var0) { - return ObjectSound.Entity_unpackID(ViewportMouse.ViewportMouse_entityTags[var0]); // L: 64 + public static void method4545(AbstractArchive var0) { + EnumDefinition.EnumDefinition_archive = var0; } - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1317179334" - ) - public static void method4699() { - StructDefinition_cached.clear(); // L: 71 - } // L: 72 } diff --git a/runescape-client/src/main/java/StudioGame.java b/runescape-client/src/main/java/StudioGame.java index c1df34f0bd..50bfff66e5 100644 --- a/runescape-client/src/main/java/StudioGame.java +++ b/runescape-client/src/main/java/StudioGame.java @@ -3,69 +3,216 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("ik") +@ObfuscatedName("ic") @Implements("StudioGame") public enum StudioGame implements Enumerated { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lik;" + descriptor = "Lic;" ) @Export("runescape") runescape("runescape", "RuneScape", 0), - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lik;" + descriptor = "Lic;" ) @Export("stellardawn") stellardawn("stellardawn", "Stellar Dawn", 1), - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lik;" + descriptor = "Lic;" ) @Export("game3") game3("game3", "Game 3", 2), - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lik;" + descriptor = "Lic;" ) @Export("game4") game4("game4", "Game 4", 3), - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lik;" + descriptor = "Lic;" ) @Export("game5") game5("game5", "Game 5", 4), - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lik;" + descriptor = "Lic;" ) @Export("oldscape") oldscape("oldscape", "RuneScape 2007", 5); - @ObfuscatedName("k") + @ObfuscatedName("cr") + @ObfuscatedGetter( + intValue = 1725294085 + ) + public static int field3135; + @ObfuscatedName("n") @Export("name") public final String name; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 1622621893 + intValue = -1088922919 ) @Export("id") final int id; StudioGame(String var3, String var4, int var5) { - this.name = var3; // L: 21 - this.id = var5; // L: 22 - } // L: 23 + this.name = var3; + this.id = var5; + } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "23" + descriptor = "(I)I", + garbageValue = "-275768542" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.id; // L: 26 + return this.id; + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1020902177" + ) + public static void method4185() { + ParamDefinition.ParamDefinition_cached.clear(); + } + + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "(ILcs;ZI)I", + garbageValue = "211481230" + ) + static int method4186(int var0, Script var1, boolean var2) { + int var6; + if (var0 == ScriptOpcodes.OC_NAME) { + var6 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = SecureRandomCallable.ItemDefinition_get(var6).name; + return 1; + } else { + int var4; + ItemDefinition var5; + if (var0 == ScriptOpcodes.OC_OP) { + VarcInt.Interpreter_intStackSize -= 2; + var6 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + var5 = SecureRandomCallable.ItemDefinition_get(var6); + if (var4 >= 1 && var4 <= 5 && var5.groundActions[var4 - 1] != null) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var5.groundActions[var4 - 1]; + } else { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + } + + return 1; + } else if (var0 == ScriptOpcodes.OC_IOP) { + VarcInt.Interpreter_intStackSize -= 2; + var6 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + var5 = SecureRandomCallable.ItemDefinition_get(var6); + if (var4 >= 1 && var4 <= 5 && var5.inventoryActions[var4 - 1] != null) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var5.inventoryActions[var4 - 1]; + } else { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + } + + return 1; + } else if (var0 == ScriptOpcodes.OC_COST) { + var6 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = SecureRandomCallable.ItemDefinition_get(var6).price; + return 1; + } else if (var0 == ScriptOpcodes.OC_STACKABLE) { + var6 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = SecureRandomCallable.ItemDefinition_get(var6).isStackable == 1 ? 1 : 0; + return 1; + } else { + ItemDefinition var7; + if (var0 == ScriptOpcodes.OC_CERT) { + var6 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var7 = SecureRandomCallable.ItemDefinition_get(var6); + if (var7.noteTemplate == -1 && var7.note >= 0) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var7.note; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var6; + } + + return 1; + } else if (var0 == ScriptOpcodes.OC_UNCERT) { + var6 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var7 = SecureRandomCallable.ItemDefinition_get(var6); + if (var7.noteTemplate >= 0 && var7.note >= 0) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var7.note; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var6; + } + + return 1; + } else if (var0 == ScriptOpcodes.OC_MEMBERS) { + var6 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = SecureRandomCallable.ItemDefinition_get(var6).isMembersOnly ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.OC_PLACEHOLDER) { + var6 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var7 = SecureRandomCallable.ItemDefinition_get(var6); + if (var7.placeholderTemplate == -1 && var7.placeholder >= 0) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var7.placeholder; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var6; + } + + return 1; + } else if (var0 == ScriptOpcodes.OC_UNPLACEHOLDER) { + var6 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var7 = SecureRandomCallable.ItemDefinition_get(var6); + if (var7.placeholderTemplate >= 0 && var7.placeholder >= 0) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var7.placeholder; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var6; + } + + return 1; + } else if (var0 == ScriptOpcodes.OC_FIND) { + String var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + var4 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + WorldMapSection1.findItemDefinitions(var3, var4 == 1); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = PacketBufferNode.foundItemIdCount; + return 1; + } else if (var0 != ScriptOpcodes.OC_FINDNEXT) { + if (var0 == ScriptOpcodes.OC_FINDRESET) { + NetCache.foundItemIndex = 0; + return 1; + } else { + return 2; + } + } else { + if (UrlRequest.foundItemIds != null && NetCache.foundItemIndex < PacketBufferNode.foundItemIdCount) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = UrlRequest.foundItemIds[++NetCache.foundItemIndex - 1] & '\uffff'; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + } + + return 1; + } + } + } + } + + @ObfuscatedName("lw") + @ObfuscatedSignature( + descriptor = "(Lhe;B)Ljava/lang/String;", + garbageValue = "-113" + ) + @Export("Widget_getSpellActionName") + static String Widget_getSpellActionName(Widget var0) { + if (ServerPacket.Widget_unpackTargetMask(FaceNormal.getWidgetFlags(var0)) == 0) { + return null; + } else { + return var0.spellActionName != null && var0.spellActionName.trim().length() != 0 ? var0.spellActionName : null; + } } } diff --git a/runescape-client/src/main/java/Task.java b/runescape-client/src/main/java/Task.java index 4b9b6b6084..b141fe3fa9 100644 --- a/runescape-client/src/main/java/Task.java +++ b/runescape-client/src/main/java/Task.java @@ -4,35 +4,35 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fu") +@ObfuscatedName("fd") @Implements("Task") public class Task { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lfu;" + descriptor = "Lfd;" ) @Export("next") Task next; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("status") public volatile int status; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -1399267459 + intValue = -2137331087 ) @Export("type") int type; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("intArgument") public int intArgument; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("objectArgument") Object objectArgument; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("result") public volatile Object result; Task() { - this.status = 0; // L: 11 - } // L: 23 + this.status = 0; + } } diff --git a/runescape-client/src/main/java/TaskHandler.java b/runescape-client/src/main/java/TaskHandler.java index 04f155ec8f..2da90e3109 100644 --- a/runescape-client/src/main/java/TaskHandler.java +++ b/runescape-client/src/main/java/TaskHandler.java @@ -7,177 +7,181 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fl") +@ObfuscatedName("fa") @Implements("TaskHandler") public class TaskHandler implements Runnable { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("javaVendor") public static String javaVendor; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("javaVersion") public static String javaVersion; - @ObfuscatedName("hl") + @ObfuscatedName("df") @ObfuscatedSignature( - descriptor = "[Llc;" + descriptor = "Llr;" ) - @Export("headIconPrayerSprites") - static Sprite[] headIconPrayerSprites; - @ObfuscatedName("l") + @Export("js5Socket") + static AbstractSocket js5Socket; + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lfu;" + descriptor = "Lfd;" ) @Export("current") Task current; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lfu;" + descriptor = "Lfd;" ) @Export("task") Task task; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("thread") Thread thread; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("isClosed") boolean isClosed; public TaskHandler() { - this.current = null; // L: 11 - this.task = null; // L: 12 - this.isClosed = false; // L: 14 - javaVendor = "Unknown"; // L: 20 - javaVersion = "1.6"; // L: 21 + this.current = null; + this.task = null; + this.isClosed = false; + javaVendor = "Unknown"; + javaVersion = "1.6"; try { - javaVendor = System.getProperty("java.vendor"); // L: 23 - javaVersion = System.getProperty("java.version"); // L: 24 - } catch (Exception var2) { // L: 26 + javaVendor = System.getProperty("java.vendor"); + javaVersion = System.getProperty("java.version"); + } catch (Exception var2) { } - this.isClosed = false; // L: 27 - this.thread = new Thread(this); // L: 28 - this.thread.setPriority(10); // L: 29 - this.thread.setDaemon(true); // L: 30 - this.thread.start(); // L: 31 - } // L: 32 + this.isClosed = false; + this.thread = new Thread(this); + this.thread.setPriority(10); + this.thread.setDaemon(true); + this.thread.start(); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "14" + descriptor = "(I)V", + garbageValue = "60003222" ) @Export("close") public final void close() { - synchronized(this) { // L: 35 - this.isClosed = true; // L: 36 - this.notifyAll(); // L: 37 - } // L: 38 - - try { - this.thread.join(); // L: 40 - } catch (InterruptedException var3) { // L: 42 + synchronized(this) { + this.isClosed = true; + this.notifyAll(); } - } // L: 43 + try { + this.thread.join(); + } catch (InterruptedException var3) { + } - @ObfuscatedName("b") + } + + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IIILjava/lang/Object;B)Lfu;", - garbageValue = "44" + descriptor = "(IIILjava/lang/Object;I)Lfd;", + garbageValue = "-108529883" ) @Export("newTask") final Task newTask(int var1, int var2, int var3, Object var4) { - Task var5 = new Task(); // L: 90 - var5.type = var1; // L: 91 - var5.intArgument = var2; // L: 92 - var5.objectArgument = var4; // L: 93 - synchronized(this) { // L: 94 - if (this.task != null) { // L: 95 - this.task.next = var5; // L: 96 - this.task = var5; // L: 97 + Task var5 = new Task(); + var5.type = var1; + var5.intArgument = var2; + var5.objectArgument = var4; + synchronized(this) { + if (this.task != null) { + this.task.next = var5; + this.task = var5; } else { - this.task = this.current = var5; // L: 100 + this.task = this.current = var5; } - this.notify(); // L: 102 - return var5; // L: 104 + this.notify(); + return var5; } } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;II)Lfu;", - garbageValue = "1542542692" + descriptor = "(Ljava/lang/String;IB)Lfd;", + garbageValue = "0" ) @Export("newSocketTask") public final Task newSocketTask(String var1, int var2) { - return this.newTask(1, var2, 0, var1); // L: 108 + return this.newTask(1, var2, 0, var1); } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Ljava/lang/Runnable;IS)Lfu;", - garbageValue = "3910" + descriptor = "(Ljava/lang/Runnable;II)Lfd;", + garbageValue = "-1137156097" ) @Export("newThreadTask") public final Task newThreadTask(Runnable var1, int var2) { - return this.newTask(2, var2, 0, var1); // L: 112 + return this.newTask(2, var2, 0, var1); } public final void run() { while (true) { Task var1; - synchronized(this) { // L: 48 + synchronized(this) { while (true) { - if (this.isClosed) { // L: 50 + if (this.isClosed) { return; } - if (this.current != null) { // L: 51 - var1 = this.current; // L: 52 - this.current = this.current.next; // L: 53 - if (this.current == null) { // L: 54 + if (this.current != null) { + var1 = this.current; + this.current = this.current.next; + if (this.current == null) { this.task = null; } break; } try { - this.wait(); // L: 58 - } catch (InterruptedException var8) { // L: 60 + this.wait(); + } catch (InterruptedException var8) { } } } try { - int var5 = var1.type; // L: 64 - if (var5 == 1) { // L: 65 - var1.result = new Socket(InetAddress.getByName((String)var1.objectArgument), var1.intArgument); // L: 66 - } else if (var5 == 2) { // L: 68 - Thread var3 = new Thread((Runnable)var1.objectArgument); // L: 69 - var3.setDaemon(true); // L: 70 - var3.start(); // L: 71 - var3.setPriority(var1.intArgument); // L: 72 - var1.result = var3; // L: 73 - } else if (var5 == 4) { // L: 75 - var1.result = new DataInputStream(((URL)var1.objectArgument).openStream()); // L: 76 + int var5 = var1.type; + if (var5 == 1) { + var1.result = new Socket(InetAddress.getByName((String)var1.objectArgument), var1.intArgument); + } else if (var5 == 2) { + Thread var3 = new Thread((Runnable)var1.objectArgument); + var3.setDaemon(true); + var3.start(); + var3.setPriority(var1.intArgument); + var1.result = var3; + } else if (var5 == 4) { + var1.result = new DataInputStream(((URL)var1.objectArgument).openStream()); } - var1.status = 1; // L: 78 - } catch (ThreadDeath var6) { // L: 80 - throw var6; // L: 81 - } catch (Throwable var7) { // L: 83 - var1.status = 2; // L: 84 + var1.status = 1; + } catch (ThreadDeath var6) { + throw var6; + } catch (Throwable var7) { + var1.status = 2; } } } - @ObfuscatedName("l") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(ZZI)Lle;", - garbageValue = "1626700828" + descriptor = "(IZIZI)V", + garbageValue = "766328157" ) - static IndexedSprite method3609(boolean var0, boolean var1) { - return var0 ? (var1 ? DevicePcmPlayerProvider.field439 : Login.options_buttons_2Sprite) : (var1 ? class69.field583 : Login.options_buttons_0Sprite); // L: 199 + @Export("sortWorldList") + static void sortWorldList(int var0, boolean var1, int var2, boolean var3) { + if (World.World_worlds != null) { + class25.doWorldSorting(0, World.World_worlds.length - 1, var0, var1, var2, var3); + } + } } diff --git a/runescape-client/src/main/java/Texture.java b/runescape-client/src/main/java/Texture.java index 30f058af21..5d0e1c3f32 100644 --- a/runescape-client/src/main/java/Texture.java +++ b/runescape-client/src/main/java/Texture.java @@ -3,191 +3,191 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ez") +@ObfuscatedName("eg") @Implements("Texture") public class Texture extends Node { - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("Texture_animatedPixels") static int[] Texture_animatedPixels; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("averageRGB") int averageRGB; - @ObfuscatedName("q") - boolean field1655; - @ObfuscatedName("k") + @ObfuscatedName("j") + boolean field1640; + @ObfuscatedName("n") @Export("fileIds") int[] fileIds; - @ObfuscatedName("c") - int[] field1652; + @ObfuscatedName("p") + int[] field1642; + @ObfuscatedName("l") + int[] field1648; + @ObfuscatedName("z") + int[] field1637; @ObfuscatedName("u") - int[] field1653; - @ObfuscatedName("t") - int[] field1658; - @ObfuscatedName("e") @Export("animationDirection") int animationDirection; - @ObfuscatedName("o") + @ObfuscatedName("e") @Export("animationSpeed") int animationSpeed; - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("pixels") int[] pixels; - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("isLoaded") boolean isLoaded; @ObfuscatedSignature( - descriptor = "(Lkb;)V" + descriptor = "(Lkj;)V" ) Texture(Buffer var1) { - this.isLoaded = false; // L: 25 - this.averageRGB = var1.readUnsignedShort(); // L: 29 - this.field1655 = var1.readUnsignedByte() == 1; // L: 30 - int var2 = var1.readUnsignedByte(); // L: 31 - if (var2 >= 1 && var2 <= 4) { // L: 32 - this.fileIds = new int[var2]; // L: 35 + this.isLoaded = false; + this.averageRGB = var1.readUnsignedShort(); + this.field1640 = var1.readUnsignedByte() == 1; + int var2 = var1.readUnsignedByte(); + if (var2 >= 1 && var2 <= 4) { + this.fileIds = new int[var2]; int var3; - for (var3 = 0; var3 < var2; ++var3) { // L: 36 + for (var3 = 0; var3 < var2; ++var3) { this.fileIds[var3] = var1.readUnsignedShort(); } - if (var2 > 1) { // L: 37 - this.field1652 = new int[var2 - 1]; // L: 38 + if (var2 > 1) { + this.field1642 = new int[var2 - 1]; - for (var3 = 0; var3 < var2 - 1; ++var3) { // L: 39 - this.field1652[var3] = var1.readUnsignedByte(); + for (var3 = 0; var3 < var2 - 1; ++var3) { + this.field1642[var3] = var1.readUnsignedByte(); } } - if (var2 > 1) { // L: 41 - this.field1653 = new int[var2 - 1]; // L: 42 + if (var2 > 1) { + this.field1648 = new int[var2 - 1]; - for (var3 = 0; var3 < var2 - 1; ++var3) { // L: 43 - this.field1653[var3] = var1.readUnsignedByte(); + for (var3 = 0; var3 < var2 - 1; ++var3) { + this.field1648[var3] = var1.readUnsignedByte(); } } - this.field1658 = new int[var2]; // L: 45 + this.field1637 = new int[var2]; - for (var3 = 0; var3 < var2; ++var3) { // L: 46 - this.field1658[var3] = var1.readInt(); + for (var3 = 0; var3 < var2; ++var3) { + this.field1637[var3] = var1.readInt(); } - this.animationDirection = var1.readUnsignedByte(); // L: 47 - this.animationSpeed = var1.readUnsignedByte(); // L: 48 - this.pixels = null; // L: 49 + this.animationDirection = var1.readUnsignedByte(); + this.animationSpeed = var1.readUnsignedByte(); + this.pixels = null; } else { - throw new RuntimeException(); // L: 33 + throw new RuntimeException(); } - } // L: 50 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(DILiw;)Z" + descriptor = "(DILib;)Z" ) @Export("load") boolean load(double var1, int var3, AbstractArchive var4) { int var5; - for (var5 = 0; var5 < this.fileIds.length; ++var5) { // L: 53 - if (var4.getFileFlat(this.fileIds[var5]) == null) { // L: 54 + for (var5 = 0; var5 < this.fileIds.length; ++var5) { + if (var4.getFileFlat(this.fileIds[var5]) == null) { return false; } } - var5 = var3 * var3; // L: 56 - this.pixels = new int[var5]; // L: 57 + var5 = var3 * var3; + this.pixels = new int[var5]; - for (int var6 = 0; var6 < this.fileIds.length; ++var6) { // L: 58 - IndexedSprite var7 = class298.method5411(var4, this.fileIds[var6]); // L: 59 - var7.normalize(); // L: 60 - byte[] var8 = var7.pixels; // L: 61 - int[] var9 = var7.palette; // L: 62 - int var10 = this.field1658[var6]; // L: 63 - if ((var10 & -16777216) == 16777216) { // L: 64 + for (int var6 = 0; var6 < this.fileIds.length; ++var6) { + IndexedSprite var7 = FloorOverlayDefinition.method4789(var4, this.fileIds[var6]); + var7.normalize(); + byte[] var8 = var7.pixels; + int[] var9 = var7.palette; + int var10 = this.field1637[var6]; + if ((var10 & -16777216) == 16777216) { } - if ((var10 & -16777216) == 33554432) { // L: 65 + if ((var10 & -16777216) == 33554432) { } int var11; int var12; int var13; int var14; - if ((var10 & -16777216) == 50331648) { // L: 66 - var11 = var10 & 16711935; // L: 67 - var12 = var10 >> 8 & 255; // L: 68 + if ((var10 & -16777216) == 50331648) { + var11 = var10 & 16711935; + var12 = var10 >> 8 & 255; - for (var13 = 0; var13 < var9.length; ++var13) { // L: 69 - var14 = var9[var13]; // L: 70 - if (var14 >> 8 == (var14 & 65535)) { // L: 71 - var14 &= 255; // L: 72 - var9[var13] = var11 * var14 >> 8 & 16711935 | var12 * var14 & 65280; // L: 73 + for (var13 = 0; var13 < var9.length; ++var13) { + var14 = var9[var13]; + if (var14 >> 8 == (var14 & 65535)) { + var14 &= 255; + var9[var13] = var11 * var14 >> 8 & 16711935 | var12 * var14 & 65280; } } } - for (var11 = 0; var11 < var9.length; ++var11) { // L: 77 + for (var11 = 0; var11 < var9.length; ++var11) { var9[var11] = Rasterizer3D.Rasterizer3D_brighten(var9[var11], var1); } - if (var6 == 0) { // L: 79 + if (var6 == 0) { var11 = 0; } else { - var11 = this.field1652[var6 - 1]; // L: 80 + var11 = this.field1642[var6 - 1]; } - if (var11 == 0) { // L: 81 - if (var3 == var7.subWidth) { // L: 82 - for (var12 = 0; var12 < var5; ++var12) { // L: 83 + if (var11 == 0) { + if (var3 == var7.subWidth) { + for (var12 = 0; var12 < var5; ++var12) { this.pixels[var12] = var9[var8[var12] & 255]; } - } else if (var7.subWidth == 64 && var3 == 128) { // L: 85 - var12 = 0; // L: 86 + } else if (var7.subWidth == 64 && var3 == 128) { + var12 = 0; - for (var13 = 0; var13 < var3; ++var13) { // L: 87 - for (var14 = 0; var14 < var3; ++var14) { // L: 88 + for (var13 = 0; var13 < var3; ++var13) { + for (var14 = 0; var14 < var3; ++var14) { this.pixels[var12++] = var9[var8[(var13 >> 1 << 6) + (var14 >> 1)] & 255]; } } } else { - if (var7.subWidth != 128 || var3 != 64) { // L: 91 - throw new RuntimeException(); // L: 98 + if (var7.subWidth != 128 || var3 != 64) { + throw new RuntimeException(); } - var12 = 0; // L: 92 + var12 = 0; - for (var13 = 0; var13 < var3; ++var13) { // L: 93 - for (var14 = 0; var14 < var3; ++var14) { // L: 94 + for (var13 = 0; var13 < var3; ++var13) { + for (var14 = 0; var14 < var3; ++var14) { this.pixels[var12++] = var9[var8[(var14 << 1) + (var13 << 1 << 7)] & 255]; } } } } - if (var11 == 1) { // L: 101 + if (var11 == 1) { } - if (var11 == 2) { // L: 102 + if (var11 == 2) { } - if (var11 == 3) { // L: 103 + if (var11 == 3) { } } - return true; // L: 105 + return true; } - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("reset") void reset() { - this.pixels = null; // L: 109 - } // L: 110 + this.pixels = null; + } - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("animate") void animate(int var1) { - if (this.pixels != null) { // L: 113 + if (this.pixels != null) { short var2; int var3; int var4; @@ -195,65 +195,65 @@ public class Texture extends Node { int var6; int var7; int[] var10; - if (this.animationDirection == 1 || this.animationDirection == 3) { // L: 114 - if (Texture_animatedPixels == null || Texture_animatedPixels.length < this.pixels.length) { // L: 115 + if (this.animationDirection == 1 || this.animationDirection == 3) { + if (Texture_animatedPixels == null || Texture_animatedPixels.length < this.pixels.length) { Texture_animatedPixels = new int[this.pixels.length]; } - if (this.pixels.length == 4096) { // L: 117 + if (this.pixels.length == 4096) { var2 = 64; } else { - var2 = 128; // L: 118 + var2 = 128; } - var3 = this.pixels.length; // L: 119 - var4 = var2 * this.animationSpeed * var1; // L: 120 - var5 = var3 - 1; // L: 121 - if (this.animationDirection == 1) { // L: 122 + var3 = this.pixels.length; + var4 = var2 * this.animationSpeed * var1; + var5 = var3 - 1; + if (this.animationDirection == 1) { var4 = -var4; } - for (var6 = 0; var6 < var3; ++var6) { // L: 123 - var7 = var6 + var4 & var5; // L: 124 - Texture_animatedPixels[var6] = this.pixels[var7]; // L: 125 + for (var6 = 0; var6 < var3; ++var6) { + var7 = var6 + var4 & var5; + Texture_animatedPixels[var6] = this.pixels[var7]; } - var10 = this.pixels; // L: 127 - this.pixels = Texture_animatedPixels; // L: 128 - Texture_animatedPixels = var10; // L: 129 + var10 = this.pixels; + this.pixels = Texture_animatedPixels; + Texture_animatedPixels = var10; } - if (this.animationDirection == 2 || this.animationDirection == 4) { // L: 131 - if (Texture_animatedPixels == null || Texture_animatedPixels.length < this.pixels.length) { // L: 132 + if (this.animationDirection == 2 || this.animationDirection == 4) { + if (Texture_animatedPixels == null || Texture_animatedPixels.length < this.pixels.length) { Texture_animatedPixels = new int[this.pixels.length]; } - if (this.pixels.length == 4096) { // L: 134 + if (this.pixels.length == 4096) { var2 = 64; } else { - var2 = 128; // L: 135 + var2 = 128; } - var3 = this.pixels.length; // L: 136 - var4 = this.animationSpeed * var1; // L: 137 - var5 = var2 - 1; // L: 138 - if (this.animationDirection == 2) { // L: 139 + var3 = this.pixels.length; + var4 = this.animationSpeed * var1; + var5 = var2 - 1; + if (this.animationDirection == 2) { var4 = -var4; } - for (var6 = 0; var6 < var3; var6 += var2) { // L: 140 - for (var7 = 0; var7 < var2; ++var7) { // L: 141 - int var8 = var6 + var7; // L: 142 - int var9 = var6 + (var7 + var4 & var5); // L: 143 - Texture_animatedPixels[var8] = this.pixels[var9]; // L: 144 + for (var6 = 0; var6 < var3; var6 += var2) { + for (var7 = 0; var7 < var2; ++var7) { + int var8 = var6 + var7; + int var9 = var6 + (var7 + var4 & var5); + Texture_animatedPixels[var8] = this.pixels[var9]; } } - var10 = this.pixels; // L: 147 - this.pixels = Texture_animatedPixels; // L: 148 - Texture_animatedPixels = var10; // L: 149 + var10 = this.pixels; + this.pixels = Texture_animatedPixels; + Texture_animatedPixels = var10; } } - } // L: 151 + } } diff --git a/runescape-client/src/main/java/TextureLoader.java b/runescape-client/src/main/java/TextureLoader.java index a058b1fb5d..1f00344b06 100644 --- a/runescape-client/src/main/java/TextureLoader.java +++ b/runescape-client/src/main/java/TextureLoader.java @@ -3,36 +3,36 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ea") +@ObfuscatedName("ex") @Implements("TextureLoader") public interface TextureLoader { - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(II)[I", - garbageValue = "1646805002" + garbageValue = "883759945" ) @Export("getTexturePixels") int[] getTexturePixels(int var1); - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(II)I", - garbageValue = "-914943322" + garbageValue = "-1799220931" ) @Export("getAverageTextureRGB") int getAverageTextureRGB(int var1); - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(II)Z", - garbageValue = "-335824430" + garbageValue = "-1523659518" ) - boolean vmethod3401(int var1); + boolean vmethod3359(int var1); - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "(II)Z", - garbageValue = "533356584" + garbageValue = "-562229865" ) @Export("isLowDetail") boolean isLowDetail(int var1); diff --git a/runescape-client/src/main/java/TextureProvider.java b/runescape-client/src/main/java/TextureProvider.java index 186fc269ea..1de82f729a 100644 --- a/runescape-client/src/main/java/TextureProvider.java +++ b/runescape-client/src/main/java/TextureProvider.java @@ -1,248 +1,249 @@ -import java.awt.Component; 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("du") +@ObfuscatedName("dk") @Implements("TextureProvider") public class TextureProvider implements TextureLoader { - @ObfuscatedName("bt") - @ObfuscatedGetter( - intValue = 1514159297 - ) - static int field1561; - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "[Lez;" + descriptor = "[Leg;" ) @Export("textures") Texture[] textures; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lja;" + descriptor = "Ljp;" ) @Export("deque") NodeDeque deque; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1277948479 + intValue = -1878260407 ) @Export("capacity") int capacity; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 1933585105 + intValue = 1633660225 ) @Export("remaining") int remaining; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("brightness") double brightness; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -1967077047 + intValue = -623743257 ) @Export("textureSize") int textureSize; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("archive") AbstractArchive archive; @ObfuscatedSignature( - descriptor = "(Liw;Liw;IDI)V" + descriptor = "(Lib;Lib;IDI)V" ) public TextureProvider(AbstractArchive var1, AbstractArchive var2, int var3, double var4, int var6) { - this.deque = new NodeDeque(); // L: 9 - this.remaining = 0; // L: 11 - this.brightness = 1.0D; // L: 12 - this.textureSize = 128; // L: 13 - this.archive = var2; // L: 17 - this.capacity = var3; // L: 18 - this.remaining = this.capacity; // L: 19 - this.brightness = var4; // L: 20 - this.textureSize = var6; // L: 21 - int[] var7 = var1.getGroupFileIds(0); // L: 22 - int var8 = var7.length; // L: 23 - this.textures = new Texture[var1.getGroupFileCount(0)]; // L: 24 + this.deque = new NodeDeque(); + this.remaining = 0; + this.brightness = 1.0D; + this.textureSize = 128; + this.archive = var2; + this.capacity = var3; + this.remaining = this.capacity; + this.brightness = var4; + this.textureSize = var6; + int[] var7 = var1.getGroupFileIds(0); + int var8 = var7.length; + this.textures = new Texture[var1.getGroupFileCount(0)]; for (int var9 = 0; var9 < var8; ++var9) { Buffer var10 = new Buffer(var1.takeFile(0, var7[var9])); this.textures[var7[var9]] = new Texture(var10); } - } // L: 29 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "185901230" + garbageValue = "-1888547862" ) @Export("getLoadedPercentage") public int getLoadedPercentage() { int var1 = 0; int var2 = 0; - Texture[] var3 = this.textures; // L: 35 + Texture[] var3 = this.textures; - for (int var4 = 0; var4 < var3.length; ++var4) { // L: 36 + for (int var4 = 0; var4 < var3.length; ++var4) { Texture var5 = var3[var4]; if (var5 != null && var5.fileIds != null) { var1 += var5.fileIds.length; - int[] var6 = var5.fileIds; // L: 42 + int[] var6 = var5.fileIds; - for (int var7 = 0; var7 < var6.length; ++var7) { // L: 43 - int var8 = var6[var7]; // L: 44 - if (this.archive.method4301(var8)) { // L: 46 - ++var2; // L: 47 + for (int var7 = 0; var7 < var6.length; ++var7) { + int var8 = var6[var7]; + if (this.archive.method4196(var8)) { + ++var2; } } } } - if (var1 == 0) { // L: 55 + if (var1 == 0) { return 0; } else { - return var2 * 100 / var1; // L: 56 + return var2 * 100 / var1; } } - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("setBrightness") public void setBrightness(double var1) { - this.brightness = var1; // L: 60 - this.clear(); // L: 61 - } // L: 62 + this.brightness = var1; + this.clear(); + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(II)[I", - garbageValue = "1646805002" + garbageValue = "883759945" ) @Export("getTexturePixels") public int[] getTexturePixels(int var1) { - Texture var2 = this.textures[var1]; // L: 65 - if (var2 != null) { // L: 66 - if (var2.pixels != null) { // L: 67 - this.deque.addLast(var2); // L: 68 - var2.isLoaded = true; // L: 69 - return var2.pixels; // L: 70 + Texture var2 = this.textures[var1]; + if (var2 != null) { + if (var2.pixels != null) { + this.deque.addLast(var2); + var2.isLoaded = true; + return var2.pixels; } - boolean var3 = var2.load(this.brightness, this.textureSize, this.archive); // L: 72 - if (var3) { // L: 73 - if (this.remaining == 0) { // L: 74 - Texture var4 = (Texture)this.deque.removeFirst(); // L: 75 - var4.reset(); // L: 76 + boolean var3 = var2.load(this.brightness, this.textureSize, this.archive); + if (var3) { + if (this.remaining == 0) { + Texture var4 = (Texture)this.deque.removeFirst(); + var4.reset(); } else { - --this.remaining; // L: 78 + --this.remaining; } - this.deque.addLast(var2); // L: 79 - var2.isLoaded = true; // L: 80 - return var2.pixels; // L: 81 + this.deque.addLast(var2); + var2.isLoaded = true; + return var2.pixels; } } - return null; // L: 84 + return null; } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(II)I", - garbageValue = "-914943322" + garbageValue = "-1799220931" ) @Export("getAverageTextureRGB") public int getAverageTextureRGB(int var1) { - return this.textures[var1] != null ? this.textures[var1].averageRGB : 0; // L: 88 89 + return this.textures[var1] != null ? this.textures[var1].averageRGB : 0; } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(II)Z", - garbageValue = "-335824430" + garbageValue = "-1523659518" ) - public boolean vmethod3401(int var1) { - return this.textures[var1].field1655; // L: 93 + public boolean vmethod3359(int var1) { + return this.textures[var1].field1640; } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "(II)Z", - garbageValue = "533356584" + garbageValue = "-562229865" ) @Export("isLowDetail") public boolean isLowDetail(int var1) { - return this.textureSize == 64; // L: 97 + return this.textureSize == 64; } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "-60" + garbageValue = "64" ) @Export("clear") public void clear() { - for (int var1 = 0; var1 < this.textures.length; ++var1) { // L: 101 - if (this.textures[var1] != null) { // L: 102 + for (int var1 = 0; var1 < this.textures.length; ++var1) { + if (this.textures[var1] != null) { this.textures[var1].reset(); } } - this.deque = new NodeDeque(); // L: 104 - this.remaining = this.capacity; // L: 105 - } // L: 106 + this.deque = new NodeDeque(); + this.remaining = this.capacity; + } - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-2135201206" + garbageValue = "-1550111062" ) @Export("animate") public void animate(int var1) { - for (int var2 = 0; var2 < this.textures.length; ++var2) { // L: 109 - Texture var3 = this.textures[var2]; // L: 110 - if (var3 != null && var3.animationDirection != 0 && var3.isLoaded) { // L: 111 - var3.animate(var1); // L: 112 - var3.isLoaded = false; // L: 113 + for (int var2 = 0; var2 < this.textures.length; ++var2) { + Texture var3 = this.textures[var2]; + if (var3 != null && var3.animationDirection != 0 && var3.isLoaded) { + var3.animate(var1); + var3.isLoaded = false; } } - } // L: 116 + } - @ObfuscatedName("f") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Ljava/awt/Component;I)V", - garbageValue = "-524621860" + descriptor = "(II)Lir;", + garbageValue = "1406545495" ) - static void method2899(Component var0) { - var0.addMouseListener(MouseHandler.MouseHandler_instance); // L: 37 - var0.addMouseMotionListener(MouseHandler.MouseHandler_instance); // L: 38 - var0.addFocusListener(MouseHandler.MouseHandler_instance); // L: 39 - } // L: 40 - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(IIIIIIB)I", - garbageValue = "-103" - ) - public static int method2906(int var0, int var1, int var2, int var3, int var4, int var5) { - if ((var5 & 1) == 1) { // L: 25 - int var6 = var3; // L: 26 - var3 = var4; // L: 27 - var4 = var6; // L: 28 - } - - var2 &= 3; // L: 30 - if (var2 == 0) { // L: 31 - return var0; - } else if (var2 == 1) { // L: 32 + public static VarcInt method2843(int var0) { + VarcInt var1 = (VarcInt)VarcInt.VarcInt_cached.get((long)var0); + if (var1 != null) { return var1; } else { - return var2 == 2 ? 7 - var0 - (var3 - 1) : 7 - var1 - (var4 - 1); // L: 33 34 + byte[] var2 = VarcInt.VarcInt_archive.takeFile(19, var0); + var1 = new VarcInt(); + if (var2 != null) { + var1.method4416(new Buffer(var2)); + } + + VarcInt.VarcInt_cached.put(var1, (long)var0); + return var1; } } + + @ObfuscatedName("lq") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "188919715" + ) + static void method2848() { + if (WorldMapIcon_0.field148 != null) { + Client.field915 = Client.cycle; + WorldMapIcon_0.field148.method4345(); + + for (int var0 = 0; var0 < Client.players.length; ++var0) { + if (Client.players[var0] != null) { + WorldMapIcon_0.field148.method4344(NetFileRequest.baseX * 64 + (Client.players[var0].x >> 7), class41.baseY * 64 + (Client.players[var0].y >> 7)); + } + } + } + + } } diff --git a/runescape-client/src/main/java/Tile.java b/runescape-client/src/main/java/Tile.java index e37dd53534..e62dd768c8 100644 --- a/runescape-client/src/main/java/Tile.java +++ b/runescape-client/src/main/java/Tile.java @@ -4,188 +4,185 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("eo") +@ObfuscatedName("ec") @Implements("Tile") public final class Tile extends Node { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = -1401858365 + intValue = 518292921 ) @Export("plane") int plane; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 1121105615 + intValue = -213521769 ) @Export("x") int x; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -541915111 + intValue = 438104541 ) @Export("y") int y; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 102326407 + intValue = 772520193 ) @Export("originalPlane") int originalPlane; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Leu;" + descriptor = "Lew;" ) @Export("paint") TilePaint paint; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "Leq;" ) @Export("model") TileModel model; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Lem;" + descriptor = "Lev;" ) @Export("boundaryObject") BoundaryObject boundaryObject; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( descriptor = "Ley;" ) @Export("wallDecoration") WallDecoration wallDecoration; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "Lek;" + descriptor = "Lem;" ) @Export("floorDecoration") FloorDecoration floorDecoration; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "Ldr;" + descriptor = "Ldz;" ) @Export("tileItemPile") TileItemPile tileItemPile; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedGetter( - intValue = 436898265 + intValue = 418075799 ) @Export("gameObjectsCount") int gameObjectsCount; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedSignature( descriptor = "[Lel;" ) @Export("gameObjects") GameObject[] gameObjects; - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("gameObjectEdgeMasks") int[] gameObjectEdgeMasks; - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedGetter( - intValue = -1777238771 + intValue = -306747105 ) @Export("gameObjectsEdgeMask") int gameObjectsEdgeMask; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedGetter( - intValue = -401318033 + intValue = -1679914955 ) @Export("minPlane") int minPlane; - @ObfuscatedName("r") + @ObfuscatedName("f") @Export("drawPrimary") boolean drawPrimary; - @ObfuscatedName("y") + @ObfuscatedName("a") @Export("drawSecondary") boolean drawSecondary; - @ObfuscatedName("s") + @ObfuscatedName("b") @Export("drawGameObjects") boolean drawGameObjects; - @ObfuscatedName("j") + @ObfuscatedName("y") @ObfuscatedGetter( - intValue = 533162945 + intValue = 1147032241 ) @Export("drawGameObjectEdges") int drawGameObjectEdges; - @ObfuscatedName("w") + @ObfuscatedName("r") @ObfuscatedGetter( - intValue = 1399607657 + intValue = -14070267 ) - int field1690; - @ObfuscatedName("v") + int field1680; + @ObfuscatedName("q") @ObfuscatedGetter( - intValue = -1848862367 + intValue = -1565392729 ) - int field1691; - @ObfuscatedName("d") + int field1677; + @ObfuscatedName("g") @ObfuscatedGetter( - intValue = 858719123 + intValue = -1370229161 ) - int field1671; - @ObfuscatedName("a") + int field1679; + @ObfuscatedName("s") @ObfuscatedSignature( - descriptor = "Leo;" + descriptor = "Lec;" ) @Export("linkedBelowTile") Tile linkedBelowTile; Tile(int var1, int var2, int var3) { - this.gameObjects = new GameObject[5]; // L: 17 - this.gameObjectEdgeMasks = new int[5]; // L: 18 - this.gameObjectsEdgeMask = 0; // L: 19 + this.gameObjects = new GameObject[5]; + this.gameObjectEdgeMasks = new int[5]; + this.gameObjectsEdgeMask = 0; this.originalPlane = this.plane = var1; this.x = var2; this.y = var3; } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-23" + descriptor = "([BI)V", + garbageValue = "-1819420058" ) - @Export("savePreferences") - static void savePreferences() { - AccessFile var0 = null; // L: 81 - - try { - var0 = WorldMapID.getPreferencesFile("", GrandExchangeOfferWorldComparator.field58.name, true); // L: 83 - Buffer var1 = GrandExchangeOfferAgeComparator.clientPreferences.toBuffer(); // L: 84 - var0.write(var1.array, 0, var1.offset); // L: 85 - } catch (Exception var3) { // L: 87 - } - - try { - if (var0 != null) { // L: 89 - var0.closeSync(true); // L: 90 - } - } catch (Exception var2) { // L: 93 - } - - } // L: 94 - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(Lkb;I)Ljava/lang/String;", - garbageValue = "-968900649" - ) - public static String method3004(Buffer var0) { - String var1; - try { - int var2 = var0.readUShortSmart(); // L: 29 - if (var2 > 32767) { // L: 30 - var2 = 32767; + @Export("ByteArrayPool_release") + public static synchronized void ByteArrayPool_release(byte[] var0) { + if (var0.length == 100 && ByteArrayPool.ByteArrayPool_smallCount < 1000) { + ByteArrayPool.ByteArrayPool_small[++ByteArrayPool.ByteArrayPool_smallCount - 1] = var0; + } else if (var0.length == 5000 && ByteArrayPool.ByteArrayPool_mediumCount < 250) { + ByteArrayPool.ByteArrayPool_medium[++ByteArrayPool.ByteArrayPool_mediumCount - 1] = var0; + } else if (var0.length == 30000 && ByteArrayPool.ByteArrayPool_largeCount < 50) { + ByteArrayPool.ByteArrayPool_large[++ByteArrayPool.ByteArrayPool_largeCount - 1] = var0; + } else { + if (class23.ByteArrayPool_arrays != null) { + for (int var1 = 0; var1 < SoundCache.ByteArrayPool_alternativeSizes.length; ++var1) { + if (var0.length == SoundCache.ByteArrayPool_alternativeSizes[var1] && JagexCache.ByteArrayPool_altSizeArrayCounts[var1] < class23.ByteArrayPool_arrays[var1].length) { + class23.ByteArrayPool_arrays[var1][JagexCache.ByteArrayPool_altSizeArrayCounts[var1]++] = var0; + return; + } + } } - byte[] var3 = new byte[var2]; // L: 31 - var0.offset += class219.huffman.decompress(var0.array, var0.offset, var3, 0, var2); // L: 32 - String var4 = class52.decodeStringCp1252(var3, 0, var2); // L: 33 - var1 = var4; // L: 34 - } catch (Exception var6) { // L: 36 - var1 = "Cabbage"; // L: 37 } + } - return var1; // L: 40 + @ObfuscatedName("c") + @ObfuscatedSignature( + descriptor = "(IIB)I", + garbageValue = "123" + ) + static final int method2946(int var0, int var1) { + if (var0 == -1) { + return 12345678; + } else { + var1 = (var0 & 127) * var1 / 128; + if (var1 < 2) { + var1 = 2; + } else if (var1 > 126) { + var1 = 126; + } + + return (var0 & 65408) + var1; + } } } diff --git a/runescape-client/src/main/java/TileItem.java b/runescape-client/src/main/java/TileItem.java index 97e10c010a..74691dd128 100644 --- a/runescape-client/src/main/java/TileItem.java +++ b/runescape-client/src/main/java/TileItem.java @@ -1,177 +1,342 @@ +import java.util.Iterator; 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("cb") +@ObfuscatedName("ct") @Implements("TileItem") public final class TileItem extends Entity { - @ObfuscatedName("m") - static byte[][][] field1273; - @ObfuscatedName("k") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = -1111898775 - ) - @Export("musicTrackGroupId") - public static int musicTrackGroupId; - @ObfuscatedName("ip") - @ObfuscatedGetter( - intValue = 1784149291 - ) - @Export("oculusOrbFocalPointX") - static int oculusOrbFocalPointX; - @ObfuscatedName("f") - @ObfuscatedGetter( - intValue = -459870843 + intValue = 1316978929 ) @Export("id") int id; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 724722271 + intValue = 277715035 ) @Export("quantity") int quantity; TileItem() { - } // L: 11 + } - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( descriptor = "(I)Leh;", - garbageValue = "-2070677844" + garbageValue = "-1814248977" ) @Export("getModel") protected final Model getModel() { - return AbstractWorldMapData.ItemDefinition_get(this.id).getModel(this.quantity); // L: 14 + return SecureRandomCallable.ItemDefinition_get(this.id).getModel(this.quantity); } - @ObfuscatedName("f") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(I)[Lik;", - garbageValue = "2051989358" + descriptor = "(IB)Lik;", + garbageValue = "93" ) - public static StudioGame[] method2237() { - return new StudioGame[]{StudioGame.runescape, StudioGame.game3, StudioGame.game5, StudioGame.oldscape, StudioGame.game4, StudioGame.stellardawn}; // L: 17 - } - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(II)Lju;", - garbageValue = "458582933" - ) - @Export("getParamDefinition") - public static ParamDefinition getParamDefinition(int var0) { - ParamDefinition var1 = (ParamDefinition)ParamDefinition.ParamDefinition_cached.get((long)var0); // L: 21 - if (var1 != null) { // L: 22 + @Export("SpotAnimationDefinition_get") + public static SpotAnimationDefinition SpotAnimationDefinition_get(int var0) { + SpotAnimationDefinition var1 = (SpotAnimationDefinition)SpotAnimationDefinition.SpotAnimationDefinition_cached.get((long)var0); + if (var1 != null) { return var1; } else { - byte[] var2 = ParamDefinition.ParamDefinition_archive.takeFile(11, var0); // L: 23 - var1 = new ParamDefinition(); // L: 24 - if (var2 != null) { // L: 25 + byte[] var2 = SpotAnimationDefinition.SpotAnimationDefinition_archive.takeFile(13, var0); + var1 = new SpotAnimationDefinition(); + var1.id = var0; + if (var2 != null) { var1.decode(new Buffer(var2)); } - var1.postDecode(); // L: 26 - ParamDefinition.ParamDefinition_cached.put(var1, (long)var0); // L: 27 - return var1; // L: 28 + SpotAnimationDefinition.SpotAnimationDefinition_cached.put(var1, (long)var0); + return var1; } } - @ObfuscatedName("f") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lks;B)V", - garbageValue = "43" + descriptor = "(IIIS)Lcs;", + garbageValue = "-4905" ) - @Export("updatePlayer") - static final void updatePlayer(PacketBuffer var0) { - var0.importIndex(); // L: 37 - int var1 = Client.localPlayerIndex; // L: 38 - Player var2 = PlayerType.localPlayer = Client.players[var1] = new Player(); // L: 39 - var2.index = var1; // L: 40 - int var3 = var0.readBits(30); // L: 41 - byte var4 = (byte)(var3 >> 28); // L: 42 - int var5 = var3 >> 14 & 16383; // L: 43 - int var6 = var3 & 16383; // L: 44 - var2.pathX[0] = var5 - FloorDecoration.baseX; // L: 45 - var2.x = (var2.pathX[0] << 7) + (var2.transformedSize() << 6); // L: 46 - var2.pathY[0] = var6 - WorldMapData_0.baseY; // L: 47 - var2.y = (var2.pathY[0] << 7) + (var2.transformedSize() << 6); // L: 48 - GrandExchangeOfferUnitPriceComparator.Client_plane = var2.plane = var4; // L: 49 - if (Players.field1284[var1] != null) { // L: 50 - var2.read(Players.field1284[var1]); - } + @Export("getWorldMapScript") + static Script getWorldMapScript(int var0, int var1, int var2) { + int var3 = (var1 << 8) + var0; + Script var6 = (Script)Script.Script_cached.get((long)(var3 << 16)); + Script var5; + if (var6 != null) { + var5 = var6; + } else { + String var7 = String.valueOf(var3); + int var8 = PacketBufferNode.archive12.getGroupId(var7); + if (var8 == -1) { + var5 = null; + } else { + label58: { + byte[] var9 = PacketBufferNode.archive12.takeFileFlat(var8); + if (var9 != null) { + if (var9.length <= 1) { + var5 = null; + break label58; + } - Players.Players_count = 0; // L: 51 - Players.Players_indices[++Players.Players_count - 1] = var1; // L: 52 - Players.field1282[var1] = 0; // L: 53 - Players.Players_emptyIdxCount = 0; // L: 54 + var6 = Actor.newScript(var9); + if (var6 != null) { + Script.Script_cached.put(var6, (long)(var3 << 16)); + var5 = var6; + break label58; + } + } - for (int var7 = 1; var7 < 2048; ++var7) { // L: 55 - if (var1 != var7) { // L: 56 - int var8 = var0.readBits(18); // L: 57 - int var9 = var8 >> 16; // L: 58 - int var10 = var8 >> 8 & 597; // L: 59 - int var11 = var8 & 597; // L: 60 - Players.Players_regions[var7] = (var10 << 14) + var11 + (var9 << 28); // L: 61 - Players.Players_orientations[var7] = 0; // L: 62 - Players.Players_targetIndices[var7] = -1; // L: 63 - Players.Players_emptyIndices[++Players.Players_emptyIdxCount - 1] = var7; // L: 64 - Players.field1282[var7] = 0; // L: 65 + var5 = null; + } } } - var0.exportIndex(); // L: 67 - } // L: 68 + if (var5 != null) { + return var5; + } else { + int var4 = MusicPatchPcmStream.method3954(var2, var0); + Script var12 = (Script)Script.Script_cached.get((long)(var4 << 16)); + Script var13; + if (var12 != null) { + var13 = var12; + } else { + String var14 = String.valueOf(var4); + int var10 = PacketBufferNode.archive12.getGroupId(var14); + if (var10 == -1) { + var13 = null; + } else { + byte[] var11 = PacketBufferNode.archive12.takeFileFlat(var10); + if (var11 != null) { + if (var11.length <= 1) { + var13 = null; + return var13 != null ? var13 : null; + } - @ObfuscatedName("e") + var12 = Actor.newScript(var11); + if (var12 != null) { + Script.Script_cached.put(var12, (long)(var4 << 16)); + var13 = var12; + return var13 != null ? var13 : null; + } + } + + var13 = null; + } + } + + return var13 != null ? var13 : null; + } + } + + @ObfuscatedName("p") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "181206884" + garbageValue = "-263304274" ) - public static void method2239() { - NPCDefinition.NpcDefinition_cached.clear(); // L: 266 - NPCDefinition.NpcDefinition_cachedModels.clear(); // L: 267 - } // L: 268 + static void method2189() { + Iterator var0 = Messages.Messages_hashTable.iterator(); - @ObfuscatedName("jx") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "1638276370" - ) - static boolean method2235(int var0) { - for (int var1 = 0; var1 < Client.field902; ++var1) { // L: 10802 - if (Client.field904[var1] == var0) { // L: 10803 - return true; - } + while (var0.hasNext()) { + Message var1 = (Message)var0.next(); + var1.clearIsFromFriend(); } - return false; // L: 10805 } - @ObfuscatedName("jr") + @ObfuscatedName("o") @ObfuscatedSignature( - descriptor = "(IIIILlc;Lho;I)V", - garbageValue = "1898087966" + descriptor = "(I)V", + garbageValue = "-1747466644" ) - @Export("drawSpriteOnMinimap") - static final void drawSpriteOnMinimap(int var0, int var1, int var2, int var3, Sprite var4, SpriteMask var5) { - if (var4 != null) { // L: 11469 - int var6 = Client.camAngleY & 2047; // L: 11470 - int var7 = var3 * var3 + var2 * var2; // L: 11471 - if (var7 <= 6400) { // L: 11472 - int var8 = Rasterizer3D.Rasterizer3D_sine[var6]; // L: 11473 - int var9 = Rasterizer3D.Rasterizer3D_cosine[var6]; // L: 11474 - int var10 = var9 * var2 + var3 * var8 >> 16; // L: 11475 - int var11 = var3 * var9 - var8 * var2 >> 16; // L: 11476 - if (var7 > 2500) { - var4.method6296(var10 + var5.width / 2 - var4.width / 2, var5.height / 2 - var11 - var4.height / 2, var0, var1, var5.width, var5.height, var5.xStarts, var5.xWidths); // L: 11477 - } else { - var4.drawTransBgAt(var0 + var10 + var5.width / 2 - var4.width / 2, var5.height / 2 + var1 - var11 - var4.height / 2); // L: 11478 - } + public static void method2187() { + ItemDefinition.ItemDefinition_cached.clear(); + ItemDefinition.ItemDefinition_cachedModels.clear(); + ItemDefinition.ItemDefinition_cachedSprites.clear(); + } + @ObfuscatedName("jl") + @ObfuscatedSignature( + descriptor = "(Ljd;IIIS)V", + garbageValue = "9349" + ) + @Export("addNpcToMenu") + static final void addNpcToMenu(NPCDefinition var0, int var1, int var2, int var3) { + if (Client.menuOptionsCount < 400) { + if (var0.transforms != null) { + var0 = var0.transform(); + } + + if (var0 != null) { + if (var0.isInteractable) { + if (!var0.isFollower || Client.followerIndex == var1) { + String var4 = var0.name; + int var7; + int var8; + if (var0.combatLevel != 0) { + var7 = var0.combatLevel; + var8 = PlayerAppearance.localPlayer.combatLevel; + int var9 = var8 - var7; + String var6; + if (var9 < -9) { + var6 = class23.colorStartTag(16711680); + } else if (var9 < -6) { + var6 = class23.colorStartTag(16723968); + } else if (var9 < -3) { + var6 = class23.colorStartTag(16740352); + } else if (var9 < 0) { + var6 = class23.colorStartTag(16756736); + } else if (var9 > 9) { + var6 = class23.colorStartTag(65280); + } else if (var9 > 6) { + var6 = class23.colorStartTag(4259584); + } else if (var9 > 3) { + var6 = class23.colorStartTag(8453888); + } else if (var9 > 0) { + var6 = class23.colorStartTag(12648192); + } else { + var6 = class23.colorStartTag(16776960); + } + + var4 = var4 + var6 + " " + " (" + "level-" + var0.combatLevel + ")"; + } + + if (var0.isFollower && Client.followerOpsLowPriority) { + WorldMapRegion.insertMenuItemNoShift("Examine", class23.colorStartTag(16776960) + var4, 1003, var1, var2, var3); + } + + if (Client.isItemSelected == 1) { + WorldMapRegion.insertMenuItemNoShift("Use", Client.selectedItemName + " " + "->" + " " + class23.colorStartTag(16776960) + var4, 7, var1, var2, var3); + } else if (Client.isSpellSelected) { + if ((Player.selectedSpellFlags & 2) == 2) { + WorldMapRegion.insertMenuItemNoShift(Client.selectedSpellActionName, Client.selectedSpellName + " " + "->" + " " + class23.colorStartTag(16776960) + var4, 8, var1, var2, var3); + } + } else { + int var10 = var0.isFollower && Client.followerOpsLowPriority ? 2000 : 0; + String[] var11 = var0.actions; + if (var11 != null) { + for (var7 = 4; var7 >= 0; --var7) { + if (var11[var7] != null && !var11[var7].equalsIgnoreCase("Attack")) { + var8 = 0; + if (var7 == 0) { + var8 = var10 + 9; + } + + if (var7 == 1) { + var8 = var10 + 10; + } + + if (var7 == 2) { + var8 = var10 + 11; + } + + if (var7 == 3) { + var8 = var10 + 12; + } + + if (var7 == 4) { + var8 = var10 + 13; + } + + WorldMapRegion.insertMenuItemNoShift(var11[var7], class23.colorStartTag(16776960) + var4, var8, var1, var2, var3); + } + } + } + + if (var11 != null) { + for (var7 = 4; var7 >= 0; --var7) { + if (var11[var7] != null && var11[var7].equalsIgnoreCase("Attack")) { + short var12 = 0; + if (AttackOption.AttackOption_hidden != Client.npcAttackOption) { + if (Client.npcAttackOption == AttackOption.AttackOption_alwaysRightClick || AttackOption.AttackOption_dependsOnCombatLevels == Client.npcAttackOption && var0.combatLevel > PlayerAppearance.localPlayer.combatLevel) { + var12 = 2000; + } + + var8 = 0; + if (var7 == 0) { + var8 = var12 + 9; + } + + if (var7 == 1) { + var8 = var12 + 10; + } + + if (var7 == 2) { + var8 = var12 + 11; + } + + if (var7 == 3) { + var8 = var12 + 12; + } + + if (var7 == 4) { + var8 = var12 + 13; + } + + WorldMapRegion.insertMenuItemNoShift(var11[var7], class23.colorStartTag(16776960) + var4, var8, var1, var2, var3); + } + } + } + } + + if (!var0.isFollower || !Client.followerOpsLowPriority) { + WorldMapRegion.insertMenuItemNoShift("Examine", class23.colorStartTag(16776960) + var4, 1003, var1, var2, var3); + } + } + + } + } } } - } // L: 11479 + } + + @ObfuscatedName("jp") + @ObfuscatedSignature( + descriptor = "(Lhe;IIZB)V", + garbageValue = "-18" + ) + @Export("alignWidgetSize") + static void alignWidgetSize(Widget var0, int var1, int var2, boolean var3) { + int var4 = var0.width; + int var5 = var0.height; + if (var0.widthAlignment == 0) { + var0.width = var0.rawWidth; + } else if (var0.widthAlignment == 1) { + var0.width = var1 - var0.rawWidth; + } else if (var0.widthAlignment == 2) { + var0.width = var0.rawWidth * var1 >> 14; + } + + if (var0.heightAlignment == 0) { + var0.height = var0.rawHeight; + } else if (var0.heightAlignment == 1) { + var0.height = var2 - var0.rawHeight; + } else if (var0.heightAlignment == 2) { + var0.height = var2 * var0.rawHeight >> 14; + } + + if (var0.widthAlignment == 4) { + var0.width = var0.height * var0.field2660 / var0.field2604; + } + + if (var0.heightAlignment == 4) { + var0.height = var0.field2604 * var0.width / var0.field2660; + } + + if (var0.contentType == 1337) { + Client.viewportWidget = var0; + } + + if (var3 && var0.onResize != null && (var4 != var0.width || var5 != var0.height)) { + ScriptEvent var6 = new ScriptEvent(); + var6.widget = var0; + var6.args = var0.onResize; + Client.scriptEvents.addFirst(var6); + } + + } } diff --git a/runescape-client/src/main/java/TileItemPile.java b/runescape-client/src/main/java/TileItemPile.java index c84578c89b..f86fad04a7 100644 --- a/runescape-client/src/main/java/TileItemPile.java +++ b/runescape-client/src/main/java/TileItemPile.java @@ -1,196 +1,155 @@ -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InvalidClassException; -import java.io.ObjectInputStream; -import java.io.OptionalDataException; -import java.io.StreamCorruptedException; -import java.lang.reflect.Field; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.Reflection; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("dr") +@ObfuscatedName("dz") @Implements("TileItemPile") public final class TileItemPile { - @ObfuscatedName("o") - @Export("Tiles_lightness") - static int[] Tiles_lightness; - @ObfuscatedName("f") + @ObfuscatedName("qq") + @ObfuscatedSignature( + descriptor = "Ldn;" + ) + @Export("decimator") + static Decimator decimator; + @ObfuscatedName("s") + @Export("userHomeDirectory") + public static String userHomeDirectory; + @ObfuscatedName("k") + @Export("BZip2Decompressor_block") + static int[] BZip2Decompressor_block; + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 1480957507 + intValue = 1833908179 ) @Export("tileHeight") int tileHeight; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 2145467321 + intValue = -1901902743 ) @Export("x") int x; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 1424662537 + intValue = 1891717785 ) @Export("y") int y; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lej;" - ) - @Export("second") - Entity second; - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "Lej;" + descriptor = "Ler;" ) @Export("first") Entity first; - @ObfuscatedName("q") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lej;" + descriptor = "Ler;" + ) + @Export("second") + Entity second; + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "Ler;" ) @Export("third") Entity third; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - longValue = 4099834780630391479L + longValue = 7869520931752751385L ) @Export("tag") long tag; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = -350155061 + intValue = -423863603 ) @Export("height") int height; TileItemPile() { - } // L: 13 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(Liw;Liw;Liw;Lgv;I)Z", - garbageValue = "-1153797307" - ) - public static boolean method2909(AbstractArchive var0, AbstractArchive var1, AbstractArchive var2, MidiPcmStream var3) { - class206.musicPatchesArchive = var0; // L: 26 - class206.musicSamplesArchive = var1; // L: 27 - class206.soundEffectsArchive = var2; // L: 28 - class13.midiPcmStream = var3; // L: 29 - return true; // L: 30 } - @ObfuscatedName("b") + @ObfuscatedName("ag") @ObfuscatedSignature( - descriptor = "(Lks;I)V", - garbageValue = "-669198743" + descriptor = "(ILcs;ZI)I", + garbageValue = "716540213" ) - @Export("performReflectionCheck") - public static void performReflectionCheck(PacketBuffer var0) { - ReflectionCheck var1 = (ReflectionCheck)class105.reflectionChecks.last(); // L: 31 - if (var1 != null) { // L: 32 - int var2 = var0.offset; // L: 33 - var0.writeInt(var1.id); // L: 34 + static int method2850(int var0, Script var1, boolean var2) { + int var3; + int var6; + int var9; + if (var0 == ScriptOpcodes.ENUM_STRING) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + EnumDefinition var10 = MusicPatchNode.getEnum(var3); + if (var10.outputType != 's') { + } - for (int var3 = 0; var3 < var1.size; ++var3) { // L: 35 - if (var1.creationErrors[var3] != 0) { // L: 36 - var0.writeByte(var1.creationErrors[var3]); // L: 37 - } else { - try { - int var4 = var1.operations[var3]; // L: 41 - Field var5; - int var6; - if (var4 == 0) { // L: 42 - var5 = var1.fields[var3]; // L: 43 - var6 = Reflection.getInt(var5, (Object)null); // L: 44 - var0.writeByte(0); // L: 45 - var0.writeInt(var6); // L: 46 - } else if (var4 == 1) { // L: 48 - var5 = var1.fields[var3]; // L: 49 - Reflection.setInt(var5, (Object)null, var1.intReplaceValues[var3]); // L: 50 - var0.writeByte(0); // L: 51 - } else if (var4 == 2) { // L: 53 - var5 = var1.fields[var3]; // L: 54 - var6 = var5.getModifiers(); // L: 55 - var0.writeByte(0); // L: 56 - var0.writeInt(var6); // L: 57 - } - - Method var25; - if (var4 != 3) { // L: 59 - if (var4 == 4) { // L: 79 - var25 = var1.methods[var3]; // L: 80 - var6 = var25.getModifiers(); // L: 81 - var0.writeByte(0); // L: 82 - var0.writeInt(var6); // L: 83 - } - } else { - var25 = var1.methods[var3]; // L: 60 - byte[][] var10 = var1.arguments[var3]; // L: 61 - Object[] var7 = new Object[var10.length]; // L: 62 - - for (int var8 = 0; var8 < var10.length; ++var8) { // L: 63 - ObjectInputStream var9 = new ObjectInputStream(new ByteArrayInputStream(var10[var8])); // L: 64 - var7[var8] = var9.readObject(); // L: 65 - } - - Object var11 = Reflection.invoke(var25, (Object)null, var7); // L: 67 - if (var11 == null) { // L: 68 - var0.writeByte(0); - } else if (var11 instanceof Number) { // L: 69 - var0.writeByte(1); // L: 70 - var0.writeLong(((Number)var11).longValue()); // L: 71 - } else if (var11 instanceof String) { // L: 73 - var0.writeByte(2); // L: 74 - var0.writeStringCp1252NullTerminated((String)var11); // L: 75 - } else { - var0.writeByte(4); // L: 77 - } - } - } catch (ClassNotFoundException var13) { // L: 86 - var0.writeByte(-10); // L: 87 - } catch (InvalidClassException var14) { // L: 89 - var0.writeByte(-11); // L: 90 - } catch (StreamCorruptedException var15) { // L: 92 - var0.writeByte(-12); // L: 93 - } catch (OptionalDataException var16) { // L: 95 - var0.writeByte(-13); // L: 96 - } catch (IllegalAccessException var17) { // L: 98 - var0.writeByte(-14); // L: 99 - } catch (IllegalArgumentException var18) { // L: 101 - var0.writeByte(-15); // L: 102 - } catch (InvocationTargetException var19) { // L: 104 - var0.writeByte(-16); // L: 105 - } catch (SecurityException var20) { // L: 107 - var0.writeByte(-17); // L: 108 - } catch (IOException var21) { // L: 110 - var0.writeByte(-18); // L: 111 - } catch (NullPointerException var22) { // L: 113 - var0.writeByte(-19); // L: 114 - } catch (Exception var23) { // L: 116 - var0.writeByte(-20); // L: 117 - } catch (Throwable var24) { // L: 119 - var0.writeByte(-21); // L: 120 - } + for (var6 = 0; var6 < var10.outputCount; ++var6) { + if (var9 == var10.keys[var6]) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var10.strVals[var6]; + var10 = null; + break; } } - var0.writeCrc(var2); // L: 123 - var1.remove(); // L: 124 - } - } // L: 125 + if (var10 != null) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var10.defaultStr; + } - @ObfuscatedName("hu") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-47736046" - ) - static void method2908() { - KitDefinition.method4634(KeyHandler.menuWidth / 2 + Coord.menuX, WorldMapArea.menuY); // L: 7891 - } // L: 7892 + return 1; + } else if (var0 != ScriptOpcodes.ENUM) { + if (var0 == ScriptOpcodes.ENUM_GETOUTPUTCOUNT) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + EnumDefinition var4 = MusicPatchNode.getEnum(var3); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var4.size(); + return 1; + } else { + return 2; + } + } else { + VarcInt.Interpreter_intStackSize -= 4; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + int var5 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 2]; + var6 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 3]; + EnumDefinition var7 = MusicPatchNode.getEnum(var5); + if (var3 == var7.inputType && var9 == var7.outputType) { + for (int var8 = 0; var8 < var7.outputCount; ++var8) { + if (var6 == var7.keys[var8]) { + if (var9 == 115) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var7.strVals[var8]; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var7.intVals[var8]; + } + + var7 = null; + break; + } + } + + if (var7 != null) { + if (var9 == 115) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var7.defaultStr; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var7.defaultInt; + } + } + + return 1; + } else { + if (var9 == 115) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = "null"; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } + } + } } diff --git a/runescape-client/src/main/java/TileModel.java b/runescape-client/src/main/java/TileModel.java index b2e86fed03..a192bf3654 100644 --- a/runescape-client/src/main/java/TileModel.java +++ b/runescape-client/src/main/java/TileModel.java @@ -5,99 +5,99 @@ import net.runelite.mapping.ObfuscatedName; @ObfuscatedName("eq") @Implements("TileModel") public final class TileModel { - @ObfuscatedName("r") - static int[] field1628; - @ObfuscatedName("y") - static int[] field1634; - @ObfuscatedName("s") - static int[] field1630; - @ObfuscatedName("j") - static int[] field1627; - @ObfuscatedName("w") - static int[] field1632; - @ObfuscatedName("v") - static final int[][] field1633; - @ObfuscatedName("d") - static final int[][] field1620; @ObfuscatedName("f") + static int[] field1618; + @ObfuscatedName("a") + static int[] field1619; + @ObfuscatedName("b") + static int[] field1610; + @ObfuscatedName("y") + static int[] field1621; + @ObfuscatedName("r") + static int[] field1622; + @ObfuscatedName("q") + static final int[][] field1620; + @ObfuscatedName("g") + static final int[][] field1603; + @ObfuscatedName("h") @Export("vertexX") int[] vertexX; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("vertexY") int[] vertexY; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("vertexZ") int[] vertexZ; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("triangleColorA") int[] triangleColorA; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("triangleColorB") int[] triangleColorB; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("triangleColorC") int[] triangleColorC; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("faceX") int[] faceX; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("faceY") int[] faceY; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("faceZ") int[] faceZ; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("triangleTextureId") int[] triangleTextureId; - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("isFlat") boolean isFlat; - @ObfuscatedName("o") + @ObfuscatedName("e") @Export("shape") int shape; - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("rotation") int rotation; - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("underlayRgb") int underlayRgb; - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("overlayRgb") int overlayRgb; static { - field1628 = new int[6]; // L: 21 - field1634 = new int[6]; // L: 22 - field1630 = new int[6]; // L: 23 - field1627 = new int[6]; // L: 24 - field1632 = new int[6]; // L: 25 - field1633 = new int[][]{{1, 3, 5, 7}, {1, 3, 5, 7}, {1, 3, 5, 7}, {1, 3, 5, 7, 6}, {1, 3, 5, 7, 6}, {1, 3, 5, 7, 6}, {1, 3, 5, 7, 6}, {1, 3, 5, 7, 2, 6}, {1, 3, 5, 7, 2, 8}, {1, 3, 5, 7, 2, 8}, {1, 3, 5, 7, 11, 12}, {1, 3, 5, 7, 11, 12}, {1, 3, 5, 7, 13, 14}}; // L: 26 - field1620 = new int[][]{{0, 1, 2, 3, 0, 0, 1, 3}, {1, 1, 2, 3, 1, 0, 1, 3}, {0, 1, 2, 3, 1, 0, 1, 3}, {0, 0, 1, 2, 0, 0, 2, 4, 1, 0, 4, 3}, {0, 0, 1, 4, 0, 0, 4, 3, 1, 1, 2, 4}, {0, 0, 4, 3, 1, 0, 1, 2, 1, 0, 2, 4}, {0, 1, 2, 4, 1, 0, 1, 4, 1, 0, 4, 3}, {0, 4, 1, 2, 0, 4, 2, 5, 1, 0, 4, 5, 1, 0, 5, 3}, {0, 4, 1, 2, 0, 4, 2, 3, 0, 4, 3, 5, 1, 0, 4, 5}, {0, 0, 4, 5, 1, 4, 1, 2, 1, 4, 2, 3, 1, 4, 3, 5}, {0, 0, 1, 5, 0, 1, 4, 5, 0, 1, 2, 4, 1, 0, 5, 3, 1, 5, 4, 3, 1, 4, 2, 3}, {1, 0, 1, 5, 1, 1, 4, 5, 1, 1, 2, 4, 0, 0, 5, 3, 0, 5, 4, 3, 0, 4, 2, 3}, {1, 0, 5, 4, 1, 0, 1, 5, 0, 0, 4, 3, 0, 4, 5, 3, 0, 5, 2, 3, 0, 1, 2, 5}}; // L: 41 + field1618 = new int[6]; + field1619 = new int[6]; + field1610 = new int[6]; + field1621 = new int[6]; + field1622 = new int[6]; + field1620 = new int[][]{{1, 3, 5, 7}, {1, 3, 5, 7}, {1, 3, 5, 7}, {1, 3, 5, 7, 6}, {1, 3, 5, 7, 6}, {1, 3, 5, 7, 6}, {1, 3, 5, 7, 6}, {1, 3, 5, 7, 2, 6}, {1, 3, 5, 7, 2, 8}, {1, 3, 5, 7, 2, 8}, {1, 3, 5, 7, 11, 12}, {1, 3, 5, 7, 11, 12}, {1, 3, 5, 7, 13, 14}}; + field1603 = new int[][]{{0, 1, 2, 3, 0, 0, 1, 3}, {1, 1, 2, 3, 1, 0, 1, 3}, {0, 1, 2, 3, 1, 0, 1, 3}, {0, 0, 1, 2, 0, 0, 2, 4, 1, 0, 4, 3}, {0, 0, 1, 4, 0, 0, 4, 3, 1, 1, 2, 4}, {0, 0, 4, 3, 1, 0, 1, 2, 1, 0, 2, 4}, {0, 1, 2, 4, 1, 0, 1, 4, 1, 0, 4, 3}, {0, 4, 1, 2, 0, 4, 2, 5, 1, 0, 4, 5, 1, 0, 5, 3}, {0, 4, 1, 2, 0, 4, 2, 3, 0, 4, 3, 5, 1, 0, 4, 5}, {0, 0, 4, 5, 1, 4, 1, 2, 1, 4, 2, 3, 1, 4, 3, 5}, {0, 0, 1, 5, 0, 1, 4, 5, 0, 1, 2, 4, 1, 0, 5, 3, 1, 5, 4, 3, 1, 4, 2, 3}, {1, 0, 1, 5, 1, 1, 4, 5, 1, 1, 2, 4, 0, 0, 5, 3, 0, 5, 4, 3, 0, 4, 2, 3}, {1, 0, 5, 4, 1, 0, 1, 5, 0, 0, 4, 3, 0, 4, 5, 3, 0, 5, 2, 3, 0, 1, 2, 5}}; } TileModel(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18, int var19) { - this.isFlat = true; // L: 16 - if (var7 != var6 || var8 != var6 || var9 != var6) { // L: 58 + this.isFlat = true; + if (var7 != var6 || var8 != var6 || var9 != var6) { this.isFlat = false; } - this.shape = var1; // L: 59 - this.rotation = var2; // L: 60 - this.underlayRgb = var18; // L: 61 - this.overlayRgb = var19; // L: 62 - short var20 = 128; // L: 63 - int var21 = var20 / 2; // L: 64 - int var22 = var20 / 4; // L: 65 - int var23 = var20 * 3 / 4; // L: 66 - int[] var24 = field1633[var1]; // L: 67 - int var25 = var24.length; // L: 68 - this.vertexX = new int[var25]; // L: 69 - this.vertexY = new int[var25]; // L: 70 - this.vertexZ = new int[var25]; // L: 71 - int[] var26 = new int[var25]; // L: 72 - int[] var27 = new int[var25]; // L: 73 - int var28 = var20 * var4; // L: 74 - int var29 = var5 * var20; // L: 75 + this.shape = var1; + this.rotation = var2; + this.underlayRgb = var18; + this.overlayRgb = var19; + short var20 = 128; + int var21 = var20 / 2; + int var22 = var20 / 4; + int var23 = var20 * 3 / 4; + int[] var24 = field1620[var1]; + int var25 = var24.length; + this.vertexX = new int[var25]; + this.vertexY = new int[var25]; + this.vertexZ = new int[var25]; + int[] var26 = new int[var25]; + int[] var27 = new int[var25]; + int var28 = var20 * var4; + int var29 = var5 * var20; int var31; int var32; @@ -105,204 +105,204 @@ public final class TileModel { int var34; int var35; int var36; - for (int var30 = 0; var30 < var25; ++var30) { // L: 76 - var31 = var24[var30]; // L: 77 - if ((var31 & 1) == 0 && var31 <= 8) { // L: 78 + for (int var30 = 0; var30 < var25; ++var30) { + var31 = var24[var30]; + if ((var31 & 1) == 0 && var31 <= 8) { var31 = (var31 - var2 - var2 - 1 & 7) + 1; } - if (var31 > 8 && var31 <= 12) { // L: 79 + if (var31 > 8 && var31 <= 12) { var31 = (var31 - 9 - var2 & 3) + 9; } - if (var31 > 12 && var31 <= 16) { // L: 80 + if (var31 > 12 && var31 <= 16) { var31 = (var31 - 13 - var2 & 3) + 13; } - if (var31 == 1) { // L: 86 - var32 = var28; // L: 87 - var33 = var29; // L: 88 - var34 = var6; // L: 89 - var35 = var10; // L: 90 - var36 = var14; // L: 91 - } else if (var31 == 2) { // L: 93 - var32 = var28 + var21; // L: 94 - var33 = var29; // L: 95 - var34 = var7 + var6 >> 1; // L: 96 - var35 = var11 + var10 >> 1; // L: 97 - var36 = var15 + var14 >> 1; // L: 98 - } else if (var31 == 3) { // L: 100 - var32 = var28 + var20; // L: 101 - var33 = var29; // L: 102 - var34 = var7; // L: 103 - var35 = var11; // L: 104 - var36 = var15; // L: 105 - } else if (var31 == 4) { // L: 107 - var32 = var28 + var20; // L: 108 - var33 = var29 + var21; // L: 109 - var34 = var8 + var7 >> 1; // L: 110 - var35 = var11 + var12 >> 1; // L: 111 - var36 = var15 + var16 >> 1; // L: 112 - } else if (var31 == 5) { // L: 114 - var32 = var28 + var20; // L: 115 - var33 = var29 + var20; // L: 116 - var34 = var8; // L: 117 - var35 = var12; // L: 118 - var36 = var16; // L: 119 - } else if (var31 == 6) { // L: 121 - var32 = var28 + var21; // L: 122 - var33 = var29 + var20; // L: 123 - var34 = var8 + var9 >> 1; // L: 124 - var35 = var13 + var12 >> 1; // L: 125 - var36 = var17 + var16 >> 1; // L: 126 - } else if (var31 == 7) { // L: 128 - var32 = var28; // L: 129 - var33 = var29 + var20; // L: 130 - var34 = var9; // L: 131 - var35 = var13; // L: 132 - var36 = var17; // L: 133 - } else if (var31 == 8) { // L: 135 - var32 = var28; // L: 136 - var33 = var29 + var21; // L: 137 - var34 = var9 + var6 >> 1; // L: 138 - var35 = var13 + var10 >> 1; // L: 139 - var36 = var17 + var14 >> 1; // L: 140 - } else if (var31 == 9) { // L: 142 - var32 = var28 + var21; // L: 143 - var33 = var29 + var22; // L: 144 - var34 = var7 + var6 >> 1; // L: 145 - var35 = var11 + var10 >> 1; // L: 146 - var36 = var15 + var14 >> 1; // L: 147 - } else if (var31 == 10) { // L: 149 - var32 = var28 + var23; // L: 150 - var33 = var29 + var21; // L: 151 - var34 = var8 + var7 >> 1; // L: 152 - var35 = var11 + var12 >> 1; // L: 153 - var36 = var15 + var16 >> 1; // L: 154 - } else if (var31 == 11) { // L: 156 - var32 = var28 + var21; // L: 157 - var33 = var29 + var23; // L: 158 - var34 = var8 + var9 >> 1; // L: 159 - var35 = var13 + var12 >> 1; // L: 160 - var36 = var17 + var16 >> 1; // L: 161 - } else if (var31 == 12) { // L: 163 - var32 = var28 + var22; // L: 164 - var33 = var29 + var21; // L: 165 - var34 = var9 + var6 >> 1; // L: 166 - var35 = var13 + var10 >> 1; // L: 167 - var36 = var17 + var14 >> 1; // L: 168 - } else if (var31 == 13) { // L: 170 - var32 = var28 + var22; // L: 171 - var33 = var29 + var22; // L: 172 - var34 = var6; // L: 173 - var35 = var10; // L: 174 - var36 = var14; // L: 175 - } else if (var31 == 14) { // L: 177 - var32 = var28 + var23; // L: 178 - var33 = var29 + var22; // L: 179 - var34 = var7; // L: 180 - var35 = var11; // L: 181 - var36 = var15; // L: 182 - } else if (var31 == 15) { // L: 184 - var32 = var28 + var23; // L: 185 - var33 = var29 + var23; // L: 186 - var34 = var8; // L: 187 - var35 = var12; // L: 188 - var36 = var16; // L: 189 + if (var31 == 1) { + var32 = var28; + var33 = var29; + var34 = var6; + var35 = var10; + var36 = var14; + } else if (var31 == 2) { + var32 = var28 + var21; + var33 = var29; + var34 = var7 + var6 >> 1; + var35 = var11 + var10 >> 1; + var36 = var15 + var14 >> 1; + } else if (var31 == 3) { + var32 = var28 + var20; + var33 = var29; + var34 = var7; + var35 = var11; + var36 = var15; + } else if (var31 == 4) { + var32 = var28 + var20; + var33 = var29 + var21; + var34 = var8 + var7 >> 1; + var35 = var11 + var12 >> 1; + var36 = var15 + var16 >> 1; + } else if (var31 == 5) { + var32 = var28 + var20; + var33 = var29 + var20; + var34 = var8; + var35 = var12; + var36 = var16; + } else if (var31 == 6) { + var32 = var28 + var21; + var33 = var29 + var20; + var34 = var8 + var9 >> 1; + var35 = var13 + var12 >> 1; + var36 = var17 + var16 >> 1; + } else if (var31 == 7) { + var32 = var28; + var33 = var29 + var20; + var34 = var9; + var35 = var13; + var36 = var17; + } else if (var31 == 8) { + var32 = var28; + var33 = var29 + var21; + var34 = var9 + var6 >> 1; + var35 = var13 + var10 >> 1; + var36 = var17 + var14 >> 1; + } else if (var31 == 9) { + var32 = var28 + var21; + var33 = var29 + var22; + var34 = var7 + var6 >> 1; + var35 = var11 + var10 >> 1; + var36 = var15 + var14 >> 1; + } else if (var31 == 10) { + var32 = var28 + var23; + var33 = var29 + var21; + var34 = var8 + var7 >> 1; + var35 = var11 + var12 >> 1; + var36 = var15 + var16 >> 1; + } else if (var31 == 11) { + var32 = var28 + var21; + var33 = var29 + var23; + var34 = var8 + var9 >> 1; + var35 = var13 + var12 >> 1; + var36 = var17 + var16 >> 1; + } else if (var31 == 12) { + var32 = var28 + var22; + var33 = var29 + var21; + var34 = var9 + var6 >> 1; + var35 = var13 + var10 >> 1; + var36 = var17 + var14 >> 1; + } else if (var31 == 13) { + var32 = var28 + var22; + var33 = var29 + var22; + var34 = var6; + var35 = var10; + var36 = var14; + } else if (var31 == 14) { + var32 = var28 + var23; + var33 = var29 + var22; + var34 = var7; + var35 = var11; + var36 = var15; + } else if (var31 == 15) { + var32 = var28 + var23; + var33 = var29 + var23; + var34 = var8; + var35 = var12; + var36 = var16; } else { - var32 = var28 + var22; // L: 192 - var33 = var29 + var23; // L: 193 - var34 = var9; // L: 194 - var35 = var13; // L: 195 - var36 = var17; // L: 196 + var32 = var28 + var22; + var33 = var29 + var23; + var34 = var9; + var35 = var13; + var36 = var17; } - this.vertexX[var30] = var32; // L: 198 - this.vertexY[var30] = var34; // L: 199 - this.vertexZ[var30] = var33; // L: 200 - var26[var30] = var35; // L: 201 - var27[var30] = var36; // L: 202 + this.vertexX[var30] = var32; + this.vertexY[var30] = var34; + this.vertexZ[var30] = var33; + var26[var30] = var35; + var27[var30] = var36; } - int[] var38 = field1620[var1]; // L: 204 - var31 = var38.length / 4; // L: 205 - this.faceX = new int[var31]; // L: 206 - this.faceY = new int[var31]; // L: 207 - this.faceZ = new int[var31]; // L: 208 - this.triangleColorA = new int[var31]; // L: 209 - this.triangleColorB = new int[var31]; // L: 210 - this.triangleColorC = new int[var31]; // L: 211 - if (var3 != -1) { // L: 212 + int[] var38 = field1603[var1]; + var31 = var38.length / 4; + this.faceX = new int[var31]; + this.faceY = new int[var31]; + this.faceZ = new int[var31]; + this.triangleColorA = new int[var31]; + this.triangleColorB = new int[var31]; + this.triangleColorC = new int[var31]; + if (var3 != -1) { this.triangleTextureId = new int[var31]; } - var32 = 0; // L: 213 + var32 = 0; - for (var33 = 0; var33 < var31; ++var33) { // L: 214 - var34 = var38[var32]; // L: 215 - var35 = var38[var32 + 1]; // L: 216 - var36 = var38[var32 + 2]; // L: 217 - int var37 = var38[var32 + 3]; // L: 218 - var32 += 4; // L: 219 - if (var35 < 4) { // L: 220 + for (var33 = 0; var33 < var31; ++var33) { + var34 = var38[var32]; + var35 = var38[var32 + 1]; + var36 = var38[var32 + 2]; + int var37 = var38[var32 + 3]; + var32 += 4; + if (var35 < 4) { var35 = var35 - var2 & 3; } - if (var36 < 4) { // L: 221 + if (var36 < 4) { var36 = var36 - var2 & 3; } - if (var37 < 4) { // L: 222 + if (var37 < 4) { var37 = var37 - var2 & 3; } - this.faceX[var33] = var35; // L: 223 - this.faceY[var33] = var36; // L: 224 - this.faceZ[var33] = var37; // L: 225 - if (var34 == 0) { // L: 226 - this.triangleColorA[var33] = var26[var35]; // L: 227 - this.triangleColorB[var33] = var26[var36]; // L: 228 - this.triangleColorC[var33] = var26[var37]; // L: 229 - if (this.triangleTextureId != null) { // L: 230 + this.faceX[var33] = var35; + this.faceY[var33] = var36; + this.faceZ[var33] = var37; + if (var34 == 0) { + this.triangleColorA[var33] = var26[var35]; + this.triangleColorB[var33] = var26[var36]; + this.triangleColorC[var33] = var26[var37]; + if (this.triangleTextureId != null) { this.triangleTextureId[var33] = -1; } } else { - this.triangleColorA[var33] = var27[var35]; // L: 233 - this.triangleColorB[var33] = var27[var36]; // L: 234 - this.triangleColorC[var33] = var27[var37]; // L: 235 - if (this.triangleTextureId != null) { // L: 236 + this.triangleColorA[var33] = var27[var35]; + this.triangleColorB[var33] = var27[var36]; + this.triangleColorC[var33] = var27[var37]; + if (this.triangleTextureId != null) { this.triangleTextureId[var33] = var3; } } } - var33 = var6; // L: 239 - var34 = var7; // L: 240 - if (var7 < var6) { // L: 241 + var33 = var6; + var34 = var7; + if (var7 < var6) { var33 = var7; } - if (var7 > var7) { // L: 242 + if (var7 > var7) { var34 = var7; } - if (var8 < var33) { // L: 243 + if (var8 < var33) { var33 = var8; } - if (var8 > var34) { // L: 244 + if (var8 > var34) { var34 = var8; } - if (var9 < var33) { // L: 245 + if (var9 < var33) { var33 = var9; } - if (var9 > var34) { // L: 246 + if (var9 > var34) { var34 = var9; } - var33 /= 14; // L: 247 - var34 /= 14; // L: 248 - } // L: 249 + var33 /= 14; + var34 /= 14; + } } diff --git a/runescape-client/src/main/java/TilePaint.java b/runescape-client/src/main/java/TilePaint.java index 5c47a36967..866105946c 100644 --- a/runescape-client/src/main/java/TilePaint.java +++ b/runescape-client/src/main/java/TilePaint.java @@ -4,206 +4,160 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("eu") +@ObfuscatedName("ew") @Implements("TilePaint") public final class TilePaint { - @ObfuscatedName("f") + @ObfuscatedName("dt") + @ObfuscatedSignature( + descriptor = "Lil;" + ) + @Export("archive0") + static Archive archive0; + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = -235685251 + intValue = 624265355 ) @Export("swColor") int swColor; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 1377191477 + intValue = 110092511 ) @Export("seColor") int seColor; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1254090335 + intValue = -722994813 ) @Export("neColor") int neColor; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -156684907 + intValue = -401882753 ) @Export("nwColor") int nwColor; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -1065902093 + intValue = -1831175523 ) @Export("texture") int texture; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("isFlat") boolean isFlat; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -1963077615 + intValue = -2137249819 ) @Export("rgb") int rgb; TilePaint(int var1, int var2, int var3, int var4, int var5, int var6, boolean var7) { - this.isFlat = true; // L: 9 - this.swColor = var1; // L: 13 - this.seColor = var2; // L: 14 - this.neColor = var3; // L: 15 - this.nwColor = var4; // L: 16 - this.texture = var5; // L: 17 - this.rgb = var6; // L: 18 - this.isFlat = var7; // L: 19 - } // L: 20 - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(Liw;Liw;Ljava/lang/String;Ljava/lang/String;I)Lkq;", - garbageValue = "2122951194" - ) - public static Font method3210(AbstractArchive var0, AbstractArchive var1, String var2, String var3) { - int var4 = var0.getGroupId(var2); // L: 166 - int var5 = var0.getFileId(var4, var3); // L: 167 - byte[] var8 = var0.takeFile(var4, var5); // L: 172 - boolean var7; - if (var8 == null) { // L: 173 - var7 = false; // L: 174 - } else { - class217.SpriteBuffer_decode(var8); // L: 177 - var7 = true; // L: 178 - } - - Font var6; - if (!var7) { // L: 180 - var6 = null; // L: 181 - } else { - var6 = UrlRequester.method3430(var1.takeFile(var4, var5)); // L: 184 - } - - return var6; // L: 186 + this.isFlat = true; + this.swColor = var1; + this.seColor = var2; + this.neColor = var3; + this.nwColor = var4; + this.texture = var5; + this.rgb = var6; + this.isFlat = var7; } - @ObfuscatedName("e") + @ObfuscatedName("gv") @ObfuscatedSignature( - descriptor = "(IIIIIZB)Llc;", - garbageValue = "17" + descriptor = "(Lcx;I)V", + garbageValue = "311945184" ) - @Export("getItemSprite") - public static final Sprite getItemSprite(int var0, int var1, int var2, int var3, int var4, boolean var5) { - if (var1 == -1) { // L: 345 - var4 = 0; - } else if (var4 == 2 && var1 != 1) { // L: 346 - var4 = 1; - } + static final void method3154(Actor var0) { + var0.isWalking = false; + SequenceDefinition var1; + if (var0.movementSequence != -1) { + var1 = ParamDefinition.SequenceDefinition_get(var0.movementSequence); + if (var1 != null && var1.frameIds != null) { + ++var0.movementFrameCycle; + if (var0.movementFrame < var1.frameIds.length && var0.movementFrameCycle > var1.frameLengths[var0.movementFrame]) { + var0.movementFrameCycle = 1; + ++var0.movementFrame; + class225.method4075(var1, var0.movementFrame, var0.x, var0.y); + } - long var6 = ((long)var3 << 42) + (long)var0 + ((long)var1 << 16) + ((long)var2 << 38) + ((long)var4 << 40); // L: 347 - Sprite var8; - if (!var5) { // L: 349 - var8 = (Sprite)ItemDefinition.ItemDefinition_cachedSprites.get(var6); // L: 350 - if (var8 != null) { // L: 351 - return var8; + if (var0.movementFrame >= var1.frameIds.length) { + var0.movementFrameCycle = 0; + var0.movementFrame = 0; + class225.method4075(var1, var0.movementFrame, var0.x, var0.y); + } + } else { + var0.movementSequence = -1; } } - ItemDefinition var9 = AbstractWorldMapData.ItemDefinition_get(var0); // L: 353 - if (var1 > 1 && var9.countobj != null) { // L: 354 - int var10 = -1; // L: 355 - - for (int var11 = 0; var11 < 10; ++var11) { // L: 356 - if (var1 >= var9.countco[var11] && var9.countco[var11] != 0) { // L: 357 - var10 = var9.countobj[var11]; - } + if (var0.spotAnimation != -1 && Client.cycle >= var0.field978) { + if (var0.spotAnimationFrame < 0) { + var0.spotAnimationFrame = 0; } - if (var10 != -1) { // L: 359 - var9 = AbstractWorldMapData.ItemDefinition_get(var10); + int var3 = TileItem.SpotAnimationDefinition_get(var0.spotAnimation).sequence; + if (var3 != -1) { + SequenceDefinition var2 = ParamDefinition.SequenceDefinition_get(var3); + if (var2 != null && var2.frameIds != null) { + ++var0.spotAnimationFrameCycle; + if (var0.spotAnimationFrame < var2.frameIds.length && var0.spotAnimationFrameCycle > var2.frameLengths[var0.spotAnimationFrame]) { + var0.spotAnimationFrameCycle = 1; + ++var0.spotAnimationFrame; + class225.method4075(var2, var0.spotAnimationFrame, var0.x, var0.y); + } + + if (var0.spotAnimationFrame >= var2.frameIds.length && (var0.spotAnimationFrame < 0 || var0.spotAnimationFrame >= var2.frameIds.length)) { + var0.spotAnimation = -1; + } + } else { + var0.spotAnimation = -1; + } + } else { + var0.spotAnimation = -1; } } - Model var19 = var9.getModel(1); // L: 361 - if (var19 == null) { // L: 362 - return null; - } else { - Sprite var20 = null; // L: 363 - if (var9.noteTemplate != -1) { // L: 364 - var20 = getItemSprite(var9.note, 10, 1, 0, 0, true); // L: 365 - if (var20 == null) { // L: 366 - return null; - } - } else if (var9.notedId != -1) { // L: 368 - var20 = getItemSprite(var9.unnotedId, var1, var2, var3, 0, false); // L: 369 - if (var20 == null) { // L: 370 - return null; - } - } else if (var9.placeholderTemplate != -1) { // L: 372 - var20 = getItemSprite(var9.placeholder, var1, 0, 0, 0, false); // L: 373 - if (var20 == null) { // L: 374 - return null; - } + if (var0.sequence != -1 && var0.sequenceDelay <= 1) { + var1 = ParamDefinition.SequenceDefinition_get(var0.sequence); + if (var1.field3560 == 1 && var0.field996 > 0 && var0.field984 <= Client.cycle && var0.field973 < Client.cycle) { + var0.sequenceDelay = 1; + return; } - - int[] var12 = Rasterizer2D.Rasterizer2D_pixels; // L: 376 - int var13 = Rasterizer2D.Rasterizer2D_width; // L: 377 - int var14 = Rasterizer2D.Rasterizer2D_height; // L: 378 - int[] var15 = new int[4]; // L: 379 - Rasterizer2D.Rasterizer2D_getClipArray(var15); // L: 380 - var8 = new Sprite(36, 32); // L: 381 - Rasterizer2D.Rasterizer2D_replace(var8.pixels, 36, 32); // L: 382 - Rasterizer2D.Rasterizer2D_clear(); // L: 383 - Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D(); // L: 384 - Rasterizer3D.method3174(16, 16); // L: 385 - Rasterizer3D.field1794 = false; // L: 386 - if (var9.placeholderTemplate != -1) { // L: 387 - var20.drawTransBgAt(0, 0); - } - - int var16 = var9.zoom2d; // L: 388 - if (var5) { // L: 389 - var16 = (int)((double)var16 * 1.5D); - } else if (var2 == 2) { // L: 390 - var16 = (int)((double)var16 * 1.04D); - } - - int var17 = var16 * Rasterizer3D.Rasterizer3D_sine[var9.xan2d] >> 16; // L: 391 - int var18 = var16 * Rasterizer3D.Rasterizer3D_cosine[var9.xan2d] >> 16; // L: 392 - var19.calculateBoundsCylinder(); // L: 393 - var19.method3064(0, var9.yan2d, var9.zan2d, var9.xan2d, var9.offsetX2d, var19.height / 2 + var17 + var9.offsetY2d, var18 + var9.offsetY2d); // L: 394 - if (var9.notedId != -1) { // L: 395 - var20.drawTransBgAt(0, 0); - } - - if (var2 >= 1) { // L: 396 - var8.outline(1); - } - - if (var2 >= 2) { // L: 397 - var8.outline(16777215); - } - - if (var3 != 0) { // L: 398 - var8.shadow(var3); - } - - Rasterizer2D.Rasterizer2D_replace(var8.pixels, 36, 32); // L: 399 - if (var9.noteTemplate != -1) { // L: 400 - var20.drawTransBgAt(0, 0); - } - - if (var4 == 1 || var4 == 2 && var9.isStackable == 1) { // L: 401 - VerticalAlignment.ItemDefinition_fontPlain11.draw(Strings.inventoryQuantityFormat(var1), 0, 9, 16776960, 1); // L: 402 - } - - if (!var5) { // L: 404 - ItemDefinition.ItemDefinition_cachedSprites.put(var8, var6); - } - - Rasterizer2D.Rasterizer2D_replace(var12, var13, var14); // L: 405 - Rasterizer2D.Rasterizer2D_setClipArray(var15); // L: 406 - Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D(); // L: 407 - Rasterizer3D.field1794 = true; // L: 408 - return var8; // L: 409 } + + if (var0.sequence != -1 && var0.sequenceDelay == 0) { + var1 = ParamDefinition.SequenceDefinition_get(var0.sequence); + if (var1 != null && var1.frameIds != null) { + ++var0.sequenceFrameCycle; + if (var0.sequenceFrame < var1.frameIds.length && var0.sequenceFrameCycle > var1.frameLengths[var0.sequenceFrame]) { + var0.sequenceFrameCycle = 1; + ++var0.sequenceFrame; + class225.method4075(var1, var0.sequenceFrame, var0.x, var0.y); + } + + if (var0.sequenceFrame >= var1.frameIds.length) { + var0.sequenceFrame -= var1.frameCount; + ++var0.field974; + if (var0.field974 >= var1.field3554) { + var0.sequence = -1; + } else if (var0.sequenceFrame >= 0 && var0.sequenceFrame < var1.frameIds.length) { + class225.method4075(var1, var0.sequenceFrame, var0.x, var0.y); + } else { + var0.sequence = -1; + } + } + + var0.isWalking = var1.field3556; + } else { + var0.sequence = -1; + } + } + + if (var0.sequenceDelay > 0) { + --var0.sequenceDelay; + } + } } diff --git a/runescape-client/src/main/java/Tiles.java b/runescape-client/src/main/java/Tiles.java index 228a7f2e67..6d31bb61b9 100644 --- a/runescape-client/src/main/java/Tiles.java +++ b/runescape-client/src/main/java/Tiles.java @@ -3,170 +3,203 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("bw") +@ObfuscatedName("bi") @Implements("Tiles") public final class Tiles { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("Tiles_heights") static int[][][] Tiles_heights; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("Tiles_renderFlags") static byte[][][] Tiles_renderFlags; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1638163549 + intValue = -2047065695 ) @Export("Tiles_minPlane") static int Tiles_minPlane; - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "Lle;" - ) - @Export("titleboxSprite") - static IndexedSprite titleboxSprite; - @ObfuscatedName("q") - static byte[][][] field531; - @ObfuscatedName("j") - static final int[] field533; @ObfuscatedName("w") - static final int[] field534; - @ObfuscatedName("v") - static final int[] field528; - @ObfuscatedName("d") - static final int[] field536; - @ObfuscatedName("a") - static final int[] field535; + static byte[][][] field514; + @ObfuscatedName("t") + static byte[][][] field508; + @ObfuscatedName("p") + static byte[][][] field511; + @ObfuscatedName("y") + static final int[] field512; + @ObfuscatedName("r") + static final int[] field513; + @ObfuscatedName("q") + static final int[] field518; @ObfuscatedName("g") - static final int[] field529; - @ObfuscatedName("h") + static final int[] field515; + @ObfuscatedName("s") + static final int[] field509; + @ObfuscatedName("o") + static final int[] field517; + @ObfuscatedName("k") @ObfuscatedGetter( - intValue = 2130461421 + intValue = -172195291 ) - static int field539; - @ObfuscatedName("i") + static int field516; + @ObfuscatedName("d") @ObfuscatedGetter( - intValue = 1692186847 + intValue = 870257593 ) - static int field540; - @ObfuscatedName("er") - @ObfuscatedSignature( - descriptor = "Lid;" - ) - @Export("archive20") - static Archive archive20; - @ObfuscatedName("im") - @ObfuscatedGetter( - intValue = -1235854871 - ) - static int field542; + static int field510; static { - Tiles_heights = new int[4][105][105]; // L: 16 - Tiles_renderFlags = new byte[4][104][104]; // L: 17 - Tiles_minPlane = 99; // L: 18 - field533 = new int[]{1, 2, 4, 8}; // L: 34 - field534 = new int[]{16, 32, 64, 128}; // L: 35 - field528 = new int[]{1, 0, -1, 0}; - field536 = new int[]{0, -1, 0, 1}; // L: 37 - field535 = new int[]{1, -1, -1, 1}; // L: 38 - field529 = new int[]{-1, -1, 1, 1}; // L: 39 - field539 = (int)(Math.random() * 17.0D) - 8; // L: 40 - field540 = (int)(Math.random() * 33.0D) - 16; // L: 41 + Tiles_heights = new int[4][105][105]; + Tiles_renderFlags = new byte[4][104][104]; + Tiles_minPlane = 99; + field512 = new int[]{1, 2, 4, 8}; + field513 = new int[]{16, 32, 64, 128}; + field518 = new int[]{1, 0, -1, 0}; + field515 = new int[]{0, -1, 0, 1}; + field509 = new int[]{1, -1, -1, 1}; + field517 = new int[]{-1, -1, 1, 1}; + field516 = (int)(Math.random() * 17.0D) - 8; + field510 = (int)(Math.random() * 33.0D) - 16; } - @ObfuscatedName("b") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(CB)Z", - garbageValue = "-86" + descriptor = "(B)[Lgt;", + garbageValue = "47" ) - static final boolean method1223(char var0) { - return var0 == 160 || var0 == ' ' || var0 == '_' || var0 == '-'; // L: 36 + @Export("ServerPacket_values") + public static ServerPacket[] ServerPacket_values() { + return new ServerPacket[]{ServerPacket.field2179, ServerPacket.field2202, ServerPacket.field2141, ServerPacket.field2142, ServerPacket.field2143, ServerPacket.field2144, ServerPacket.field2201, ServerPacket.field2146, ServerPacket.field2182, ServerPacket.field2148, ServerPacket.field2200, ServerPacket.field2150, ServerPacket.field2190, ServerPacket.field2152, ServerPacket.field2139, ServerPacket.field2188, ServerPacket.field2155, ServerPacket.field2156, ServerPacket.field2163, ServerPacket.field2158, ServerPacket.field2159, ServerPacket.field2160, ServerPacket.field2161, ServerPacket.field2162, ServerPacket.field2218, ServerPacket.field2164, ServerPacket.field2165, ServerPacket.field2192, ServerPacket.field2167, ServerPacket.field2212, ServerPacket.field2208, ServerPacket.field2170, ServerPacket.field2171, ServerPacket.field2172, ServerPacket.field2173, ServerPacket.field2174, ServerPacket.field2175, ServerPacket.field2176, ServerPacket.field2140, ServerPacket.field2178, ServerPacket.field2151, ServerPacket.field2180, ServerPacket.field2181, ServerPacket.field2157, ServerPacket.field2166, ServerPacket.field2184, ServerPacket.field2197, ServerPacket.field2186, ServerPacket.field2149, ServerPacket.field2214, ServerPacket.field2189, ServerPacket.field2209, ServerPacket.field2191, ServerPacket.field2145, ServerPacket.field2183, ServerPacket.field2194, ServerPacket.field2195, ServerPacket.field2196, ServerPacket.field2215, ServerPacket.field2198, ServerPacket.field2177, ServerPacket.field2207, ServerPacket.field2154, ServerPacket.field2153, ServerPacket.field2203, ServerPacket.field2204, ServerPacket.field2205, ServerPacket.field2169, ServerPacket.field2206, ServerPacket.field2185, ServerPacket.field2187, ServerPacket.field2210, ServerPacket.field2211, ServerPacket.field2193, ServerPacket.field2213, ServerPacket.field2168, ServerPacket.field2199, ServerPacket.field2216, ServerPacket.field2217, ServerPacket.field2147, ServerPacket.field2219, ServerPacket.field2220, ServerPacket.field2221, ServerPacket.field2222, ServerPacket.field2223, ServerPacket.field2224}; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(CI)Z", - garbageValue = "-1955687589" + descriptor = "(Lib;Lib;ZII)V", + garbageValue = "1438840019" ) - public static boolean method1195(char var0) { - if (var0 >= ' ' && var0 < 127 || var0 > 127 && var0 < 160 || var0 > 160 && var0 <= 255) { // L: 45 - return true; - } else { - if (var0 != 0) { // L: 46 - char[] var1 = class298.cp1252AsciiExtension; // L: 48 - - for (int var2 = 0; var2 < var1.length; ++var2) { // L: 49 - char var3 = var1[var2]; // L: 50 - if (var0 == var3) { // L: 52 - return true; // L: 53 - } - } + static void method1208(AbstractArchive var0, AbstractArchive var1, boolean var2, int var3) { + if (Login.clearLoginScreen) { + if (var3 == 4) { + Login.loginIndex = 4; } - return false; // L: 59 - } - } - - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "(Lks;I)I", - garbageValue = "2087937385" - ) - static int method1220(PacketBuffer var0) { - int var1 = var0.readBits(2); // L: 352 - int var2; - if (var1 == 0) { // L: 354 - var2 = 0; - } else if (var1 == 1) { // L: 355 - var2 = var0.readBits(5); - } else if (var1 == 2) { // L: 356 - var2 = var0.readBits(8); } else { - var2 = var0.readBits(11); // L: 357 - } - - return var2; // L: 358 - } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(ILco;ZB)I", - garbageValue = "45" - ) - static int method1222(int var0, Script var1, boolean var2) { - if (var0 == ScriptOpcodes.GETWINDOWMODE) { // L: 3124 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = UrlRequester.getWindowedMode(); // L: 3125 - return 1; // L: 3126 - } else { - int var3; - if (var0 == ScriptOpcodes.SETWINDOWMODE) { // L: 3128 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3129 - if (var3 == 1 || var3 == 2) { // L: 3130 - class277.setWindowedMode(var3); - } - - return 1; // L: 3131 - } else if (var0 == ScriptOpcodes.GETDEFAULTWINDOWMODE) { // L: 3133 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = GrandExchangeOfferAgeComparator.clientPreferences.windowMode; // L: 3134 - return 1; // L: 3135 - } else if (var0 != ScriptOpcodes.SETDEFAULTWINDOWMODE) { // L: 3137 - if (var0 == 5310) { // L: 3145 - --MilliClock.Interpreter_intStackSize; // L: 3146 - return 1; // L: 3147 - } else { - return 2; // L: 3149 - } + Login.loginIndex = var3; + Rasterizer2D.Rasterizer2D_clear(); + byte[] var4 = var0.takeFileByNames("title.jpg", ""); + class25.leftTitleSprite = WorldMapSection0.convertJpgToSprite(var4); + class224.rightTitleSprite = class25.leftTitleSprite.mirrorHorizontally(); + int var5 = Client.worldProperties; + if ((var5 & 536870912) != 0) { + class224.logoSprite = class51.SpriteBuffer_getIndexedSpriteByName(var1, "logo_deadman_mode", ""); + } else if ((var5 & 1073741824) != 0) { + class224.logoSprite = class51.SpriteBuffer_getIndexedSpriteByName(var1, "logo_seasonal_mode", ""); } else { - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3138 - if (var3 == 1 || var3 == 2) { // L: 3139 - GrandExchangeOfferAgeComparator.clientPreferences.windowMode = var3; // L: 3140 - Tile.savePreferences(); // L: 3141 - } - - return 1; // L: 3143 + class224.logoSprite = class51.SpriteBuffer_getIndexedSpriteByName(var1, "logo", ""); } + + WorldMapEvent.titleboxSprite = class51.SpriteBuffer_getIndexedSpriteByName(var1, "titlebox", ""); + Login.titlebuttonSprite = class51.SpriteBuffer_getIndexedSpriteByName(var1, "titlebutton", ""); + GZipDecompressor.runesSprite = class89.method2123(var1, "runes", ""); + Login.title_muteSprite = class89.method2123(var1, "title_mute", ""); + DirectByteArrayCopier.options_buttons_0Sprite = class51.SpriteBuffer_getIndexedSpriteByName(var1, "options_radio_buttons,0", ""); + AccessFile.field4101 = class51.SpriteBuffer_getIndexedSpriteByName(var1, "options_radio_buttons,4", ""); + ItemContainer.options_buttons_2Sprite = class51.SpriteBuffer_getIndexedSpriteByName(var1, "options_radio_buttons,2", ""); + class204.field2408 = class51.SpriteBuffer_getIndexedSpriteByName(var1, "options_radio_buttons,6", ""); + FriendSystem.field1071 = DirectByteArrayCopier.options_buttons_0Sprite.subWidth; + Players.field1260 = DirectByteArrayCopier.options_buttons_0Sprite.subHeight; + class1.loginScreenRunesAnimation = new LoginScreenAnimation(GZipDecompressor.runesSprite); + if (var2) { + Login.Login_username = ""; + Login.Login_password = ""; + } + + WorldMapSection1.field313 = 0; + SecureRandomCallable.otp = ""; + Login.field1200 = true; + Login.worldSelectOpen = false; + if (!Timer.clientPreferences.titleMusicDisabled) { + WorldMapSectionType.method300(2, class217.archive6, "scape main", "", 255, false); + } else { + SecureRandomCallable.method1220(2); + } + + SoundSystem.method2564(false); + Login.clearLoginScreen = true; + Login.xPadding = (IgnoreList.canvasWidth - 765) / 2; + Login.loginBoxX = Login.xPadding + 202; + Login.loginBoxCenter = Login.loginBoxX + 180; + class25.leftTitleSprite.drawAt(Login.xPadding, 0); + class224.rightTitleSprite.drawAt(Login.xPadding + 382, 0); + class224.logoSprite.drawAt(Login.xPadding + 382 - class224.logoSprite.subWidth / 2, 18); + } + } + + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "(IB)I", + garbageValue = "5" + ) + public static int method1170(int var0) { + long var2 = ViewportMouse.ViewportMouse_entityTags[var0]; + int var1 = (int)(var2 >>> 7 & 127L); + return var1; + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-834710380" + ) + static void method1203() { + Messages.Messages_channels.clear(); + Messages.Messages_hashTable.clear(); + Messages.Messages_queue.clear(); + Messages.Messages_count = 0; + } + + @ObfuscatedName("gx") + @ObfuscatedSignature( + descriptor = "(Lbq;III)V", + garbageValue = "1651593642" + ) + @Export("performPlayerAnimation") + static void performPlayerAnimation(Player var0, int var1, int var2) { + if (var0.sequence == var1 && var1 != -1) { + int var3 = ParamDefinition.SequenceDefinition_get(var1).field3548; + if (var3 == 1) { + var0.sequenceFrame = 0; + var0.sequenceFrameCycle = 0; + var0.sequenceDelay = var2; + var0.field974 = 0; + } + + if (var3 == 2) { + var0.field974 = 0; + } + } else if (var1 == -1 || var0.sequence == -1 || ParamDefinition.SequenceDefinition_get(var1).field3557 >= ParamDefinition.SequenceDefinition_get(var0.sequence).field3557) { + var0.sequence = var1; + var0.sequenceFrame = 0; + var0.sequenceFrameCycle = 0; + var0.sequenceDelay = var2; + var0.field974 = 0; + var0.field996 = var0.pathLength; + } + + } + + @ObfuscatedName("lk") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;S)V", + garbageValue = "2048" + ) + @Export("clanKickUser") + static final void clanKickUser(String var0) { + if (WorldMapArea.clanChat != null) { + PacketBufferNode var1 = ItemContainer.getPacketBufferNode(ClientPacket.field2228, Client.packetWriter.isaacCipher); + var1.packetBuffer.writeByte(FloorDecoration.stringCp1252NullTerminatedByteSize(var0)); + var1.packetBuffer.writeStringCp1252NullTerminated(var0); + Client.packetWriter.addNode(var1); } } } diff --git a/runescape-client/src/main/java/Timer.java b/runescape-client/src/main/java/Timer.java index 4456ea732d..5601ca4d47 100644 --- a/runescape-client/src/main/java/Timer.java +++ b/runescape-client/src/main/java/Timer.java @@ -4,173 +4,179 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jr") +@ObfuscatedName("jc") @Implements("Timer") public class Timer { - @ObfuscatedName("f") - @ObfuscatedGetter( - longValue = 8550403030095862389L + @ObfuscatedName("su") + @ObfuscatedSignature( + descriptor = "Lcd;" ) - long field3604; - @ObfuscatedName("b") + @Export("clientPreferences") + static ClientPreferences clientPreferences; + @ObfuscatedName("h") @ObfuscatedGetter( - longValue = 7994702175123860963L + longValue = 3770281443563997935L ) - long field3607; - @ObfuscatedName("l") - public boolean field3606; - @ObfuscatedName("m") + long field3620; + @ObfuscatedName("v") @ObfuscatedGetter( - longValue = 4133381384365556773L + longValue = -2250207918034291381L ) - long field3608; - @ObfuscatedName("z") + long field3616; + @ObfuscatedName("x") + public boolean field3614; + @ObfuscatedName("w") @ObfuscatedGetter( - longValue = 3557480670410738873L + longValue = -2802156095156479445L ) - long field3605; - @ObfuscatedName("q") - @ObfuscatedGetter( - longValue = 6361595278255869411L - ) - long field3609; - @ObfuscatedName("k") - @ObfuscatedGetter( - intValue = -134378941 - ) - int field3610; - @ObfuscatedName("c") - @ObfuscatedGetter( - intValue = -337124169 - ) - int field3611; - @ObfuscatedName("u") - @ObfuscatedGetter( - intValue = 2101828205 - ) - int field3612; + long field3615; @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 1450803179 + longValue = -1144199365391722153L ) - int field3613; + long field3622; + @ObfuscatedName("j") + @ObfuscatedGetter( + longValue = -6579691889222792449L + ) + long field3613; + @ObfuscatedName("n") + @ObfuscatedGetter( + intValue = 121997523 + ) + int field3618; + @ObfuscatedName("p") + @ObfuscatedGetter( + intValue = -1353523553 + ) + int field3619; + @ObfuscatedName("l") + @ObfuscatedGetter( + intValue = 1070107525 + ) + int field3612; + @ObfuscatedName("z") + @ObfuscatedGetter( + intValue = -1445210843 + ) + int field3621; public Timer() { - this.field3604 = -1L; // L: 7 - this.field3607 = -1L; // L: 8 - this.field3606 = false; // L: 9 - this.field3608 = 0L; // L: 10 - this.field3605 = 0L; // L: 11 - this.field3609 = 0L; // L: 12 - this.field3610 = 0; // L: 13 - this.field3611 = 0; // L: 14 - this.field3612 = 0; // L: 15 - this.field3613 = 0; // L: 16 + this.field3620 = -1L; + this.field3616 = -1L; + this.field3614 = false; + this.field3615 = 0L; + this.field3622 = 0L; + this.field3613 = 0L; + this.field3618 = 0; + this.field3619 = 0; + this.field3612 = 0; + this.field3621 = 0; } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "-12" + garbageValue = "-16" ) - public void method5135() { - this.field3604 = User.currentTimeMillis(); // L: 19 - } // L: 20 + public void method5010() { + this.field3620 = class298.currentTimeMillis(); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "568889217" + garbageValue = "1990101755" ) - public void method5147() { - if (this.field3604 != -1L) { // L: 23 - this.field3605 = User.currentTimeMillis() - this.field3604; // L: 24 - this.field3604 = -1L; // L: 25 + public void method5018() { + if (-1L != this.field3620) { + this.field3622 = class298.currentTimeMillis() - this.field3620; + this.field3620 = -1L; } - } // L: 27 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-391105625" + descriptor = "(IB)V", + garbageValue = "11" ) - public void method5153(int var1) { - this.field3607 = User.currentTimeMillis(); // L: 30 - this.field3610 = var1; // L: 31 - } // L: 32 + public void method5033(int var1) { + this.field3616 = class298.currentTimeMillis(); + this.field3618 = var1; + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(S)V", - garbageValue = "255" + descriptor = "(I)V", + garbageValue = "820461529" ) - public void method5137() { - if (this.field3607 != -1L) { // L: 35 - this.field3608 = User.currentTimeMillis() - this.field3607; // L: 36 - this.field3607 = -1L; // L: 37 + public void method5013() { + if (this.field3616 != -1L) { + this.field3615 = class298.currentTimeMillis() - this.field3616; + this.field3616 = -1L; } - ++this.field3612; // L: 39 - this.field3606 = true; // L: 40 - } // L: 41 + ++this.field3612; + this.field3614 = true; + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "20" + garbageValue = "0" ) - public void method5142() { - this.field3606 = false; // L: 44 - this.field3611 = 0; // L: 45 - } // L: 46 + public void method5014() { + this.field3614 = false; + this.field3619 = 0; + } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1427350248" + garbageValue = "-105042609" ) - public void method5139() { - this.method5137(); // L: 49 - } // L: 50 + public void method5015() { + this.method5013(); + } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-942267659" + descriptor = "(Lkj;I)V", + garbageValue = "1266632335" ) @Export("write") public void write(Buffer var1) { - long var2 = this.field3605; // L: 53 - var2 /= 10L; // L: 55 - if (var2 < 0L) { // L: 56 + long var2 = this.field3622; + var2 /= 10L; + if (var2 < 0L) { var2 = 0L; - } else if (var2 > 65535L) { // L: 57 + } else if (var2 > 65535L) { var2 = 65535L; } - var1.writeShort((int)var2); // L: 58 - long var4 = this.field3608; // L: 60 - var4 /= 10L; // L: 62 - if (var4 < 0L) { // L: 63 + var1.writeShort((int)var2); + long var4 = this.field3615; + var4 /= 10L; + if (var4 < 0L) { var4 = 0L; - } else if (var4 > 65535L) { // L: 64 + } else if (var4 > 65535L) { var4 = 65535L; } - var1.writeShort((int)var4); // L: 65 - long var6 = this.field3609; // L: 67 - var6 /= 10L; // L: 69 - if (var6 < 0L) { // L: 70 + var1.writeShort((int)var4); + long var6 = this.field3613; + var6 /= 10L; + if (var6 < 0L) { var6 = 0L; - } else if (var6 > 65535L) { // L: 71 + } else if (var6 > 65535L) { var6 = 65535L; } - var1.writeShort((int)var6); // L: 72 - var1.writeShort(this.field3610); // L: 74 - var1.writeShort(this.field3611); // L: 75 - var1.writeShort(this.field3612); // L: 76 - var1.writeShort(this.field3613); // L: 77 - } // L: 78 + var1.writeShort((int)var6); + var1.writeShort(this.field3618); + var1.writeShort(this.field3619); + var1.writeShort(this.field3612); + var1.writeShort(this.field3621); + } } diff --git a/runescape-client/src/main/java/TriBool.java b/runescape-client/src/main/java/TriBool.java index 3f2f8d8545..2d38ce28de 100644 --- a/runescape-client/src/main/java/TriBool.java +++ b/runescape-client/src/main/java/TriBool.java @@ -3,34 +3,50 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kz") +@ObfuscatedName("kn") @Implements("TriBool") public class TriBool { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lkz;" + descriptor = "Lkn;" ) @Export("TriBool_unknown") public static final TriBool TriBool_unknown; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lkz;" + descriptor = "Lkn;" ) @Export("TriBool_true") public static final TriBool TriBool_true; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lkz;" + descriptor = "Lkn;" ) @Export("TriBool_false") public static final TriBool TriBool_false; static { - TriBool_unknown = new TriBool(); // L: 4 - TriBool_true = new TriBool(); // L: 5 - TriBool_false = new TriBool(); // L: 6 + TriBool_unknown = new TriBool(); + TriBool_true = new TriBool(); + TriBool_false = new TriBool(); } TriBool() { - } // L: 8 + } + + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "(CI)Z", + garbageValue = "538675617" + ) + @Export("isCharPrintable") + public static boolean isCharPrintable(char var0) { + if (var0 >= ' ' && var0 <= '~') { + return true; + } else if (var0 >= 160 && var0 <= 255) { + return true; + } else { + return var0 == 8364 || var0 == 338 || var0 == 8212 || var0 == 339 || var0 == 376; + } + } } diff --git a/runescape-client/src/main/java/UrlRequest.java b/runescape-client/src/main/java/UrlRequest.java index 56c850760e..7182cfceb6 100644 --- a/runescape-client/src/main/java/UrlRequest.java +++ b/runescape-client/src/main/java/UrlRequest.java @@ -4,96 +4,43 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("eg") +@ObfuscatedName("ei") @Implements("UrlRequest") public class UrlRequest { - @ObfuscatedName("f") + @ObfuscatedName("st") + @Export("foundItemIds") + static short[] foundItemIds; + @ObfuscatedName("h") @Export("url") final URL url; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("isDone0") volatile boolean isDone0; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("response0") volatile byte[] response0; UrlRequest(URL var1) { - this.url = var1; // L: 96 - } // L: 97 + this.url = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-225221070" + descriptor = "(B)Z", + garbageValue = "109" ) @Export("isDone") public boolean isDone() { - return this.isDone0; // L: 100 + return this.isDone0; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(B)[B", - garbageValue = "-126" + descriptor = "(I)[B", + garbageValue = "-884175242" ) @Export("getResponse") public byte[] getResponse() { - return this.response0; // L: 104 + return this.response0; } - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "118404213" - ) - static void method3436() { - Messages.Messages_channels.clear(); // L: 54 - Messages.Messages_hashTable.clear(); // L: 55 - Messages.Messages_queue.clear(); // L: 56 - Messages.Messages_count = 0; // L: 57 - } // L: 58 - - @ObfuscatedName("p") - @ObfuscatedSignature( - descriptor = "(III)Z", - garbageValue = "-697232655" - ) - static final boolean method3437(int var0, int var1) { - ObjectDefinition var2 = ScriptEvent.getObjectDefinition(var0); // L: 499 - if (var1 == 11) { // L: 500 - var1 = 10; - } - - if (var1 >= 5 && var1 <= 8) { - var1 = 4; // L: 501 - } - - return var2.method4764(var1); // L: 502 - } - - @ObfuscatedName("jw") - @ObfuscatedSignature( - descriptor = "(IIIILlc;Lho;I)V", - garbageValue = "1829625632" - ) - @Export("worldToMinimap") - static final void worldToMinimap(int var0, int var1, int var2, int var3, Sprite var4, SpriteMask var5) { - int var6 = var3 * var3 + var2 * var2; // L: 11451 - if (var6 > 4225 && var6 < 90000) { // L: 11452 - int var7 = Client.camAngleY & 2047; // L: 11453 - int var8 = Rasterizer3D.Rasterizer3D_sine[var7]; // L: 11454 - int var9 = Rasterizer3D.Rasterizer3D_cosine[var7]; // L: 11455 - int var10 = var9 * var2 + var3 * var8 >> 16; // L: 11456 - int var11 = var3 * var9 - var8 * var2 >> 16; // L: 11457 - double var12 = Math.atan2((double)var10, (double)var11); // L: 11458 - int var14 = var5.width / 2 - 25; // L: 11459 - int var15 = (int)(Math.sin(var12) * (double)var14); // L: 11460 - int var16 = (int)(Math.cos(var12) * (double)var14); // L: 11461 - byte var17 = 20; // L: 11462 - class219.redHintArrowSprite.method6303(var15 + (var0 + var5.width / 2 - var17 / 2), var5.height / 2 + var1 - var17 / 2 - var16 - 10, var17, var17, 15, 15, var12, 256); // L: 11463 - } else { - TileItem.drawSpriteOnMinimap(var0, var1, var2, var3, var4, var5); // L: 11465 - } - - } // L: 11466 } diff --git a/runescape-client/src/main/java/UrlRequester.java b/runescape-client/src/main/java/UrlRequester.java index 00ee0ea3f8..b640530829 100644 --- a/runescape-client/src/main/java/UrlRequester.java +++ b/runescape-client/src/main/java/UrlRequester.java @@ -11,66 +11,71 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("es") +@ObfuscatedName("ea") @Implements("UrlRequester") public class UrlRequester implements Runnable { - @ObfuscatedName("t") + @ObfuscatedName("ep") @ObfuscatedGetter( - intValue = -2009862837 + intValue = -863739849 ) - @Export("Interpreter_stringStackSize") - static int Interpreter_stringStackSize; - @ObfuscatedName("f") + static int field1963; + @ObfuscatedName("gl") + @ObfuscatedSignature( + descriptor = "Llm;" + ) + @Export("compass") + static Sprite compass; + @ObfuscatedName("h") @Export("thread") final Thread thread; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("isClosed") volatile boolean isClosed; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("requests") Queue requests; public UrlRequester() { - this.requests = new LinkedList(); // L: 15 + this.requests = new LinkedList(); this.thread = new Thread(this); this.thread.setPriority(1); this.thread.start(); } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ljava/net/URL;B)Leg;", - garbageValue = "70" + descriptor = "(Ljava/net/URL;I)Lei;", + garbageValue = "-1941564889" ) @Export("request") public UrlRequest request(URL var1) { - UrlRequest var2 = new UrlRequest(var1); // L: 71 - synchronized(this) { // L: 72 - this.requests.add(var2); // L: 73 - this.notify(); // L: 74 - return var2; // L: 76 + UrlRequest var2 = new UrlRequest(var1); + synchronized(this) { + this.requests.add(var2); + this.notify(); + return var2; } } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1551713219" + descriptor = "(B)V", + garbageValue = "6" ) @Export("close") public void close() { - this.isClosed = true; // L: 80 + this.isClosed = true; try { - synchronized(this) { // L: 82 - this.notify(); // L: 83 - } // L: 84 + synchronized(this) { + this.notify(); + } - this.thread.join(); // L: 85 - } catch (InterruptedException var4) { // L: 87 + this.thread.join(); + } catch (InterruptedException var4) { } - } // L: 88 + } public void run() { while (!this.isClosed) { @@ -81,120 +86,241 @@ public class UrlRequester implements Runnable { if (var1 == null) { try { this.wait(); - } catch (InterruptedException var13) { // L: 33 + } catch (InterruptedException var13) { } continue; } } DataInputStream var2 = null; - URLConnection var3 = null; // L: 38 + URLConnection var3 = null; try { - var3 = var1.url.openConnection(); // L: 40 - var3.setConnectTimeout(5000); // L: 41 - var3.setReadTimeout(5000); // L: 42 - var3.setUseCaches(false); // L: 43 - var3.setRequestProperty("Connection", "close"); // L: 44 - int var7 = var3.getContentLength(); // L: 45 - if (var7 >= 0) { // L: 46 - byte[] var5 = new byte[var7]; // L: 47 - var2 = new DataInputStream(var3.getInputStream()); // L: 48 - var2.readFully(var5); // L: 49 - var1.response0 = var5; // L: 50 + var3 = var1.url.openConnection(); + var3.setConnectTimeout(5000); + var3.setReadTimeout(5000); + var3.setUseCaches(false); + var3.setRequestProperty("Connection", "close"); + int var7 = var3.getContentLength(); + if (var7 >= 0) { + byte[] var5 = new byte[var7]; + var2 = new DataInputStream(var3.getInputStream()); + var2.readFully(var5); + var1.response0 = var5; } - var1.isDone0 = true; // L: 52 - } catch (IOException var14) { // L: 54 - var1.isDone0 = true; // L: 55 + var1.isDone0 = true; + } catch (IOException var14) { + var1.isDone0 = true; } finally { - if (var2 != null) { // L: 58 + if (var2 != null) { var2.close(); } - if (var3 != null && var3 instanceof HttpURLConnection) { // L: 59 - ((HttpURLConnection)var3).disconnect(); // L: 60 + if (var3 != null && var3 instanceof HttpURLConnection) { + ((HttpURLConnection)var3).disconnect(); } } - } catch (Exception var17) { // L: 64 - PacketWriter.RunException_sendStackTrace((String)null, var17); // L: 65 + } catch (Exception var17) { + PlayerAppearance.RunException_sendStackTrace((String)null, var17); } } - } // L: 68 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(I[BLlt;I)V", - garbageValue = "300500560" - ) - static void method3417(int var0, byte[] var1, ArchiveDisk var2) { - ArchiveDiskAction var3 = new ArchiveDiskAction(); // L: 18 - var3.type = 0; // L: 19 - var3.key = (long)var0; // L: 20 - var3.data = var1; // L: 21 - var3.archiveDisk = var2; // L: 22 - synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue) { // L: 23 - ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.addFirst(var3); // L: 24 - } // L: 25 - - synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_lock) { // L: 27 - if (ArchiveDiskActionHandler.field3176 == 0) { // L: 28 - class105.ArchiveDiskActionHandler_thread = new Thread(new ArchiveDiskActionHandler()); // L: 29 - class105.ArchiveDiskActionHandler_thread.setDaemon(true); // L: 30 - class105.ArchiveDiskActionHandler_thread.start(); // L: 31 - class105.ArchiveDiskActionHandler_thread.setPriority(5); // L: 32 - } - - ArchiveDiskActionHandler.field3176 = 600; // L: 34 - } - } // L: 37 - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;B)I", - garbageValue = "-25" - ) - @Export("hashString") - public static int hashString(CharSequence var0) { - int var1 = var0.length(); // L: 136 - int var2 = 0; // L: 137 - - for (int var3 = 0; var3 < var1; ++var3) { // L: 138 - var2 = (var2 << 5) - var2 + class219.charToByteCp1252(var0.charAt(var3)); - } - - return var2; // L: 139 } - @ObfuscatedName("t") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "([BB)Lkq;", - garbageValue = "98" + descriptor = "([Lgd;II)Lgd;", + garbageValue = "-933292802" ) - public static Font method3430(byte[] var0) { - if (var0 == null) { // L: 239 - return null; + @Export("findEnumerated") + public static Enumerated findEnumerated(Enumerated[] var0, int var1) { + Enumerated[] var2 = var0; + + for (int var3 = 0; var3 < var2.length; ++var3) { + Enumerated var4 = var2[var3]; + if (var1 == var4.rsOrdinal()) { + return var4; + } + } + + return null; + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Lgi;I)I", + garbageValue = "-530251547" + ) + @Export("compareStrings") + public static int compareStrings(CharSequence var0, CharSequence var1, Language var2) { + int var3 = var0.length(); + int var4 = var1.length(); + int var5 = 0; + int var6 = 0; + byte var7 = 0; + byte var8 = 0; + + while (var5 - var7 < var3 || var6 - var8 < var4) { + if (var5 - var7 >= var3) { + return -1; + } + + if (var6 - var8 >= var4) { + return 1; + } + + char var9; + if (var7 != 0) { + var9 = (char)var7; + boolean var14 = false; + } else { + var9 = var0.charAt(var5++); + } + + char var10; + if (var8 != 0) { + var10 = (char)var8; + boolean var15 = false; + } else { + var10 = var1.charAt(var6++); + } + + byte var11; + if (var9 == 198) { + var11 = 69; + } else if (var9 == 230) { + var11 = 101; + } else if (var9 == 223) { + var11 = 115; + } else if (var9 == 338) { + var11 = 69; + } else if (var9 == 339) { + var11 = 101; + } else { + var11 = 0; + } + + var7 = var11; + byte var12; + if (var10 == 198) { + var12 = 69; + } else if (var10 == 230) { + var12 = 101; + } else if (var10 == 223) { + var12 = 115; + } else if (var10 == 338) { + var12 = 69; + } else if (var10 == 339) { + var12 = 101; + } else { + var12 = 0; + } + + var8 = var12; + var9 = UserComparator5.standardizeChar(var9, var2); + var10 = UserComparator5.standardizeChar(var10, var2); + if (var9 != var10 && Character.toUpperCase(var9) != Character.toUpperCase(var10)) { + var9 = Character.toLowerCase(var9); + var10 = Character.toLowerCase(var10); + if (var10 != var9) { + return WorldMapAreaData.lowercaseChar(var9, var2) - WorldMapAreaData.lowercaseChar(var10, var2); + } + } + } + + int var16 = Math.min(var3, var4); + + int var17; + char var20; + for (var17 = 0; var17 < var16; ++var17) { + if (var2 == Language.Language_FR) { + var5 = var3 - 1 - var17; + var6 = var4 - 1 - var17; + } else { + var6 = var17; + var5 = var17; + } + + char var18 = var0.charAt(var5); + var20 = var1.charAt(var6); + if (var20 != var18 && Character.toUpperCase(var18) != Character.toUpperCase(var20)) { + var18 = Character.toLowerCase(var18); + var20 = Character.toLowerCase(var20); + if (var18 != var20) { + return WorldMapAreaData.lowercaseChar(var18, var2) - WorldMapAreaData.lowercaseChar(var20, var2); + } + } + } + + var17 = var3 - var4; + if (var17 != 0) { + return var17; } else { - Font var1 = new Font(var0, class336.SpriteBuffer_xOffsets, class225.SpriteBuffer_yOffsets, class336.SpriteBuffer_spriteWidths, class336.SpriteBuffer_spriteHeights, WorldMapID.SpriteBuffer_spritePalette, class13.SpriteBuffer_pixels); // L: 240 - class336.SpriteBuffer_xOffsets = null; // L: 242 - class225.SpriteBuffer_yOffsets = null; // L: 243 - class336.SpriteBuffer_spriteWidths = null; // L: 244 - class336.SpriteBuffer_spriteHeights = null; // L: 245 - WorldMapID.SpriteBuffer_spritePalette = null; // L: 246 - class13.SpriteBuffer_pixels = null; // L: 247 - return var1; // L: 249 + for (int var19 = 0; var19 < var16; ++var19) { + var20 = var0.charAt(var19); + char var13 = var1.charAt(var19); + if (var20 != var13) { + return WorldMapAreaData.lowercaseChar(var20, var2) - WorldMapAreaData.lowercaseChar(var13, var2); + } + } + + return 0; } } - @ObfuscatedName("fp") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-4" + descriptor = "(Lkj;Ljava/lang/String;I)I", + garbageValue = "-1031927437" ) - @Export("getWindowedMode") - static int getWindowedMode() { - return Client.isResizable ? 2 : 1; // L: 4200 + public static int method3383(Buffer var0, String var1) { + int var2 = var0.offset; + byte[] var3 = Projectile.method2171(var1); + var0.writeSmartByteShort(var3.length); + var0.offset += class219.huffman.compress(var3, 0, var3.length, var0.array, var0.offset); + return var0.offset - var2; + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "117" + ) + public static void method3381() { + try { + if (class206.musicPlayerStatus == 1) { + int var0 = class206.midiPcmStream.method3816(); + if (var0 > 0 && class206.midiPcmStream.isReady()) { + var0 -= WorldMapSection1.pcmSampleLength; + if (var0 < 0) { + var0 = 0; + } + + class206.midiPcmStream.setPcmStreamVolume(var0); + return; + } + + class206.midiPcmStream.clear(); + class206.midiPcmStream.removeAll(); + if (Varps.musicTrackArchive != null) { + class206.musicPlayerStatus = 2; + } else { + class206.musicPlayerStatus = 0; + } + + FileSystem.musicTrack = null; + class206.soundCache = null; + } + } catch (Exception var2) { + var2.printStackTrace(); + class206.midiPcmStream.clear(); + class206.musicPlayerStatus = 0; + FileSystem.musicTrack = null; + class206.soundCache = null; + Varps.musicTrackArchive = null; + } + } } diff --git a/runescape-client/src/main/java/User.java b/runescape-client/src/main/java/User.java index f57a30690c..a7471cc57c 100644 --- a/runescape-client/src/main/java/User.java +++ b/runescape-client/src/main/java/User.java @@ -3,97 +3,81 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jh") +@ObfuscatedName("ju") @Implements("User") public class User implements Comparable { - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lkm;" + descriptor = "Lki;" ) @Export("username") Username username; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lkm;" + descriptor = "Lki;" ) @Export("previousUsername") Username previousUsername; User() { - } // L: 7 + } - @ObfuscatedName("ab") + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "(I)Lkm;", - garbageValue = "-335278145" + descriptor = "(I)Lki;", + garbageValue = "1670678120" ) @Export("getUsername") public Username getUsername() { - return this.username; // L: 10 + return this.username; } - @ObfuscatedName("ac") + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "-1574764800" + descriptor = "(S)Ljava/lang/String;", + garbageValue = "2928" ) @Export("getName") public String getName() { return this.username == null ? "" : this.username.getName(); } - @ObfuscatedName("ao") + @ObfuscatedName("ax") @ObfuscatedSignature( descriptor = "(I)Ljava/lang/String;", - garbageValue = "198172856" + garbageValue = "1728130643" ) @Export("getPreviousName") public String getPreviousName() { - return this.previousUsername == null ? "" : this.previousUsername.getName(); // L: 20 + return this.previousUsername == null ? "" : this.previousUsername.getName(); } - @ObfuscatedName("af") + @ObfuscatedName("ag") @ObfuscatedSignature( - descriptor = "(Lkm;Lkm;I)V", - garbageValue = "208802745" + descriptor = "(Lki;Lki;I)V", + garbageValue = "-1682462851" ) @Export("set") void set(Username var1, Username var2) { - if (var1 == null) { // L: 24 + if (var1 == null) { throw new NullPointerException(); } else { - this.username = var1; // L: 25 - this.previousUsername = var2; // L: 26 + this.username = var1; + this.previousUsername = var2; } - } // L: 27 + } - @ObfuscatedName("av") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Ljh;B)I", - garbageValue = "69" + descriptor = "(Lju;I)I", + garbageValue = "-1545516578" ) @Export("compareTo_user") public int compareTo_user(User var1) { - return this.username.compareToTyped(var1.username); // L: 30 + return this.username.compareToTyped(var1.username); } public int compareTo(Object var1) { - return this.compareTo_user((User)var1); // L: 34 - } - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(S)J", - garbageValue = "17738" - ) - @Export("currentTimeMillis") - public static final synchronized long currentTimeMillis() { - long var0 = System.currentTimeMillis(); // L: 14 - if (var0 < ArchiveLoader.field565) { // L: 15 - class307.field3731 += ArchiveLoader.field565 - var0; // L: 16 - } - - ArchiveLoader.field565 = var0; // L: 18 - return class307.field3731 + var0; // L: 19 + return this.compareTo_user((User)var1); } } diff --git a/runescape-client/src/main/java/UserComparator1.java b/runescape-client/src/main/java/UserComparator1.java index 8f238ad07c..f9abb067d4 100644 --- a/runescape-client/src/main/java/UserComparator1.java +++ b/runescape-client/src/main/java/UserComparator1.java @@ -4,32 +4,32 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lr") +@ObfuscatedName("lp") @Implements("UserComparator1") public class UserComparator1 implements Comparator { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("reversed") final boolean reversed; public UserComparator1(boolean var1) { - this.reversed = var1; // L: 10 - } // L: 11 + this.reversed = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ljh;Ljh;B)I", - garbageValue = "-9" + descriptor = "(Lju;Lju;B)I", + garbageValue = "-72" ) @Export("compare_bridged") int compare_bridged(User var1, User var2) { - return this.reversed ? var1.compareTo_user(var2) : var2.compareTo_user(var1); // L: 14 - } - - public boolean equals(Object var1) { - return super.equals(var1); // L: 22 + return this.reversed ? var1.compareTo_user(var2) : var2.compareTo_user(var1); } public int compare(Object var1, Object var2) { - return this.compare_bridged((User)var1, (User)var2); // L: 18 + return this.compare_bridged((User)var1, (User)var2); + } + + public boolean equals(Object var1) { + return super.equals(var1); } } diff --git a/runescape-client/src/main/java/UserComparator10.java b/runescape-client/src/main/java/UserComparator10.java index 40cf10fa12..3e4fb4a52a 100644 --- a/runescape-client/src/main/java/UserComparator10.java +++ b/runescape-client/src/main/java/UserComparator10.java @@ -6,164 +6,164 @@ import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("ff") @Implements("UserComparator10") public class UserComparator10 extends AbstractUserComparator { - @ObfuscatedName("u") - static int[][] field1999; - @ObfuscatedName("p") - static int[][][] field2000; - @ObfuscatedName("ah") - static String field2002; - @ObfuscatedName("dp") - @ObfuscatedSignature( - descriptor = "Lfu;" - ) - @Export("js5SocketTask") - static Task js5SocketTask; - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("reversed") final boolean reversed; public UserComparator10(boolean var1) { - this.reversed = var1; // L: 11 - } // L: 12 + this.reversed = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkl;Lkl;I)I", - garbageValue = "2109769786" + descriptor = "(Lkz;Lkz;I)I", + garbageValue = "620956476" ) @Export("compareBuddy") int compareBuddy(Buddy var1, Buddy var2) { - if (Client.worldId == var1.world && var2.world == Client.worldId) { // L: 15 - return this.reversed ? var1.int2 - var2.int2 : var2.int2 - var1.int2; // L: 16 + if (Client.worldId == var1.world && var2.world == Client.worldId) { + return this.reversed ? var1.int2 - var2.int2 : var2.int2 - var1.int2; } else { - return this.compareUser(var1, var2); // L: 18 + return this.compareUser(var1, var2); } } public int compare(Object var1, Object var2) { - return this.compareBuddy((Buddy)var1, (Buddy)var2); // L: 22 + return this.compareBuddy((Buddy)var1, (Buddy)var2); } - @ObfuscatedName("jm") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lht;IIIB)V", - garbageValue = "-68" + descriptor = "(II)Liy;", + garbageValue = "-1778501776" ) - @Export("drawMinimap") - static final void drawMinimap(Widget var0, int var1, int var2, int var3) { - FriendSystem.playPcmPlayers(); // L: 11358 - SpriteMask var4 = var0.getSpriteMask(false); // L: 11359 - if (var4 != null) { // L: 11360 - Rasterizer2D.Rasterizer2D_setClip(var1, var2, var4.width + var1, var2 + var4.height); // L: 11361 - if (Client.minimapState != 2 && Client.minimapState != 5) { // L: 11362 - int var5 = Client.camAngleY & 2047; // L: 11363 - int var6 = PlayerType.localPlayer.x / 32 + 48; // L: 11364 - int var7 = 464 - PlayerType.localPlayer.y / 32; // L: 11365 - InterfaceParent.sceneMinimapSprite.drawRotatedMaskedCenteredAround(var1, var2, var4.width, var4.height, var6, var7, var5, 256, var4.xStarts, var4.xWidths); // L: 11366 + @Export("WorldMapElement_get") + public static WorldMapElement WorldMapElement_get(int var0) { + return var0 >= 0 && var0 < WorldMapElement.WorldMapElement_cached.length && WorldMapElement.WorldMapElement_cached[var0] != null ? WorldMapElement.WorldMapElement_cached[var0] : new WorldMapElement(var0); + } - int var8; - int var10; - int var17; - for (var8 = 0; var8 < Client.mapIconCount; ++var8) { // L: 11367 - var17 = Client.mapIconXs[var8] * 4 + 2 - PlayerType.localPlayer.x / 32; // L: 11368 - var10 = Client.mapIconYs[var8] * 4 + 2 - PlayerType.localPlayer.y / 32; // L: 11369 - TileItem.drawSpriteOnMinimap(var1, var2, var17, var10, Client.mapIcons[var8], var4); // L: 11370 - } + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(Lky;IB)V", + garbageValue = "46" + ) + @Export("updatePlayers") + static final void updatePlayers(PacketBuffer var0, int var1) { + int var2 = var0.offset; + Players.Players_pendingUpdateCount = 0; + UserComparator3.method3515(var0); - int var11; - int var12; - for (var8 = 0; var8 < 104; ++var8) { // L: 11372 - for (var17 = 0; var17 < 104; ++var17) { // L: 11373 - NodeDeque var15 = Client.groundItems[GrandExchangeOfferUnitPriceComparator.Client_plane][var8][var17]; // L: 11374 - if (var15 != null) { // L: 11375 - var11 = var8 * 4 + 2 - PlayerType.localPlayer.x / 32; // L: 11376 - var12 = var17 * 4 + 2 - PlayerType.localPlayer.y / 32; // L: 11377 - TileItem.drawSpriteOnMinimap(var1, var2, var11, var12, Entity.mapDotSprites[0], var4); // L: 11378 - } - } - } - - for (var8 = 0; var8 < Client.npcCount; ++var8) { // L: 11382 - NPC var9 = Client.npcs[Client.npcIndices[var8]]; // L: 11383 - if (var9 != null && var9.isVisible()) { // L: 11384 - NPCDefinition var19 = var9.definition; // L: 11385 - if (var19 != null && var19.transforms != null) { // L: 11386 - var19 = var19.transform(); - } - - if (var19 != null && var19.drawMapDot && var19.isInteractable) { // L: 11387 - var11 = var9.x / 32 - PlayerType.localPlayer.x / 32; // L: 11388 - var12 = var9.y / 32 - PlayerType.localPlayer.y / 32; // L: 11389 - TileItem.drawSpriteOnMinimap(var1, var2, var11, var12, Entity.mapDotSprites[1], var4); // L: 11390 - } - } - } - - var8 = Players.Players_count; // L: 11394 - int[] var18 = Players.Players_indices; // L: 11395 - - for (var10 = 0; var10 < var8; ++var10) { // L: 11396 - Player var16 = Client.players[var18[var10]]; // L: 11397 - if (var16 != null && var16.isVisible() && !var16.isHidden && var16 != PlayerType.localPlayer) { // L: 11398 - var12 = var16.x / 32 - PlayerType.localPlayer.x / 32; // L: 11399 - int var13 = var16.y / 32 - PlayerType.localPlayer.y / 32; // L: 11400 - boolean var14 = false; // L: 11401 - if (PlayerType.localPlayer.team != 0 && var16.team != 0 && var16.team == PlayerType.localPlayer.team) { // L: 11402 - var14 = true; - } - - if (var16.isFriend()) { // L: 11403 - TileItem.drawSpriteOnMinimap(var1, var2, var12, var13, Entity.mapDotSprites[3], var4); - } else if (var14) { // L: 11404 - TileItem.drawSpriteOnMinimap(var1, var2, var12, var13, Entity.mapDotSprites[4], var4); - } else if (var16.isClanMember()) { // L: 11405 - TileItem.drawSpriteOnMinimap(var1, var2, var12, var13, Entity.mapDotSprites[5], var4); - } else { - TileItem.drawSpriteOnMinimap(var1, var2, var12, var13, Entity.mapDotSprites[2], var4); // L: 11406 - } - } - } - - if (Client.hintArrowType != 0 && Client.cycle % 20 < 10) { // L: 11409 - if (Client.hintArrowType == 1 && Client.hintArrowNpcIndex >= 0 && Client.hintArrowNpcIndex < Client.npcs.length) { // L: 11410 - NPC var20 = Client.npcs[Client.hintArrowNpcIndex]; // L: 11411 - if (var20 != null) { // L: 11412 - var11 = var20.x / 32 - PlayerType.localPlayer.x / 32; // L: 11413 - var12 = var20.y / 32 - PlayerType.localPlayer.y / 32; // L: 11414 - UrlRequest.worldToMinimap(var1, var2, var11, var12, ScriptEvent.mapMarkerSprites[1], var4); // L: 11415 - } - } - - if (Client.hintArrowType == 2) { // L: 11418 - var10 = Client.hintArrowX * 4 - FloorDecoration.baseX * 4 + 2 - PlayerType.localPlayer.x / 32; // L: 11419 - var11 = Client.hintArrowY * 4 - WorldMapData_0.baseY * 4 + 2 - PlayerType.localPlayer.y / 32; // L: 11420 - UrlRequest.worldToMinimap(var1, var2, var10, var11, ScriptEvent.mapMarkerSprites[1], var4); // L: 11421 - } - - if (Client.hintArrowType == 10 && Client.hintArrowPlayerIndex >= 0 && Client.hintArrowPlayerIndex < Client.players.length) { // L: 11423 - Player var21 = Client.players[Client.hintArrowPlayerIndex]; // L: 11424 - if (var21 != null) { // L: 11425 - var11 = var21.x / 32 - PlayerType.localPlayer.x / 32; // L: 11426 - var12 = var21.y / 32 - PlayerType.localPlayer.y / 32; // L: 11427 - UrlRequest.worldToMinimap(var1, var2, var11, var12, ScriptEvent.mapMarkerSprites[1], var4); // L: 11428 - } - } - } - - if (Client.destinationX != 0) { // L: 11432 - var10 = Client.destinationX * 4 + 2 - PlayerType.localPlayer.x / 32; // L: 11433 - var11 = Client.destinationY * 4 + 2 - PlayerType.localPlayer.y / 32; // L: 11434 - TileItem.drawSpriteOnMinimap(var1, var2, var10, var11, ScriptEvent.mapMarkerSprites[0], var4); // L: 11435 - } - - if (!PlayerType.localPlayer.isHidden) { // L: 11437 - Rasterizer2D.Rasterizer2D_fillRectangle(var4.width / 2 + var1 - 1, var4.height / 2 + var2 - 1, 3, 3, 16777215); - } - } else { - Rasterizer2D.Rasterizer2D_fillMaskedRectangle(var1, var2, 0, var4.xStarts, var4.xWidths); // L: 11439 + for (int var3 = 0; var3 < Players.Players_pendingUpdateCount; ++var3) { + int var4 = Players.Players_pendingUpdateIndices[var3]; + Player var5 = Client.players[var4]; + int var6 = var0.readUnsignedByte(); + if ((var6 & 64) != 0) { + var6 += var0.readUnsignedByte() << 8; } - Client.field758[var3] = true; // L: 11440 + WorldMapManager.method709(var0, var4, var5, var6); } - } // L: 11441 + + if (var0.offset - var2 != var1) { + throw new RuntimeException(var0.offset - var2 + " " + var1); + } + } + + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V", + garbageValue = "-506643476" + ) + @Export("addChatMessage") + static void addChatMessage(int var0, String var1, String var2, String var3) { + ChatChannel var4 = (ChatChannel)Messages.Messages_channels.get(var0); + if (var4 == null) { + var4 = new ChatChannel(); + Messages.Messages_channels.put(var0, var4); + } + + Message var5 = var4.addMessage(var0, var1, var2, var3); + Messages.Messages_hashTable.put(var5, (long)var5.count); + Messages.Messages_queue.add(var5); + Client.chatCycle = Client.cycleCntr; + } + + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "(CI)C", + garbageValue = "1725294085" + ) + static char method3492(char var0) { + switch(var0) { + case ' ': + case '-': + case '_': + case ' ': + return '_'; + case '#': + case '[': + case ']': + return var0; + case 'À': + case 'Á': + case 'Â': + case 'Ã': + case 'Ä': + case 'à': + case 'á': + case 'â': + case 'ã': + case 'ä': + return 'a'; + case 'Ç': + case 'ç': + return 'c'; + case 'È': + case 'É': + case 'Ê': + case 'Ë': + case 'è': + case 'é': + case 'ê': + case 'ë': + return 'e'; + case 'Í': + case 'Î': + case 'Ï': + case 'í': + case 'î': + case 'ï': + return 'i'; + case 'Ñ': + case 'ñ': + return 'n'; + case 'Ò': + case 'Ó': + case 'Ô': + case 'Õ': + case 'Ö': + case 'ò': + case 'ó': + case 'ô': + case 'õ': + case 'ö': + return 'o'; + case 'Ù': + case 'Ú': + case 'Û': + case 'Ü': + case 'ù': + case 'ú': + case 'û': + case 'ü': + return 'u'; + case 'ß': + return 'b'; + case 'ÿ': + case 'Ÿ': + return 'y'; + default: + return Character.toLowerCase(var0); + } + } } diff --git a/runescape-client/src/main/java/UserComparator2.java b/runescape-client/src/main/java/UserComparator2.java index 4d7af564c5..093595797d 100644 --- a/runescape-client/src/main/java/UserComparator2.java +++ b/runescape-client/src/main/java/UserComparator2.java @@ -4,48 +4,41 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("la") +@ObfuscatedName("lv") @Implements("UserComparator2") public class UserComparator2 implements Comparator { - @ObfuscatedName("k") - static byte[][][] field3859; - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("reversed") final boolean reversed; public UserComparator2(boolean var1) { - this.reversed = var1; // L: 10 - } // L: 11 + this.reversed = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ljh;Ljh;I)I", - garbageValue = "-74930835" + descriptor = "(Lju;Lju;B)I", + garbageValue = "26" ) @Export("compare_bridged") int compare_bridged(User var1, User var2) { - return this.reversed ? var1.getUsername().compareToTyped(var2.getUsername()) : var2.getUsername().compareToTyped(var1.getUsername()); // L: 14 + return this.reversed ? var1.getUsername().compareToTyped(var2.getUsername()) : var2.getUsername().compareToTyped(var1.getUsername()); } public int compare(Object var1, Object var2) { - return this.compare_bridged((User)var1, (User)var2); // L: 18 + return this.compare_bridged((User)var1, (User)var2); } public boolean equals(Object var1) { - return super.equals(var1); // L: 22 + return super.equals(var1); } - @ObfuscatedName("kt") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "788090268" + descriptor = "(I)V", + garbageValue = "-2053247999" ) - static void method6067(int var0) { - for (IntegerNode var1 = (IntegerNode)Client.widgetFlags.first(); var1 != null; var1 = (IntegerNode)Client.widgetFlags.next()) { // L: 11518 - if ((long)var0 == (var1.key >> 48 & 65535L)) { // L: 11519 - var1.remove(); // L: 11520 - } - } - - } // L: 11523 + public static void method5959() { + KitDefinition.KitDefinition_cached.clear(); + } } diff --git a/runescape-client/src/main/java/UserComparator3.java b/runescape-client/src/main/java/UserComparator3.java index 95508c3bfa..3b82fdd87a 100644 --- a/runescape-client/src/main/java/UserComparator3.java +++ b/runescape-client/src/main/java/UserComparator3.java @@ -3,173 +3,169 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fk") +@ObfuscatedName("fv") @Implements("UserComparator3") public class UserComparator3 extends AbstractUserComparator { - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "Lft;" - ) - @Export("clock") - static Clock clock; - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("reversed") final boolean reversed; public UserComparator3(boolean var1) { - this.reversed = var1; // L: 10 - } // L: 11 + this.reversed = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkl;Lkl;I)I", - garbageValue = "-214138656" + descriptor = "(Lkz;Lkz;B)I", + garbageValue = "96" ) @Export("compareBuddy") int compareBuddy(Buddy var1, Buddy var2) { - if (var2.world != var1.world) { // L: 14 - return this.reversed ? var1.world - var2.world : var2.world - var1.world; // L: 15 + if (var2.world != var1.world) { + return this.reversed ? var1.world - var2.world : var2.world - var1.world; } else { - return this.compareUser(var1, var2); // L: 17 + return this.compareUser(var1, var2); } } public int compare(Object var1, Object var2) { - return this.compareBuddy((Buddy)var1, (Buddy)var2); // L: 21 + return this.compareBuddy((Buddy)var1, (Buddy)var2); } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-2009862837" + descriptor = "(Lky;B)V", + garbageValue = "10" ) - public static void method3546() { - class13.midiPcmStream.clear(); // L: 49 - class206.musicPlayerStatus = 1; // L: 50 - class23.musicTrackArchive = null; // L: 51 - } // L: 52 + static final void method3515(PacketBuffer var0) { + int var1 = 0; + var0.importIndex(); - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "([BI)[B", - garbageValue = "-1190316664" - ) - @Export("decompressBytes") - static final byte[] decompressBytes(byte[] var0) { - Buffer var1 = new Buffer(var0); // L: 381 - int var2 = var1.readUnsignedByte(); // L: 382 - int var3 = var1.readInt(); // L: 383 - if (var3 < 0 || AbstractArchive.field3173 != 0 && var3 > AbstractArchive.field3173) { // L: 384 - throw new RuntimeException(); // L: 385 - } else if (var2 == 0) { // L: 387 - byte[] var6 = new byte[var3]; // L: 388 - var1.readBytes(var6, 0, var3); // L: 389 - return var6; // L: 390 - } else { - int var4 = var1.readInt(); // L: 393 - if (var4 >= 0 && (AbstractArchive.field3173 == 0 || var4 <= AbstractArchive.field3173)) { // L: 394 - byte[] var5 = new byte[var4]; // L: 397 - if (var2 == 1) { // L: 398 - BZip2Decompressor.BZip2Decompressor_decompress(var5, var4, var0, var3, 9); + byte[] var10000; + int var2; + int var4; + int var5; + for (var2 = 0; var2 < Players.Players_count; ++var2) { + var5 = Players.Players_indices[var2]; + if ((Players.field1252[var5] & 1) == 0) { + if (var1 > 0) { + --var1; + var10000 = Players.field1252; + var10000[var5] = (byte)(var10000[var5] | 2); } else { - AbstractArchive.gzipDecompressor.decompress(var1, var5); // L: 399 + var4 = var0.readBits(1); + if (var4 == 0) { + var1 = Skills.method4146(var0); + var10000 = Players.field1252; + var10000[var5] = (byte)(var10000[var5] | 2); + } else { + class349.readPlayerUpdate(var0, var5); + } } - - return var5; // L: 400 - } else { - throw new RuntimeException(); // L: 395 } } - } - @ObfuscatedName("in") - @ObfuscatedSignature( - descriptor = "(Lbi;IIII)V", - garbageValue = "-2001365984" - ) - @Export("addPlayerToMenu") - static final void addPlayerToMenu(Player var0, int var1, int var2, int var3) { - if (PlayerType.localPlayer != var0) { // L: 9234 - if (Client.menuOptionsCount < 400) { // L: 9235 - String var4; - int var7; - if (var0.skillLevel == 0) { // L: 9237 - String var5 = var0.actions[0] + var0.username + var0.actions[1]; // L: 9238 - var7 = var0.combatLevel; // L: 9240 - int var8 = PlayerType.localPlayer.combatLevel; // L: 9241 - int var9 = var8 - var7; // L: 9243 - String var6; - if (var9 < -9) { // L: 9244 - var6 = Client.colorStartTag(16711680); // L: 9245 - } else if (var9 < -6) { // L: 9248 - var6 = Client.colorStartTag(16723968); // L: 9249 - } else if (var9 < -3) { // L: 9252 - var6 = Client.colorStartTag(16740352); // L: 9253 - } else if (var9 < 0) { // L: 9256 - var6 = Client.colorStartTag(16756736); // L: 9257 - } else if (var9 > 9) { // L: 9260 - var6 = Client.colorStartTag(65280); // L: 9261 - } else if (var9 > 6) { // L: 9264 - var6 = Client.colorStartTag(4259584); // L: 9265 - } else if (var9 > 3) { // L: 9268 - var6 = Client.colorStartTag(8453888); // L: 9269 - } else if (var9 > 0) { // L: 9272 - var6 = Client.colorStartTag(12648192); // L: 9273 + var0.exportIndex(); + if (var1 != 0) { + throw new RuntimeException(); + } else { + var0.importIndex(); + + for (var2 = 0; var2 < Players.Players_count; ++var2) { + var5 = Players.Players_indices[var2]; + if ((Players.field1252[var5] & 1) != 0) { + if (var1 > 0) { + --var1; + var10000 = Players.field1252; + var10000[var5] = (byte)(var10000[var5] | 2); } else { - var6 = Client.colorStartTag(16776960); // L: 9276 + var4 = var0.readBits(1); + if (var4 == 0) { + var1 = Skills.method4146(var0); + var10000 = Players.field1252; + var10000[var5] = (byte)(var10000[var5] | 2); + } else { + class349.readPlayerUpdate(var0, var5); + } } - - var4 = var5 + var6 + " " + " (" + "level-" + var0.combatLevel + ")" + var0.actions[2]; // L: 9278 - } else { - var4 = var0.actions[0] + var0.username + var0.actions[1] + " " + " (" + "skill-" + var0.skillLevel + ")" + var0.actions[2]; // L: 9280 } + } - int var10; - if (Client.isItemSelected == 1) { // L: 9281 - ModelData0.insertMenuItemNoShift("Use", Client.selectedItemName + " " + "->" + " " + Client.colorStartTag(16777215) + var4, 14, var1, var2, var3); // L: 9282 - } else if (Client.isSpellSelected) { // L: 9285 - if ((class105.selectedSpellFlags & 8) == 8) { // L: 9286 - ModelData0.insertMenuItemNoShift(Client.selectedSpellActionName, Client.selectedSpellName + " " + "->" + " " + Client.colorStartTag(16777215) + var4, 15, var1, var2, var3); // L: 9287 - } - } else { - for (var10 = 7; var10 >= 0; --var10) { // L: 9292 - if (Client.playerMenuActions[var10] != null) { // L: 9293 - short var11 = 0; // L: 9294 - if (Client.playerMenuActions[var10].equalsIgnoreCase("Attack")) { // L: 9295 - if (Client.playerAttackOption == AttackOption.AttackOption_hidden) { // L: 9296 - continue; - } + var0.exportIndex(); + if (var1 != 0) { + throw new RuntimeException(); + } else { + var0.importIndex(); - if (Client.playerAttackOption == AttackOption.AttackOption_alwaysRightClick || AttackOption.AttackOption_dependsOnCombatLevels == Client.playerAttackOption && var0.combatLevel > PlayerType.localPlayer.combatLevel) { // L: 9297 - var11 = 2000; // L: 9298 - } - - if (PlayerType.localPlayer.team != 0 && var0.team != 0) { // L: 9300 - if (var0.team == PlayerType.localPlayer.team) { // L: 9301 - var11 = 2000; - } else { - var11 = 0; // L: 9302 - } - } - } else if (Client.playerOptionsPriorities[var10]) { // L: 9305 - var11 = 2000; + for (var2 = 0; var2 < Players.Players_emptyIdxCount; ++var2) { + var5 = Players.Players_emptyIndices[var2]; + if ((Players.field1252[var5] & 1) != 0) { + if (var1 > 0) { + --var1; + var10000 = Players.field1252; + var10000[var5] = (byte)(var10000[var5] | 2); + } else { + var4 = var0.readBits(1); + if (var4 == 0) { + var1 = Skills.method4146(var0); + var10000 = Players.field1252; + var10000[var5] = (byte)(var10000[var5] | 2); + } else if (WorldMapSection0.updateExternalPlayer(var0, var5)) { + var10000 = Players.field1252; + var10000[var5] = (byte)(var10000[var5] | 2); } - - boolean var12 = false; // L: 9306 - var7 = Client.playerMenuOpcodes[var10] + var11; // L: 9307 - ModelData0.insertMenuItemNoShift(Client.playerMenuActions[var10], Client.colorStartTag(16777215) + var4, var7, var1, var2, var3); // L: 9308 } } } - for (var10 = 0; var10 < Client.menuOptionsCount; ++var10) { // L: 9313 - if (Client.menuOpcodes[var10] == 23) { // L: 9314 - Client.menuTargets[var10] = Client.colorStartTag(16777215) + var4; // L: 9315 - break; + var0.exportIndex(); + if (var1 != 0) { + throw new RuntimeException(); + } else { + var0.importIndex(); + + for (var2 = 0; var2 < Players.Players_emptyIdxCount; ++var2) { + var5 = Players.Players_emptyIndices[var2]; + if ((Players.field1252[var5] & 1) == 0) { + if (var1 > 0) { + --var1; + var10000 = Players.field1252; + var10000[var5] = (byte)(var10000[var5] | 2); + } else { + var4 = var0.readBits(1); + if (var4 == 0) { + var1 = Skills.method4146(var0); + var10000 = Players.field1252; + var10000[var5] = (byte)(var10000[var5] | 2); + } else if (WorldMapSection0.updateExternalPlayer(var0, var5)) { + var10000 = Players.field1252; + var10000[var5] = (byte)(var10000[var5] | 2); + } + } + } + } + + var0.exportIndex(); + if (var1 != 0) { + throw new RuntimeException(); + } else { + Players.Players_count = 0; + Players.Players_emptyIdxCount = 0; + + for (var2 = 1; var2 < 2048; ++var2) { + var10000 = Players.field1252; + var10000[var2] = (byte)(var10000[var2] >> 1); + Player var3 = Client.players[var2]; + if (var3 != null) { + Players.Players_indices[++Players.Players_count - 1] = var2; + } else { + Players.Players_emptyIndices[++Players.Players_emptyIdxCount - 1] = var2; + } + } + } } - } } - } // L: 9319 + } } diff --git a/runescape-client/src/main/java/UserComparator4.java b/runescape-client/src/main/java/UserComparator4.java index f2c2173199..b4d60f4e31 100644 --- a/runescape-client/src/main/java/UserComparator4.java +++ b/runescape-client/src/main/java/UserComparator4.java @@ -3,33 +3,28 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("fr") +@ObfuscatedName("fz") @Implements("UserComparator4") public class UserComparator4 implements Comparator { - @ObfuscatedName("bj") - @ObfuscatedSignature( - descriptor = "Lmc;" - ) - @Export("loginType") - static LoginType loginType; - @ObfuscatedName("f") + @ObfuscatedName("m") + public static boolean field1988; + @ObfuscatedName("h") @Export("reversed") final boolean reversed; public UserComparator4(boolean var1) { - this.reversed = var1; // L: 10 - } // L: 11 + this.reversed = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkl;Lkl;I)I", - garbageValue = "-1246089706" + descriptor = "(Lkz;Lkz;I)I", + garbageValue = "1051999362" ) @Export("compare_bridged") int compare_bridged(Buddy var1, Buddy var2) { - return this.reversed ? var1.int2 - var2.int2 : var2.int2 - var1.int2; // L: 14 + return this.reversed ? var1.int2 - var2.int2 : var2.int2 - var1.int2; } public boolean equals(Object var1) { @@ -37,87 +32,368 @@ public class UserComparator4 implements Comparator { } public int compare(Object var1, Object var2) { - return this.compare_bridged((Buddy)var1, (Buddy)var2); // L: 18 + return this.compare_bridged((Buddy)var1, (Buddy)var2); } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Liw;II)Lhk;", - garbageValue = "1936937358" + descriptor = "(Lib;Lib;IZI)Lep;", + garbageValue = "1436051671" ) - static MusicPatch method3497(AbstractArchive var0, int var1) { - byte[] var2 = var0.takeFileFlat(var1); // L: 21 - return var2 == null ? null : new MusicPatch(var2); // L: 22 - } + public static Frames method3470(AbstractArchive var0, AbstractArchive var1, int var2, boolean var3) { + boolean var4 = true; + int[] var5 = var0.getGroupFileIds(var2); - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(Liw;Liw;I)Z", - garbageValue = "-301606279" - ) - public static boolean method3504(AbstractArchive var0, AbstractArchive var1) { - WorldMapElement.WorldMapElement_archive = var1; // L: 44 - if (!var0.isFullyLoaded()) { // L: 45 - return false; // L: 46 - } else { - NPC.WorldMapElement_count = var0.getGroupFileCount(35); // L: 48 - WorldMapElement.WorldMapElement_cached = new WorldMapElement[NPC.WorldMapElement_count]; // L: 49 + for (int var6 = 0; var6 < var5.length; ++var6) { + byte[] var7 = var0.getFile(var2, var5[var6]); + if (var7 == null) { + var4 = false; + } else { + int var8 = (var7[0] & 255) << 8 | var7[1] & 255; + byte[] var9; + if (var3) { + var9 = var1.getFile(0, var8); + } else { + var9 = var1.getFile(var8, 0); + } - for (int var2 = 0; var2 < NPC.WorldMapElement_count; ++var2) { // L: 50 - byte[] var3 = var0.takeFile(35, var2); // L: 51 - WorldMapElement.WorldMapElement_cached[var2] = new WorldMapElement(var2); // L: 52 - if (var3 != null) { // L: 53 - WorldMapElement.WorldMapElement_cached[var2].decode(new Buffer(var3)); // L: 54 - WorldMapElement.WorldMapElement_cached[var2].method4518(); // L: 55 + if (var9 == null) { + var4 = false; } } - - return true; // L: 58 } - } - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(IB)Lht;", - garbageValue = "-45" - ) - @Export("getWidget") - public static Widget getWidget(int var0) { - int var1 = var0 >> 16; // L: 195 - int var2 = var0 & 65535; // L: 196 - if (Widget.Widget_interfaceComponents[var1] == null || Widget.Widget_interfaceComponents[var1][var2] == null) { // L: 197 - boolean var3 = ScriptFrame.loadInterface(var1); // L: 198 - if (!var3) { // L: 199 + if (!var4) { + return null; + } else { + try { + return new Frames(var0, var1, var2, var3); + } catch (Exception var11) { return null; } } - - return Widget.Widget_interfaceComponents[var1][var2]; // L: 201 } - @ObfuscatedName("p") + @ObfuscatedName("fv") @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "-1942076594" + descriptor = "(Lil;Ljava/lang/String;B)V", + garbageValue = "0" ) - static int method3506(int var0, Script var1, boolean var2) { - Widget var3 = var2 ? MouseRecorder.field621 : Interpreter.field1122; // L: 1104 - if (var0 == ScriptOpcodes.CC_GETINVOBJECT) { // L: 1105 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.itemId; // L: 1106 - return 1; // L: 1107 - } else if (var0 == ScriptOpcodes.CC_GETINVCOUNT) { // L: 1109 - if (var3.itemId != -1) { // L: 1110 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.itemQuantity; - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1111 + static void method3469(Archive var0, String var1) { + ArchiveLoader var2 = new ArchiveLoader(var0, var1); + Client.archiveLoaders.add(var2); + Client.field666 += var2.groupCount; + } + + @ObfuscatedName("hz") + @ObfuscatedSignature( + descriptor = "(Lgs;I)V", + garbageValue = "-1705259576" + ) + static final void method3465(class194 var0) { + PacketBuffer var1 = Client.packetWriter.packetBuffer; + int var2; + int var3; + int var4; + int var5; + int var6; + int var7; + int var8; + int var9; + int var10; + if (class194.field2342 == var0) { + var2 = var1.method5582(); + var3 = var1.method5571(); + var4 = (var3 >> 4 & 7) + PacketWriter.field1331; + var5 = (var3 & 7) + class248.field3222; + var6 = var1.method5571(); + var7 = var6 >> 4 & 15; + var8 = var6 & 7; + var9 = var1.method5572(); + if (var4 >= 0 && var5 >= 0 && var4 < 104 && var5 < 104) { + var10 = var7 + 1; + if (PlayerAppearance.localPlayer.pathX[0] >= var4 - var10 && PlayerAppearance.localPlayer.pathX[0] <= var10 + var4 && PlayerAppearance.localPlayer.pathY[0] >= var5 - var10 && PlayerAppearance.localPlayer.pathY[0] <= var5 + var10 && Timer.clientPreferences.areaSoundEffectsVolume != 0 && var8 > 0 && Client.soundEffectCount < 50) { + Client.soundEffectIds[Client.soundEffectCount] = var2; + Client.queuedSoundEffectLoops[Client.soundEffectCount] = var8; + Client.queuedSoundEffectDelays[Client.soundEffectCount] = var9; + Client.soundEffects[Client.soundEffectCount] = null; + Client.soundLocations[Client.soundEffectCount] = var7 + (var5 << 8) + (var4 << 16); + ++Client.soundEffectCount; + } + } + } + + if (class194.field2349 == var0) { + var2 = var1.method5571(); + var3 = (var2 >> 4 & 7) + PacketWriter.field1331; + var4 = (var2 & 7) + class248.field3222; + var5 = var1.method5582(); + var6 = var1.readUnsignedShort(); + var7 = var1.readUnsignedByte(); + if (var3 >= 0 && var4 >= 0 && var3 < 104 && var4 < 104) { + var3 = var3 * 128 + 64; + var4 = var4 * 128 + 64; + GraphicsObject var45 = new GraphicsObject(var5, GameObject.Client_plane, var3, var4, SecureRandomFuture.getTileHeight(var3, var4, GameObject.Client_plane) - var7, var6, Client.cycle); + Client.graphicsObjects.addFirst(var45); } - return 1; // L: 1112 - } else if (var0 == ScriptOpcodes.CC_GETID) { // L: 1114 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3.childIndex; // L: 1115 - return 1; // L: 1116 } else { - return 2; // L: 1118 + int var11; + int var13; + int var14; + if (class194.field2346 == var0) { + var2 = var1.method5573() * 4; + byte var38 = var1.readByte(); + byte var39 = var1.readByte(); + var5 = var1.readUnsignedByte(); + var6 = var1.method5580(); + var7 = var1.method5584(); + var8 = var1.method5571(); + var9 = (var8 >> 4 & 7) + PacketWriter.field1331; + var10 = (var8 & 7) + class248.field3222; + var11 = var1.readUnsignedShort(); + int var41 = var1.method5582(); + var13 = var1.method5571(); + var14 = var1.method5573() * 4; + var3 = var38 + var9; + var4 = var39 + var10; + if (var9 >= 0 && var10 >= 0 && var9 < 104 && var10 < 104 && var3 >= 0 && var4 >= 0 && var3 < 104 && var4 < 104 && var41 != 65535) { + var9 = var9 * 128 + 64; + var10 = var10 * 128 + 64; + var3 = var3 * 128 + 64; + var4 = var4 * 128 + 64; + Projectile var36 = new Projectile(var41, GameObject.Client_plane, var9, var10, SecureRandomFuture.getTileHeight(var9, var10, GameObject.Client_plane) - var2, var6 + Client.cycle, var11 + Client.cycle, var13, var5, var7, var14); + var36.setDestination(var3, var4, SecureRandomFuture.getTileHeight(var3, var4, GameObject.Client_plane) - var14, var6 + Client.cycle); + Client.projectiles.addFirst(var36); + } + + } else if (class194.field2343 == var0) { + var2 = var1.readUnsignedShort(); + var3 = var1.method5573(); + var4 = var3 >> 2; + var5 = var3 & 3; + var6 = Client.field708[var4]; + var7 = var1.readUnsignedByte(); + var8 = (var7 >> 4 & 7) + PacketWriter.field1331; + var9 = (var7 & 7) + class248.field3222; + if (var8 >= 0 && var9 >= 0 && var8 < 104 && var9 < 104) { + ArchiveLoader.updatePendingSpawn(GameObject.Client_plane, var8, var9, var6, var2, var4, var5, 0, -1); + } + + } else { + TileItem var33; + if (class194.field2345 == var0) { + var2 = var1.method5582(); + var3 = var1.method5572(); + var4 = (var3 >> 4 & 7) + PacketWriter.field1331; + var5 = (var3 & 7) + class248.field3222; + var6 = var1.method5582(); + if (var4 >= 0 && var5 >= 0 && var4 < 104 && var5 < 104) { + var33 = new TileItem(); + var33.id = var6; + var33.quantity = var2; + if (Client.groundItems[GameObject.Client_plane][var4][var5] == null) { + Client.groundItems[GameObject.Client_plane][var4][var5] = new NodeDeque(); + } + + Client.groundItems[GameObject.Client_plane][var4][var5].addFirst(var33); + MouseRecorder.updateItemPile(var4, var5); + } + + } else if (class194.field2350 == var0) { + var2 = var1.method5580(); + var3 = var1.method5572(); + var4 = (var3 >> 4 & 7) + PacketWriter.field1331; + var5 = (var3 & 7) + class248.field3222; + var6 = var1.method5580(); + var7 = var1.method5580(); + if (var4 >= 0 && var5 >= 0 && var4 < 104 && var5 < 104) { + NodeDeque var34 = Client.groundItems[GameObject.Client_plane][var4][var5]; + if (var34 != null) { + for (TileItem var35 = (TileItem)var34.last(); var35 != null; var35 = (TileItem)var34.previous()) { + if ((var2 & 32767) == var35.id && var7 == var35.quantity) { + var35.quantity = var6; + break; + } + } + + MouseRecorder.updateItemPile(var4, var5); + } + } + + } else if (class194.field2348 == var0) { + var2 = var1.method5580(); + var3 = var1.method5572(); + var4 = (var3 >> 4 & 7) + PacketWriter.field1331; + var5 = (var3 & 7) + class248.field3222; + if (var4 >= 0 && var5 >= 0 && var4 < 104 && var5 < 104) { + NodeDeque var32 = Client.groundItems[GameObject.Client_plane][var4][var5]; + if (var32 != null) { + for (var33 = (TileItem)var32.last(); var33 != null; var33 = (TileItem)var32.previous()) { + if ((var2 & 32767) == var33.id) { + var33.remove(); + break; + } + } + + if (var32.last() == null) { + Client.groundItems[GameObject.Client_plane][var4][var5] = null; + } + + MouseRecorder.updateItemPile(var4, var5); + } + } + + } else if (class194.field2351 == var0) { + var2 = var1.method5572(); + var3 = var2 >> 2; + var4 = var2 & 3; + var5 = Client.field708[var3]; + var6 = var1.readUnsignedShort(); + var7 = var1.method5572(); + var8 = (var7 >> 4 & 7) + PacketWriter.field1331; + var9 = (var7 & 7) + class248.field3222; + if (var8 >= 0 && var9 >= 0 && var8 < 103 && var9 < 103) { + if (var5 == 0) { + BoundaryObject var31 = ArchiveLoader.scene.method3197(GameObject.Client_plane, var8, var9); + if (var31 != null) { + var11 = Occluder.Entity_unpackID(var31.tag); + if (var3 == 2) { + var31.entity1 = new DynamicObject(var11, 2, var4 + 4, GameObject.Client_plane, var8, var9, var6, false, var31.entity1); + var31.entity2 = new DynamicObject(var11, 2, var4 + 1 & 3, GameObject.Client_plane, var8, var9, var6, false, var31.entity2); + } else { + var31.entity1 = new DynamicObject(var11, var3, var4, GameObject.Client_plane, var8, var9, var6, false, var31.entity1); + } + } + } + + if (var5 == 1) { + WallDecoration var42 = ArchiveLoader.scene.method3234(GameObject.Client_plane, var8, var9); + if (var42 != null) { + var11 = Occluder.Entity_unpackID(var42.tag); + if (var3 != 4 && var3 != 5) { + if (var3 == 6) { + var42.entity1 = new DynamicObject(var11, 4, var4 + 4, GameObject.Client_plane, var8, var9, var6, false, var42.entity1); + } else if (var3 == 7) { + var42.entity1 = new DynamicObject(var11, 4, (var4 + 2 & 3) + 4, GameObject.Client_plane, var8, var9, var6, false, var42.entity1); + } else if (var3 == 8) { + var42.entity1 = new DynamicObject(var11, 4, var4 + 4, GameObject.Client_plane, var8, var9, var6, false, var42.entity1); + var42.entity2 = new DynamicObject(var11, 4, (var4 + 2 & 3) + 4, GameObject.Client_plane, var8, var9, var6, false, var42.entity2); + } + } else { + var42.entity1 = new DynamicObject(var11, 4, var4, GameObject.Client_plane, var8, var9, var6, false, var42.entity1); + } + } + } + + if (var5 == 2) { + GameObject var43 = ArchiveLoader.scene.method3183(GameObject.Client_plane, var8, var9); + if (var3 == 11) { + var3 = 10; + } + + if (var43 != null) { + var43.entity = new DynamicObject(Occluder.Entity_unpackID(var43.tag), var3, var4, GameObject.Client_plane, var8, var9, var6, false, var43.entity); + } + } + + if (var5 == 3) { + FloorDecoration var44 = ArchiveLoader.scene.getFloorDecoration(GameObject.Client_plane, var8, var9); + if (var44 != null) { + var44.entity = new DynamicObject(Occluder.Entity_unpackID(var44.tag), 22, var4, GameObject.Client_plane, var8, var9, var6, false, var44.entity); + } + } + } + + } else { + if (class194.field2344 == var0) { + byte var37 = var1.method5645(); + var3 = var1.method5571(); + var4 = var3 >> 2; + var5 = var3 & 3; + var6 = Client.field708[var4]; + byte var40 = var1.method5645(); + var8 = var1.readUnsignedShort(); + var9 = var1.method5572(); + var10 = (var9 >> 4 & 7) + PacketWriter.field1331; + var11 = (var9 & 7) + class248.field3222; + byte var12 = var1.readByte(); + var13 = var1.readUnsignedShort(); + var14 = var1.method5539(); + int var15 = var1.readUnsignedShort(); + byte var16 = var1.readByte(); + Player var17; + if (var13 == Client.localPlayerIndex) { + var17 = PlayerAppearance.localPlayer; + } else { + var17 = Client.players[var13]; + } + + if (var17 != null) { + ObjectDefinition var18 = WorldMapDecoration.getObjectDefinition(var14); + int var19; + int var20; + if (var5 != 1 && var5 != 3) { + var19 = var18.sizeX; + var20 = var18.sizeY; + } else { + var19 = var18.sizeY; + var20 = var18.sizeX; + } + + int var21 = var10 + (var19 >> 1); + int var22 = var10 + (var19 + 1 >> 1); + int var23 = var11 + (var20 >> 1); + int var24 = var11 + (var20 + 1 >> 1); + int[][] var25 = Tiles.Tiles_heights[GameObject.Client_plane]; + int var26 = var25[var22][var24] + var25[var21][var24] + var25[var21][var23] + var25[var22][var23] >> 2; + int var27 = (var10 << 7) + (var19 << 6); + int var28 = (var11 << 7) + (var20 << 6); + Model var29 = var18.getModel(var4, var5, var25, var27, var26, var28); + if (var29 != null) { + ArchiveLoader.updatePendingSpawn(GameObject.Client_plane, var10, var11, var6, -1, 0, 0, var15 + 1, var8 + 1); + var17.animationCycleStart = var15 + Client.cycle; + var17.animationCycleEnd = var8 + Client.cycle; + var17.model0 = var29; + var17.field634 = var10 * 128 + var19 * 64; + var17.field626 = var11 * 128 + var20 * 64; + var17.tileHeight2 = var26; + byte var30; + if (var12 > var40) { + var30 = var12; + var12 = var40; + var40 = var30; + } + + if (var37 > var16) { + var30 = var37; + var37 = var16; + var16 = var30; + } + + var17.field620 = var10 + var12; + var17.field622 = var40 + var10; + var17.field606 = var11 + var37; + var17.field623 = var11 + var16; + } + } + } + + if (class194.field2347 == var0) { + var2 = var1.method5572(); + var3 = (var2 >> 4 & 7) + PacketWriter.field1331; + var4 = (var2 & 7) + class248.field3222; + var5 = var1.method5571(); + var6 = var5 >> 2; + var7 = var5 & 3; + var8 = Client.field708[var6]; + if (var3 >= 0 && var4 >= 0 && var3 < 104 && var4 < 104) { + ArchiveLoader.updatePendingSpawn(GameObject.Client_plane, var3, var4, var8, -1, var6, var7, 0, -1); + } + + } + } + } } } } diff --git a/runescape-client/src/main/java/UserComparator5.java b/runescape-client/src/main/java/UserComparator5.java index 675aa7d570..6b230b7286 100644 --- a/runescape-client/src/main/java/UserComparator5.java +++ b/runescape-client/src/main/java/UserComparator5.java @@ -3,90 +3,197 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fv") +@ObfuscatedName("fk") @Implements("UserComparator5") public class UserComparator5 extends AbstractUserComparator { - @ObfuscatedName("fm") - @ObfuscatedSignature( - descriptor = "Lfu;" - ) - @Export("socketTask") - static Task socketTask; - @ObfuscatedName("gl") - @ObfuscatedSignature( - descriptor = "Llc;" - ) - @Export("compass") - static Sprite compass; - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("reversed") final boolean reversed; public UserComparator5(boolean var1) { - this.reversed = var1; // L: 10 - } // L: 11 + this.reversed = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkl;Lkl;I)I", - garbageValue = "-1154663749" + descriptor = "(Lkz;Lkz;B)I", + garbageValue = "8" ) @Export("compareBuddy") int compareBuddy(Buddy var1, Buddy var2) { - if (var1.world != 0) { // L: 14 - if (var2.world == 0) { // L: 15 + if (var1.world != 0) { + if (var2.world == 0) { return this.reversed ? -1 : 1; } - } else if (var2.world != 0) { // L: 18 + } else if (var2.world != 0) { return this.reversed ? 1 : -1; } - return this.compareUser(var1, var2); // L: 20 + return this.compareUser(var1, var2); } public int compare(Object var1, Object var2) { - return this.compareBuddy((Buddy)var1, (Buddy)var2); // L: 24 + return this.compareBuddy((Buddy)var1, (Buddy)var2); } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Liw;IIB)[Lle;", - garbageValue = "-1" + descriptor = "(Ljava/lang/CharSequence;I)I", + garbageValue = "-1024728099" ) - public static IndexedSprite[] method3540(AbstractArchive var0, int var1, int var2) { - byte[] var4 = var0.takeFile(var1, var2); // L: 25 - boolean var3; - if (var4 == null) { // L: 26 - var3 = false; // L: 27 - } else { - class217.SpriteBuffer_decode(var4); // L: 30 - var3 = true; // L: 31 + public static int method3500(CharSequence var0) { + int var1 = var0.length(); + int var2 = 0; + + for (int var3 = 0; var3 < var1; ++var3) { + char var4 = var0.charAt(var3); + if (var4 <= 127) { + ++var2; + } else if (var4 <= 2047) { + var2 += 2; + } else { + var2 += 3; + } } - if (!var3) { // L: 33 - return null; - } else { - IndexedSprite[] var5 = new IndexedSprite[class336.SpriteBuffer_spriteCount]; // L: 36 + return var2; + } - for (int var6 = 0; var6 < class336.SpriteBuffer_spriteCount; ++var6) { // L: 37 - IndexedSprite var7 = var5[var6] = new IndexedSprite(); // L: 38 - var7.width = class336.SpriteBuffer_spriteWidth; // L: 39 - var7.height = class336.SpriteBuffer_spriteHeight; // L: 40 - var7.xOffset = class336.SpriteBuffer_xOffsets[var6]; // L: 41 - var7.yOffset = class225.SpriteBuffer_yOffsets[var6]; // L: 42 - var7.subWidth = class336.SpriteBuffer_spriteWidths[var6]; // L: 43 - var7.subHeight = class336.SpriteBuffer_spriteHeights[var6]; // L: 44 - var7.palette = WorldMapID.SpriteBuffer_spritePalette; // L: 45 - var7.pixels = class13.SpriteBuffer_pixels[var6]; // L: 46 + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(CLgi;I)C", + garbageValue = "-531904522" + ) + @Export("standardizeChar") + static char standardizeChar(char var0, Language var1) { + if (var0 >= 192 && var0 <= 255) { + if (var0 >= 192 && var0 <= 198) { + return 'A'; + } + + if (var0 == 199) { + return 'C'; + } + + if (var0 >= 200 && var0 <= 203) { + return 'E'; + } + + if (var0 >= 204 && var0 <= 207) { + return 'I'; + } + + if (var0 == 209 && var1 != Language.Language_ES) { + return 'N'; + } + + if (var0 >= 210 && var0 <= 214) { + return 'O'; + } + + if (var0 >= 217 && var0 <= 220) { + return 'U'; + } + + if (var0 == 221) { + return 'Y'; + } + + if (var0 == 223) { + return 's'; + } + + if (var0 >= 224 && var0 <= 230) { + return 'a'; + } + + if (var0 == 231) { + return 'c'; + } + + if (var0 >= 232 && var0 <= 235) { + return 'e'; + } + + if (var0 >= 236 && var0 <= 239) { + return 'i'; + } + + if (var0 == 241 && var1 != Language.Language_ES) { + return 'n'; + } + + if (var0 >= 242 && var0 <= 246) { + return 'o'; + } + + if (var0 >= 249 && var0 <= 252) { + return 'u'; + } + + if (var0 == 253 || var0 == 255) { + return 'y'; + } + } + + if (var0 == 338) { + return 'O'; + } else if (var0 == 339) { + return 'o'; + } else if (var0 == 376) { + return 'Y'; + } else { + return var0; + } + } + + @ObfuscatedName("gu") + @ObfuscatedSignature( + descriptor = "(Lhe;III)V", + garbageValue = "171068975" + ) + @Export("checkIfMinimapClicked") + static final void checkIfMinimapClicked(Widget var0, int var1, int var2) { + if (Client.minimapState == 0 || Client.minimapState == 3) { + if (!Client.isMenuOpen && (MouseHandler.MouseHandler_lastButton == 1 || !UserComparator9.mouseCam && MouseHandler.MouseHandler_lastButton == 4)) { + SpriteMask var3 = var0.getSpriteMask(true); + if (var3 == null) { + return; + } + + int var4 = MouseHandler.MouseHandler_lastPressedX - var1; + int var5 = MouseHandler.MouseHandler_lastPressedY - var2; + if (var3.contains(var4, var5)) { + var4 -= var3.width / 2; + var5 -= var3.height / 2; + int var6 = Client.camAngleY & 2047; + int var7 = Rasterizer3D.Rasterizer3D_sine[var6]; + int var8 = Rasterizer3D.Rasterizer3D_cosine[var6]; + int var9 = var4 * var8 + var7 * var5 >> 11; + int var10 = var8 * var5 - var7 * var4 >> 11; + int var11 = var9 + PlayerAppearance.localPlayer.x >> 7; + int var12 = PlayerAppearance.localPlayer.y - var10 >> 7; + PacketBufferNode var13 = ItemContainer.getPacketBufferNode(ClientPacket.field2272, Client.packetWriter.isaacCipher); + var13.packetBuffer.writeByte(18); + var13.packetBuffer.method5739(NetFileRequest.baseX * 64 + var11); + var13.packetBuffer.writeIntME(KeyHandler.KeyHandler_pressedKeys[82] ? (KeyHandler.KeyHandler_pressedKeys[81] ? 2 : 1) : 0); + var13.packetBuffer.writeShortLE(class41.baseY * 64 + var12); + var13.packetBuffer.writeByte(var4); + var13.packetBuffer.writeByte(var5); + var13.packetBuffer.writeShort(Client.camAngleY); + var13.packetBuffer.writeByte(57); + var13.packetBuffer.writeByte(0); + var13.packetBuffer.writeByte(0); + var13.packetBuffer.writeByte(89); + var13.packetBuffer.writeShort(PlayerAppearance.localPlayer.x); + var13.packetBuffer.writeShort(PlayerAppearance.localPlayer.y); + var13.packetBuffer.writeByte(63); + Client.packetWriter.addNode(var13); + Client.destinationX = var11; + Client.destinationY = var12; + } } - class336.SpriteBuffer_xOffsets = null; // L: 49 - class225.SpriteBuffer_yOffsets = null; // L: 50 - class336.SpriteBuffer_spriteWidths = null; // L: 51 - class336.SpriteBuffer_spriteHeights = null; // L: 52 - WorldMapID.SpriteBuffer_spritePalette = null; // L: 53 - class13.SpriteBuffer_pixels = null; // L: 54 - return var5; // L: 58 } } } diff --git a/runescape-client/src/main/java/UserComparator6.java b/runescape-client/src/main/java/UserComparator6.java index 9d6e3c6c32..c780bb9876 100644 --- a/runescape-client/src/main/java/UserComparator6.java +++ b/runescape-client/src/main/java/UserComparator6.java @@ -1,74 +1,89 @@ +import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; 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("fg") +@ObfuscatedName("fx") @Implements("UserComparator6") public class UserComparator6 extends AbstractUserComparator { - @ObfuscatedName("ec") - @Export("worldHost") - static String worldHost; - @ObfuscatedName("f") + @ObfuscatedName("gr") + @ObfuscatedGetter( + intValue = -1692601205 + ) + static int field2013; + @ObfuscatedName("h") @Export("reversed") final boolean reversed; public UserComparator6(boolean var1) { - this.reversed = var1; // L: 10 - } // L: 11 + this.reversed = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkl;Lkl;I)I", - garbageValue = "313468169" + descriptor = "(Lkz;Lkz;I)I", + garbageValue = "1927447948" ) @Export("compareBuddy") int compareBuddy(Buddy var1, Buddy var2) { - if (var1.world != 0 && var2.world != 0) { // L: 14 - return this.reversed ? var1.getUsername().compareToTyped(var2.getUsername()) : var2.getUsername().compareToTyped(var1.getUsername()); // L: 15 + if (var1.world != 0 && var2.world != 0) { + return this.reversed ? var1.getUsername().compareToTyped(var2.getUsername()) : var2.getUsername().compareToTyped(var1.getUsername()); } else { - return this.compareUser(var1, var2); // L: 17 + return this.compareUser(var1, var2); } } public int compare(Object var1, Object var2) { - return this.compareBuddy((Buddy)var1, (Buddy)var2); // L: 21 + return this.compareBuddy((Buddy)var1, (Buddy)var2); } - @ObfuscatedName("fr") + @ObfuscatedName("ag") @ObfuscatedSignature( - descriptor = "(Ljg;IIIB)V", - garbageValue = "100" + descriptor = "(Lfa;IIB)Ldp;", + garbageValue = "7" ) - @Export("addSequenceSoundEffect") - static void addSequenceSoundEffect(SequenceDefinition var0, int var1, int var2, int var3) { - if (Client.soundEffectCount < 50 && Client.areaSoundEffectVolume != 0) { // L: 3556 - if (var0.soundEffects != null && var1 < var0.soundEffects.length) { // L: 3557 - int var4 = var0.soundEffects[var1]; // L: 3558 - if (var4 != 0) { // L: 3559 - int var5 = var4 >> 8; // L: 3560 - int var6 = var4 >> 4 & 7; // L: 3561 - int var7 = var4 & 15; // L: 3562 - Client.soundEffectIds[Client.soundEffectCount] = var5; // L: 3563 - Client.queuedSoundEffectLoops[Client.soundEffectCount] = var6; // L: 3564 - Client.queuedSoundEffectDelays[Client.soundEffectCount] = 0; // L: 3565 - Client.soundEffects[Client.soundEffectCount] = null; // L: 3566 - int var8 = (var2 - 64) / 128; // L: 3567 - int var9 = (var3 - 64) / 128; // L: 3568 - Client.soundLocations[Client.soundEffectCount] = var7 + (var9 << 8) + (var8 << 16); // L: 3569 - ++Client.soundEffectCount; // L: 3570 - } + public static final PcmPlayer method3526(TaskHandler var0, int var1, int var2) { + if (PcmPlayer.field1443 == 0) { + throw new IllegalStateException(); + } else if (var1 >= 0 && var1 < 2) { + if (var2 < 256) { + var2 = 256; } - } - } // L: 3571 - @ObfuscatedName("kk") - @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "-131099529" - ) - static void method3565(Buffer var0, int var1) { - class22.method246(var0.array, var1); // L: 11628 - UserComparator9.method3513(var0, var1); // L: 11629 - } // L: 11630 + try { + PcmPlayer var3 = Varps.pcmPlayerProvider.player(); + var3.samples = new int[256 * (PcmPlayer.PcmPlayer_stereo ? 2 : 1)]; + var3.field1431 = var2; + var3.init(); + var3.capacity = (var2 & -1024) + 1024; + if (var3.capacity > 16384) { + var3.capacity = 16384; + } + + var3.open(var3.capacity); + if (PcmPlayer.field1424 > 0 && PcmPlayer.soundSystem == null) { + PcmPlayer.soundSystem = new SoundSystem(); + InterfaceParent.soundSystemExecutor = Executors.newScheduledThreadPool(1); + InterfaceParent.soundSystemExecutor.scheduleAtFixedRate(PcmPlayer.soundSystem, 0L, 10L, TimeUnit.MILLISECONDS); + } + + if (PcmPlayer.soundSystem != null) { + if (PcmPlayer.soundSystem.players[var1] != null) { + throw new IllegalArgumentException(); + } + + PcmPlayer.soundSystem.players[var1] = var3; + } + + return var3; + } catch (Throwable var4) { + return new PcmPlayer(); + } + } else { + throw new IllegalArgumentException(); + } + } } diff --git a/runescape-client/src/main/java/UserComparator7.java b/runescape-client/src/main/java/UserComparator7.java index 5dadc69d26..c99c7307c0 100644 --- a/runescape-client/src/main/java/UserComparator7.java +++ b/runescape-client/src/main/java/UserComparator7.java @@ -3,32 +3,35 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fb") +@ObfuscatedName("fs") @Implements("UserComparator7") public class UserComparator7 extends AbstractUserComparator { - @ObfuscatedName("f") + @ObfuscatedName("m") + @Export("Tiles_hueMultiplier") + static int[] Tiles_hueMultiplier; + @ObfuscatedName("h") @Export("reversed") final boolean reversed; public UserComparator7(boolean var1) { - this.reversed = var1; // L: 10 - } // L: 11 + this.reversed = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkl;Lkl;I)I", - garbageValue = "-386132507" + descriptor = "(Lkz;Lkz;I)I", + garbageValue = "-1102022170" ) @Export("compareBuddy") int compareBuddy(Buddy var1, Buddy var2) { - if (var1.world != 0 && var2.world != 0) { // L: 14 - return this.reversed ? var1.int2 - var2.int2 : var2.int2 - var1.int2; // L: 15 + if (var1.world != 0 && var2.world != 0) { + return this.reversed ? var1.int2 - var2.int2 : var2.int2 - var1.int2; } else { - return this.compareUser(var1, var2); // L: 17 + return this.compareUser(var1, var2); } } public int compare(Object var1, Object var2) { - return this.compareBuddy((Buddy)var1, (Buddy)var2); // L: 21 + return this.compareBuddy((Buddy)var1, (Buddy)var2); } } diff --git a/runescape-client/src/main/java/UserComparator8.java b/runescape-client/src/main/java/UserComparator8.java index 4db582b22b..65ffcd9a9e 100644 --- a/runescape-client/src/main/java/UserComparator8.java +++ b/runescape-client/src/main/java/UserComparator8.java @@ -3,36 +3,134 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fy") +@ObfuscatedName("fp") @Implements("UserComparator8") public class UserComparator8 extends AbstractUserComparator { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("reversed") final boolean reversed; public UserComparator8(boolean var1) { - this.reversed = var1; // L: 11 - } // L: 12 + this.reversed = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkl;Lkl;I)I", - garbageValue = "1500260549" + descriptor = "(Lkz;Lkz;I)I", + garbageValue = "-617956062" ) @Export("compareBuddy") int compareBuddy(Buddy var1, Buddy var2) { - if (Client.worldId == var1.world) { // L: 15 + if (Client.worldId == var1.world) { if (var2.world != Client.worldId) { - return this.reversed ? -1 : 1; // L: 16 + return this.reversed ? -1 : 1; } } else if (var2.world == Client.worldId) { - return this.reversed ? 1 : -1; // L: 19 + return this.reversed ? 1 : -1; } - return this.compareUser(var1, var2); // L: 21 + return this.compareUser(var1, var2); } public int compare(Object var1, Object var2) { - return this.compareBuddy((Buddy)var1, (Buddy)var2); // L: 25 + return this.compareBuddy((Buddy)var1, (Buddy)var2); + } + + @ObfuscatedName("fa") + @ObfuscatedSignature( + descriptor = "(IB)V", + garbageValue = "62" + ) + @Export("getLoginError") + static void getLoginError(int var0) { + if (var0 == -3) { + GameShell.setLoginResponseString("Connection timed out.", "Please try using a different world.", ""); + } else if (var0 == -2) { + GameShell.setLoginResponseString("Error connecting to server.", "Please try using a different world.", ""); + } else if (var0 == -1) { + GameShell.setLoginResponseString("No response from server.", "Please try using a different world.", ""); + } else if (var0 == 3) { + Login.loginIndex = 3; + Login.field1190 = 1; + } else if (var0 == 4) { + Login.loginIndex = 12; + Login.field1199 = 0; + } else if (var0 == 5) { + Login.field1190 = 2; + GameShell.setLoginResponseString("Your account has not logged out from its last", "session or the server is too busy right now.", "Please try again in a few minutes."); + } else if (var0 != 68 && (Client.onMobile || var0 != 6)) { + if (var0 == 7) { + GameShell.setLoginResponseString("This world is full.", "Please use a different world.", ""); + } else if (var0 == 8) { + GameShell.setLoginResponseString("Unable to connect.", "Login server offline.", ""); + } else if (var0 == 9) { + GameShell.setLoginResponseString("Login limit exceeded.", "Too many connections from your address.", ""); + } else if (var0 == 10) { + GameShell.setLoginResponseString("Unable to connect.", "Bad session id.", ""); + } else if (var0 == 11) { + GameShell.setLoginResponseString("We suspect someone knows your password.", "Press 'change your password' on front page.", ""); + } else if (var0 == 12) { + GameShell.setLoginResponseString("You need a members account to login to this world.", "Please subscribe, or use a different world.", ""); + } else if (var0 == 13) { + GameShell.setLoginResponseString("Could not complete login.", "Please try using a different world.", ""); + } else if (var0 == 14) { + GameShell.setLoginResponseString("The server is being updated.", "Please wait 1 minute and try again.", ""); + } else if (var0 == 16) { + GameShell.setLoginResponseString("Too many login attempts.", "Please wait a few minutes before trying again.", ""); + } else if (var0 == 17) { + GameShell.setLoginResponseString("You are standing in a members-only area.", "To play on this world move to a free area first", ""); + } else if (var0 == 18) { + Login.loginIndex = 12; + Login.field1199 = 1; + } else if (var0 == 19) { + GameShell.setLoginResponseString("This world is running a closed Beta.", "Sorry invited players only.", "Please use a different world."); + } else if (var0 == 20) { + GameShell.setLoginResponseString("Invalid loginserver requested.", "Please try using a different world.", ""); + } else if (var0 == 22) { + GameShell.setLoginResponseString("Malformed login packet.", "Please try again.", ""); + } else if (var0 == 23) { + GameShell.setLoginResponseString("No reply from loginserver.", "Please wait 1 minute and try again.", ""); + } else if (var0 == 24) { + GameShell.setLoginResponseString("Error loading your profile.", "Please contact customer support.", ""); + } else if (var0 == 25) { + GameShell.setLoginResponseString("Unexpected loginserver response.", "Please try using a different world.", ""); + } else if (var0 == 26) { + GameShell.setLoginResponseString("This computers address has been blocked", "as it was used to break our rules.", ""); + } else if (var0 == 27) { + GameShell.setLoginResponseString("", "Service unavailable.", ""); + } else if (var0 == 31) { + GameShell.setLoginResponseString("Your account must have a displayname set", "in order to play the game. Please set it", "via the website, or the main game."); + } else if (var0 == 32) { + GameShell.setLoginResponseString("Your attempt to log into your account was", "unsuccessful. Don't worry, you can sort", "this out by visiting the billing system."); + } else if (var0 == 37) { + GameShell.setLoginResponseString("Your account is currently inaccessible.", "Please try again in a few minutes.", ""); + } else if (var0 == 38) { + GameShell.setLoginResponseString("You need to vote to play!", "Visit runescape.com and vote,", "and then come back here!"); + } else if (var0 == 55) { + Login.loginIndex = 8; + } else { + if (var0 == 56) { + GameShell.setLoginResponseString("Enter the 6-digit code generated by your", "authenticator app.", ""); + WorldMapCacheName.updateGameState(11); + return; + } + + if (var0 == 57) { + GameShell.setLoginResponseString("The code you entered was incorrect.", "Please try again.", ""); + WorldMapCacheName.updateGameState(11); + return; + } + + if (var0 == 61) { + Login.loginIndex = 7; + } else { + GameShell.setLoginResponseString("Unexpected server response", "Please try using a different world.", ""); + } + } + } else { + GameShell.setLoginResponseString("RuneScape has been updated!", "Please reload this page.", ""); + } + + WorldMapCacheName.updateGameState(10); } } diff --git a/runescape-client/src/main/java/UserComparator9.java b/runescape-client/src/main/java/UserComparator9.java index 987c37fb86..67a1246902 100644 --- a/runescape-client/src/main/java/UserComparator9.java +++ b/runescape-client/src/main/java/UserComparator9.java @@ -2,79 +2,128 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("fo") +@ObfuscatedName("fj") @Implements("UserComparator9") public class UserComparator9 extends AbstractUserComparator { - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "Liw;" - ) - @Export("ItemDefinition_modelArchive") - public static AbstractArchive ItemDefinition_modelArchive; - @ObfuscatedName("f") + @ObfuscatedName("du") + @Export("mouseCam") + static boolean mouseCam; + @ObfuscatedName("h") @Export("reversed") final boolean reversed; public UserComparator9(boolean var1) { - this.reversed = var1; // L: 11 - } // L: 12 + this.reversed = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkl;Lkl;I)I", - garbageValue = "-1791270735" + descriptor = "(Lkz;Lkz;B)I", + garbageValue = "-18" ) @Export("compareBuddy") int compareBuddy(Buddy var1, Buddy var2) { - if (Client.worldId == var1.world && var2.world == Client.worldId) { // L: 15 - return this.reversed ? var1.getUsername().compareToTyped(var2.getUsername()) : var2.getUsername().compareToTyped(var1.getUsername()); // L: 16 + if (Client.worldId == var1.world && var2.world == Client.worldId) { + return this.reversed ? var1.getUsername().compareToTyped(var2.getUsername()) : var2.getUsername().compareToTyped(var1.getUsername()); } else { - return this.compareUser(var1, var2); // L: 18 + return this.compareUser(var1, var2); } } public int compare(Object var1, Object var2) { - return this.compareBuddy((Buddy)var1, (Buddy)var2); // L: 22 + return this.compareBuddy((Buddy)var1, (Buddy)var2); } - @ObfuscatedName("q") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lkb;IB)V", - garbageValue = "39" + descriptor = "(Ljava/lang/Throwable;Ljava/lang/String;)Lmg;" ) - public static void method3513(Buffer var0, int var1) { - if (JagexCache.JagexCache_randomDat != null) { // L: 327 - try { - JagexCache.JagexCache_randomDat.seek(0L); // L: 329 - JagexCache.JagexCache_randomDat.write(var0.array, var1, 24); // L: 330 - } catch (Exception var3) { // L: 332 + @Export("newRunException") + public static RunException newRunException(Throwable var0, String var1) { + RunException var2; + if (var0 instanceof RunException) { + var2 = (RunException)var0; + var2.message = var2.message + ' ' + var1; + } else { + var2 = new RunException(var0, var1); + } + + return var2; + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "(ILcs;ZI)I", + garbageValue = "-1672462382" + ) + static int method3478(int var0, Script var1, boolean var2) { + Widget var3; + if (var0 >= 2000) { + var0 -= 1000; + var3 = CollisionMap.getWidget(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + } else { + var3 = var2 ? PlayerAppearance.field2561 : VarcInt.field3264; + } + + CollisionMap.invalidateWidget(var3); + if (var0 != ScriptOpcodes.CC_SETOBJECT && var0 != ScriptOpcodes.CC_SETOBJECT_NONUM && var0 != ScriptOpcodes.CC_SETOBJECT_ALWAYS_NUM) { + if (var0 == ScriptOpcodes.CC_SETNPCHEAD) { + var3.modelType = 2; + var3.modelId = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + return 1; + } else if (var0 == ScriptOpcodes.CC_SETPLAYERHEAD_SELF) { + var3.modelType = 3; + var3.modelId = PlayerAppearance.localPlayer.appearance.getChatHeadId(); + return 1; + } else { + return 2; + } + } else { + VarcInt.Interpreter_intStackSize -= 2; + int var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + int var5 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + var3.itemId = var4; + var3.itemQuantity = var5; + ItemDefinition var6 = SecureRandomCallable.ItemDefinition_get(var4); + var3.modelAngleX = var6.xan2d; + var3.modelAngleY = var6.yan2d; + var3.modelAngleZ = var6.zan2d; + var3.modelOffsetX = var6.offsetX2d; + var3.modelOffsetY = var6.offsetY2d; + var3.modelZoom = var6.zoom2d; + if (var0 == ScriptOpcodes.CC_SETOBJECT_NONUM) { + var3.itemQuantityMode = 0; + } else if (var0 == ScriptOpcodes.CC_SETOBJECT_ALWAYS_NUM | 1 == var6.isStackable) { + var3.itemQuantityMode = 1; + } else { + var3.itemQuantityMode = 2; + } + + if (var3.field2641 > 0) { + var3.modelZoom = var3.modelZoom * 32 / var3.field2641; + } else if (var3.rawWidth > 0) { + var3.modelZoom = var3.modelZoom * 32 / var3.rawWidth; + } + + return 1; + } + } + + @ObfuscatedName("gb") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-889276398" + ) + static final void method3477() { + for (int var0 = 0; var0 < Client.npcCount; ++var0) { + int var1 = Client.npcIndices[var0]; + NPC var2 = Client.npcs[var1]; + if (var2 != null) { + WorldMapID.updateActorSequence(var2, var2.definition.size); } } - } // L: 334 - - @ObfuscatedName("ib") - @ObfuscatedSignature( - descriptor = "([Lht;Lht;ZI)V", - garbageValue = "137772189" - ) - @Export("revalidateWidgetScroll") - static void revalidateWidgetScroll(Widget[] var0, Widget var1, boolean var2) { - int var3 = var1.scrollWidth != 0 ? var1.scrollWidth * 1991373371 * -999155981 : var1.width * 1458952181 * 410180701; // L: 9875 - int var4 = var1.scrollHeight != 0 ? var1.scrollHeight * -1625501093 * 850398675 : var1.height * -1661593933 * 964462715; // L: 9876 - SecureRandomFuture.resizeInterface(var0, var1.id, var3, var4, var2); // L: 9877 - if (var1.children != null) { // L: 9878 - SecureRandomFuture.resizeInterface(var1.children, var1.id, var3, var4, var2); - } - - InterfaceParent var5 = (InterfaceParent)Client.interfaceParents.get((long)var1.id); // L: 9879 - if (var5 != null) { - Fonts.method5463(var5.group, var3, var4, var2); // L: 9880 - } - - if (var1.contentType == 1337) { // L: 9881 - } - - } // L: 9882 + } } diff --git a/runescape-client/src/main/java/UserList.java b/runescape-client/src/main/java/UserList.java index 8837ec781c..32435d8d39 100644 --- a/runescape-client/src/main/java/UserList.java +++ b/runescape-client/src/main/java/UserList.java @@ -7,335 +7,335 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ku") +@ObfuscatedName("kb") @Implements("UserList") public abstract class UserList { - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 796277423 + intValue = -562547945 ) @Export("capacity") final int capacity; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -866488291 + intValue = 2048838613 ) @Export("size") int size; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "[Ljh;" + descriptor = "[Lju;" ) @Export("array") User[] array; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("usernamesMap") HashMap usernamesMap; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("previousUsernamesMap") HashMap previousUsernamesMap; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("comparator") Comparator comparator; UserList(int var1) { - this.size = 0; // L: 9 - this.comparator = null; // L: 13 - this.capacity = var1; // L: 16 - this.array = this.newTypedArray(var1); // L: 17 - this.usernamesMap = new HashMap(var1 / 8); // L: 18 - this.previousUsernamesMap = new HashMap(var1 / 8); // L: 19 - } // L: 20 + this.size = 0; + this.comparator = null; + this.capacity = var1; + this.array = this.newTypedArray(var1); + this.usernamesMap = new HashMap(var1 / 8); + this.previousUsernamesMap = new HashMap(var1 / 8); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)Ljh;", - garbageValue = "-1664145399" + descriptor = "(B)Lju;", + garbageValue = "-99" ) @Export("newInstance") abstract User newInstance(); - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IB)[Ljh;", - garbageValue = "-35" + descriptor = "(II)[Lju;", + garbageValue = "-1524839332" ) @Export("newTypedArray") abstract User[] newTypedArray(int var1); - @ObfuscatedName("o") + @ObfuscatedName("c") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1055831029" + descriptor = "(B)V", + garbageValue = "-91" ) @Export("clear") public void clear() { - this.size = 0; // L: 23 - Arrays.fill(this.array, (Object)null); // L: 24 - this.usernamesMap.clear(); // L: 25 - this.previousUsernamesMap.clear(); // L: 26 - } // L: 27 + this.size = 0; + Arrays.fill(this.array, (Object)null); + this.usernamesMap.clear(); + this.previousUsernamesMap.clear(); + } - @ObfuscatedName("n") + @ObfuscatedName("i") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1841589615" + garbageValue = "1488862486" ) @Export("getSize") public int getSize() { - return this.size; // L: 30 + return this.size; } - @ObfuscatedName("x") + @ObfuscatedName("f") @ObfuscatedSignature( descriptor = "(B)Z", - garbageValue = "39" + garbageValue = "1" ) @Export("isFull") public boolean isFull() { - return this.capacity == this.size; // L: 34 + return this.size == this.capacity; } - @ObfuscatedName("p") + @ObfuscatedName("y") @ObfuscatedSignature( - descriptor = "(Lkm;B)Z", - garbageValue = "6" + descriptor = "(Lki;B)Z", + garbageValue = "1" ) @Export("contains") public boolean contains(Username var1) { - if (!var1.hasCleanName()) { // L: 38 + if (!var1.hasCleanName()) { return false; } else { - return this.usernamesMap.containsKey(var1) ? true : this.previousUsernamesMap.containsKey(var1); // L: 39 40 + return this.usernamesMap.containsKey(var1) ? true : this.previousUsernamesMap.containsKey(var1); } } @ObfuscatedName("r") @ObfuscatedSignature( - descriptor = "(Lkm;I)Ljh;", - garbageValue = "-1592102187" + descriptor = "(Lki;I)Lju;", + garbageValue = "709076888" ) @Export("getByUsername") public User getByUsername(Username var1) { - User var2 = this.getByCurrentUsername(var1); // L: 44 - return var2 != null ? var2 : this.getByPreviousUsername(var1); // L: 45 46 + User var2 = this.getByCurrentUsername(var1); + return var2 != null ? var2 : this.getByPreviousUsername(var1); } - @ObfuscatedName("y") + @ObfuscatedName("q") @ObfuscatedSignature( - descriptor = "(Lkm;I)Ljh;", - garbageValue = "705820719" + descriptor = "(Lki;I)Lju;", + garbageValue = "-2053834091" ) @Export("getByCurrentUsername") User getByCurrentUsername(Username var1) { - return !var1.hasCleanName() ? null : (User)this.usernamesMap.get(var1); // L: 50 51 - } - - @ObfuscatedName("s") - @ObfuscatedSignature( - descriptor = "(Lkm;B)Ljh;", - garbageValue = "63" - ) - @Export("getByPreviousUsername") - User getByPreviousUsername(Username var1) { - return !var1.hasCleanName() ? null : (User)this.previousUsernamesMap.get(var1); // L: 55 56 - } - - @ObfuscatedName("j") - @ObfuscatedSignature( - descriptor = "(Lkm;I)Z", - garbageValue = "-539388005" - ) - @Export("removeByUsername") - public final boolean removeByUsername(Username var1) { - User var2 = this.getByCurrentUsername(var1); // L: 60 - if (var2 == null) { // L: 61 - return false; - } else { - this.remove(var2); // L: 62 - return true; // L: 63 - } - } - - @ObfuscatedName("d") - @ObfuscatedSignature( - descriptor = "(Ljh;I)V", - garbageValue = "1784418658" - ) - @Export("remove") - final void remove(User var1) { - int var2 = this.indexOf(var1); // L: 67 - if (var2 != -1) { // L: 68 - this.arrayRemove(var2); // L: 69 - this.mapRemove(var1); // L: 70 - } - } // L: 71 - - @ObfuscatedName("a") - @ObfuscatedSignature( - descriptor = "(Lkm;B)Ljh;", - garbageValue = "1" - ) - @Export("addLastNoPreviousUsername") - User addLastNoPreviousUsername(Username var1) { - return this.addLast(var1, (Username)null); // L: 74 + return !var1.hasCleanName() ? null : (User)this.usernamesMap.get(var1); } @ObfuscatedName("g") @ObfuscatedSignature( - descriptor = "(Lkm;Lkm;I)Ljh;", - garbageValue = "-1324246236" + descriptor = "(Lki;I)Lju;", + garbageValue = "2109358184" + ) + @Export("getByPreviousUsername") + User getByPreviousUsername(Username var1) { + return !var1.hasCleanName() ? null : (User)this.previousUsernamesMap.get(var1); + } + + @ObfuscatedName("o") + @ObfuscatedSignature( + descriptor = "(Lki;B)Z", + garbageValue = "0" + ) + @Export("removeByUsername") + public final boolean removeByUsername(Username var1) { + User var2 = this.getByCurrentUsername(var1); + if (var2 == null) { + return false; + } else { + this.remove(var2); + return true; + } + } + + @ObfuscatedName("an") + @ObfuscatedSignature( + descriptor = "(Lju;I)V", + garbageValue = "-202922237" + ) + @Export("remove") + final void remove(User var1) { + int var2 = this.indexOf(var1); + if (var2 != -1) { + this.arrayRemove(var2); + this.mapRemove(var1); + } + } + + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "(Lki;B)Lju;", + garbageValue = "8" + ) + @Export("addLastNoPreviousUsername") + User addLastNoPreviousUsername(Username var1) { + return this.addLast(var1, (Username)null); + } + + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "(Lki;Lki;I)Lju;", + garbageValue = "1547669313" ) @Export("addLast") User addLast(Username var1, Username var2) { - if (this.getByCurrentUsername(var1) != null) { // L: 78 + if (this.getByCurrentUsername(var1) != null) { throw new IllegalStateException(); } else { - User var3 = this.newInstance(); // L: 79 - var3.set(var1, var2); // L: 80 - this.arrayAddLast(var3); // L: 81 - this.mapPut(var3); // L: 82 - return var3; // L: 83 + User var3 = this.newInstance(); + var3.set(var1, var2); + this.arrayAddLast(var3); + this.mapPut(var3); + return var3; } } - @ObfuscatedName("h") + @ObfuscatedName("ag") @ObfuscatedSignature( - descriptor = "(IB)Ljh;", - garbageValue = "20" + descriptor = "(II)Lju;", + garbageValue = "1977107439" ) @Export("get") public final User get(int var1) { - if (var1 >= 0 && var1 < this.size) { // L: 87 + if (var1 >= 0 && var1 < this.size) { return this.array[var1]; } else { - throw new ArrayIndexOutOfBoundsException(var1); // L: 88 + throw new ArrayIndexOutOfBoundsException(var1); } } - @ObfuscatedName("ab") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "0" + descriptor = "(I)V", + garbageValue = "2040277695" ) @Export("sort") public final void sort() { - if (this.comparator == null) { // L: 92 - Arrays.sort(this.array, 0, this.size); // L: 93 + if (this.comparator == null) { + Arrays.sort(this.array, 0, this.size); } else { - Arrays.sort(this.array, 0, this.size, this.comparator); // L: 96 + Arrays.sort(this.array, 0, this.size, this.comparator); } - } // L: 98 + } - @ObfuscatedName("ac") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "(Ljh;Lkm;Lkm;I)V", - garbageValue = "226433495" + descriptor = "(Lju;Lki;Lki;I)V", + garbageValue = "-2012575511" ) @Export("changeName") final void changeName(User var1, Username var2, Username var3) { - this.mapRemove(var1); // L: 101 - var1.set(var2, var3); // L: 102 - this.mapPut(var1); // L: 103 - } // L: 104 + this.mapRemove(var1); + var1.set(var2, var3); + this.mapPut(var1); + } - @ObfuscatedName("ao") + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(Ljh;B)I", - garbageValue = "-67" + descriptor = "(Lju;I)I", + garbageValue = "1245630013" ) @Export("indexOf") final int indexOf(User var1) { - for (int var2 = 0; var2 < this.size; ++var2) { // L: 107 - if (this.array[var2] == var1) { // L: 108 + for (int var2 = 0; var2 < this.size; ++var2) { + if (this.array[var2] == var1) { return var2; } } - return -1; // L: 110 + return -1; } - @ObfuscatedName("af") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(Ljh;I)V", - garbageValue = "-2111985492" + descriptor = "(Lju;S)V", + garbageValue = "255" ) @Export("mapRemove") final void mapRemove(User var1) { - if (this.usernamesMap.remove(var1.username) == null) { // L: 114 + if (this.usernamesMap.remove(var1.username) == null) { throw new IllegalStateException(); } else { if (var1.previousUsername != null) { - this.previousUsernamesMap.remove(var1.previousUsername); // L: 115 + this.previousUsernamesMap.remove(var1.previousUsername); } } - } // L: 116 + } - @ObfuscatedName("av") + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "(Ljh;I)V", - garbageValue = "2106732917" + descriptor = "(Lju;I)V", + garbageValue = "1107214584" ) @Export("arrayAddLast") final void arrayAddLast(User var1) { - this.array[++this.size - 1] = var1; // L: 119 - } // L: 120 + this.array[++this.size - 1] = var1; + } - @ObfuscatedName("ar") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(Ljh;I)V", - garbageValue = "885880161" + descriptor = "(Lju;I)V", + garbageValue = "961436842" ) @Export("mapPut") final void mapPut(User var1) { - this.usernamesMap.put(var1.username, var1); // L: 123 - if (var1.previousUsername != null) { // L: 124 - User var2 = (User)this.previousUsernamesMap.put(var1.previousUsername, var1); // L: 125 - if (var2 != null && var2 != var1) { // L: 126 - var2.previousUsername = null; // L: 127 + this.usernamesMap.put(var1.username, var1); + if (var1.previousUsername != null) { + User var2 = (User)this.previousUsernamesMap.put(var1.previousUsername, var1); + if (var2 != null && var2 != var1) { + var2.previousUsername = null; } } - } // L: 130 + } - @ObfuscatedName("ay") + @ObfuscatedName("aq") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "1356379849" + garbageValue = "365639793" ) @Export("arrayRemove") final void arrayRemove(int var1) { - --this.size; // L: 133 - if (var1 < this.size) { // L: 134 - System.arraycopy(this.array, var1 + 1, this.array, var1, this.size - var1); // L: 135 + --this.size; + if (var1 < this.size) { + System.arraycopy(this.array, var1 + 1, this.array, var1, this.size - var1); } - } // L: 137 + } @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-73" + descriptor = "(I)V", + garbageValue = "1918060687" ) @Export("removeComparator") public final void removeComparator() { - this.comparator = null; // L: 143 - } // L: 144 + this.comparator = null; + } - @ObfuscatedName("az") + @ObfuscatedName("am") @ObfuscatedSignature( descriptor = "(Ljava/util/Comparator;I)V", - garbageValue = "-1563194016" + garbageValue = "345387098" ) @Export("addComparator") public final void addComparator(Comparator var1) { - if (this.comparator == null) { // L: 147 - this.comparator = var1; // L: 148 - } else if (this.comparator instanceof AbstractUserComparator) { // L: 150 - ((AbstractUserComparator)this.comparator).addComparator(var1); // L: 151 + if (this.comparator == null) { + this.comparator = var1; + } else if (this.comparator instanceof AbstractUserComparator) { + ((AbstractUserComparator)this.comparator).addComparator(var1); } - } // L: 153 + } } diff --git a/runescape-client/src/main/java/Username.java b/runescape-client/src/main/java/Username.java index f1dfaa4f85..fa9a672192 100644 --- a/runescape-client/src/main/java/Username.java +++ b/runescape-client/src/main/java/Username.java @@ -3,88 +3,87 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("km") +@ObfuscatedName("ki") @Implements("Username") public class Username implements Comparable { - @ObfuscatedName("dj") - @ObfuscatedSignature( - descriptor = "Lid;" - ) - @Export("archive4") - static Archive archive4; - @ObfuscatedName("f") + @ObfuscatedName("j") + @Export("Interpreter_stringLocals") + static String[] Interpreter_stringLocals; + @ObfuscatedName("n") + static byte[][][] field3663; + @ObfuscatedName("h") @Export("name") String name; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("cleanName") String cleanName; @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Lmc;)V" + descriptor = "(Ljava/lang/String;Lmu;)V" ) public Username(String var1, LoginType var2) { - this.name = var1; // L: 11 - this.cleanName = class323.method6048(var1, var2); // L: 12 - } // L: 13 + this.name = var1; + this.cleanName = VarbitDefinition.method4525(var1, var2); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(I)Ljava/lang/String;", - garbageValue = "-1362272434" + garbageValue = "-1189841453" ) @Export("getName") public String getName() { - return this.name; // L: 16 + return this.name; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "2074107082" + descriptor = "(B)Z", + garbageValue = "-4" ) @Export("hasCleanName") public boolean hasCleanName() { - return this.cleanName != null; // L: 20 + return this.cleanName != null; } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkm;I)I", - garbageValue = "1900855669" + descriptor = "(Lki;I)I", + garbageValue = "-1152802722" ) @Export("compareToTyped") public int compareToTyped(Username var1) { - if (this.cleanName == null) { // L: 44 - return var1.cleanName == null ? 0 : 1; // L: 45 46 + if (this.cleanName == null) { + return var1.cleanName == null ? 0 : 1; } else { - return var1.cleanName == null ? -1 : this.cleanName.compareTo(var1.cleanName); // L: 48 49 + return var1.cleanName == null ? -1 : this.cleanName.compareTo(var1.cleanName); } } public boolean equals(Object var1) { - if (var1 instanceof Username) { // L: 24 - Username var2 = (Username)var1; // L: 25 + if (var1 instanceof Username) { + Username var2 = (Username)var1; if (this.cleanName == null) { - return var2.cleanName == null; // L: 26 - } else if (var2.cleanName == null) { // L: 27 + return var2.cleanName == null; + } else if (var2.cleanName == null) { return false; } else { - return this.hashCode() != var2.hashCode() ? false : this.cleanName.equals(var2.cleanName); // L: 28 29 + return this.hashCode() != var2.hashCode() ? false : this.cleanName.equals(var2.cleanName); } } else { - return false; // L: 31 + return false; } } public int hashCode() { - return this.cleanName == null ? 0 : this.cleanName.hashCode(); // L: 35 36 + return this.cleanName == null ? 0 : this.cleanName.hashCode(); } public int compareTo(Object var1) { - return this.compareToTyped((Username)var1); // L: 53 + return this.compareToTyped((Username)var1); } public String toString() { - return this.getName(); // L: 40 + return this.getName(); } } diff --git a/runescape-client/src/main/java/Usernamed.java b/runescape-client/src/main/java/Usernamed.java index 6f94b67a01..08bf819853 100644 --- a/runescape-client/src/main/java/Usernamed.java +++ b/runescape-client/src/main/java/Usernamed.java @@ -6,10 +6,10 @@ import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("ka") @Implements("Usernamed") public interface Usernamed { - @ObfuscatedName("kg") + @ObfuscatedName("lb") @ObfuscatedSignature( - descriptor = "(B)Lkm;", - garbageValue = "104" + descriptor = "(I)Lki;", + garbageValue = "82536799" ) @Export("username") Username username(); diff --git a/runescape-client/src/main/java/VarbitDefinition.java b/runescape-client/src/main/java/VarbitDefinition.java index 2e940419ab..395819b02f 100644 --- a/runescape-client/src/main/java/VarbitDefinition.java +++ b/runescape-client/src/main/java/VarbitDefinition.java @@ -4,92 +4,133 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("iy") +@ObfuscatedName("iv") @Implements("VarbitDefinition") public class VarbitDefinition extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("VarbitDefinition_archive") public static AbstractArchive VarbitDefinition_archive; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("VarbitDefinition_cached") public static EvictingDualNodeHashTable VarbitDefinition_cached; - @ObfuscatedName("l") + @ObfuscatedName("z") + @Export("Tiles_hue") + static int[] Tiles_hue; + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 1810404981 + intValue = -1845026741 ) @Export("baseVar") public int baseVar; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -581436309 + intValue = -974081687 ) @Export("startBit") public int startBit; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 1763957303 + intValue = -1357944677 ) @Export("endBit") public int endBit; static { - VarbitDefinition_cached = new EvictingDualNodeHashTable(64); // L: 11 + VarbitDefinition_cached = new EvictingDualNodeHashTable(64); } - @ObfuscatedName("f") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lkb;B)V", - garbageValue = "7" + descriptor = "(Lkj;I)V", + garbageValue = "1196473375" ) @Export("decode") public void decode(Buffer var1) { while (true) { - int var2 = var1.readUnsignedByte(); // L: 18 - if (var2 == 0) { // L: 19 - return; // L: 22 + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; } - this.decodeNext(var1, var2); // L: 20 + this.decodeNext(var1, var2); } } - @ObfuscatedName("b") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkb;IB)V", - garbageValue = "37" + descriptor = "(Lkj;II)V", + garbageValue = "-1699368159" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { - if (var2 == 1) { // L: 25 - this.baseVar = var1.readUnsignedShort(); // L: 26 - this.startBit = var1.readUnsignedByte(); // L: 27 - this.endBit = var1.readUnsignedByte(); // L: 28 + if (var2 == 1) { + this.baseVar = var1.readUnsignedShort(); + this.startBit = var1.readUnsignedByte(); + this.endBit = var1.readUnsignedByte(); } - } // L: 31 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(CI)C", - garbageValue = "-943155680" + descriptor = "(Ljava/lang/CharSequence;Lmu;B)Ljava/lang/String;", + garbageValue = "3" ) - static char method4663(char var0) { - if (var0 == 198) { // L: 95 - return 'E'; - } else if (var0 == 230) { // L: 96 - return 'e'; - } else if (var0 == 223) { - return 's'; // L: 97 - } else if (var0 == 338) { // L: 98 - return 'E'; + public static String method4525(CharSequence var0, LoginType var1) { + if (var0 == null) { + return null; } else { - return (char)(var0 == 339 ? 'e' : '\u0000'); // L: 99 100 + int var2 = 0; + + int var3; + boolean var4; + char var5; + for (var3 = var0.length(); var2 < var3; ++var2) { + var5 = var0.charAt(var2); + var4 = var5 == 160 || var5 == ' ' || var5 == '_' || var5 == '-'; + if (!var4) { + break; + } + } + + while (var3 > var2) { + var5 = var0.charAt(var3 - 1); + var4 = var5 == 160 || var5 == ' ' || var5 == '_' || var5 == '-'; + if (!var4) { + break; + } + + --var3; + } + + int var10 = var3 - var2; + if (var10 >= 1 && var10 <= ArchiveLoader.method1232(var1)) { + StringBuilder var9 = new StringBuilder(var10); + + for (int var6 = var2; var6 < var3; ++var6) { + char var7 = var0.charAt(var6); + if (ObjectDefinition.method4657(var7)) { + char var8 = UserComparator10.method3492(var7); + if (var8 != 0) { + var9.append(var8); + } + } + } + + if (var9.length() == 0) { + return null; + } else { + return var9.toString(); + } + } else { + return null; + } } } } diff --git a/runescape-client/src/main/java/VarcInt.java b/runescape-client/src/main/java/VarcInt.java index 9436e9acc9..64120e4e31 100644 --- a/runescape-client/src/main/java/VarcInt.java +++ b/runescape-client/src/main/java/VarcInt.java @@ -1,210 +1,208 @@ 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("if") +@ObfuscatedName("ir") @Implements("VarcInt") public class VarcInt extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("VarcInt_archive") - public static AbstractArchive VarcInt_archive; - @ObfuscatedName("b") + static AbstractArchive VarcInt_archive; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("VarcInt_cached") - public static EvictingDualNodeHashTable VarcInt_cached; - @ObfuscatedName("l") + static EvictingDualNodeHashTable VarcInt_cached; + @ObfuscatedName("z") + @ObfuscatedGetter( + intValue = -290807175 + ) + @Export("Interpreter_intStackSize") + static int Interpreter_intStackSize; + @ObfuscatedName("i") + @ObfuscatedSignature( + descriptor = "Lhe;" + ) + static Widget field3264; + @ObfuscatedName("x") @Export("persist") public boolean persist; static { - VarcInt_cached = new EvictingDualNodeHashTable(64); // L: 11 + VarcInt_cached = new EvictingDualNodeHashTable(64); } - public VarcInt() { - this.persist = false; // L: 12 + VarcInt() { + this.persist = false; } - @ObfuscatedName("b") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-871619448" + descriptor = "(Lkj;S)V", + garbageValue = "12817" ) - public void method4552(Buffer var1) { + void method4416(Buffer var1) { while (true) { - int var2 = var1.readUnsignedByte(); // L: 20 - if (var2 == 0) { // L: 21 - return; // L: 24 + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; } - this.method4556(var1, var2); // L: 22 + this.method4420(var1, var2); } } - @ObfuscatedName("l") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "-359946158" + descriptor = "(Lkj;IB)V", + garbageValue = "8" ) - void method4556(Buffer var1, int var2) { - if (var2 == 2) { // L: 27 - this.persist = true; // L: 28 + void method4420(Buffer var1, int var2) { + if (var2 == 2) { + this.persist = true; } - } // L: 31 - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "-159585156" - ) - static int method4562(int var0, Script var1, boolean var2) { - if (var0 < 1000) { // L: 389 - return Script.method2355(var0, var1, var2); - } else if (var0 < 1100) { // L: 390 - return SpotAnimationDefinition.method4577(var0, var1, var2); - } else if (var0 < 1200) { // L: 391 - return KeyHandler.method934(var0, var1, var2); - } else if (var0 < 1300) { // L: 392 - return class69.method1266(var0, var1, var2); - } else if (var0 < 1400) { // L: 393 - return FriendSystem.method2018(var0, var1, var2); - } else if (var0 < 1500) { // L: 394 - return Language.method3802(var0, var1, var2); - } else if (var0 < 1600) { // L: 395 - return GrandExchangeOffer.method198(var0, var1, var2); - } else if (var0 < 1700) { // L: 396 - return ParamDefinition.method4671(var0, var1, var2); - } else if (var0 < 1800) { // L: 397 - return UserComparator4.method3506(var0, var1, var2); - } else if (var0 < 1900) { // L: 398 - return MouseHandler.method1152(var0, var1, var2); - } else if (var0 < 2000) { // L: 399 - return PlayerType.method4274(var0, var1, var2); - } else if (var0 < 2100) { // L: 400 - return SpotAnimationDefinition.method4577(var0, var1, var2); - } else if (var0 < 2200) { // L: 401 - return KeyHandler.method934(var0, var1, var2); - } else if (var0 < 2300) { // L: 402 - return class69.method1266(var0, var1, var2); - } else if (var0 < 2400) { // L: 403 - return FriendSystem.method2018(var0, var1, var2); - } else if (var0 < 2500) { - return Language.method3802(var0, var1, var2); // L: 404 - } else if (var0 < 2600) { // L: 405 - return Strings.method4259(var0, var1, var2); - } else if (var0 < 2700) { // L: 406 - return GrandExchangeEvent.method165(var0, var1, var2); - } else if (var0 < 2800) { // L: 407 - return class23.method249(var0, var1, var2); - } else if (var0 < 2900) { // L: 408 - return WorldMapID.method667(var0, var1, var2); - } else if (var0 < 3000) { // L: 409 - return PlayerType.method4274(var0, var1, var2); - } else if (var0 < 3200) { // L: 410 - return NPC.method2158(var0, var1, var2); - } else if (var0 < 3300) { // L: 411 - return WorldMapDecoration.method429(var0, var1, var2); - } else if (var0 < 3400) { // L: 412 - return VertexNormal.method3134(var0, var1, var2); - } else if (var0 < 3500) { // L: 413 - return Player.method1354(var0, var1, var2); - } else if (var0 < 3700) { // L: 414 - return SpriteMask.method4119(var0, var1, var2); - } else if (var0 < 4000) { // L: 415 - return class217.method4099(var0, var1, var2); - } else if (var0 < 4100) { // L: 416 - return PendingSpawn.method1840(var0, var1, var2); - } else if (var0 < 4200) { // L: 417 - return NetCache.method4461(var0, var1, var2); - } else if (var0 < 4300) { // L: 418 - return ModeWhere.method3806(var0, var1, var2); - } else if (var0 < 5100) { // L: 419 - return WorldMapSprite.method518(var0, var1, var2); - } else if (var0 < 5400) { // L: 420 - return Tiles.method1222(var0, var1, var2); - } else if (var0 < 5600) { // L: 421 - return class169.method3572(var0, var1, var2); - } else if (var0 < 5700) { // L: 422 - return WorldMapArea.method511(var0, var1, var2); - } else if (var0 < 6300) { // L: 423 - return class22.method244(var0, var1, var2); - } else if (var0 < 6600) { // L: 424 - return GrandExchangeOfferAgeComparator.method240(var0, var1, var2); - } else { - return var0 < 6700 ? MusicPatch.method4036(var0, var1, var2) : 2; // L: 425 426 - } } - @ObfuscatedName("m") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(Lid;IIIBZI)V", - garbageValue = "-1601672473" + descriptor = "(B)I", + garbageValue = "121" ) - @Export("requestNetFile") - static void requestNetFile(Archive var0, int var1, int var2, int var3, byte var4, boolean var5) { - long var6 = (long)((var1 << 16) + var2); // L: 223 - NetFileRequest var8 = (NetFileRequest)NetCache.NetCache_pendingPriorityWrites.get(var6); // L: 224 - if (var8 == null) { // L: 225 - var8 = (NetFileRequest)NetCache.NetCache_pendingPriorityResponses.get(var6); // L: 226 - if (var8 == null) { // L: 227 - var8 = (NetFileRequest)NetCache.NetCache_pendingWrites.get(var6); // L: 228 - if (var8 != null) { // L: 229 - if (var5) { // L: 230 - var8.removeDual(); // L: 231 - NetCache.NetCache_pendingPriorityWrites.put(var8, var6); // L: 232 - --NetCache.NetCache_pendingWritesCount; // L: 233 - ++NetCache.NetCache_pendingPriorityWritesCount; // L: 234 - } - - } else { - if (!var5) { // L: 238 - var8 = (NetFileRequest)NetCache.NetCache_pendingResponses.get(var6); // L: 239 - if (var8 != null) { // L: 240 - return; - } - } - - var8 = new NetFileRequest(); // L: 242 - var8.archive = var0; // L: 243 - var8.crc = var3; // L: 244 - var8.padding = var4; // L: 245 - if (var5) { // L: 246 - NetCache.NetCache_pendingPriorityWrites.put(var8, var6); // L: 247 - ++NetCache.NetCache_pendingPriorityWritesCount; // L: 248 - } else { - NetCache.NetCache_pendingWritesQueue.addFirst(var8); // L: 251 - NetCache.NetCache_pendingWrites.put(var8, var6); // L: 252 - ++NetCache.NetCache_pendingWritesCount; // L: 253 + public static int method4427() { + return KeyHandler.KeyHandler_idleCycles; + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1734720266" + ) + public static void method4426() { + HealthBarDefinition.HealthBarDefinition_cached.clear(); + HealthBarDefinition.HealthBarDefinition_cachedSprites.clear(); + } + + @ObfuscatedName("hh") + @ObfuscatedSignature( + descriptor = "(IIZI)V", + garbageValue = "1702821448" + ) + static final void method4428(int var0, int var1, boolean var2) { + if (!var2 || var0 != class182.field2112 || UserComparator6.field2013 != var1) { + class182.field2112 = var0; + UserComparator6.field2013 = var1; + WorldMapCacheName.updateGameState(25); + Varps.drawLoadingMessage("Loading - please wait.", true); + int var3 = NetFileRequest.baseX * 64; + int var4 = class41.baseY * 64; + NetFileRequest.baseX = (var0 - 6) * 8; + class41.baseY = (var1 - 6) * 8; + int var5 = NetFileRequest.baseX * 64 - var3; + int var6 = class41.baseY * 64 - var4; + var3 = NetFileRequest.baseX * 64; + var4 = class41.baseY * 64; + + int var7; + int var9; + int[] var10000; + for (var7 = 0; var7 < 32768; ++var7) { + NPC var19 = Client.npcs[var7]; + if (var19 != null) { + for (var9 = 0; var9 < 10; ++var9) { + var10000 = var19.pathX; + var10000[var9] -= var5; + var10000 = var19.pathY; + var10000[var9] -= var6; } + var19.x -= var5 * 128; + var19.y -= var6 * 128; } } - } - } // L: 236 255 - @ObfuscatedName("o") - @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "-2000095907" - ) - static final int method4555(int var0, int var1) { - if (var0 == -1) { // L: 469 - return 12345678; - } else { - var1 = (var0 & 127) * var1 / 128; // L: 470 - if (var1 < 2) { // L: 471 - var1 = 2; - } else if (var1 > 126) { // L: 472 - var1 = 126; + for (var7 = 0; var7 < 2048; ++var7) { + Player var22 = Client.players[var7]; + if (var22 != null) { + for (var9 = 0; var9 < 10; ++var9) { + var10000 = var22.pathX; + var10000[var9] -= var5; + var10000 = var22.pathY; + var10000[var9] -= var6; + } + + var22.x -= var5 * 128; + var22.y -= var6 * 128; + } + } + + byte var20 = 0; + byte var8 = 104; + byte var21 = 1; + if (var5 < 0) { + var20 = 103; + var8 = -1; + var21 = -1; + } + + byte var10 = 0; + byte var11 = 104; + byte var12 = 1; + if (var6 < 0) { + var10 = 103; + var11 = -1; + var12 = -1; + } + + int var14; + for (int var13 = var20; var8 != var13; var13 += var21) { + for (var14 = var10; var11 != var14; var14 += var12) { + int var15 = var5 + var13; + int var16 = var6 + var14; + + for (int var17 = 0; var17 < 4; ++var17) { + if (var15 >= 0 && var16 >= 0 && var15 < 104 && var16 < 104) { + Client.groundItems[var17][var13][var14] = Client.groundItems[var17][var15][var16]; + } else { + Client.groundItems[var17][var13][var14] = null; + } + } + } + } + + for (PendingSpawn var18 = (PendingSpawn)Client.pendingSpawns.last(); var18 != null; var18 = (PendingSpawn)Client.pendingSpawns.previous()) { + var18.x -= var5; + var18.y -= var6; + if (var18.x < 0 || var18.y < 0 || var18.x >= 104 || var18.y >= 104) { + var18.remove(); + } + } + + if (Client.destinationX != 0) { + Client.destinationX -= var5; + Client.destinationY -= var6; + } + + Client.soundEffectCount = 0; + Client.isCameraLocked = false; + Player.cameraX -= var5 << 7; + class69.cameraZ -= var6 << 7; + SecureRandomFuture.oculusOrbFocalPointX -= var5 << 7; + Decimator.oculusOrbFocalPointY -= var6 << 7; + Client.field874 = -1; + Client.graphicsObjects.clear(); + Client.projectiles.clear(); + + for (var14 = 0; var14 < 4; ++var14) { + Client.collisionMaps[var14].clear(); } - return (var0 & 65408) + var1; // L: 473 } } } diff --git a/runescape-client/src/main/java/Varcs.java b/runescape-client/src/main/java/Varcs.java index ba31e0123d..06c96aafcd 100644 --- a/runescape-client/src/main/java/Varcs.java +++ b/runescape-client/src/main/java/Varcs.java @@ -9,407 +9,416 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cz") +@ObfuscatedName("cg") @Implements("Varcs") public class Varcs { - @ObfuscatedName("dw") + @ObfuscatedName("oq") @ObfuscatedSignature( - descriptor = "Lid;" + descriptor = "Lcg;" ) - @Export("archive5") - static Archive archive5; + @Export("varcs") + static Varcs varcs; @ObfuscatedName("l") + @ObfuscatedGetter( + intValue = 329492753 + ) + @Export("ItemDefinition_fileCount") + public static int ItemDefinition_fileCount; + @ObfuscatedName("c") + static int[] field1283; + @ObfuscatedName("b") + @ObfuscatedGetter( + intValue = -69113617 + ) + @Export("clientTickTimeIdx") + static int clientTickTimeIdx; + @ObfuscatedName("x") @Export("intsPersistence") boolean[] intsPersistence; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("map") Map map; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("strings") String[] strings; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("unwrittenChanges") boolean unwrittenChanges; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - longValue = -5306156143570405753L + longValue = 442917365631683491L ) - long field1298; + long field1276; Varcs() { - this.unwrittenChanges = false; // L: 22 - int var1 = WorldMapSection3.archive2.getGroupFileCount(19); // L: 26 - this.map = new HashMap(); // L: 27 - this.intsPersistence = new boolean[var1]; // L: 28 + this.unwrittenChanges = false; + int var1 = DynamicObject.archive2.getGroupFileCount(19); + this.map = new HashMap(); + this.intsPersistence = new boolean[var1]; int var2; - for (var2 = 0; var2 < var1; ++var2) { // L: 29 - VarcInt var4 = (VarcInt)VarcInt.VarcInt_cached.get((long)var2); // L: 32 - VarcInt var3; - if (var4 != null) { // L: 33 - var3 = var4; // L: 34 - } else { - byte[] var5 = VarcInt.VarcInt_archive.takeFile(19, var2); // L: 37 - var4 = new VarcInt(); // L: 38 - if (var5 != null) { - var4.method4552(new Buffer(var5)); // L: 39 - } - - VarcInt.VarcInt_cached.put(var4, (long)var2); // L: 40 - var3 = var4; // L: 41 - } - - this.intsPersistence[var2] = var3.persist; // L: 44 + for (var2 = 0; var2 < var1; ++var2) { + VarcInt var3 = TextureProvider.method2843(var2); + this.intsPersistence[var2] = var3.persist; } - var2 = 0; // L: 46 - if (WorldMapSection3.archive2.method4416(15)) { // L: 47 - var2 = WorldMapSection3.archive2.getGroupFileCount(15); // L: 48 + var2 = 0; + if (DynamicObject.archive2.method4305(15)) { + var2 = DynamicObject.archive2.getGroupFileCount(15); } - this.strings = new String[var2]; // L: 50 - this.read(); // L: 51 - } // L: 52 + this.strings = new String[var2]; + this.read(); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "-1056987732" + garbageValue = "-298220081" ) @Export("setInt") void setInt(int var1, int var2) { - this.map.put(var1, var2); // L: 55 + this.map.put(var1, var2); if (this.intsPersistence[var1]) { - this.unwrittenChanges = true; // L: 56 + this.unwrittenChanges = true; } - } // L: 57 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "0" + descriptor = "(II)I", + garbageValue = "-2112992813" ) @Export("getInt") int getInt(int var1) { - Object var2 = this.map.get(var1); // L: 60 - return var2 instanceof Integer ? (Integer)var2 : -1; // L: 61 62 64 + Object var2 = this.map.get(var1); + return var2 instanceof Integer ? (Integer)var2 : -1; } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(ILjava/lang/String;I)V", - garbageValue = "-368948322" + garbageValue = "-387665729" ) @Export("setString") void setString(int var1, String var2) { - this.map.put(var1, var2); // L: 68 - } // L: 69 + this.map.put(var1, var2); + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(II)Ljava/lang/String;", - garbageValue = "2139997801" + descriptor = "(IB)Ljava/lang/String;", + garbageValue = "-99" ) @Export("getString") String getString(int var1) { - Object var2 = this.map.get(var1); // L: 72 - return var2 instanceof String ? (String)var2 : ""; // L: 73 74 76 + Object var2 = this.map.get(var1); + return var2 instanceof String ? (String)var2 : ""; } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;S)V", - garbageValue = "14747" + descriptor = "(ILjava/lang/String;B)V", + garbageValue = "0" ) @Export("setStringOld") void setStringOld(int var1, String var2) { - this.strings[var1] = var2; // L: 80 - } // L: 81 + this.strings[var1] = var2; + } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "(II)Ljava/lang/String;", - garbageValue = "-475073463" + garbageValue = "343264324" ) @Export("getStringOld") String getStringOld(int var1) { - return this.strings[var1]; // L: 84 + return this.strings[var1]; } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "2" + descriptor = "(I)V", + garbageValue = "-1770667153" ) @Export("clearTransient") void clearTransient() { int var1; - for (var1 = 0; var1 < this.intsPersistence.length; ++var1) { // L: 88 - if (!this.intsPersistence[var1]) { // L: 89 - this.map.remove(var1); // L: 90 + for (var1 = 0; var1 < this.intsPersistence.length; ++var1) { + if (!this.intsPersistence[var1]) { + this.map.remove(var1); } } - for (var1 = 0; var1 < this.strings.length; ++var1) { // L: 93 - this.strings[var1] = null; // L: 94 + for (var1 = 0; var1 < this.strings.length; ++var1) { + this.strings[var1] = null; } - } // L: 96 + } - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "(ZI)Lmr;", - garbageValue = "229705825" + descriptor = "(ZB)Lmy;", + garbageValue = "-102" ) @Export("getPreferencesFile") AccessFile getPreferencesFile(boolean var1) { - return WorldMapID.getPreferencesFile("2", GrandExchangeOfferWorldComparator.field58.name, var1); // L: 99 + return WorldMapRegion.getPreferencesFile("2", AttackOption.field1174.name, var1); + } + + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1929534435" + ) + @Export("write") + void write() { + AccessFile var1 = this.getPreferencesFile(true); + + try { + int var2 = 3; + int var3 = 0; + Iterator var4 = this.map.entrySet().iterator(); + + while (var4.hasNext()) { + Entry var5 = (Entry)var4.next(); + int var6 = (Integer)var5.getKey(); + if (this.intsPersistence[var6]) { + Object var7 = var5.getValue(); + var2 += 3; + if (var7 instanceof Integer) { + var2 += 4; + } else if (var7 instanceof String) { + var2 += FloorDecoration.stringCp1252NullTerminatedByteSize((String)var7); + } + + ++var3; + } + } + + Buffer var28 = new Buffer(var2); + var28.writeByte(2); + var28.writeShort(var3); + Iterator var29 = this.map.entrySet().iterator(); + + label146: + while (true) { + Entry var17; + int var18; + do { + if (!var29.hasNext()) { + var1.write(var28.array, 0, var28.offset); + break label146; + } + + var17 = (Entry)var29.next(); + var18 = (Integer)var17.getKey(); + } while(!this.intsPersistence[var18]); + + var28.writeShort(var18); + Object var8 = var17.getValue(); + Class var10 = var8.getClass(); + class3[] var11 = new class3[]{class3.field13, class3.field12, class3.field8}; + class3[] var12 = var11; + int var13 = 0; + + class3 var9; + while (true) { + if (var13 >= var12.length) { + var9 = null; + break; + } + + class3 var14 = var12[var13]; + if (var10 == var14.field6) { + var9 = var14; + break; + } + + ++var13; + } + + var28.writeByte(var9.field10); + class3.method25(var8, var28); + } + } catch (Exception var26) { + } finally { + try { + var1.close(); + } catch (Exception var25) { + } + + } + + this.unwrittenChanges = false; + this.field1276 = class298.currentTimeMillis(); + } + + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "20" + ) + @Export("read") + void read() { + AccessFile var1 = this.getPreferencesFile(false); + + label210: { + try { + byte[] var2 = new byte[(int)var1.length()]; + + int var4; + for (int var3 = 0; var3 < var2.length; var3 += var4) { + var4 = var1.read(var2, var3, var2.length - var3); + if (var4 == -1) { + throw new EOFException(); + } + } + + Buffer var15 = new Buffer(var2); + if (var15.array.length - var15.offset >= 1) { + int var16 = var15.readUnsignedByte(); + if (var16 < 0 || var16 > 2) { + return; + } + + int var7; + int var8; + int var9; + int var17; + if (var16 >= 2) { + var17 = var15.readUnsignedShort(); + var7 = 0; + + while (true) { + if (var7 >= var17) { + break label210; + } + + var8 = var15.readUnsignedShort(); + var9 = var15.readUnsignedByte(); + class3[] var10 = new class3[]{class3.field13, class3.field12, class3.field8}; + class3 var11 = (class3)UrlRequester.findEnumerated(var10, var9); + Object var12 = var11.method28(var15); + if (this.intsPersistence[var8]) { + this.map.put(var8, var12); + } + + ++var7; + } + } else { + var17 = var15.readUnsignedShort(); + + for (var7 = 0; var7 < var17; ++var7) { + var8 = var15.readUnsignedShort(); + var9 = var15.readInt(); + if (this.intsPersistence[var8]) { + this.map.put(var8, var9); + } + } + + var7 = var15.readUnsignedShort(); + var8 = 0; + + while (true) { + if (var8 >= var7) { + break label210; + } + + var15.readUnsignedShort(); + var15.readStringCp1252NullTerminated(); + ++var8; + } + } + } + } catch (Exception var26) { + break label210; + } finally { + try { + var1.close(); + } catch (Exception var25) { + } + + } + + return; + } + + this.unwrittenChanges = false; } @ObfuscatedName("u") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "2018720636" - ) - @Export("write") - void write() { - AccessFile var1 = this.getPreferencesFile(true); // L: 103 - - try { - int var2 = 3; // L: 105 - int var3 = 0; // L: 106 - Iterator var4 = this.map.entrySet().iterator(); // L: 107 - - while (var4.hasNext()) { - Entry var5 = (Entry)var4.next(); // L: 108 - int var6 = (Integer)var5.getKey(); // L: 110 - if (this.intsPersistence[var6]) { // L: 111 - Object var7 = var5.getValue(); // L: 112 - var2 += 3; // L: 113 - if (var7 instanceof Integer) { // L: 114 - var2 += 4; - } else if (var7 instanceof String) { - var2 += SpriteMask.stringCp1252NullTerminatedByteSize((String)var7); // L: 115 - } - - ++var3; // L: 116 - } - } - - Buffer var27 = new Buffer(var2); // L: 120 - var27.writeByte(2); // L: 121 - var27.writeShort(var3); // L: 122 - Iterator var28 = this.map.entrySet().iterator(); // L: 123 - - label146: - while (true) { - Entry var16; - int var17; - do { - if (!var28.hasNext()) { - var1.write(var27.array, 0, var27.offset); // L: 153 - break label146; - } - - var16 = (Entry)var28.next(); // L: 124 - var17 = (Integer)var16.getKey(); // L: 126 - } while(!this.intsPersistence[var17]); // L: 127 - - var27.writeShort(var17); // L: 128 - Object var8 = var16.getValue(); // L: 129 - Class var10 = var8.getClass(); // L: 131 - class3[] var11 = class3.method43(); // L: 134 - int var12 = 0; - - class3 var9; - while (true) { - if (var12 >= var11.length) { - var9 = null; // L: 145 - break; - } - - class3 var13 = var11[var12]; // L: 136 - if (var10 == var13.field13) { // L: 138 - var9 = var13; // L: 139 - break; // L: 140 - } - - ++var12; // L: 135 - } - - var27.writeByte(var9.field12); // L: 148 - class3.method57(var8, var27); // L: 149 - } - } catch (Exception var25) { // L: 155 - } finally { - try { - var1.close(); // L: 158 - } catch (Exception var24) { // L: 160 - } - - } - - this.unwrittenChanges = false; // L: 162 - this.field1298 = User.currentTimeMillis(); // L: 163 - } // L: 164 - - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-236281402" - ) - @Export("read") - void read() { - AccessFile var1 = this.getPreferencesFile(false); // L: 167 - - label224: { - try { - byte[] var2 = new byte[(int)var1.length()]; // L: 169 - - int var4; - for (int var3 = 0; var3 < var2.length; var3 += var4) { // L: 170 171 174 - var4 = var1.read(var2, var3, var2.length - var3); // L: 172 - if (var4 == -1) { // L: 173 - throw new EOFException(); - } - } - - Buffer var14 = new Buffer(var2); // L: 176 - if (var14.array.length - var14.offset < 1) { // L: 177 - return; - } - - int var15 = var14.readUnsignedByte(); // L: 178 - if (var15 >= 0 && var15 <= 2) { // L: 179 - int var7; - int var8; - int var9; - int var16; - if (var15 >= 2) { // L: 180 - var16 = var14.readUnsignedShort(); // L: 181 - var7 = 0; - - while (true) { - if (var7 >= var16) { - break label224; - } - - var8 = var14.readUnsignedShort(); // L: 183 - var9 = var14.readUnsignedByte(); // L: 184 - class3 var10 = (class3)class195.findEnumerated(class3.method43(), var9); // L: 185 - Object var11 = var10.method47(var14); // L: 186 - if (this.intsPersistence[var8]) { // L: 187 - this.map.put(var8, var11); // L: 188 - } - - ++var7; // L: 182 - } - } else { - var16 = var14.readUnsignedShort(); // L: 193 - - for (var7 = 0; var7 < var16; ++var7) { // L: 194 - var8 = var14.readUnsignedShort(); // L: 195 - var9 = var14.readInt(); // L: 196 - if (this.intsPersistence[var8]) { // L: 197 - this.map.put(var8, var9); // L: 198 - } - } - - var7 = var14.readUnsignedShort(); // L: 201 - var8 = 0; - - while (true) { - if (var8 >= var7) { - break label224; - } - - var14.readUnsignedShort(); // L: 203 - var14.readStringCp1252NullTerminated(); // L: 204 - ++var8; // L: 202 - } - } - } - } catch (Exception var25) { // L: 208 - break label224; - } finally { - try { - var1.close(); // L: 211 - } catch (Exception var24) { - } - - } - - return; // L: 213 - } - - this.unwrittenChanges = false; // L: 215 - } // L: 216 - - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "362118254" + garbageValue = "1201076072" ) @Export("tryWrite") void tryWrite() { - if (this.unwrittenChanges && this.field1298 < User.currentTimeMillis() - 60000L) { // L: 219 - this.write(); // L: 220 + if (this.unwrittenChanges && this.field1276 < class298.currentTimeMillis() - 60000L) { + this.write(); } - } // L: 222 + } - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-398043475" + garbageValue = "-1775213978" ) @Export("hasUnwrittenChanges") boolean hasUnwrittenChanges() { - return this.unwrittenChanges; // L: 225 + return this.unwrittenChanges; } - @ObfuscatedName("jq") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lht;I)Z", - garbageValue = "322576420" + descriptor = "(Ldi;I)V", + garbageValue = "1243916403" ) - static final boolean method2313(Widget var0) { - int var1 = var0.contentType; // L: 11330 - if (var1 == 205) { // L: 11331 - Client.logoutTimer = 250; // L: 11332 - return true; // L: 11333 - } else { - int var2; - int var3; - if (var1 >= 300 && var1 <= 313) { // L: 11335 - var2 = (var1 - 300) / 2; // L: 11336 - var3 = var1 & 1; // L: 11337 - Client.playerAppearance.changeAppearance(var2, var3 == 1); // L: 11338 - } + @Export("PcmStream_disable") + static final void PcmStream_disable(PcmStream var0) { + var0.active = false; + if (var0.sound != null) { + var0.sound.position = 0; + } - if (var1 >= 314 && var1 <= 323) { // L: 11340 - var2 = (var1 - 314) / 2; // L: 11341 - var3 = var1 & 1; // L: 11342 - Client.playerAppearance.method4148(var2, var3 == 1); // L: 11343 - } + for (PcmStream var1 = var0.firstSubStream(); var1 != null; var1 = var0.nextSubStream()) { + PcmStream_disable(var1); + } - if (var1 == 324) { // L: 11345 - Client.playerAppearance.changeSex(false); - } + } - if (var1 == 325) { // L: 11346 - Client.playerAppearance.changeSex(true); - } - - if (var1 == 326) { // L: 11347 - PacketBufferNode var4 = class4.getPacketBufferNode(ClientPacket.field2335, Client.packetWriter.isaacCipher); // L: 11349 - Client.playerAppearance.write(var4.packetBuffer); // L: 11350 - Client.packetWriter.addNode(var4); // L: 11351 - return true; // L: 11352 + @ObfuscatedName("km") + @ObfuscatedSignature( + descriptor = "(Lhe;IIII)V", + garbageValue = "842543427" + ) + @Export("drawCompass") + static final void drawCompass(Widget var0, int var1, int var2, int var3) { + SpriteMask var4 = var0.getSpriteMask(false); + if (var4 != null) { + if (Client.minimapState < 3) { + UrlRequester.compass.drawRotatedMaskedCenteredAround(var1, var2, var4.width, var4.height, 25, 25, Client.camAngleY, 256, var4.xStarts, var4.xWidths); } else { - return false; // L: 11354 + Rasterizer2D.Rasterizer2D_fillMaskedRectangle(var1, var2, 0, var4.xStarts, var4.xWidths); } + + } + } + + @ObfuscatedName("lr") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;I)V", + garbageValue = "1893534902" + ) + @Export("Clan_joinChat") + static final void Clan_joinChat(String var0) { + if (!var0.equals("")) { + PacketBufferNode var1 = ItemContainer.getPacketBufferNode(ClientPacket.field2285, Client.packetWriter.isaacCipher); + var1.packetBuffer.writeByte(FloorDecoration.stringCp1252NullTerminatedByteSize(var0)); + var1.packetBuffer.writeStringCp1252NullTerminated(var0); + Client.packetWriter.addNode(var1); } } } diff --git a/runescape-client/src/main/java/VarpDefinition.java b/runescape-client/src/main/java/VarpDefinition.java index 5c4dce41e4..a0922d98f4 100644 --- a/runescape-client/src/main/java/VarpDefinition.java +++ b/runescape-client/src/main/java/VarpDefinition.java @@ -4,63 +4,88 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ig") +@ObfuscatedName("is") @Implements("VarpDefinition") public class VarpDefinition extends DualNode { - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 420940101 + intValue = 447928959 ) @Export("VarpDefinition_fileCount") public static int VarpDefinition_fileCount; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("VarpDefinition_cached") static EvictingDualNodeHashTable VarpDefinition_cached; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -1267423299 + intValue = -1862551275 ) @Export("type") public int type; static { - VarpDefinition_cached = new EvictingDualNodeHashTable(64); // L: 12 + VarpDefinition_cached = new EvictingDualNodeHashTable(64); } VarpDefinition() { - this.type = 0; // L: 13 - } // L: 15 + this.type = 0; + } - @ObfuscatedName("l") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lkb;B)V", - garbageValue = "125" + descriptor = "(Lkj;I)V", + garbageValue = "-1194573420" ) @Export("decode") void decode(Buffer var1) { while (true) { - int var2 = var1.readUnsignedByte(); // L: 34 - if (var2 == 0) { // L: 35 - return; // L: 38 + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; } - this.decodeNext(var1, var2); // L: 36 + this.decodeNext(var1, var2); } } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "822246894" + descriptor = "(Lkj;II)V", + garbageValue = "263828873" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { - if (var2 == 5) { // L: 41 + if (var2 == 5) { this.type = var1.readUnsignedShort(); } - } // L: 43 + } + + @ObfuscatedName("ad") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "789122507" + ) + @Export("runWidgetOnLoadListener") + static void runWidgetOnLoadListener(int var0) { + if (var0 != -1) { + if (class41.loadInterface(var0)) { + Widget[] var1 = class9.Widget_interfaceComponents[var0]; + + for (int var2 = 0; var2 < var1.length; ++var2) { + Widget var3 = var1[var2]; + if (var3.onLoad != null) { + ScriptEvent var4 = new ScriptEvent(); + var4.widget = var3; + var4.args = var3.onLoad; + AttackOption.runScript(var4, 5000000); + } + } + + } + } + } } diff --git a/runescape-client/src/main/java/Varps.java b/runescape-client/src/main/java/Varps.java index d3bb145c0c..4dc28ac009 100644 --- a/runescape-client/src/main/java/Varps.java +++ b/runescape-client/src/main/java/Varps.java @@ -3,21 +3,33 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hs") +@ObfuscatedName("hc") @Implements("Varps") public class Varps { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("Varps_masks") static int[] Varps_masks; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("Varps_temp") public static int[] Varps_temp; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("Varps_main") public static int[] Varps_main; + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "Lib;" + ) + @Export("musicTrackArchive") + static AbstractArchive musicTrackArchive; + @ObfuscatedName("m") + @ObfuscatedSignature( + descriptor = "Ldw;" + ) + @Export("pcmPlayerProvider") + static PlayerProvider pcmPlayerProvider; static { - Varps_masks = new int[32]; // L: 6 + Varps_masks = new int[32]; int var0 = 2; for (int var1 = 0; var1 < 32; ++var1) { @@ -25,67 +37,104 @@ public class Varps { var0 += var0; } - Varps_temp = new int[4000]; // L: 16 - Varps_main = new int[4000]; // L: 17 + Varps_temp = new int[4000]; + Varps_main = new int[4000]; } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Liw;Liw;Liw;Liw;I)V", - garbageValue = "-990913751" + descriptor = "(CI)B", + garbageValue = "-1388919463" ) - public static void method4126(AbstractArchive var0, AbstractArchive var1, AbstractArchive var2, AbstractArchive var3) { - Decimator.Widget_archive = var0; // L: 186 - GameBuild.Widget_modelsArchive = var1; // L: 187 - Widget.Widget_spritesArchive = var2; // L: 188 - Widget.Widget_fontsArchive = var3; // L: 189 - Widget.Widget_interfaceComponents = new Widget[Decimator.Widget_archive.getGroupCount()][]; // L: 190 - Widget.Widget_loadedInterfaces = new boolean[Decimator.Widget_archive.getGroupCount()]; // L: 191 - } // L: 192 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(IIII)I", - garbageValue = "-1995457762" - ) - public static int method4122(int var0, int var1, int var2) { - var2 &= 3; // L: 9 - if (var2 == 0) { // L: 10 - return var0; - } else if (var2 == 1) { // L: 11 - return var1; + @Export("charToByteCp1252") + public static byte charToByteCp1252(char var0) { + byte var1; + if (var0 > 0 && var0 < 128 || var0 >= 160 && var0 <= 255) { + var1 = (byte)var0; + } else if (var0 == 8364) { + var1 = -128; + } else if (var0 == 8218) { + var1 = -126; + } else if (var0 == 402) { + var1 = -125; + } else if (var0 == 8222) { + var1 = -124; + } else if (var0 == 8230) { + var1 = -123; + } else if (var0 == 8224) { + var1 = -122; + } else if (var0 == 8225) { + var1 = -121; + } else if (var0 == 710) { + var1 = -120; + } else if (var0 == 8240) { + var1 = -119; + } else if (var0 == 352) { + var1 = -118; + } else if (var0 == 8249) { + var1 = -117; + } else if (var0 == 338) { + var1 = -116; + } else if (var0 == 381) { + var1 = -114; + } else if (var0 == 8216) { + var1 = -111; + } else if (var0 == 8217) { + var1 = -110; + } else if (var0 == 8220) { + var1 = -109; + } else if (var0 == 8221) { + var1 = -108; + } else if (var0 == 8226) { + var1 = -107; + } else if (var0 == 8211) { + var1 = -106; + } else if (var0 == 8212) { + var1 = -105; + } else if (var0 == 732) { + var1 = -104; + } else if (var0 == 8482) { + var1 = -103; + } else if (var0 == 353) { + var1 = -102; + } else if (var0 == 8250) { + var1 = -101; + } else if (var0 == 339) { + var1 = -100; + } else if (var0 == 382) { + var1 = -98; + } else if (var0 == 376) { + var1 = -97; } else { - return var2 == 2 ? 7 - var0 : 7 - var1; // L: 12 13 + var1 = 63; } + + return var1; } - @ObfuscatedName("fl") + @ObfuscatedName("gd") @ObfuscatedSignature( - descriptor = "(Lbi;III)V", - garbageValue = "-843887273" + descriptor = "(Ljava/lang/String;ZB)V", + garbageValue = "-106" ) - @Export("performPlayerAnimation") - static void performPlayerAnimation(Player var0, int var1, int var2) { - if (var0.sequence == var1 && var1 != -1) { // L: 4177 - int var3 = class105.SequenceDefinition_get(var1).field3551; // L: 4178 - if (var3 == 1) { // L: 4179 - var0.sequenceFrame = 0; // L: 4180 - var0.sequenceFrameCycle = 0; // L: 4181 - var0.sequenceDelay = var2; // L: 4182 - var0.field1022 = 0; // L: 4183 + @Export("drawLoadingMessage") + static final void drawLoadingMessage(String var0, boolean var1) { + if (Client.showLoadingMessages) { + byte var2 = 4; + int var3 = var2 + 6; + int var4 = var2 + 6; + int var5 = WorldMapLabelSize.fontPlain12.lineWidth(var0, 250); + int var6 = WorldMapLabelSize.fontPlain12.lineCount(var0, 250) * 13; + Rasterizer2D.Rasterizer2D_fillRectangle(var3 - var2, var4 - var2, var5 + var2 + var2, var6 + var2 + var2, 0); + Rasterizer2D.Rasterizer2D_drawRectangle(var3 - var2, var4 - var2, var2 + var5 + var2, var2 + var6 + var2, 16777215); + WorldMapLabelSize.fontPlain12.drawLines(var0, var3, var4, var5, var6, 16777215, -1, 1, 1, 0); + Frames.method3352(var3 - var2, var4 - var2, var5 + var2 + var2, var2 + var6 + var2); + if (var1) { + WorldMapIcon_0.rasterProvider.drawFull(0, 0); + } else { + Strings.method4157(var3, var4, var5, var6); } - if (var3 == 2) { // L: 4185 - var0.field1022 = 0; // L: 4186 - } - } else if (var1 == -1 || var0.sequence == -1 || class105.SequenceDefinition_get(var1).field3545 >= class105.SequenceDefinition_get(var0.sequence).field3545) { // L: 4189 - var0.sequence = var1; // L: 4190 - var0.sequenceFrame = 0; // L: 4191 - var0.sequenceFrameCycle = 0; // L: 4192 - var0.sequenceDelay = var2; // L: 4193 - var0.field1022 = 0; // L: 4194 - var0.field1034 = var0.pathLength; // L: 4195 } - - } // L: 4197 + } } diff --git a/runescape-client/src/main/java/VertexNormal.java b/runescape-client/src/main/java/VertexNormal.java index bd22f227e0..22c14ee6ff 100644 --- a/runescape-client/src/main/java/VertexNormal.java +++ b/runescape-client/src/main/java/VertexNormal.java @@ -1,230 +1,94 @@ -import java.awt.Component; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("ep") +@ObfuscatedName("eb") @Implements("VertexNormal") public class VertexNormal { - @ObfuscatedName("f") + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "Lib;" + ) + @Export("ItemDefinition_modelArchive") + static AbstractArchive ItemDefinition_modelArchive; + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = -1734980481 + intValue = 1772389683 ) @Export("x") int x; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 1170582091 + intValue = -1686806459 ) @Export("y") int y; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1919036787 + intValue = 987567799 ) @Export("z") int z; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 2072706825 + intValue = -730921547 ) @Export("magnitude") int magnitude; VertexNormal() { - } // L: 9 + } @ObfuscatedSignature( - descriptor = "(Lep;)V" + descriptor = "(Leb;)V" ) VertexNormal(VertexNormal var1) { - this.x = var1.x; // L: 12 - this.y = var1.y; // L: 13 - this.z = var1.z; // L: 14 - this.magnitude = var1.magnitude; // L: 15 - } // L: 16 + this.x = var1.x; + this.y = var1.y; + this.z = var1.z; + this.magnitude = var1.magnitude; + } - @ObfuscatedName("b") + @ObfuscatedName("iy") @ObfuscatedSignature( - descriptor = "(Ljava/awt/Component;B)V", - garbageValue = "84" + descriptor = "(I)V", + garbageValue = "-2064562109" ) - static void method3136(Component var0) { - var0.setFocusTraversalKeysEnabled(false); // L: 150 - var0.addKeyListener(KeyHandler.KeyHandler_instance); // L: 151 - var0.addFocusListener(KeyHandler.KeyHandler_instance); // L: 152 - } // L: 153 + static final void method3068() { + boolean var0 = false; - @ObfuscatedName("b") - static final void method3135(long var0) { - try { - Thread.sleep(var0); // L: 20 - } catch (InterruptedException var3) { // L: 22 - } + while (!var0) { + var0 = true; - } // L: 23 - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "1764411765" - ) - public static void method3133(int var0) { - class206.musicPlayerStatus = 1; // L: 55 - class23.musicTrackArchive = null; // L: 56 - TileItem.musicTrackGroupId = -1; // L: 57 - class206.musicTrackFileId = -1; // L: 58 - class206.musicTrackVolume = 0; // L: 59 - class195.musicTrackBoolean = false; // L: 60 - MusicPatch.pcmSampleLength = var0; // L: 61 - } // L: 62 - - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "-1937553317" - ) - static int method3134(int var0, Script var1, boolean var2) { - if (var0 == ScriptOpcodes.CLIENTCLOCK) { // L: 1723 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.cycle; // L: 1724 - return 1; // L: 1725 - } else { - int var3; - int var4; - if (var0 == ScriptOpcodes.INV_GETOBJ) { // L: 1727 - MilliClock.Interpreter_intStackSize -= 2; // L: 1728 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 1729 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 1730 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = GrandExchangeOfferTotalQuantityComparator.method183(var3, var4); // L: 1731 - return 1; // L: 1732 - } else if (var0 == ScriptOpcodes.INV_GETNUM) { // L: 1734 - MilliClock.Interpreter_intStackSize -= 2; // L: 1735 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 1736 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 1737 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = WorldMapSection1.ItemContainer_getCount(var3, var4); // L: 1738 - return 1; // L: 1739 - } else if (var0 == ScriptOpcodes.INV_TOTAL) { // L: 1741 - MilliClock.Interpreter_intStackSize -= 2; // L: 1742 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 1743 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 1744 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = BuddyRankComparator.method3557(var3, var4); // L: 1745 - return 1; // L: 1746 - } else if (var0 == ScriptOpcodes.INV_SIZE) { // L: 1748 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1749 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = ScriptEvent.getInvDefinition(var3).size; // L: 1750 - return 1; // L: 1751 - } else if (var0 == ScriptOpcodes.STAT) { // L: 1753 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1754 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.currentLevels[var3]; // L: 1755 - return 1; // L: 1756 - } else if (var0 == ScriptOpcodes.STAT_BASE) { // L: 1758 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1759 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.levels[var3]; // L: 1760 - return 1; // L: 1761 - } else if (var0 == ScriptOpcodes.STAT_XP) { // L: 1763 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1764 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.experience[var3]; // L: 1765 - return 1; // L: 1766 - } else { - int var5; - if (var0 == ScriptOpcodes.COORD) { // L: 1768 - var3 = GrandExchangeOfferUnitPriceComparator.Client_plane; // L: 1769 - var4 = (PlayerType.localPlayer.x >> 7) + FloorDecoration.baseX; // L: 1770 - var5 = (PlayerType.localPlayer.y >> 7) + WorldMapData_0.baseY; // L: 1771 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = (var4 << 14) + var5 + (var3 << 28); // L: 1772 - return 1; // L: 1773 - } else if (var0 == ScriptOpcodes.COORDX) { // L: 1775 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1776 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3 >> 14 & 16383; // L: 1777 - return 1; // L: 1778 - } else if (var0 == ScriptOpcodes.COORDZ) { // L: 1780 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1781 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3 >> 28; // L: 1782 - return 1; // L: 1783 - } else if (var0 == ScriptOpcodes.COORDY) { // L: 1785 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1786 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3 & 16383; // L: 1787 - return 1; // L: 1788 - } else if (var0 == ScriptOpcodes.MAP_MEMBERS) { // L: 1790 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.isMembersWorld ? 1 : 0; // L: 1791 - return 1; // L: 1792 - } else if (var0 == ScriptOpcodes.INVOTHER_GETOBJ) { // L: 1794 - MilliClock.Interpreter_intStackSize -= 2; // L: 1795 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize] + 32768; // L: 1796 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 1797 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = GrandExchangeOfferTotalQuantityComparator.method183(var3, var4); // L: 1798 - return 1; // L: 1799 - } else if (var0 == ScriptOpcodes.INVOTHER_GETNUM) { // L: 1801 - MilliClock.Interpreter_intStackSize -= 2; // L: 1802 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize] + 32768; // L: 1803 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 1804 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = WorldMapSection1.ItemContainer_getCount(var3, var4); // L: 1805 - return 1; // L: 1806 - } else if (var0 == ScriptOpcodes.INVOTHER_TOTAL) { // L: 1808 - MilliClock.Interpreter_intStackSize -= 2; // L: 1809 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize] + 32768; // L: 1810 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 1811 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = BuddyRankComparator.method3557(var3, var4); // L: 1812 - return 1; // L: 1813 - } else if (var0 == ScriptOpcodes.STAFFMODLEVEL) { // L: 1815 - if (Client.staffModLevel >= 2) { // L: 1816 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.staffModLevel; - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1817 - } - - return 1; // L: 1818 - } else if (var0 == ScriptOpcodes.REBOOTTIMER) { // L: 1820 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.rebootTimer; // L: 1821 - return 1; // L: 1822 - } else if (var0 == ScriptOpcodes.MAP_WORLD) { // L: 1824 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.worldId; // L: 1825 - return 1; // L: 1826 - } else if (var0 == ScriptOpcodes.RUNENERGY_VISIBLE) { // L: 1828 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.runEnergy; // L: 1829 - return 1; // L: 1830 - } else if (var0 == ScriptOpcodes.RUNWEIGHT_VISIBLE) { // L: 1832 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.weight; // L: 1833 - return 1; // L: 1834 - } else if (var0 == ScriptOpcodes.PLAYERMOD) { // L: 1836 - if (Client.playerMod) { // L: 1837 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 1; - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1838 - } - - return 1; // L: 1839 - } else if (var0 == ScriptOpcodes.WORLDFLAGS) { // L: 1841 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.worldProperties; // L: 1842 - return 1; // L: 1843 - } else if (var0 == ScriptOpcodes.MOVECOORD) { // L: 1845 - MilliClock.Interpreter_intStackSize -= 4; // L: 1846 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 1847 - var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 1848 - var5 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 2]; // L: 1849 - int var6 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 3]; // L: 1850 - var3 += var4 << 14; // L: 1851 - var3 += var5 << 28; // L: 1852 - var3 += var6; // L: 1853 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var3; // L: 1854 - return 1; // L: 1855 - } else { - return 2; // L: 1857 + for (int var1 = 0; var1 < Client.menuOptionsCount - 1; ++var1) { + if (Client.menuOpcodes[var1] < 1000 && Client.menuOpcodes[var1 + 1] > 1000) { + String var2 = Client.menuTargets[var1]; + Client.menuTargets[var1] = Client.menuTargets[var1 + 1]; + Client.menuTargets[var1 + 1] = var2; + String var3 = Client.menuActions[var1]; + Client.menuActions[var1] = Client.menuActions[var1 + 1]; + Client.menuActions[var1 + 1] = var3; + int var4 = Client.menuOpcodes[var1]; + Client.menuOpcodes[var1] = Client.menuOpcodes[var1 + 1]; + Client.menuOpcodes[var1 + 1] = var4; + var4 = Client.menuArguments1[var1]; + Client.menuArguments1[var1] = Client.menuArguments1[var1 + 1]; + Client.menuArguments1[var1 + 1] = var4; + var4 = Client.menuArguments2[var1]; + Client.menuArguments2[var1] = Client.menuArguments2[var1 + 1]; + Client.menuArguments2[var1 + 1] = var4; + var4 = Client.menuIdentifiers[var1]; + Client.menuIdentifiers[var1] = Client.menuIdentifiers[var1 + 1]; + Client.menuIdentifiers[var1 + 1] = var4; + boolean var5 = Client.menuShiftClick[var1]; + Client.menuShiftClick[var1] = Client.menuShiftClick[var1 + 1]; + Client.menuShiftClick[var1 + 1] = var5; + var0 = false; } } } - } - @ObfuscatedName("ka") - @ObfuscatedSignature( - descriptor = "(Lht;B)Z", - garbageValue = "35" - ) - @Export("isComponentHidden") - static boolean isComponentHidden(Widget var0) { - return var0.isHidden; // L: 11532 } } diff --git a/runescape-client/src/main/java/VerticalAlignment.java b/runescape-client/src/main/java/VerticalAlignment.java index f249a8da5d..97bced8234 100644 --- a/runescape-client/src/main/java/VerticalAlignment.java +++ b/runescape-client/src/main/java/VerticalAlignment.java @@ -4,62 +4,57 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ir") +@ObfuscatedName("it") @Implements("VerticalAlignment") public enum VerticalAlignment implements Enumerated { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lir;" + descriptor = "Lit;" ) - field3223(0, 0), - @ObfuscatedName("b") + field3229(1, 0), + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lir;" + descriptor = "Lit;" ) @Export("VerticalAlignment_centered") - VerticalAlignment_centered(1, 1), - @ObfuscatedName("l") + VerticalAlignment_centered(2, 1), + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lir;" + descriptor = "Lit;" ) - field3226(2, 2); + field3225(0, 2); - @ObfuscatedName("n") + @ObfuscatedName("bi") @ObfuscatedSignature( - descriptor = "Lkq;" + descriptor = "Llo;" ) - @Export("ItemDefinition_fontPlain11") - public static Font ItemDefinition_fontPlain11; - @ObfuscatedName("fk") + @Export("worldSelectLeftSprite") + static IndexedSprite worldSelectLeftSprite; + @ObfuscatedName("w") @ObfuscatedGetter( - longValue = -2374158009127196223L - ) - static long field3222; - @ObfuscatedName("m") - @ObfuscatedGetter( - intValue = 1433173469 + intValue = -525110533 ) @Export("value") public final int value; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 273023803 + intValue = 1435294299 ) @Export("id") final int id; VerticalAlignment(int var3, int var4) { - this.value = var3; // L: 18 - this.id = var4; // L: 19 - } // L: 20 + this.value = var3; + this.id = var4; + } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "23" + descriptor = "(I)I", + garbageValue = "-275768542" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.id; // L: 23 + return this.id; } } diff --git a/runescape-client/src/main/java/ViewportMouse.java b/runescape-client/src/main/java/ViewportMouse.java index c4e28428fc..ef2936eb10 100644 --- a/runescape-client/src/main/java/ViewportMouse.java +++ b/runescape-client/src/main/java/ViewportMouse.java @@ -1,81 +1,90 @@ +import java.awt.FontMetrics; 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("ew") +@ObfuscatedName("ee") @Implements("ViewportMouse") public class ViewportMouse { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("ViewportMouse_isInViewport") public static boolean ViewportMouse_isInViewport; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -758081505 + intValue = 1491760047 ) @Export("ViewportMouse_x") - public static int ViewportMouse_x; - @ObfuscatedName("l") - @ObfuscatedGetter( - intValue = -1320055371 - ) - @Export("ViewportMouse_y") - public static int ViewportMouse_y; - @ObfuscatedName("m") - @Export("ViewportMouse_false0") - public static boolean ViewportMouse_false0; - @ObfuscatedName("z") - @ObfuscatedGetter( - intValue = -2115742795 - ) - static int field1770; - @ObfuscatedName("k") - @ObfuscatedGetter( - intValue = -167939353 - ) - static int field1768; - @ObfuscatedName("c") - @ObfuscatedGetter( - intValue = -1914713633 - ) - static int field1771; - @ObfuscatedName("n") - @ObfuscatedGetter( - intValue = -1576236925 - ) - static int field1772; + static int ViewportMouse_x; @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -904988337 + intValue = 1851429051 + ) + @Export("ViewportMouse_y") + static int ViewportMouse_y; + @ObfuscatedName("w") + @Export("ViewportMouse_false0") + static boolean ViewportMouse_false0; + @ObfuscatedName("t") + @ObfuscatedGetter( + intValue = 1457304063 + ) + static int field1758; + @ObfuscatedName("j") + @ObfuscatedGetter( + intValue = 2019363501 + ) + static int field1759; + @ObfuscatedName("n") + @ObfuscatedGetter( + intValue = 378915017 + ) + static int field1765; + @ObfuscatedName("p") + @ObfuscatedGetter( + intValue = 1817647009 + ) + static int field1761; + @ObfuscatedName("l") + @ObfuscatedGetter( + intValue = -344047059 + ) + static int field1762; + @ObfuscatedName("c") + @ObfuscatedGetter( + intValue = 1994634683 ) @Export("ViewportMouse_entityCount") public static int ViewportMouse_entityCount; - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("ViewportMouse_entityTags") public static long[] ViewportMouse_entityTags; - @ObfuscatedName("af") - @Export("fontHelvetica13") - static java.awt.Font fontHelvetica13; - @ObfuscatedName("du") + @ObfuscatedName("au") + @Export("loginScreenFontMetrics") + static FontMetrics loginScreenFontMetrics; + @ObfuscatedName("gy") @ObfuscatedSignature( - descriptor = "Lid;" + descriptor = "Llm;" ) - @Export("archive12") - static Archive archive12; - @ObfuscatedName("hm") - @ObfuscatedGetter( - intValue = 1308821627 - ) - @Export("cameraYaw") - static int cameraYaw; + @Export("redHintArrowSprite") + static Sprite redHintArrowSprite; static { - ViewportMouse_isInViewport = false; // L: 4 - ViewportMouse_x = 0; // L: 5 - ViewportMouse_y = 0; // L: 6 - ViewportMouse_false0 = false; // L: 7 - ViewportMouse_entityCount = 0; // L: 17 - ViewportMouse_entityTags = new long[1000]; // L: 18 + ViewportMouse_isInViewport = false; + ViewportMouse_x = 0; + ViewportMouse_y = 0; + ViewportMouse_false0 = false; + ViewportMouse_entityCount = 0; + ViewportMouse_entityTags = new long[1000]; + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(B)[Lgw;", + garbageValue = "12" + ) + static LoginPacket[] method3062() { + return new LoginPacket[]{LoginPacket.field2334, LoginPacket.field2332, LoginPacket.field2336, LoginPacket.field2339, LoginPacket.field2335, LoginPacket.field2337}; } } diff --git a/runescape-client/src/main/java/VorbisCodebook.java b/runescape-client/src/main/java/VorbisCodebook.java index 104db29d3b..823de3c11a 100644 --- a/runescape-client/src/main/java/VorbisCodebook.java +++ b/runescape-client/src/main/java/VorbisCodebook.java @@ -2,122 +2,122 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("dl") +@ObfuscatedName("db") @Implements("VorbisCodebook") public class VorbisCodebook { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("dimensions") int dimensions; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("entries") int entries; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("lengthMap") int[] lengthMap; - @ObfuscatedName("m") - int[] field1374; - @ObfuscatedName("z") - float[][] field1375; - @ObfuscatedName("q") + @ObfuscatedName("w") + int[] field1361; + @ObfuscatedName("t") + float[][] field1360; + @ObfuscatedName("j") @Export("keys") int[] keys; VorbisCodebook() { - VorbisSample.readBits(24); // L: 22 - this.dimensions = VorbisSample.readBits(16); // L: 23 - this.entries = VorbisSample.readBits(24); // L: 24 - this.lengthMap = new int[this.entries]; // L: 25 - boolean var1 = VorbisSample.readBit() != 0; // L: 26 + VorbisSample.readBits(24); + this.dimensions = VorbisSample.readBits(16); + this.entries = VorbisSample.readBits(24); + this.lengthMap = new int[this.entries]; + boolean var1 = VorbisSample.readBit() != 0; int var2; int var3; int var5; - if (var1) { // L: 27 - var2 = 0; // L: 28 + if (var1) { + var2 = 0; - for (var3 = VorbisSample.readBits(5) + 1; var2 < this.entries; ++var3) { // L: 29 30 33 - int var4 = VorbisSample.readBits(JagexCache.iLog(this.entries - var2)); // L: 31 + for (var3 = VorbisSample.readBits(5) + 1; var2 < this.entries; ++var3) { + int var4 = VorbisSample.readBits(IgnoreList.iLog(this.entries - var2)); - for (var5 = 0; var5 < var4; ++var5) { // L: 32 + for (var5 = 0; var5 < var4; ++var5) { this.lengthMap[var2++] = var3; } } } else { - boolean var14 = VorbisSample.readBit() != 0; // L: 37 + boolean var14 = VorbisSample.readBit() != 0; - for (var3 = 0; var3 < this.entries; ++var3) { // L: 38 - if (var14 && VorbisSample.readBit() == 0) { // L: 39 + for (var3 = 0; var3 < this.entries; ++var3) { + if (var14 && VorbisSample.readBit() == 0) { this.lengthMap[var3] = 0; } else { - this.lengthMap[var3] = VorbisSample.readBits(5) + 1; // L: 40 + this.lengthMap[var3] = VorbisSample.readBits(5) + 1; } } } - this.method2475(); // L: 43 - var2 = VorbisSample.readBits(4); // L: 44 - if (var2 > 0) { // L: 45 - float var15 = VorbisSample.float32Unpack(VorbisSample.readBits(32)); // L: 46 - float var16 = VorbisSample.float32Unpack(VorbisSample.readBits(32)); // L: 47 - var5 = VorbisSample.readBits(4) + 1; // L: 48 - boolean var6 = VorbisSample.readBit() != 0; // L: 49 + this.method2396(); + var2 = VorbisSample.readBits(4); + if (var2 > 0) { + float var15 = VorbisSample.float32Unpack(VorbisSample.readBits(32)); + float var16 = VorbisSample.float32Unpack(VorbisSample.readBits(32)); + var5 = VorbisSample.readBits(4) + 1; + boolean var6 = VorbisSample.readBit() != 0; int var7; - if (var2 == 1) { // L: 51 + if (var2 == 1) { var7 = mapType1QuantValues(this.entries, this.dimensions); } else { - var7 = this.entries * this.dimensions; // L: 52 + var7 = this.entries * this.dimensions; } - this.field1374 = new int[var7]; // L: 53 + this.field1361 = new int[var7]; int var8; - for (var8 = 0; var8 < var7; ++var8) { // L: 54 - this.field1374[var8] = VorbisSample.readBits(var5); + for (var8 = 0; var8 < var7; ++var8) { + this.field1361[var8] = VorbisSample.readBits(var5); } - this.field1375 = new float[this.entries][this.dimensions]; // L: 55 + this.field1360 = new float[this.entries][this.dimensions]; float var9; int var10; int var11; - if (var2 == 1) { // L: 56 - for (var8 = 0; var8 < this.entries; ++var8) { // L: 57 - var9 = 0.0F; // L: 58 - var10 = 1; // L: 59 + if (var2 == 1) { + for (var8 = 0; var8 < this.entries; ++var8) { + var9 = 0.0F; + var10 = 1; - for (var11 = 0; var11 < this.dimensions; ++var11) { // L: 60 - int var12 = var8 / var10 % var7; // L: 61 - float var13 = (float)this.field1374[var12] * var16 + var15 + var9; // L: 62 - this.field1375[var8][var11] = var13; // L: 63 - if (var6) { // L: 64 + for (var11 = 0; var11 < this.dimensions; ++var11) { + int var12 = var8 / var10 % var7; + float var13 = (float)this.field1361[var12] * var16 + var15 + var9; + this.field1360[var8][var11] = var13; + if (var6) { var9 = var13; } - var10 *= var7; // L: 65 + var10 *= var7; } } } else { - for (var8 = 0; var8 < this.entries; ++var8) { // L: 70 - var9 = 0.0F; // L: 71 - var10 = var8 * this.dimensions; // L: 72 + for (var8 = 0; var8 < this.entries; ++var8) { + var9 = 0.0F; + var10 = var8 * this.dimensions; - for (var11 = 0; var11 < this.dimensions; ++var11) { // L: 73 - float var17 = (float)this.field1374[var10] * var16 + var15 + var9; // L: 74 - this.field1375[var8][var11] = var17; // L: 75 - if (var6) { // L: 76 + for (var11 = 0; var11 < this.dimensions; ++var11) { + float var17 = (float)this.field1361[var10] * var16 + var15 + var9; + this.field1360[var8][var11] = var17; + if (var6) { var9 = var17; } - ++var10; // L: 77 + ++var10; } } } } - } // L: 82 + } - @ObfuscatedName("b") - void method2475() { - int[] var1 = new int[this.entries]; // L: 85 - int[] var2 = new int[33]; // L: 87 + @ObfuscatedName("v") + void method2396() { + int[] var1 = new int[this.entries]; + int[] var2 = new int[33]; int var3; int var4; @@ -126,109 +126,132 @@ public class VorbisCodebook { int var7; int var8; int var10; - for (var3 = 0; var3 < this.entries; ++var3) { // L: 88 - var4 = this.lengthMap[var3]; // L: 89 - if (var4 != 0) { // L: 90 - var5 = 1 << 32 - var4; // L: 91 - var6 = var2[var4]; // L: 92 - var1[var3] = var6; // L: 93 + for (var3 = 0; var3 < this.entries; ++var3) { + var4 = this.lengthMap[var3]; + if (var4 != 0) { + var5 = 1 << 32 - var4; + var6 = var2[var4]; + var1[var3] = var6; int var12; - if ((var6 & var5) != 0) { // L: 95 - var7 = var2[var4 - 1]; // L: 96 + if ((var6 & var5) != 0) { + var7 = var2[var4 - 1]; } else { - var7 = var6 | var5; // L: 99 + var7 = var6 | var5; - for (var8 = var4 - 1; var8 >= 1; --var8) { // L: 100 - var12 = var2[var8]; // L: 101 - if (var12 != var6) { // L: 102 + for (var8 = var4 - 1; var8 >= 1; --var8) { + var12 = var2[var8]; + if (var12 != var6) { break; } - var10 = 1 << 32 - var8; // L: 103 - if ((var12 & var10) != 0) { // L: 104 - var2[var8] = var2[var8 - 1]; // L: 105 - break; // L: 106 + var10 = 1 << 32 - var8; + if ((var12 & var10) != 0) { + var2[var8] = var2[var8 - 1]; + break; } - var2[var8] = var12 | var10; // L: 109 + var2[var8] = var12 | var10; } } - var2[var4] = var7; // L: 115 + var2[var4] = var7; - for (var8 = var4 + 1; var8 <= 32; ++var8) { // L: 116 - var12 = var2[var8]; // L: 117 - if (var12 == var6) { // L: 118 + for (var8 = var4 + 1; var8 <= 32; ++var8) { + var12 = var2[var8]; + if (var12 == var6) { var2[var8] = var7; } } } } - this.keys = new int[8]; // L: 122 - int var11 = 0; // L: 123 + this.keys = new int[8]; + int var11 = 0; - for (var3 = 0; var3 < this.entries; ++var3) { // L: 124 - var4 = this.lengthMap[var3]; // L: 125 - if (var4 != 0) { // L: 126 - var5 = var1[var3]; // L: 127 - var6 = 0; // L: 128 + for (var3 = 0; var3 < this.entries; ++var3) { + var4 = this.lengthMap[var3]; + if (var4 != 0) { + var5 = var1[var3]; + var6 = 0; - for (var7 = 0; var7 < var4; ++var7) { // L: 129 - var8 = Integer.MIN_VALUE >>> var7; // L: 130 - if ((var5 & var8) != 0) { // L: 131 - if (this.keys[var6] == 0) { // L: 132 + for (var7 = 0; var7 < var4; ++var7) { + var8 = Integer.MIN_VALUE >>> var7; + if ((var5 & var8) != 0) { + if (this.keys[var6] == 0) { this.keys[var6] = var11; } - var6 = this.keys[var6]; // L: 133 + var6 = this.keys[var6]; } else { - ++var6; // L: 136 + ++var6; } - if (var6 >= this.keys.length) { // L: 138 - int[] var9 = new int[this.keys.length * 2]; // L: 139 + if (var6 >= this.keys.length) { + int[] var9 = new int[this.keys.length * 2]; - for (var10 = 0; var10 < this.keys.length; ++var10) { // L: 140 + for (var10 = 0; var10 < this.keys.length; ++var10) { var9[var10] = this.keys[var10]; } - this.keys = var9; // L: 141 + this.keys = var9; } - var8 >>>= 1; // L: 143 + var8 >>>= 1; } - this.keys[var6] = ~var3; // L: 145 - if (var6 >= var11) { // L: 146 + this.keys[var6] = ~var3; + if (var6 >= var11) { var11 = var6 + 1; } } } - } // L: 148 + } - @ObfuscatedName("l") - int method2472() { + @ObfuscatedName("x") + int method2402() { int var1; - for (var1 = 0; this.keys[var1] >= 0; var1 = VorbisSample.readBit() != 0 ? this.keys[var1] : var1 + 1) { // L: 151 152 + for (var1 = 0; this.keys[var1] >= 0; var1 = VorbisSample.readBit() != 0 ? this.keys[var1] : var1 + 1) { } - return ~this.keys[var1]; // L: 153 + return ~this.keys[var1]; } - @ObfuscatedName("m") - float[] method2473() { - return this.field1375[this.method2472()]; // L: 157 + @ObfuscatedName("w") + float[] method2400() { + return this.field1360[this.method2402()]; } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("mapType1QuantValues") static int mapType1QuantValues(int var0, int var1) { - int var2; - for (var2 = (int)Math.pow((double)var0, 1.0D / (double)var1) + 1; class194.method3753(var2, var1) > var0; --var2) { // L: 16 17 - } + int var2 = (int)Math.pow((double)var0, 1.0D / (double)var1) + 1; - return var2; // L: 18 + while (true) { + int var4 = var2; + int var5 = var1; + + int var6; + for (var6 = 1; var5 > 1; var5 >>= 1) { + if ((var5 & 1) != 0) { + var6 *= var4; + } + + var4 *= var4; + } + + int var3; + if (var5 == 1) { + var3 = var6 * var4; + } else { + var3 = var6; + } + + if (var3 <= var0) { + return var2; + } + + --var2; + } } } diff --git a/runescape-client/src/main/java/VorbisFloor.java b/runescape-client/src/main/java/VorbisFloor.java index db1f788591..784115768c 100644 --- a/runescape-client/src/main/java/VorbisFloor.java +++ b/runescape-client/src/main/java/VorbisFloor.java @@ -5,318 +5,318 @@ import net.runelite.mapping.ObfuscatedName; @ObfuscatedName("dm") @Implements("VorbisFloor") public class VorbisFloor { - @ObfuscatedName("f") - static final int[] field1425; - @ObfuscatedName("b") + @ObfuscatedName("h") + static final int[] field1413; + @ObfuscatedName("v") @Export("VorbisFloor_decibelStatics") static final float[] VorbisFloor_decibelStatics; - @ObfuscatedName("t") - static int[] field1429; + @ObfuscatedName("z") + static int[] field1418; + @ObfuscatedName("u") + static int[] field1419; @ObfuscatedName("e") - static int[] field1430; - @ObfuscatedName("o") - static boolean[] field1431; - @ObfuscatedName("l") - int[] field1422; - @ObfuscatedName("m") + static boolean[] field1409; + @ObfuscatedName("x") + int[] field1411; + @ObfuscatedName("w") @Export("multiplier") int multiplier; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("partitionClassList") int[] partitionClassList; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("classDimensions") int[] classDimensions; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("classSubClasses") int[] classSubClasses; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("classMasterbooks") int[] classMasterbooks; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("subclassBooks") int[][] subclassBooks; static { - field1425 = new int[]{256, 128, 86, 64}; // L: 8 - VorbisFloor_decibelStatics = new float[]{1.0649863E-7F, 1.1341951E-7F, 1.2079015E-7F, 1.2863978E-7F, 1.369995E-7F, 1.459025E-7F, 1.5538409E-7F, 1.6548181E-7F, 1.7623574E-7F, 1.8768856E-7F, 1.998856E-7F, 2.128753E-7F, 2.2670913E-7F, 2.4144197E-7F, 2.5713223E-7F, 2.7384212E-7F, 2.9163792E-7F, 3.1059022E-7F, 3.307741E-7F, 3.5226967E-7F, 3.7516213E-7F, 3.995423E-7F, 4.255068E-7F, 4.5315863E-7F, 4.8260745E-7F, 5.1397E-7F, 5.4737063E-7F, 5.829419E-7F, 6.208247E-7F, 6.611694E-7F, 7.041359E-7F, 7.4989464E-7F, 7.98627E-7F, 8.505263E-7F, 9.057983E-7F, 9.646621E-7F, 1.0273513E-6F, 1.0941144E-6F, 1.1652161E-6F, 1.2409384E-6F, 1.3215816E-6F, 1.4074654E-6F, 1.4989305E-6F, 1.5963394E-6F, 1.7000785E-6F, 1.8105592E-6F, 1.9282195E-6F, 2.053526E-6F, 2.1869757E-6F, 2.3290977E-6F, 2.4804558E-6F, 2.6416496E-6F, 2.813319E-6F, 2.9961443E-6F, 3.1908505E-6F, 3.39821E-6F, 3.619045E-6F, 3.8542307E-6F, 4.1047006E-6F, 4.371447E-6F, 4.6555283E-6F, 4.958071E-6F, 5.280274E-6F, 5.623416E-6F, 5.988857E-6F, 6.3780467E-6F, 6.7925284E-6F, 7.2339453E-6F, 7.704048E-6F, 8.2047E-6F, 8.737888E-6F, 9.305725E-6F, 9.910464E-6F, 1.0554501E-5F, 1.1240392E-5F, 1.1970856E-5F, 1.2748789E-5F, 1.3577278E-5F, 1.4459606E-5F, 1.5399271E-5F, 1.6400005E-5F, 1.7465769E-5F, 1.8600793E-5F, 1.9809577E-5F, 2.1096914E-5F, 2.2467912E-5F, 2.3928002E-5F, 2.5482977E-5F, 2.7139005E-5F, 2.890265E-5F, 3.078091E-5F, 3.2781227E-5F, 3.4911533E-5F, 3.718028E-5F, 3.9596467E-5F, 4.2169668E-5F, 4.491009E-5F, 4.7828602E-5F, 5.0936775E-5F, 5.424693E-5F, 5.7772202E-5F, 6.152657E-5F, 6.552491E-5F, 6.9783084E-5F, 7.4317984E-5F, 7.914758E-5F, 8.429104E-5F, 8.976875E-5F, 9.560242E-5F, 1.0181521E-4F, 1.0843174E-4F, 1.1547824E-4F, 1.2298267E-4F, 1.3097477E-4F, 1.3948625E-4F, 1.4855085E-4F, 1.5820454E-4F, 1.6848555E-4F, 1.7943469E-4F, 1.9109536E-4F, 2.0351382E-4F, 2.167393E-4F, 2.3082423E-4F, 2.4582449E-4F, 2.6179955E-4F, 2.7881275E-4F, 2.9693157E-4F, 3.1622787E-4F, 3.3677815E-4F, 3.5866388E-4F, 3.8197188E-4F, 4.0679457E-4F, 4.3323037E-4F, 4.613841E-4F, 4.913675E-4F, 5.2329927E-4F, 5.573062E-4F, 5.935231E-4F, 6.320936E-4F, 6.731706E-4F, 7.16917E-4F, 7.635063E-4F, 8.1312325E-4F, 8.6596457E-4F, 9.2223985E-4F, 9.821722E-4F, 0.0010459992F, 0.0011139743F, 0.0011863665F, 0.0012634633F, 0.0013455702F, 0.0014330129F, 0.0015261382F, 0.0016253153F, 0.0017309374F, 0.0018434235F, 0.0019632196F, 0.0020908006F, 0.0022266726F, 0.0023713743F, 0.0025254795F, 0.0026895993F, 0.0028643848F, 0.0030505287F, 0.003248769F, 0.0034598925F, 0.0036847359F, 0.0039241905F, 0.0041792067F, 0.004450795F, 0.004740033F, 0.005048067F, 0.0053761187F, 0.005725489F, 0.0060975635F, 0.0064938175F, 0.0069158226F, 0.0073652514F, 0.007843887F, 0.008353627F, 0.008896492F, 0.009474637F, 0.010090352F, 0.01074608F, 0.011444421F, 0.012188144F, 0.012980198F, 0.013823725F, 0.014722068F, 0.015678791F, 0.016697686F, 0.017782796F, 0.018938422F, 0.020169148F, 0.021479854F, 0.022875736F, 0.02436233F, 0.025945531F, 0.027631618F, 0.029427277F, 0.031339627F, 0.03337625F, 0.035545226F, 0.037855156F, 0.0403152F, 0.042935107F, 0.045725275F, 0.048696756F, 0.05186135F, 0.05523159F, 0.05882085F, 0.062643364F, 0.06671428F, 0.07104975F, 0.075666964F, 0.08058423F, 0.08582105F, 0.09139818F, 0.097337745F, 0.1036633F, 0.11039993F, 0.11757434F, 0.12521498F, 0.13335215F, 0.14201812F, 0.15124726F, 0.16107617F, 0.1715438F, 0.18269168F, 0.19456401F, 0.20720787F, 0.22067343F, 0.23501402F, 0.25028655F, 0.26655158F, 0.28387362F, 0.3023213F, 0.32196787F, 0.34289113F, 0.36517414F, 0.3889052F, 0.41417846F, 0.44109413F, 0.4697589F, 0.50028646F, 0.53279793F, 0.5674221F, 0.6042964F, 0.64356697F, 0.6853896F, 0.72993004F, 0.777365F, 0.8278826F, 0.88168305F, 0.9389798F, 1.0F}; // L: 9 + field1413 = new int[]{256, 128, 86, 64}; + VorbisFloor_decibelStatics = new float[]{1.0649863E-7F, 1.1341951E-7F, 1.2079015E-7F, 1.2863978E-7F, 1.369995E-7F, 1.459025E-7F, 1.5538409E-7F, 1.6548181E-7F, 1.7623574E-7F, 1.8768856E-7F, 1.998856E-7F, 2.128753E-7F, 2.2670913E-7F, 2.4144197E-7F, 2.5713223E-7F, 2.7384212E-7F, 2.9163792E-7F, 3.1059022E-7F, 3.307741E-7F, 3.5226967E-7F, 3.7516213E-7F, 3.995423E-7F, 4.255068E-7F, 4.5315863E-7F, 4.8260745E-7F, 5.1397E-7F, 5.4737063E-7F, 5.829419E-7F, 6.208247E-7F, 6.611694E-7F, 7.041359E-7F, 7.4989464E-7F, 7.98627E-7F, 8.505263E-7F, 9.057983E-7F, 9.646621E-7F, 1.0273513E-6F, 1.0941144E-6F, 1.1652161E-6F, 1.2409384E-6F, 1.3215816E-6F, 1.4074654E-6F, 1.4989305E-6F, 1.5963394E-6F, 1.7000785E-6F, 1.8105592E-6F, 1.9282195E-6F, 2.053526E-6F, 2.1869757E-6F, 2.3290977E-6F, 2.4804558E-6F, 2.6416496E-6F, 2.813319E-6F, 2.9961443E-6F, 3.1908505E-6F, 3.39821E-6F, 3.619045E-6F, 3.8542307E-6F, 4.1047006E-6F, 4.371447E-6F, 4.6555283E-6F, 4.958071E-6F, 5.280274E-6F, 5.623416E-6F, 5.988857E-6F, 6.3780467E-6F, 6.7925284E-6F, 7.2339453E-6F, 7.704048E-6F, 8.2047E-6F, 8.737888E-6F, 9.305725E-6F, 9.910464E-6F, 1.0554501E-5F, 1.1240392E-5F, 1.1970856E-5F, 1.2748789E-5F, 1.3577278E-5F, 1.4459606E-5F, 1.5399271E-5F, 1.6400005E-5F, 1.7465769E-5F, 1.8600793E-5F, 1.9809577E-5F, 2.1096914E-5F, 2.2467912E-5F, 2.3928002E-5F, 2.5482977E-5F, 2.7139005E-5F, 2.890265E-5F, 3.078091E-5F, 3.2781227E-5F, 3.4911533E-5F, 3.718028E-5F, 3.9596467E-5F, 4.2169668E-5F, 4.491009E-5F, 4.7828602E-5F, 5.0936775E-5F, 5.424693E-5F, 5.7772202E-5F, 6.152657E-5F, 6.552491E-5F, 6.9783084E-5F, 7.4317984E-5F, 7.914758E-5F, 8.429104E-5F, 8.976875E-5F, 9.560242E-5F, 1.0181521E-4F, 1.0843174E-4F, 1.1547824E-4F, 1.2298267E-4F, 1.3097477E-4F, 1.3948625E-4F, 1.4855085E-4F, 1.5820454E-4F, 1.6848555E-4F, 1.7943469E-4F, 1.9109536E-4F, 2.0351382E-4F, 2.167393E-4F, 2.3082423E-4F, 2.4582449E-4F, 2.6179955E-4F, 2.7881275E-4F, 2.9693157E-4F, 3.1622787E-4F, 3.3677815E-4F, 3.5866388E-4F, 3.8197188E-4F, 4.0679457E-4F, 4.3323037E-4F, 4.613841E-4F, 4.913675E-4F, 5.2329927E-4F, 5.573062E-4F, 5.935231E-4F, 6.320936E-4F, 6.731706E-4F, 7.16917E-4F, 7.635063E-4F, 8.1312325E-4F, 8.6596457E-4F, 9.2223985E-4F, 9.821722E-4F, 0.0010459992F, 0.0011139743F, 0.0011863665F, 0.0012634633F, 0.0013455702F, 0.0014330129F, 0.0015261382F, 0.0016253153F, 0.0017309374F, 0.0018434235F, 0.0019632196F, 0.0020908006F, 0.0022266726F, 0.0023713743F, 0.0025254795F, 0.0026895993F, 0.0028643848F, 0.0030505287F, 0.003248769F, 0.0034598925F, 0.0036847359F, 0.0039241905F, 0.0041792067F, 0.004450795F, 0.004740033F, 0.005048067F, 0.0053761187F, 0.005725489F, 0.0060975635F, 0.0064938175F, 0.0069158226F, 0.0073652514F, 0.007843887F, 0.008353627F, 0.008896492F, 0.009474637F, 0.010090352F, 0.01074608F, 0.011444421F, 0.012188144F, 0.012980198F, 0.013823725F, 0.014722068F, 0.015678791F, 0.016697686F, 0.017782796F, 0.018938422F, 0.020169148F, 0.021479854F, 0.022875736F, 0.02436233F, 0.025945531F, 0.027631618F, 0.029427277F, 0.031339627F, 0.03337625F, 0.035545226F, 0.037855156F, 0.0403152F, 0.042935107F, 0.045725275F, 0.048696756F, 0.05186135F, 0.05523159F, 0.05882085F, 0.062643364F, 0.06671428F, 0.07104975F, 0.075666964F, 0.08058423F, 0.08582105F, 0.09139818F, 0.097337745F, 0.1036633F, 0.11039993F, 0.11757434F, 0.12521498F, 0.13335215F, 0.14201812F, 0.15124726F, 0.16107617F, 0.1715438F, 0.18269168F, 0.19456401F, 0.20720787F, 0.22067343F, 0.23501402F, 0.25028655F, 0.26655158F, 0.28387362F, 0.3023213F, 0.32196787F, 0.34289113F, 0.36517414F, 0.3889052F, 0.41417846F, 0.44109413F, 0.4697589F, 0.50028646F, 0.53279793F, 0.5674221F, 0.6042964F, 0.64356697F, 0.6853896F, 0.72993004F, 0.777365F, 0.8278826F, 0.88168305F, 0.9389798F, 1.0F}; } VorbisFloor() { - int var1 = VorbisSample.readBits(16); // L: 108 - if (var1 != 1) { // L: 109 - throw new RuntimeException(); // L: 110 + int var1 = VorbisSample.readBits(16); + if (var1 != 1) { + throw new RuntimeException(); } else { - int var2 = VorbisSample.readBits(5); // L: 112 - int var3 = 0; // L: 113 - this.partitionClassList = new int[var2]; // L: 114 + int var2 = VorbisSample.readBits(5); + int var3 = 0; + this.partitionClassList = new int[var2]; int var4; int var5; - for (var4 = 0; var4 < var2; ++var4) { // L: 115 - var5 = VorbisSample.readBits(4); // L: 116 - this.partitionClassList[var4] = var5; // L: 117 - if (var5 >= var3) { // L: 118 + for (var4 = 0; var4 < var2; ++var4) { + var5 = VorbisSample.readBits(4); + this.partitionClassList[var4] = var5; + if (var5 >= var3) { var3 = var5 + 1; } } - this.classDimensions = new int[var3]; // L: 120 - this.classSubClasses = new int[var3]; // L: 121 - this.classMasterbooks = new int[var3]; // L: 122 - this.subclassBooks = new int[var3][]; // L: 123 + this.classDimensions = new int[var3]; + this.classSubClasses = new int[var3]; + this.classMasterbooks = new int[var3]; + this.subclassBooks = new int[var3][]; int var7; - for (var4 = 0; var4 < var3; ++var4) { // L: 124 - this.classDimensions[var4] = VorbisSample.readBits(3) + 1; // L: 125 - var5 = this.classSubClasses[var4] = VorbisSample.readBits(2); // L: 126 - if (var5 != 0) { // L: 127 + for (var4 = 0; var4 < var3; ++var4) { + this.classDimensions[var4] = VorbisSample.readBits(3) + 1; + var5 = this.classSubClasses[var4] = VorbisSample.readBits(2); + if (var5 != 0) { this.classMasterbooks[var4] = VorbisSample.readBits(8); } - var5 = 1 << var5; // L: 128 - int[] var9 = new int[var5]; // L: 129 - this.subclassBooks[var4] = var9; // L: 130 + var5 = 1 << var5; + int[] var9 = new int[var5]; + this.subclassBooks[var4] = var9; - for (var7 = 0; var7 < var5; ++var7) { // L: 131 + for (var7 = 0; var7 < var5; ++var7) { var9[var7] = VorbisSample.readBits(8) - 1; } } - this.multiplier = VorbisSample.readBits(2) + 1; // L: 133 - var4 = VorbisSample.readBits(4); // L: 134 - var5 = 2; // L: 135 + this.multiplier = VorbisSample.readBits(2) + 1; + var4 = VorbisSample.readBits(4); + var5 = 2; int var6; - for (var6 = 0; var6 < var2; ++var6) { // L: 136 + for (var6 = 0; var6 < var2; ++var6) { var5 += this.classDimensions[this.partitionClassList[var6]]; } - this.field1422 = new int[var5]; // L: 137 - this.field1422[0] = 0; // L: 138 - this.field1422[1] = 1 << var4; // L: 139 - var5 = 2; // L: 140 + this.field1411 = new int[var5]; + this.field1411[0] = 0; + this.field1411[1] = 1 << var4; + var5 = 2; - for (var6 = 0; var6 < var2; ++var6) { // L: 141 - var7 = this.partitionClassList[var6]; // L: 142 + for (var6 = 0; var6 < var2; ++var6) { + var7 = this.partitionClassList[var6]; - for (int var8 = 0; var8 < this.classDimensions[var7]; ++var8) { // L: 143 - this.field1422[var5++] = VorbisSample.readBits(var4); + for (int var8 = 0; var8 < this.classDimensions[var7]; ++var8) { + this.field1411[var5++] = VorbisSample.readBits(var4); } } - if (field1429 == null || field1429.length < var5) { // L: 145 - field1429 = new int[var5]; // L: 146 - field1430 = new int[var5]; // L: 147 - field1431 = new boolean[var5]; // L: 148 + if (field1418 == null || field1418.length < var5) { + field1418 = new int[var5]; + field1419 = new int[var5]; + field1409 = new boolean[var5]; } } - } // L: 150 - - @ObfuscatedName("l") - int method2556(int var1, int var2, int var3, int var4, int var5) { - int var6 = var4 - var2; // L: 50 - int var7 = var3 - var1; // L: 51 - int var8 = var6 < 0 ? -var6 : var6; // L: 52 - int var9 = (var5 - var1) * var8; // L: 53 - int var10 = var9 / var7; // L: 54 - return var6 < 0 ? var2 - var10 : var10 + var2; // L: 55 } - @ObfuscatedName("m") - void method2534(int var1, int var2, int var3, int var4, float[] var5, int var6) { - int var7 = var4 - var2; // L: 59 - int var8 = var3 - var1; // L: 60 - int var9 = var7 < 0 ? -var7 : var7; // L: 61 - int var10 = var7 / var8; // L: 62 - int var11 = var2; // L: 63 - int var12 = 0; // L: 64 - int var13 = var7 < 0 ? var10 - 1 : var10 + 1; // L: 65 - var9 -= (var10 < 0 ? -var10 : var10) * var8; // L: 66 - var5[var1] *= VorbisFloor_decibelStatics[var2]; // L: 67 - if (var3 > var6) { // L: 68 + @ObfuscatedName("x") + int method2476(int var1, int var2, int var3, int var4, int var5) { + int var6 = var4 - var2; + int var7 = var3 - var1; + int var8 = var6 < 0 ? -var6 : var6; + int var9 = (var5 - var1) * var8; + int var10 = var9 / var7; + return var6 < 0 ? var2 - var10 : var10 + var2; + } + + @ObfuscatedName("w") + void method2469(int var1, int var2, int var3, int var4, float[] var5, int var6) { + int var7 = var4 - var2; + int var8 = var3 - var1; + int var9 = var7 < 0 ? -var7 : var7; + int var10 = var7 / var8; + int var11 = var2; + int var12 = 0; + int var13 = var7 < 0 ? var10 - 1 : var10 + 1; + var9 -= (var10 < 0 ? -var10 : var10) * var8; + var5[var1] *= VorbisFloor_decibelStatics[var2]; + if (var3 > var6) { var3 = var6; } - for (int var14 = var1 + 1; var14 < var3; ++var14) { // L: 69 - var12 += var9; // L: 70 - if (var12 >= var8) { // L: 71 - var12 -= var8; // L: 72 - var11 += var13; // L: 73 + for (int var14 = var1 + 1; var14 < var3; ++var14) { + var12 += var9; + if (var12 >= var8) { + var12 -= var8; + var11 += var13; } else { - var11 += var10; // L: 76 + var11 += var10; } - var5[var14] *= VorbisFloor_decibelStatics[var11]; // L: 78 + var5[var14] *= VorbisFloor_decibelStatics[var11]; } - } // L: 80 + } - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("VarbisFloor_sort") void VarbisFloor_sort(int var1, int var2) { - if (var1 < var2) { // L: 83 - int var3 = var1; // L: 84 - int var4 = field1429[var1]; // L: 85 - int var5 = field1430[var1]; // L: 86 - boolean var6 = field1431[var1]; // L: 87 + if (var1 < var2) { + int var3 = var1; + int var4 = field1418[var1]; + int var5 = field1419[var1]; + boolean var6 = field1409[var1]; - for (int var7 = var1 + 1; var7 <= var2; ++var7) { // L: 88 - int var8 = field1429[var7]; // L: 89 - if (var8 < var4) { // L: 90 - field1429[var3] = var8; // L: 91 - field1430[var3] = field1430[var7]; // L: 92 - field1431[var3] = field1431[var7]; // L: 93 - ++var3; // L: 94 - field1429[var7] = field1429[var3]; // L: 95 - field1430[var7] = field1430[var3]; // L: 96 - field1431[var7] = field1431[var3]; // L: 97 + for (int var7 = var1 + 1; var7 <= var2; ++var7) { + int var8 = field1418[var7]; + if (var8 < var4) { + field1418[var3] = var8; + field1419[var3] = field1419[var7]; + field1409[var3] = field1409[var7]; + ++var3; + field1418[var7] = field1418[var3]; + field1419[var7] = field1419[var3]; + field1409[var7] = field1409[var3]; } } - field1429[var3] = var4; // L: 100 - field1430[var3] = var5; // L: 101 - field1431[var3] = var6; // L: 102 - this.VarbisFloor_sort(var1, var3 - 1); // L: 103 - this.VarbisFloor_sort(var3 + 1, var2); // L: 104 - } - } // L: 105 - - @ObfuscatedName("q") - @Export("readSubmapFloor") - boolean readSubmapFloor() { - boolean var1 = VorbisSample.readBit() != 0; // L: 153 - if (!var1) { // L: 154 - return false; - } else { - int var2 = this.field1422.length; // L: 155 - - int var3; - for (var3 = 0; var3 < var2; ++var3) { // L: 156 - field1429[var3] = this.field1422[var3]; - } - - var3 = field1425[this.multiplier - 1]; // L: 157 - int var4 = JagexCache.iLog(var3 - 1); // L: 158 - field1430[0] = VorbisSample.readBits(var4); // L: 159 - field1430[1] = VorbisSample.readBits(var4); // L: 160 - int var5 = 2; // L: 161 - - for (int var6 = 0; var6 < this.partitionClassList.length; ++var6) { // L: 162 - int var7 = this.partitionClassList[var6]; // L: 163 - int var8 = this.classDimensions[var7]; // L: 164 - int var9 = this.classSubClasses[var7]; // L: 165 - int var10 = (1 << var9) - 1; // L: 166 - int var11 = 0; // L: 167 - if (var9 > 0) { // L: 168 - var11 = VorbisSample.VorbisSample_codebooks[this.classMasterbooks[var7]].method2472(); - } - - for (int var12 = 0; var12 < var8; ++var12) { // L: 169 - int var13 = this.subclassBooks[var7][var11 & var10]; // L: 170 - var11 >>>= var9; // L: 171 - field1430[var5++] = var13 >= 0 ? VorbisSample.VorbisSample_codebooks[var13].method2472() : 0; // L: 172 - } - } - - return true; // L: 175 + field1418[var3] = var4; + field1419[var3] = var5; + field1409[var3] = var6; + this.VarbisFloor_sort(var1, var3 - 1); + this.VarbisFloor_sort(var3 + 1, var2); } } - @ObfuscatedName("k") - void method2537(float[] var1, int var2) { - int var3 = this.field1422.length; // L: 179 - int var4 = field1425[this.multiplier - 1]; // L: 180 - boolean[] var5 = field1431; // L: 181 - field1431[1] = true; // L: 182 - var5[0] = true; // L: 183 + @ObfuscatedName("j") + @Export("readSubmapFloor") + boolean readSubmapFloor() { + boolean var1 = VorbisSample.readBit() != 0; + if (!var1) { + return false; + } else { + int var2 = this.field1411.length; + + int var3; + for (var3 = 0; var3 < var2; ++var3) { + field1418[var3] = this.field1411[var3]; + } + + var3 = field1413[this.multiplier - 1]; + int var4 = IgnoreList.iLog(var3 - 1); + field1419[0] = VorbisSample.readBits(var4); + field1419[1] = VorbisSample.readBits(var4); + int var5 = 2; + + for (int var6 = 0; var6 < this.partitionClassList.length; ++var6) { + int var7 = this.partitionClassList[var6]; + int var8 = this.classDimensions[var7]; + int var9 = this.classSubClasses[var7]; + int var10 = (1 << var9) - 1; + int var11 = 0; + if (var9 > 0) { + var11 = VorbisSample.VorbisSample_codebooks[this.classMasterbooks[var7]].method2402(); + } + + for (int var12 = 0; var12 < var8; ++var12) { + int var13 = this.subclassBooks[var7][var11 & var10]; + var11 >>>= var9; + field1419[var5++] = var13 >= 0 ? VorbisSample.VorbisSample_codebooks[var13].method2402() : 0; + } + } + + return true; + } + } + + @ObfuscatedName("n") + void method2465(float[] var1, int var2) { + int var3 = this.field1411.length; + int var4 = field1413[this.multiplier - 1]; + boolean[] var5 = field1409; + field1409[1] = true; + var5[0] = true; int var6; int var7; int var8; int var9; int var10; - for (var6 = 2; var6 < var3; ++var6) { // L: 184 - var7 = method2549(field1429, var6); // L: 185 - var8 = method2532(field1429, var6); // L: 186 - var9 = this.method2556(field1429[var7], field1430[var7], field1429[var8], field1430[var8], field1429[var6]); // L: 187 - var10 = field1430[var6]; // L: 188 - int var11 = var4 - var9; // L: 189 - int var13 = (var11 < var9 ? var11 : var9) << 1; // L: 191 - if (var10 != 0) { // L: 192 - boolean[] var14 = field1431; // L: 193 - field1431[var8] = true; // L: 195 - var14[var7] = true; // L: 196 - field1431[var6] = true; // L: 197 - if (var10 >= var13) { // L: 198 - field1430[var6] = var11 > var9 ? var9 + (var10 - var9) : var11 + (var9 - var10) - 1; // L: 199 + for (var6 = 2; var6 < var3; ++var6) { + var7 = method2466(field1418, var6); + var8 = method2460(field1418, var6); + var9 = this.method2476(field1418[var7], field1419[var7], field1418[var8], field1419[var8], field1418[var6]); + var10 = field1419[var6]; + int var11 = var4 - var9; + int var13 = (var11 < var9 ? var11 : var9) << 1; + if (var10 != 0) { + boolean[] var14 = field1409; + field1409[var8] = true; + var14[var7] = true; + field1409[var6] = true; + if (var10 >= var13) { + field1419[var6] = var11 > var9 ? var9 + (var10 - var9) : var11 + (var9 - var10) - 1; } else { - field1430[var6] = (var10 & 1) != 0 ? var9 - (var10 + 1) / 2 : var10 / 2 + var9; // L: 202 + field1419[var6] = (var10 & 1) != 0 ? var9 - (var10 + 1) / 2 : var10 / 2 + var9; } } else { - field1431[var6] = false; // L: 206 - field1430[var6] = var9; // L: 207 + field1409[var6] = false; + field1419[var6] = var9; } } - this.VarbisFloor_sort(0, var3 - 1); // L: 210 - var6 = 0; // L: 211 - var7 = field1430[0] * this.multiplier; // L: 212 + this.VarbisFloor_sort(0, var3 - 1); + var6 = 0; + var7 = field1419[0] * this.multiplier; - for (var8 = 1; var8 < var3; ++var8) { // L: 213 - if (field1431[var8]) { // L: 214 - var9 = field1429[var8]; // L: 215 - var10 = field1430[var8] * this.multiplier; // L: 216 - this.method2534(var6, var7, var9, var10, var1, var2); // L: 217 - if (var9 >= var2) { // L: 218 + for (var8 = 1; var8 < var3; ++var8) { + if (field1409[var8]) { + var9 = field1418[var8]; + var10 = field1419[var8] * this.multiplier; + this.method2469(var6, var7, var9, var10, var1, var2); + if (var9 >= var2) { return; } - var6 = var9; // L: 219 - var7 = var10; // L: 220 + var6 = var9; + var7 = var10; } } - float var16 = VorbisFloor_decibelStatics[var7]; // L: 223 + float var16 = VorbisFloor_decibelStatics[var7]; - for (var9 = var6; var9 < var2; ++var9) { // L: 224 + for (var9 = var6; var9 < var2; ++var9) { var1[var9] *= var16; } - } // L: 225 - - @ObfuscatedName("f") - static int method2549(int[] var0, int var1) { - int var2 = var0[var1]; // L: 22 - int var3 = -1; // L: 23 - int var4 = Integer.MIN_VALUE; // L: 24 - - for (int var5 = 0; var5 < var1; ++var5) { // L: 25 - int var6 = var0[var5]; // L: 26 - if (var6 < var2 && var6 > var4) { // L: 27 - var3 = var5; // L: 28 - var4 = var6; // L: 29 - } - } - - return var3; // L: 32 } - @ObfuscatedName("b") - static int method2532(int[] var0, int var1) { - int var2 = var0[var1]; // L: 36 - int var3 = -1; // L: 37 - int var4 = Integer.MAX_VALUE; // L: 38 + @ObfuscatedName("h") + static int method2466(int[] var0, int var1) { + int var2 = var0[var1]; + int var3 = -1; + int var4 = Integer.MIN_VALUE; - for (int var5 = 0; var5 < var1; ++var5) { // L: 39 - int var6 = var0[var5]; // L: 40 - if (var6 > var2 && var6 < var4) { // L: 41 - var3 = var5; // L: 42 - var4 = var6; // L: 43 + for (int var5 = 0; var5 < var1; ++var5) { + int var6 = var0[var5]; + if (var6 < var2 && var6 > var4) { + var3 = var5; + var4 = var6; } } - return var3; // L: 46 + return var3; + } + + @ObfuscatedName("v") + static int method2460(int[] var0, int var1) { + int var2 = var0[var1]; + int var3 = -1; + int var4 = Integer.MAX_VALUE; + + for (int var5 = 0; var5 < var1; ++var5) { + int var6 = var0[var5]; + if (var6 > var2 && var6 < var4) { + var3 = var5; + var4 = var6; + } + } + + return var3; } } diff --git a/runescape-client/src/main/java/VorbisMapping.java b/runescape-client/src/main/java/VorbisMapping.java index 1e0b074235..3db2b9feab 100644 --- a/runescape-client/src/main/java/VorbisMapping.java +++ b/runescape-client/src/main/java/VorbisMapping.java @@ -2,42 +2,42 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("di") +@ObfuscatedName("do") @Implements("VorbisMapping") public class VorbisMapping { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("submaps") int submaps; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("mappingMux") int mappingMux; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("submapFloor") int[] submapFloor; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("submapResidue") int[] submapResidue; VorbisMapping() { - VorbisSample.readBits(16); // L: 12 - this.submaps = VorbisSample.readBit() != 0 ? VorbisSample.readBits(4) + 1 : 1; // L: 13 - if (VorbisSample.readBit() != 0) { // L: 14 - VorbisSample.readBits(8); // L: 15 + VorbisSample.readBits(16); + this.submaps = VorbisSample.readBit() != 0 ? VorbisSample.readBits(4) + 1 : 1; + if (VorbisSample.readBit() != 0) { + VorbisSample.readBits(8); } - VorbisSample.readBits(2); // L: 18 - if (this.submaps > 1) { // L: 19 - this.mappingMux = VorbisSample.readBits(4); // L: 20 + VorbisSample.readBits(2); + if (this.submaps > 1) { + this.mappingMux = VorbisSample.readBits(4); } - this.submapFloor = new int[this.submaps]; // L: 22 - this.submapResidue = new int[this.submaps]; // L: 23 + this.submapFloor = new int[this.submaps]; + this.submapResidue = new int[this.submaps]; - for (int var1 = 0; var1 < this.submaps; ++var1) { // L: 24 - VorbisSample.readBits(8); // L: 25 - this.submapFloor[var1] = VorbisSample.readBits(8); // L: 26 - this.submapResidue[var1] = VorbisSample.readBits(8); // L: 27 + for (int var1 = 0; var1 < this.submaps; ++var1) { + VorbisSample.readBits(8); + this.submapFloor[var1] = VorbisSample.readBits(8); + this.submapResidue[var1] = VorbisSample.readBits(8); } - } // L: 29 + } } diff --git a/runescape-client/src/main/java/VorbisResidue.java b/runescape-client/src/main/java/VorbisResidue.java index 7259a6e937..b2a7415b19 100644 --- a/runescape-client/src/main/java/VorbisResidue.java +++ b/runescape-client/src/main/java/VorbisResidue.java @@ -2,124 +2,124 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("dj") +@ObfuscatedName("dy") @Implements("VorbisResidue") public class VorbisResidue { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("residueType") int residueType; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("begin") int begin; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("end") int end; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("partitionSize") int partitionSize; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("classifications") int classifications; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("classbook") int classbook; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("cascade") int[] cascade; VorbisResidue() { - this.residueType = VorbisSample.readBits(16); // L: 15 - this.begin = VorbisSample.readBits(24); // L: 16 - this.end = VorbisSample.readBits(24); // L: 17 - this.partitionSize = VorbisSample.readBits(24) + 1; // L: 18 - this.classifications = VorbisSample.readBits(6) + 1; // L: 19 - this.classbook = VorbisSample.readBits(8); // L: 20 - int[] var1 = new int[this.classifications]; // L: 21 + this.residueType = VorbisSample.readBits(16); + this.begin = VorbisSample.readBits(24); + this.end = VorbisSample.readBits(24); + this.partitionSize = VorbisSample.readBits(24) + 1; + this.classifications = VorbisSample.readBits(6) + 1; + this.classbook = VorbisSample.readBits(8); + int[] var1 = new int[this.classifications]; int var2; - for (var2 = 0; var2 < this.classifications; ++var2) { // L: 22 - int var3 = 0; // L: 23 - int var4 = VorbisSample.readBits(3); // L: 24 - boolean var5 = VorbisSample.readBit() != 0; // L: 25 - if (var5) { // L: 26 + for (var2 = 0; var2 < this.classifications; ++var2) { + int var3 = 0; + int var4 = VorbisSample.readBits(3); + boolean var5 = VorbisSample.readBit() != 0; + if (var5) { var3 = VorbisSample.readBits(5); } - var1[var2] = var3 << 3 | var4; // L: 27 + var1[var2] = var3 << 3 | var4; } - this.cascade = new int[this.classifications * 8]; // L: 29 + this.cascade = new int[this.classifications * 8]; - for (var2 = 0; var2 < this.classifications * 8; ++var2) { // L: 30 + for (var2 = 0; var2 < this.classifications * 8; ++var2) { this.cascade[var2] = (var1[var2 >> 3] & 1 << (var2 & 7)) != 0 ? VorbisSample.readBits(8) : -1; } - } // L: 31 + } - @ObfuscatedName("f") - void method2656(float[] var1, int var2, boolean var3) { + @ObfuscatedName("h") + void method2586(float[] var1, int var2, boolean var3) { int var4; - for (var4 = 0; var4 < var2; ++var4) { // L: 34 + for (var4 = 0; var4 < var2; ++var4) { var1[var4] = 0.0F; } - if (!var3) { // L: 35 - var4 = VorbisSample.VorbisSample_codebooks[this.classbook].dimensions; // L: 36 - int var5 = this.end - this.begin; // L: 37 - int var6 = var5 / this.partitionSize; // L: 38 - int[] var7 = new int[var6]; // L: 39 + if (!var3) { + var4 = VorbisSample.VorbisSample_codebooks[this.classbook].dimensions; + int var5 = this.end - this.begin; + int var6 = var5 / this.partitionSize; + int[] var7 = new int[var6]; - for (int var8 = 0; var8 < 8; ++var8) { // L: 40 - int var9 = 0; // L: 41 + for (int var8 = 0; var8 < 8; ++var8) { + int var9 = 0; - while (var9 < var6) { // L: 42 + while (var9 < var6) { int var10; int var11; - if (var8 == 0) { // L: 43 - var10 = VorbisSample.VorbisSample_codebooks[this.classbook].method2472(); // L: 45 + if (var8 == 0) { + var10 = VorbisSample.VorbisSample_codebooks[this.classbook].method2402(); - for (var11 = var4 - 1; var11 >= 0; --var11) { // L: 46 - if (var9 + var11 < var6) { // L: 47 + for (var11 = var4 - 1; var11 >= 0; --var11) { + if (var9 + var11 < var6) { var7[var9 + var11] = var10 % this.classifications; } - var10 /= this.classifications; // L: 48 + var10 /= this.classifications; } } - for (var10 = 0; var10 < var4; ++var10) { // L: 52 - var11 = var7[var9]; // L: 54 - int var12 = this.cascade[var8 + var11 * 8]; // L: 55 - if (var12 >= 0) { // L: 56 - int var13 = var9 * this.partitionSize + this.begin; // L: 57 - VorbisCodebook var14 = VorbisSample.VorbisSample_codebooks[var12]; // L: 58 + for (var10 = 0; var10 < var4; ++var10) { + var11 = var7[var9]; + int var12 = this.cascade[var8 + var11 * 8]; + if (var12 >= 0) { + int var13 = var9 * this.partitionSize + this.begin; + VorbisCodebook var14 = VorbisSample.VorbisSample_codebooks[var12]; int var15; - if (this.residueType == 0) { // L: 59 - var15 = this.partitionSize / var14.dimensions; // L: 60 + if (this.residueType == 0) { + var15 = this.partitionSize / var14.dimensions; - for (int var19 = 0; var19 < var15; ++var19) { // L: 61 - float[] var20 = var14.method2473(); // L: 62 + for (int var19 = 0; var19 < var15; ++var19) { + float[] var20 = var14.method2400(); - for (int var18 = 0; var18 < var14.dimensions; ++var18) { // L: 63 + for (int var18 = 0; var18 < var14.dimensions; ++var18) { var1[var13 + var19 + var18 * var15] += var20[var18]; } } } else { - var15 = 0; // L: 67 + var15 = 0; - while (var15 < this.partitionSize) { // L: 68 - float[] var16 = var14.method2473(); // L: 69 + while (var15 < this.partitionSize) { + float[] var16 = var14.method2400(); - for (int var17 = 0; var17 < var14.dimensions; ++var17) { // L: 70 - var1[var13 + var15] += var16[var17]; // L: 71 - ++var15; // L: 72 + for (int var17 = 0; var17 < var14.dimensions; ++var17) { + var1[var13 + var15] += var16[var17]; + ++var15; } } } } - ++var9; // L: 78 - if (var9 >= var6) { // L: 79 + ++var9; + if (var9 >= var6) { break; } } @@ -127,5 +127,5 @@ public class VorbisResidue { } } - } // L: 83 + } } diff --git a/runescape-client/src/main/java/VorbisSample.java b/runescape-client/src/main/java/VorbisSample.java index 859c6237f4..ebc8cac444 100644 --- a/runescape-client/src/main/java/VorbisSample.java +++ b/runescape-client/src/main/java/VorbisSample.java @@ -3,654 +3,645 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dp") +@ObfuscatedName("dx") @Implements("VorbisSample") public class VorbisSample extends Node { - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("VorbisSample_bytes") static byte[] VorbisSample_bytes; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("VorbisSample_byteOffset") static int VorbisSample_byteOffset; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("VorbisSample_bitOffset") static int VorbisSample_bitOffset; - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("VorbisSample_blockSize0") static int VorbisSample_blockSize0; - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("VorbisSample_blockSize1") static int VorbisSample_blockSize1; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedSignature( - descriptor = "[Ldl;" + descriptor = "[Ldb;" ) @Export("VorbisSample_codebooks") static VorbisCodebook[] VorbisSample_codebooks; - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedSignature( descriptor = "[Ldm;" ) @Export("VorbisSample_floors") static VorbisFloor[] VorbisSample_floors; - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedSignature( - descriptor = "[Ldj;" + descriptor = "[Ldy;" ) @Export("VorbisSample_residues") static VorbisResidue[] VorbisSample_residues; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedSignature( - descriptor = "[Ldi;" + descriptor = "[Ldo;" ) @Export("VorbisSample_mappings") static VorbisMapping[] VorbisSample_mappings; - @ObfuscatedName("r") + @ObfuscatedName("f") @Export("VorbisSample_blockFlags") static boolean[] VorbisSample_blockFlags; - @ObfuscatedName("y") + @ObfuscatedName("a") @Export("VorbisSample_mapping") static int[] VorbisSample_mapping; - @ObfuscatedName("s") - static boolean field1389; - @ObfuscatedName("a") - static float[] field1391; - @ObfuscatedName("g") - static float[] field1399; - @ObfuscatedName("h") - static float[] field1405; - @ObfuscatedName("i") - static float[] field1403; - @ObfuscatedName("ab") - static float[] field1407; - @ObfuscatedName("ac") - static float[] field1412; - @ObfuscatedName("ao") - static float[] field1409; - @ObfuscatedName("af") - static int[] field1381; - @ObfuscatedName("av") - static int[] field1411; - @ObfuscatedName("f") - byte[][] field1397; @ObfuscatedName("b") + static boolean field1387; + @ObfuscatedName("s") + static float[] field1392; + @ObfuscatedName("o") + static float[] field1393; + @ObfuscatedName("k") + static float[] field1394; + @ObfuscatedName("d") + static float[] field1395; + @ObfuscatedName("an") + static float[] field1396; + @ObfuscatedName("aj") + static float[] field1397; + @ObfuscatedName("ax") + static float[] field1381; + @ObfuscatedName("ag") + static int[] field1391; + @ObfuscatedName("au") + static int[] field1400; + @ObfuscatedName("h") + byte[][] field1383; + @ObfuscatedName("v") @Export("sampleRate") int sampleRate; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("sampleCount") int sampleCount; - @ObfuscatedName("m") + @ObfuscatedName("w") @Export("start") int start; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("end") int end; - @ObfuscatedName("q") - boolean field1386; @ObfuscatedName("j") - float[] field1410; - @ObfuscatedName("w") - int field1400; - @ObfuscatedName("v") - int field1401; - @ObfuscatedName("d") - boolean field1402; - @ObfuscatedName("ar") + boolean field1375; + @ObfuscatedName("y") + float[] field1388; + @ObfuscatedName("r") + int field1389; + @ObfuscatedName("q") + int field1390; + @ObfuscatedName("g") + boolean field1377; + @ObfuscatedName("as") @Export("samples") byte[] samples; - @ObfuscatedName("ay") - int field1398; - @ObfuscatedName("ah") - int field1414; + @ObfuscatedName("ae") + int field1402; + @ObfuscatedName("ac") + int field1385; static { - field1389 = false; // L: 28 + field1387 = false; } VorbisSample(byte[] var1) { - this.read(var1); // L: 417 - } // L: 418 + this.read(var1); + } - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("read") void read(byte[] var1) { - Buffer var2 = new Buffer(var1); // L: 89 - this.sampleRate = var2.readInt(); // L: 90 - this.sampleCount = var2.readInt(); // L: 91 - this.start = var2.readInt(); // L: 92 - this.end = var2.readInt(); // L: 93 - if (this.end < 0) { // L: 94 - this.end = ~this.end; // L: 95 - this.field1386 = true; // L: 96 + Buffer var2 = new Buffer(var1); + this.sampleRate = var2.readInt(); + this.sampleCount = var2.readInt(); + this.start = var2.readInt(); + this.end = var2.readInt(); + if (this.end < 0) { + this.end = ~this.end; + this.field1375 = true; } - int var3 = var2.readInt(); // L: 98 - this.field1397 = new byte[var3][]; // L: 99 + int var3 = var2.readInt(); + this.field1383 = new byte[var3][]; - for (int var4 = 0; var4 < var3; ++var4) { // L: 100 - int var5 = 0; // L: 101 + for (int var4 = 0; var4 < var3; ++var4) { + int var5 = 0; int var6; do { - var6 = var2.readUnsignedByte(); // L: 103 - var5 += var6; // L: 104 - } while(var6 >= 255); // L: 105 + var6 = var2.readUnsignedByte(); + var5 += var6; + } while(var6 >= 255); - byte[] var7 = new byte[var5]; // L: 107 - var2.readBytes(var7, 0, var5); // L: 108 - this.field1397[var4] = var7; // L: 109 + byte[] var7 = new byte[var5]; + var2.readBytes(var7, 0, var5); + this.field1383[var4] = var7; } - } // L: 111 + } - @ObfuscatedName("k") - float[] method2504(int var1) { - VorbisSample_setData(this.field1397[var1], 0); // L: 198 - readBit(); // L: 199 - int var2 = readBits(JagexCache.iLog(VorbisSample_mapping.length - 1)); // L: 200 - boolean var3 = VorbisSample_blockFlags[var2]; // L: 201 - int var4 = var3 ? VorbisSample_blockSize1 : VorbisSample_blockSize0; // L: 202 - boolean var5 = false; // L: 203 - boolean var6 = false; // L: 204 - if (var3) { // L: 205 - var5 = readBit() != 0; // L: 206 - var6 = readBit() != 0; // L: 207 + @ObfuscatedName("n") + float[] method2425(int var1) { + VorbisSample_setData(this.field1383[var1], 0); + readBit(); + int var2 = readBits(IgnoreList.iLog(VorbisSample_mapping.length - 1)); + boolean var3 = VorbisSample_blockFlags[var2]; + int var4 = var3 ? VorbisSample_blockSize1 : VorbisSample_blockSize0; + boolean var5 = false; + boolean var6 = false; + if (var3) { + var5 = readBit() != 0; + var6 = readBit() != 0; } - int var7 = var4 >> 1; // L: 209 + int var7 = var4 >> 1; int var8; int var9; int var10; - if (var3 && !var5) { // L: 213 - var8 = (var4 >> 2) - (VorbisSample_blockSize0 >> 2); // L: 214 - var9 = (VorbisSample_blockSize0 >> 2) + (var4 >> 2); // L: 215 - var10 = VorbisSample_blockSize0 >> 1; // L: 216 + if (var3 && !var5) { + var8 = (var4 >> 2) - (VorbisSample_blockSize0 >> 2); + var9 = (VorbisSample_blockSize0 >> 2) + (var4 >> 2); + var10 = VorbisSample_blockSize0 >> 1; } else { - var8 = 0; // L: 219 - var9 = var7; // L: 220 - var10 = var4 >> 1; // L: 221 + var8 = 0; + var9 = var7; + var10 = var4 >> 1; } int var11; int var12; int var13; - if (var3 && !var6) { // L: 226 - var11 = var4 - (var4 >> 2) - (VorbisSample_blockSize0 >> 2); // L: 227 - var12 = (VorbisSample_blockSize0 >> 2) + (var4 - (var4 >> 2)); // L: 228 - var13 = VorbisSample_blockSize0 >> 1; // L: 229 + if (var3 && !var6) { + var11 = var4 - (var4 >> 2) - (VorbisSample_blockSize0 >> 2); + var12 = (VorbisSample_blockSize0 >> 2) + (var4 - (var4 >> 2)); + var13 = VorbisSample_blockSize0 >> 1; } else { - var11 = var7; // L: 232 - var12 = var4; // L: 233 - var13 = var4 >> 1; // L: 234 + var11 = var7; + var12 = var4; + var13 = var4 >> 1; } - VorbisMapping var14 = VorbisSample_mappings[VorbisSample_mapping[var2]]; // L: 236 - int var16 = var14.mappingMux; // L: 239 - int var17 = var14.submapFloor[var16]; // L: 240 - boolean var15 = !VorbisSample_floors[var17].readSubmapFloor(); // L: 241 - boolean var45 = var15; // L: 243 + VorbisMapping var14 = VorbisSample_mappings[VorbisSample_mapping[var2]]; + int var16 = var14.mappingMux; + int var17 = var14.submapFloor[var16]; + boolean var15 = !VorbisSample_floors[var17].readSubmapFloor(); + boolean var45 = var15; - for (var17 = 0; var17 < var14.submaps; ++var17) { // L: 244 - VorbisResidue var42 = VorbisSample_residues[var14.submapResidue[var17]]; // L: 245 - float[] var44 = field1391; // L: 246 - var42.method2656(var44, var4 >> 1, var45); // L: 247 + for (var17 = 0; var17 < var14.submaps; ++var17) { + VorbisResidue var42 = VorbisSample_residues[var14.submapResidue[var17]]; + float[] var44 = field1392; + var42.method2586(var44, var4 >> 1, var45); } int var18; - if (!var15) { // L: 250 - var17 = var14.mappingMux; // L: 251 - var18 = var14.submapFloor[var17]; // L: 252 - VorbisSample_floors[var18].method2537(field1391, var4 >> 1); // L: 253 + if (!var15) { + var17 = var14.mappingMux; + var18 = var14.submapFloor[var17]; + VorbisSample_floors[var18].method2465(field1392, var4 >> 1); } int var19; - if (var15) { // L: 256 - for (var17 = var4 >> 1; var17 < var4; ++var17) { // L: 257 - field1391[var17] = 0.0F; + if (var15) { + for (var17 = var4 >> 1; var17 < var4; ++var17) { + field1392[var17] = 0.0F; } } else { - var17 = var4 >> 1; // L: 260 - var18 = var4 >> 2; // L: 261 - var19 = var4 >> 3; // L: 262 - float[] var20 = field1391; // L: 263 + var17 = var4 >> 1; + var18 = var4 >> 2; + var19 = var4 >> 3; + float[] var20 = field1392; int var21; - for (var21 = 0; var21 < var17; ++var21) { // L: 264 + for (var21 = 0; var21 < var17; ++var21) { var20[var21] *= 0.5F; } - for (var21 = var17; var21 < var4; ++var21) { // L: 265 + for (var21 = var17; var21 < var4; ++var21) { var20[var21] = -var20[var4 - var21 - 1]; } - float[] var40 = var3 ? field1407 : field1399; // L: 266 - float[] var22 = var3 ? field1412 : field1405; // L: 267 - float[] var23 = var3 ? field1409 : field1403; // L: 268 - int[] var24 = var3 ? field1411 : field1381; // L: 269 + float[] var40 = var3 ? field1396 : field1393; + float[] var22 = var3 ? field1397 : field1394; + float[] var23 = var3 ? field1381 : field1395; + int[] var24 = var3 ? field1400 : field1391; int var25; float var26; float var27; float var28; float var29; - for (var25 = 0; var25 < var18; ++var25) { // L: 270 - var26 = var20[var25 * 4] - var20[var4 - var25 * 4 - 1]; // L: 271 - var27 = var20[var25 * 4 + 2] - var20[var4 - var25 * 4 - 3]; // L: 272 - var28 = var40[var25 * 2]; // L: 273 - var29 = var40[var25 * 2 + 1]; // L: 274 - var20[var4 - var25 * 4 - 1] = var26 * var28 - var27 * var29; // L: 275 - var20[var4 - var25 * 4 - 3] = var26 * var29 + var27 * var28; // L: 276 + for (var25 = 0; var25 < var18; ++var25) { + var26 = var20[var25 * 4] - var20[var4 - var25 * 4 - 1]; + var27 = var20[var25 * 4 + 2] - var20[var4 - var25 * 4 - 3]; + var28 = var40[var25 * 2]; + var29 = var40[var25 * 2 + 1]; + var20[var4 - var25 * 4 - 1] = var26 * var28 - var27 * var29; + var20[var4 - var25 * 4 - 3] = var26 * var29 + var27 * var28; } float var30; float var31; - for (var25 = 0; var25 < var19; ++var25) { // L: 278 - var26 = var20[var17 + var25 * 4 + 3]; // L: 279 - var27 = var20[var17 + var25 * 4 + 1]; // L: 280 - var28 = var20[var25 * 4 + 3]; // L: 281 - var29 = var20[var25 * 4 + 1]; // L: 282 - var20[var17 + var25 * 4 + 3] = var26 + var28; // L: 283 - var20[var17 + var25 * 4 + 1] = var27 + var29; // L: 284 - var30 = var40[var17 - 4 - var25 * 4]; // L: 285 - var31 = var40[var17 - 3 - var25 * 4]; // L: 286 - var20[var25 * 4 + 3] = (var26 - var28) * var30 - (var27 - var29) * var31; // L: 287 - var20[var25 * 4 + 1] = (var27 - var29) * var30 + (var26 - var28) * var31; // L: 288 + for (var25 = 0; var25 < var19; ++var25) { + var26 = var20[var17 + var25 * 4 + 3]; + var27 = var20[var17 + var25 * 4 + 1]; + var28 = var20[var25 * 4 + 3]; + var29 = var20[var25 * 4 + 1]; + var20[var17 + var25 * 4 + 3] = var26 + var28; + var20[var17 + var25 * 4 + 1] = var27 + var29; + var30 = var40[var17 - 4 - var25 * 4]; + var31 = var40[var17 - 3 - var25 * 4]; + var20[var25 * 4 + 3] = (var26 - var28) * var30 - (var27 - var29) * var31; + var20[var25 * 4 + 1] = (var27 - var29) * var30 + (var26 - var28) * var31; } - var25 = JagexCache.iLog(var4 - 1); // L: 290 + var25 = IgnoreList.iLog(var4 - 1); int var46; int var47; int var48; int var49; - for (var46 = 0; var46 < var25 - 3; ++var46) { // L: 291 - var47 = var4 >> var46 + 2; // L: 292 - var48 = 8 << var46; // L: 293 + for (var46 = 0; var46 < var25 - 3; ++var46) { + var47 = var4 >> var46 + 2; + var48 = 8 << var46; - for (var49 = 0; var49 < 2 << var46; ++var49) { // L: 294 - int var50 = var4 - var47 * var49 * 2; // L: 295 - int var51 = var4 - var47 * (var49 * 2 + 1); // L: 296 + for (var49 = 0; var49 < 2 << var46; ++var49) { + int var50 = var4 - var47 * var49 * 2; + int var51 = var4 - var47 * (var49 * 2 + 1); - for (int var32 = 0; var32 < var4 >> var46 + 4; ++var32) { // L: 297 - int var33 = var32 * 4; // L: 298 - float var34 = var20[var50 - 1 - var33]; // L: 299 - float var35 = var20[var50 - 3 - var33]; // L: 300 - float var36 = var20[var51 - 1 - var33]; // L: 301 - float var37 = var20[var51 - 3 - var33]; // L: 302 - var20[var50 - 1 - var33] = var34 + var36; // L: 303 - var20[var50 - 3 - var33] = var35 + var37; // L: 304 - float var38 = var40[var32 * var48]; // L: 305 - float var39 = var40[var32 * var48 + 1]; // L: 306 - var20[var51 - 1 - var33] = (var34 - var36) * var38 - (var35 - var37) * var39; // L: 307 - var20[var51 - 3 - var33] = (var35 - var37) * var38 + (var34 - var36) * var39; // L: 308 + for (int var32 = 0; var32 < var4 >> var46 + 4; ++var32) { + int var33 = var32 * 4; + float var34 = var20[var50 - 1 - var33]; + float var35 = var20[var50 - 3 - var33]; + float var36 = var20[var51 - 1 - var33]; + float var37 = var20[var51 - 3 - var33]; + var20[var50 - 1 - var33] = var34 + var36; + var20[var50 - 3 - var33] = var35 + var37; + float var38 = var40[var32 * var48]; + float var39 = var40[var32 * var48 + 1]; + var20[var51 - 1 - var33] = (var34 - var36) * var38 - (var35 - var37) * var39; + var20[var51 - 3 - var33] = (var35 - var37) * var38 + (var34 - var36) * var39; } } } - for (var46 = 1; var46 < var19 - 1; ++var46) { // L: 312 - var47 = var24[var46]; // L: 313 - if (var46 < var47) { // L: 314 - var48 = var46 * 8; // L: 315 - var49 = var47 * 8; // L: 316 - var30 = var20[var48 + 1]; // L: 318 - var20[var48 + 1] = var20[var49 + 1]; // L: 319 - var20[var49 + 1] = var30; // L: 320 - var30 = var20[var48 + 3]; // L: 321 - var20[var48 + 3] = var20[var49 + 3]; // L: 322 - var20[var49 + 3] = var30; // L: 323 - var30 = var20[var48 + 5]; // L: 324 - var20[var48 + 5] = var20[var49 + 5]; // L: 325 - var20[var49 + 5] = var30; // L: 326 - var30 = var20[var48 + 7]; // L: 327 - var20[var48 + 7] = var20[var49 + 7]; // L: 328 - var20[var49 + 7] = var30; // L: 329 + for (var46 = 1; var46 < var19 - 1; ++var46) { + var47 = var24[var46]; + if (var46 < var47) { + var48 = var46 * 8; + var49 = var47 * 8; + var30 = var20[var48 + 1]; + var20[var48 + 1] = var20[var49 + 1]; + var20[var49 + 1] = var30; + var30 = var20[var48 + 3]; + var20[var48 + 3] = var20[var49 + 3]; + var20[var49 + 3] = var30; + var30 = var20[var48 + 5]; + var20[var48 + 5] = var20[var49 + 5]; + var20[var49 + 5] = var30; + var30 = var20[var48 + 7]; + var20[var48 + 7] = var20[var49 + 7]; + var20[var49 + 7] = var30; } } - for (var46 = 0; var46 < var17; ++var46) { // L: 332 + for (var46 = 0; var46 < var17; ++var46) { var20[var46] = var20[var46 * 2 + 1]; } - for (var46 = 0; var46 < var19; ++var46) { // L: 333 - var20[var4 - 1 - var46 * 2] = var20[var46 * 4]; // L: 334 - var20[var4 - 2 - var46 * 2] = var20[var46 * 4 + 1]; // L: 335 - var20[var4 - var18 - 1 - var46 * 2] = var20[var46 * 4 + 2]; // L: 336 - var20[var4 - var18 - 2 - var46 * 2] = var20[var46 * 4 + 3]; // L: 337 + for (var46 = 0; var46 < var19; ++var46) { + var20[var4 - 1 - var46 * 2] = var20[var46 * 4]; + var20[var4 - 2 - var46 * 2] = var20[var46 * 4 + 1]; + var20[var4 - var18 - 1 - var46 * 2] = var20[var46 * 4 + 2]; + var20[var4 - var18 - 2 - var46 * 2] = var20[var46 * 4 + 3]; } - for (var46 = 0; var46 < var19; ++var46) { // L: 339 - var27 = var23[var46 * 2]; // L: 340 - var28 = var23[var46 * 2 + 1]; // L: 341 - var29 = var20[var17 + var46 * 2]; // L: 342 - var30 = var20[var17 + var46 * 2 + 1]; // L: 343 - var31 = var20[var4 - 2 - var46 * 2]; // L: 344 - float var52 = var20[var4 - 1 - var46 * 2]; // L: 345 - float var53 = var28 * (var29 - var31) + var27 * (var30 + var52); // L: 346 - var20[var17 + var46 * 2] = (var29 + var31 + var53) * 0.5F; // L: 347 - var20[var4 - 2 - var46 * 2] = (var29 + var31 - var53) * 0.5F; // L: 348 - var53 = var28 * (var30 + var52) - var27 * (var29 - var31); // L: 349 - var20[var17 + var46 * 2 + 1] = (var30 - var52 + var53) * 0.5F; // L: 350 - var20[var4 - 1 - var46 * 2] = (-var30 + var52 + var53) * 0.5F; // L: 351 + for (var46 = 0; var46 < var19; ++var46) { + var27 = var23[var46 * 2]; + var28 = var23[var46 * 2 + 1]; + var29 = var20[var17 + var46 * 2]; + var30 = var20[var17 + var46 * 2 + 1]; + var31 = var20[var4 - 2 - var46 * 2]; + float var52 = var20[var4 - 1 - var46 * 2]; + float var53 = var28 * (var29 - var31) + var27 * (var30 + var52); + var20[var17 + var46 * 2] = (var29 + var31 + var53) * 0.5F; + var20[var4 - 2 - var46 * 2] = (var29 + var31 - var53) * 0.5F; + var53 = var28 * (var30 + var52) - var27 * (var29 - var31); + var20[var17 + var46 * 2 + 1] = (var30 - var52 + var53) * 0.5F; + var20[var4 - 1 - var46 * 2] = (-var30 + var52 + var53) * 0.5F; } - for (var46 = 0; var46 < var18; ++var46) { // L: 353 - var20[var46] = var20[var17 + var46 * 2] * var22[var46 * 2] + var20[var17 + var46 * 2 + 1] * var22[var46 * 2 + 1]; // L: 354 - var20[var17 - 1 - var46] = var20[var17 + var46 * 2] * var22[var46 * 2 + 1] - var20[var17 + var46 * 2 + 1] * var22[var46 * 2]; // L: 355 + for (var46 = 0; var46 < var18; ++var46) { + var20[var46] = var20[var17 + var46 * 2] * var22[var46 * 2] + var20[var17 + var46 * 2 + 1] * var22[var46 * 2 + 1]; + var20[var17 - 1 - var46] = var20[var17 + var46 * 2] * var22[var46 * 2 + 1] - var20[var17 + var46 * 2 + 1] * var22[var46 * 2]; } - for (var46 = 0; var46 < var18; ++var46) { // L: 357 + for (var46 = 0; var46 < var18; ++var46) { var20[var46 + (var4 - var18)] = -var20[var46]; } - for (var46 = 0; var46 < var18; ++var46) { // L: 358 + for (var46 = 0; var46 < var18; ++var46) { var20[var46] = var20[var18 + var46]; } - for (var46 = 0; var46 < var18; ++var46) { // L: 359 + for (var46 = 0; var46 < var18; ++var46) { var20[var18 + var46] = -var20[var18 - var46 - 1]; } - for (var46 = 0; var46 < var18; ++var46) { // L: 360 + for (var46 = 0; var46 < var18; ++var46) { var20[var17 + var46] = var20[var4 - var46 - 1]; } float[] var10000; - for (var46 = var8; var46 < var9; ++var46) { // L: 361 - var27 = (float)Math.sin(((double)(var46 - var8) + 0.5D) / (double)var10 * 0.5D * 3.141592653589793D); // L: 362 - var10000 = field1391; // L: 363 + for (var46 = var8; var46 < var9; ++var46) { + var27 = (float)Math.sin(((double)(var46 - var8) + 0.5D) / (double)var10 * 0.5D * 3.141592653589793D); + var10000 = field1392; var10000[var46] *= (float)Math.sin(1.5707963267948966D * (double)var27 * (double)var27); } - for (var46 = var11; var46 < var12; ++var46) { // L: 365 - var27 = (float)Math.sin(((double)(var46 - var11) + 0.5D) / (double)var13 * 0.5D * 3.141592653589793D + 1.5707963267948966D); // L: 366 - var10000 = field1391; // L: 367 + for (var46 = var11; var46 < var12; ++var46) { + var27 = (float)Math.sin(((double)(var46 - var11) + 0.5D) / (double)var13 * 0.5D * 3.141592653589793D + 1.5707963267948966D); + var10000 = field1392; var10000[var46] *= (float)Math.sin(1.5707963267948966D * (double)var27 * (double)var27); } } - float[] var41 = null; // L: 370 - if (this.field1400 > 0) { // L: 371 - var18 = var4 + this.field1400 >> 2; // L: 372 - var41 = new float[var18]; // L: 373 + float[] var41 = null; + if (this.field1389 > 0) { + var18 = var4 + this.field1389 >> 2; + var41 = new float[var18]; int var43; - if (!this.field1402) { // L: 374 - for (var19 = 0; var19 < this.field1401; ++var19) { // L: 375 - var43 = var19 + (this.field1400 >> 1); // L: 376 - var41[var19] += this.field1410[var43]; // L: 377 + if (!this.field1377) { + for (var19 = 0; var19 < this.field1390; ++var19) { + var43 = var19 + (this.field1389 >> 1); + var41[var19] += this.field1388[var43]; } } - if (!var15) { // L: 380 - for (var19 = var8; var19 < var4 >> 1; ++var19) { // L: 381 - var43 = var41.length - (var4 >> 1) + var19; // L: 382 - var41[var43] += field1391[var19]; // L: 383 + if (!var15) { + for (var19 = var8; var19 < var4 >> 1; ++var19) { + var43 = var41.length - (var4 >> 1) + var19; + var41[var43] += field1392[var19]; } } } - float[] var54 = this.field1410; // L: 387 - this.field1410 = field1391; // L: 388 - field1391 = var54; // L: 389 - this.field1400 = var4; // L: 390 - this.field1401 = var12 - (var4 >> 1); // L: 391 - this.field1402 = var15; // L: 392 - return var41; // L: 393 + float[] var54 = this.field1388; + this.field1388 = field1392; + field1392 = var54; + this.field1389 = var4; + this.field1390 = var12 - (var4 >> 1); + this.field1377 = var15; + return var41; } - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "([I)Ldo;" + descriptor = "([I)Ldf;" ) @Export("toRawSound") RawSound toRawSound(int[] var1) { - if (var1 != null && var1[0] <= 0) { // L: 421 + if (var1 != null && var1[0] <= 0) { return null; } else { - if (this.samples == null) { // L: 422 - this.field1400 = 0; // L: 423 - this.field1410 = new float[VorbisSample_blockSize1]; // L: 424 - this.samples = new byte[this.sampleCount]; // L: 425 - this.field1398 = 0; // L: 426 - this.field1414 = 0; // L: 427 + if (this.samples == null) { + this.field1389 = 0; + this.field1388 = new float[VorbisSample_blockSize1]; + this.samples = new byte[this.sampleCount]; + this.field1402 = 0; + this.field1385 = 0; } - for (; this.field1414 < this.field1397.length; ++this.field1414) { // L: 429 444 - if (var1 != null && var1[0] <= 0) { // L: 430 + for (; this.field1385 < this.field1383.length; ++this.field1385) { + if (var1 != null && var1[0] <= 0) { return null; } - float[] var2 = this.method2504(this.field1414); // L: 431 - if (var2 != null) { // L: 432 - int var3 = this.field1398; // L: 433 - int var4 = var2.length; // L: 434 - if (var4 > this.sampleCount - var3) { // L: 435 + float[] var2 = this.method2425(this.field1385); + if (var2 != null) { + int var3 = this.field1402; + int var4 = var2.length; + if (var4 > this.sampleCount - var3) { var4 = this.sampleCount - var3; } - for (int var5 = 0; var5 < var4; ++var5) { // L: 436 - int var6 = (int)(128.0F + var2[var5] * 128.0F); // L: 437 - if ((var6 & -256) != 0) { // L: 438 + for (int var5 = 0; var5 < var4; ++var5) { + int var6 = (int)(128.0F + var2[var5] * 128.0F); + if ((var6 & -256) != 0) { var6 = ~var6 >> 31; } - this.samples[var3++] = (byte)(var6 - 128); // L: 439 + this.samples[var3++] = (byte)(var6 - 128); } - if (var1 != null) { // L: 441 - var1[0] -= var3 - this.field1398; + if (var1 != null) { + var1[0] -= var3 - this.field1402; } - this.field1398 = var3; // L: 442 + this.field1402 = var3; } } - this.field1410 = null; // L: 446 - byte[] var7 = this.samples; // L: 447 - this.samples = null; // L: 448 - return new RawSound(this.sampleRate, var7, this.start, this.end, this.field1386); // L: 449 + this.field1388 = null; + byte[] var7 = this.samples; + this.samples = null; + return new RawSound(this.sampleRate, var7, this.start, this.end, this.field1375); } } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("float32Unpack") static float float32Unpack(int var0) { - int var1 = var0 & 2097151; // L: 47 - int var2 = var0 & Integer.MIN_VALUE; // L: 48 - int var3 = (var0 & 2145386496) >> 21; // L: 49 - if (var2 != 0) { // L: 50 + int var1 = var0 & 2097151; + int var2 = var0 & Integer.MIN_VALUE; + int var3 = (var0 & 2145386496) >> 21; + if (var2 != 0) { var1 = -var1; } - return (float)((double)var1 * Math.pow(2.0D, (double)(var3 - 788))); // L: 51 + return (float)((double)var1 * Math.pow(2.0D, (double)(var3 - 788))); } - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("VorbisSample_setData") static void VorbisSample_setData(byte[] var0, int var1) { - VorbisSample_bytes = var0; // L: 55 - VorbisSample_byteOffset = var1; // L: 56 - VorbisSample_bitOffset = 0; // L: 57 - } // L: 58 - - @ObfuscatedName("l") - @Export("readBit") - static int readBit() { - int var0 = VorbisSample_bytes[VorbisSample_byteOffset] >> VorbisSample_bitOffset & 1; // L: 61 - ++VorbisSample_bitOffset; // L: 62 - VorbisSample_byteOffset += VorbisSample_bitOffset >> 3; // L: 63 - VorbisSample_bitOffset &= 7; // L: 64 - return var0; // L: 65 + VorbisSample_bytes = var0; + VorbisSample_byteOffset = var1; + VorbisSample_bitOffset = 0; } - @ObfuscatedName("m") + @ObfuscatedName("x") + @Export("readBit") + static int readBit() { + int var0 = VorbisSample_bytes[VorbisSample_byteOffset] >> VorbisSample_bitOffset & 1; + ++VorbisSample_bitOffset; + VorbisSample_byteOffset += VorbisSample_bitOffset >> 3; + VorbisSample_bitOffset &= 7; + return var0; + } + + @ObfuscatedName("w") @Export("readBits") static int readBits(int var0) { - int var1 = 0; // L: 69 + int var1 = 0; int var2; int var3; - for (var2 = 0; var0 >= 8 - VorbisSample_bitOffset; var0 -= var3) { // L: 70 71 78 - var3 = 8 - VorbisSample_bitOffset; // L: 72 - int var4 = (1 << var3) - 1; // L: 73 - var1 += (VorbisSample_bytes[VorbisSample_byteOffset] >> VorbisSample_bitOffset & var4) << var2; // L: 74 - VorbisSample_bitOffset = 0; // L: 75 - ++VorbisSample_byteOffset; // L: 76 - var2 += var3; // L: 77 + for (var2 = 0; var0 >= 8 - VorbisSample_bitOffset; var0 -= var3) { + var3 = 8 - VorbisSample_bitOffset; + int var4 = (1 << var3) - 1; + var1 += (VorbisSample_bytes[VorbisSample_byteOffset] >> VorbisSample_bitOffset & var4) << var2; + VorbisSample_bitOffset = 0; + ++VorbisSample_byteOffset; + var2 += var3; } - if (var0 > 0) { // L: 80 - var3 = (1 << var0) - 1; // L: 81 - var1 += (VorbisSample_bytes[VorbisSample_byteOffset] >> VorbisSample_bitOffset & var3) << var2; // L: 82 - VorbisSample_bitOffset += var0; // L: 83 + if (var0 > 0) { + var3 = (1 << var0) - 1; + var1 += (VorbisSample_bytes[VorbisSample_byteOffset] >> VorbisSample_bitOffset & var3) << var2; + VorbisSample_bitOffset += var0; } - return var1; // L: 85 + return var1; } - @ObfuscatedName("q") - static void method2503(byte[] var0) { - VorbisSample_setData(var0, 0); // L: 114 - VorbisSample_blockSize0 = 1 << readBits(4); // L: 115 - VorbisSample_blockSize1 = 1 << readBits(4); // L: 116 - field1391 = new float[VorbisSample_blockSize1]; // L: 117 + @ObfuscatedName("j") + static void method2452(byte[] var0) { + VorbisSample_setData(var0, 0); + VorbisSample_blockSize0 = 1 << readBits(4); + VorbisSample_blockSize1 = 1 << readBits(4); + field1392 = new float[VorbisSample_blockSize1]; int var1; int var2; int var3; int var4; int var5; - for (var1 = 0; var1 < 2; ++var1) { // L: 118 - var2 = var1 != 0 ? VorbisSample_blockSize1 : VorbisSample_blockSize0; // L: 119 - var3 = var2 >> 1; // L: 120 - var4 = var2 >> 2; // L: 121 - var5 = var2 >> 3; // L: 122 - float[] var18 = new float[var3]; // L: 123 + for (var1 = 0; var1 < 2; ++var1) { + var2 = var1 != 0 ? VorbisSample_blockSize1 : VorbisSample_blockSize0; + var3 = var2 >> 1; + var4 = var2 >> 2; + var5 = var2 >> 3; + float[] var12 = new float[var3]; - for (int var7 = 0; var7 < var4; ++var7) { // L: 124 - var18[var7 * 2] = (float)Math.cos((double)(var7 * 4) * 3.141592653589793D / (double)var2); // L: 125 - var18[var7 * 2 + 1] = -((float)Math.sin((double)(var7 * 4) * 3.141592653589793D / (double)var2)); // L: 126 + for (int var7 = 0; var7 < var4; ++var7) { + var12[var7 * 2] = (float)Math.cos((double)(var7 * 4) * 3.141592653589793D / (double)var2); + var12[var7 * 2 + 1] = -((float)Math.sin((double)(var7 * 4) * 3.141592653589793D / (double)var2)); } - float[] var19 = new float[var3]; // L: 128 + float[] var13 = new float[var3]; - for (int var8 = 0; var8 < var4; ++var8) { // L: 129 - var19[var8 * 2] = (float)Math.cos((double)(var8 * 2 + 1) * 3.141592653589793D / (double)(var2 * 2)); // L: 130 - var19[var8 * 2 + 1] = (float)Math.sin((double)(var8 * 2 + 1) * 3.141592653589793D / (double)(var2 * 2)); // L: 131 + for (int var8 = 0; var8 < var4; ++var8) { + var13[var8 * 2] = (float)Math.cos((double)(var8 * 2 + 1) * 3.141592653589793D / (double)(var2 * 2)); + var13[var8 * 2 + 1] = (float)Math.sin((double)(var8 * 2 + 1) * 3.141592653589793D / (double)(var2 * 2)); } - float[] var20 = new float[var4]; // L: 133 + float[] var14 = new float[var4]; - for (int var9 = 0; var9 < var5; ++var9) { // L: 134 - var20[var9 * 2] = (float)Math.cos((double)(var9 * 4 + 2) * 3.141592653589793D / (double)var2); // L: 135 - var20[var9 * 2 + 1] = -((float)Math.sin((double)(var9 * 4 + 2) * 3.141592653589793D / (double)var2)); // L: 136 + for (int var9 = 0; var9 < var5; ++var9) { + var14[var9 * 2] = (float)Math.cos((double)(var9 * 4 + 2) * 3.141592653589793D / (double)var2); + var14[var9 * 2 + 1] = -((float)Math.sin((double)(var9 * 4 + 2) * 3.141592653589793D / (double)var2)); } - int[] var21 = new int[var5]; // L: 138 - int var10 = JagexCache.iLog(var5 - 1); // L: 139 + int[] var15 = new int[var5]; + int var10 = IgnoreList.iLog(var5 - 1); - for (int var11 = 0; var11 < var5; ++var11) { // L: 140 - int var15 = var11; // L: 144 - int var16 = var10; // L: 145 - - int var17; - for (var17 = 0; var16 > 0; --var16) { // L: 147 148 151 - var17 = var17 << 1 | var15 & 1; // L: 149 - var15 >>>= 1; // L: 150 - } - - var21[var11] = var17; // L: 155 + for (int var11 = 0; var11 < var5; ++var11) { + var15[var11] = MusicPatchNode2.method3723(var11, var10); } - if (var1 != 0) { // L: 157 - field1407 = var18; // L: 158 - field1412 = var19; // L: 159 - field1409 = var20; // L: 160 - field1411 = var21; // L: 161 + if (var1 != 0) { + field1396 = var12; + field1397 = var13; + field1381 = var14; + field1400 = var15; } else { - field1399 = var18; // L: 164 - field1405 = var19; // L: 165 - field1403 = var20; // L: 166 - field1381 = var21; // L: 167 + field1393 = var12; + field1394 = var13; + field1395 = var14; + field1391 = var15; } } - var1 = readBits(8) + 1; // L: 170 - VorbisSample_codebooks = new VorbisCodebook[var1]; // L: 171 + var1 = readBits(8) + 1; + VorbisSample_codebooks = new VorbisCodebook[var1]; - for (var2 = 0; var2 < var1; ++var2) { // L: 172 + for (var2 = 0; var2 < var1; ++var2) { VorbisSample_codebooks[var2] = new VorbisCodebook(); } - var2 = readBits(6) + 1; // L: 174 + var2 = readBits(6) + 1; - for (var3 = 0; var3 < var2; ++var3) { // L: 175 + for (var3 = 0; var3 < var2; ++var3) { readBits(16); } - var2 = readBits(6) + 1; // L: 177 - VorbisSample_floors = new VorbisFloor[var2]; // L: 178 + var2 = readBits(6) + 1; + VorbisSample_floors = new VorbisFloor[var2]; - for (var3 = 0; var3 < var2; ++var3) { // L: 179 + for (var3 = 0; var3 < var2; ++var3) { VorbisSample_floors[var3] = new VorbisFloor(); } - var3 = readBits(6) + 1; // L: 180 - VorbisSample_residues = new VorbisResidue[var3]; // L: 181 + var3 = readBits(6) + 1; + VorbisSample_residues = new VorbisResidue[var3]; - for (var4 = 0; var4 < var3; ++var4) { // L: 182 + for (var4 = 0; var4 < var3; ++var4) { VorbisSample_residues[var4] = new VorbisResidue(); } - var4 = readBits(6) + 1; // L: 183 - VorbisSample_mappings = new VorbisMapping[var4]; // L: 184 + var4 = readBits(6) + 1; + VorbisSample_mappings = new VorbisMapping[var4]; - for (var5 = 0; var5 < var4; ++var5) { // L: 185 + for (var5 = 0; var5 < var4; ++var5) { VorbisSample_mappings[var5] = new VorbisMapping(); } - var5 = readBits(6) + 1; // L: 186 - VorbisSample_blockFlags = new boolean[var5]; // L: 187 - VorbisSample_mapping = new int[var5]; // L: 188 + var5 = readBits(6) + 1; + VorbisSample_blockFlags = new boolean[var5]; + VorbisSample_mapping = new int[var5]; - for (int var6 = 0; var6 < var5; ++var6) { // L: 189 - VorbisSample_blockFlags[var6] = readBit() != 0; // L: 190 - readBits(16); // L: 191 - readBits(16); // L: 192 - VorbisSample_mapping[var6] = readBits(8); // L: 193 + for (int var6 = 0; var6 < var5; ++var6) { + VorbisSample_blockFlags[var6] = readBit() != 0; + readBits(16); + readBits(16); + VorbisSample_mapping[var6] = readBits(8); } - } // L: 195 + } - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "(Liw;)Z" + descriptor = "(Lib;)Z" ) - static boolean method2505(AbstractArchive var0) { - if (!field1389) { // L: 397 - byte[] var1 = var0.takeFile(0, 0); // L: 398 - if (var1 == null) { // L: 399 + static boolean method2450(AbstractArchive var0) { + if (!field1387) { + byte[] var1 = var0.takeFile(0, 0); + if (var1 == null) { return false; } - method2503(var1); // L: 400 - field1389 = true; // L: 401 + method2452(var1); + field1387 = true; } - return true; // L: 403 + return true; } - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "(Liw;II)Ldp;" + descriptor = "(Lib;II)Ldx;" ) @Export("readMusicSample") static VorbisSample readMusicSample(AbstractArchive var0, int var1, int var2) { - if (!method2505(var0)) { // L: 407 - var0.tryLoadFile(var1, var2); // L: 408 - return null; // L: 409 + if (!method2450(var0)) { + var0.tryLoadFile(var1, var2); + return null; } else { - byte[] var3 = var0.takeFile(var1, var2); // L: 411 - return var3 == null ? null : new VorbisSample(var3); // L: 412 + byte[] var3 = var0.takeFile(var1, var2); + return var3 == null ? null : new VorbisSample(var3); } } } diff --git a/runescape-client/src/main/java/WallDecoration.java b/runescape-client/src/main/java/WallDecoration.java index 3d6bb2eb4d..7bb0be1104 100644 --- a/runescape-client/src/main/java/WallDecoration.java +++ b/runescape-client/src/main/java/WallDecoration.java @@ -1,4 +1,3 @@ -import java.net.URL; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; @@ -8,118 +7,96 @@ import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("ey") @Implements("WallDecoration") public final class WallDecoration { - @ObfuscatedName("gd") - @Export("regionLandArchiveIds") - static int[] regionLandArchiveIds; - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = -1368883061 + intValue = 1081581953 ) @Export("tileHeight") int tileHeight; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 1255836875 + intValue = -297749373 ) @Export("x") int x; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 1394186747 + intValue = 791976009 ) @Export("y") int y; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -1069815711 + intValue = 1711892485 ) @Export("orientation") int orientation; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -1005575771 + intValue = 1589340577 ) @Export("orientation2") int orientation2; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = 287109355 + intValue = 1872177181 ) @Export("xOffset") int xOffset; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -872509349 + intValue = -1614504195 ) @Export("yOffset") int yOffset; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "Lej;" + descriptor = "Ler;" ) @Export("entity1") public Entity entity1; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "Lej;" + descriptor = "Ler;" ) @Export("entity2") public Entity entity2; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - longValue = -3894207238426267157L + longValue = 3554481859042868621L ) @Export("tag") public long tag; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedGetter( - intValue = -237175035 + intValue = 542501961 ) @Export("flags") int flags; WallDecoration() { - this.tag = 0L; // L: 13 - this.flags = 0; // L: 14 - } // L: 16 + this.tag = 0L; + this.flags = 0; + } - @ObfuscatedName("f") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "28" + descriptor = "(III)Lbg;", + garbageValue = "-876680442" ) - @Export("loadWorlds") - static boolean loadWorlds() { - try { - if (class248.World_request == null) { // L: 31 - class248.World_request = class52.urlRequester.request(new URL(PcmPlayer.worldListURL)); - } else if (class248.World_request.isDone()) { // L: 33 - byte[] var0 = class248.World_request.getResponse(); // L: 34 - Buffer var1 = new Buffer(var0); // L: 35 - var1.readInt(); // L: 36 - World.World_count = var1.readUnsignedShort(); // L: 37 - DefaultsGroup.World_worlds = new World[World.World_count]; // L: 38 + @Export("Messages_getByChannelAndID") + static Message Messages_getByChannelAndID(int var0, int var1) { + ChatChannel var2 = (ChatChannel)Messages.Messages_channels.get(var0); + return var2.getMessage(var1); + } - World var3; - for (int var2 = 0; var2 < World.World_count; var3.index = var2++) { // L: 39 47 - var3 = DefaultsGroup.World_worlds[var2] = new World(); // L: 40 - var3.id = var1.readUnsignedShort(); // L: 41 - var3.properties = var1.readInt(); // L: 42 - var3.host = var1.readStringCp1252NullTerminated(); // L: 43 - var3.activity = var1.readStringCp1252NullTerminated(); // L: 44 - var3.location = var1.readUnsignedByte(); // L: 45 - var3.population = var1.readShort(); // L: 46 - } - - ModeWhere.sortWorlds(DefaultsGroup.World_worlds, 0, DefaultsGroup.World_worlds.length - 1, World.World_sortOption1, World.World_sortOption2); // L: 49 - class248.World_request = null; // L: 50 - return true; // L: 51 - } - } catch (Exception var4) { // L: 55 - var4.printStackTrace(); // L: 56 - class248.World_request = null; // L: 57 - } - - return false; // L: 59 + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "613088833" + ) + public static void method3379() { + SpotAnimationDefinition.SpotAnimationDefinition_cached.clear(); + SpotAnimationDefinition.SpotAnimationDefinition_cachedModels.clear(); } } diff --git a/runescape-client/src/main/java/Widget.java b/runescape-client/src/main/java/Widget.java index afa1e86363..f28ec3af4f 100644 --- a/runescape-client/src/main/java/Widget.java +++ b/runescape-client/src/main/java/Widget.java @@ -4,607 +4,586 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ht") +@ObfuscatedName("he") @Implements("Widget") public class Widget extends Node { - @ObfuscatedName("k") + @ObfuscatedName("m") @ObfuscatedSignature( - descriptor = "[[Lht;" - ) - @Export("Widget_interfaceComponents") - public static Widget[][] Widget_interfaceComponents; - @ObfuscatedName("c") - @Export("Widget_loadedInterfaces") - static boolean[] Widget_loadedInterfaces; - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "Liw;" - ) - @Export("Widget_spritesArchive") - static AbstractArchive Widget_spritesArchive; - @ObfuscatedName("o") - @ObfuscatedSignature( - descriptor = "Liw;" - ) - @Export("Widget_fontsArchive") - static AbstractArchive Widget_fontsArchive; - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("Widget_cachedSprites") public static EvictingDualNodeHashTable Widget_cachedSprites; - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("Widget_cachedModels") public static EvictingDualNodeHashTable Widget_cachedModels; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("Widget_cachedFonts") public static EvictingDualNodeHashTable Widget_cachedFonts; - @ObfuscatedName("r") + @ObfuscatedName("f") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("Widget_cachedSpriteMasks") public static EvictingDualNodeHashTable Widget_cachedSpriteMasks; - @ObfuscatedName("y") - public static boolean field2677; - @ObfuscatedName("s") + @ObfuscatedName("a") + public static boolean field2603; + @ObfuscatedName("b") @Export("isIf3") public boolean isIf3; - @ObfuscatedName("j") + @ObfuscatedName("y") @ObfuscatedGetter( - intValue = -583486671 + intValue = -437932207 ) @Export("id") public int id; - @ObfuscatedName("w") + @ObfuscatedName("r") @ObfuscatedGetter( - intValue = -1360175439 + intValue = 951345111 ) @Export("childIndex") public int childIndex; - @ObfuscatedName("v") + @ObfuscatedName("q") @ObfuscatedGetter( - intValue = -1823014479 + intValue = 1268940833 ) @Export("type") public int type; - @ObfuscatedName("d") + @ObfuscatedName("g") @ObfuscatedGetter( - intValue = 1601942739 + intValue = -1862664277 ) @Export("buttonType") public int buttonType; - @ObfuscatedName("a") + @ObfuscatedName("s") @ObfuscatedGetter( - intValue = 1509263011 + intValue = -198743491 ) @Export("contentType") public int contentType; - @ObfuscatedName("g") + @ObfuscatedName("o") @ObfuscatedGetter( - intValue = -577014137 + intValue = -1898483217 ) @Export("xAlignment") public int xAlignment; - @ObfuscatedName("h") + @ObfuscatedName("k") @ObfuscatedGetter( - intValue = 1228051433 + intValue = 1346571391 ) @Export("yAlignment") public int yAlignment; - @ObfuscatedName("i") + @ObfuscatedName("d") @ObfuscatedGetter( - intValue = 841889031 + intValue = 1889947491 ) @Export("widthAlignment") public int widthAlignment; - @ObfuscatedName("ab") + @ObfuscatedName("an") @ObfuscatedGetter( - intValue = -300976641 + intValue = -531400749 ) @Export("heightAlignment") public int heightAlignment; - @ObfuscatedName("ac") + @ObfuscatedName("aj") @ObfuscatedGetter( - intValue = -1326300873 + intValue = -800692123 ) @Export("rawX") public int rawX; - @ObfuscatedName("ao") + @ObfuscatedName("ax") @ObfuscatedGetter( - intValue = 1422648317 + intValue = 382974687 ) @Export("rawY") public int rawY; - @ObfuscatedName("af") + @ObfuscatedName("ag") @ObfuscatedGetter( - intValue = 497062529 + intValue = -1322726457 ) @Export("rawWidth") public int rawWidth; - @ObfuscatedName("av") + @ObfuscatedName("au") @ObfuscatedGetter( - intValue = -682926215 + intValue = 1644488463 ) @Export("rawHeight") public int rawHeight; - @ObfuscatedName("ar") + @ObfuscatedName("as") @ObfuscatedGetter( - intValue = 371785153 + intValue = 1900410117 ) @Export("x") public int x; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @ObfuscatedGetter( - intValue = 766965945 + intValue = 747357693 ) @Export("y") public int y; - @ObfuscatedName("ah") + @ObfuscatedName("ac") @ObfuscatedGetter( - intValue = 410180701 + intValue = -832572509 ) @Export("width") public int width; - @ObfuscatedName("az") + @ObfuscatedName("ak") @ObfuscatedGetter( - intValue = -1661593933 + intValue = 1772768209 ) @Export("height") public int height; - @ObfuscatedName("ak") + @ObfuscatedName("av") @ObfuscatedGetter( - intValue = -370918947 + intValue = 1349630747 ) - public int field2610; - @ObfuscatedName("au") + public int field2660; + @ObfuscatedName("aq") @ObfuscatedGetter( - intValue = -1940118895 + intValue = -396518171 ) - public int field2611; - @ObfuscatedName("ai") + public int field2604; + @ObfuscatedName("ah") @ObfuscatedGetter( - intValue = 1412750483 + intValue = 2117837783 ) @Export("parentId") public int parentId; - @ObfuscatedName("ax") + @ObfuscatedName("am") @Export("isHidden") public boolean isHidden; - @ObfuscatedName("ag") + @ObfuscatedName("aa") @ObfuscatedGetter( - intValue = -182885719 + intValue = -709692579 ) @Export("scrollX") public int scrollX; - @ObfuscatedName("aq") + @ObfuscatedName("ao") @ObfuscatedGetter( - intValue = 192866787 + intValue = 1771973021 ) @Export("scrollY") public int scrollY; - @ObfuscatedName("aw") + @ObfuscatedName("ab") @ObfuscatedGetter( - intValue = -999155981 + intValue = -1515274153 ) @Export("scrollWidth") public int scrollWidth; - @ObfuscatedName("an") + @ObfuscatedName("aw") @ObfuscatedGetter( - intValue = -1625501093 + intValue = -1479373561 ) @Export("scrollHeight") public int scrollHeight; - @ObfuscatedName("am") + @ObfuscatedName("ap") @ObfuscatedGetter( - intValue = -1857019467 + intValue = -1315662131 ) @Export("color") public int color; - @ObfuscatedName("aa") + @ObfuscatedName("ad") @ObfuscatedGetter( - intValue = 808301363 + intValue = 165176819 ) @Export("color2") public int color2; - @ObfuscatedName("at") + @ObfuscatedName("ai") @ObfuscatedGetter( - intValue = -153387015 + intValue = 1061783441 ) @Export("mouseOverColor") public int mouseOverColor; - @ObfuscatedName("as") + @ObfuscatedName("al") @ObfuscatedGetter( - intValue = -2099006501 + intValue = -416430081 ) @Export("mouseOverColor2") public int mouseOverColor2; - @ObfuscatedName("aj") + @ObfuscatedName("ay") @Export("fill") public boolean fill; - @ObfuscatedName("ae") + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "Llu;" + descriptor = "Llj;" ) @Export("fillMode") - public FillMode fillMode; - @ObfuscatedName("al") + public class333 fillMode; + @ObfuscatedName("ar") @ObfuscatedGetter( - intValue = 527341201 + intValue = -318915915 ) @Export("transparencyTop") public int transparencyTop; - @ObfuscatedName("ap") + @ObfuscatedName("az") @ObfuscatedGetter( - intValue = 509195953 + intValue = 761063403 ) @Export("transparencyBot") public int transparencyBot; - @ObfuscatedName("ad") + @ObfuscatedName("at") @ObfuscatedGetter( - intValue = 854987601 + intValue = -1947378617 ) @Export("lineWid") public int lineWid; - @ObfuscatedName("bb") - public boolean field2627; - @ObfuscatedName("bf") + @ObfuscatedName("bh") + public boolean field2620; + @ObfuscatedName("by") @ObfuscatedGetter( - intValue = 372301921 + intValue = -1999476695 ) @Export("spriteId2") public int spriteId2; - @ObfuscatedName("bp") + @ObfuscatedName("bs") @ObfuscatedGetter( - intValue = -402783927 + intValue = -1427429915 ) @Export("spriteId") public int spriteId; - @ObfuscatedName("bg") + @ObfuscatedName("br") @ObfuscatedGetter( - intValue = 1106974971 + intValue = -1067627905 ) @Export("spriteAngle") public int spriteAngle; - @ObfuscatedName("bc") + @ObfuscatedName("bl") @Export("spriteTiling") public boolean spriteTiling; - @ObfuscatedName("bj") + @ObfuscatedName("bx") @ObfuscatedGetter( - intValue = -90624959 + intValue = 530627825 ) @Export("outline") public int outline; - @ObfuscatedName("bl") + @ObfuscatedName("bf") @ObfuscatedGetter( - intValue = 980647975 + intValue = 700546127 ) @Export("spriteShadow") public int spriteShadow; - @ObfuscatedName("bn") + @ObfuscatedName("bz") @Export("spriteFlipV") public boolean spriteFlipV; - @ObfuscatedName("bo") + @ObfuscatedName("bm") @Export("spriteFlipH") public boolean spriteFlipH; - @ObfuscatedName("be") + @ObfuscatedName("bn") @ObfuscatedGetter( - intValue = -498393033 + intValue = -1216081495 ) @Export("modelType") public int modelType; - @ObfuscatedName("ba") + @ObfuscatedName("bd") @ObfuscatedGetter( - intValue = -259490959 + intValue = -503453445 ) @Export("modelId") public int modelId; - @ObfuscatedName("bt") + @ObfuscatedName("bc") @ObfuscatedGetter( - intValue = 1852201437 + intValue = 614808645 ) @Export("modelType2") int modelType2; - @ObfuscatedName("bw") + @ObfuscatedName("bi") @ObfuscatedGetter( - intValue = 1086899159 + intValue = 1013399743 ) @Export("modelId2") int modelId2; - @ObfuscatedName("bm") + @ObfuscatedName("bk") @ObfuscatedGetter( - intValue = -1208440245 + intValue = 801294357 ) @Export("sequenceId") public int sequenceId; - @ObfuscatedName("by") + @ObfuscatedName("bw") @ObfuscatedGetter( - intValue = 931568329 + intValue = -142244715 ) @Export("sequenceId2") public int sequenceId2; - @ObfuscatedName("bq") + @ObfuscatedName("bo") @ObfuscatedGetter( - intValue = -858623233 + intValue = -31767663 ) @Export("modelOffsetX") public int modelOffsetX; - @ObfuscatedName("bv") + @ObfuscatedName("bj") @ObfuscatedGetter( - intValue = -741084995 + intValue = 721853025 ) @Export("modelOffsetY") public int modelOffsetY; - @ObfuscatedName("br") + @ObfuscatedName("bu") @ObfuscatedGetter( - intValue = -2065006749 + intValue = 1324971467 ) @Export("modelAngleX") public int modelAngleX; - @ObfuscatedName("bs") + @ObfuscatedName("bt") @ObfuscatedGetter( - intValue = 989386551 + intValue = 1383766093 ) @Export("modelAngleY") public int modelAngleY; - @ObfuscatedName("bd") + @ObfuscatedName("bb") @ObfuscatedGetter( - intValue = 1566757881 + intValue = -1080546289 ) @Export("modelAngleZ") public int modelAngleZ; - @ObfuscatedName("bh") + @ObfuscatedName("bv") @ObfuscatedGetter( - intValue = 695055175 + intValue = -1151246903 ) @Export("modelZoom") public int modelZoom; - @ObfuscatedName("bk") + @ObfuscatedName("bg") @ObfuscatedGetter( - intValue = 200052753 + intValue = -1446492125 ) - public int field2678; - @ObfuscatedName("bx") + public int field2641; + @ObfuscatedName("ba") @ObfuscatedGetter( - intValue = 2066974309 + intValue = 1121746929 ) - public int field2734; - @ObfuscatedName("bi") + public int field2642; + @ObfuscatedName("bq") @Export("modelOrthog") public boolean modelOrthog; - @ObfuscatedName("bu") + @ObfuscatedName("be") @Export("modelTransparency") public boolean modelTransparency; - @ObfuscatedName("bz") + @ObfuscatedName("bp") @ObfuscatedGetter( - intValue = -484301607 + intValue = 1783042781 ) @Export("itemQuantityMode") public int itemQuantityMode; - @ObfuscatedName("cs") + @ObfuscatedName("cx") @ObfuscatedGetter( - intValue = 272063495 + intValue = -1451320085 ) @Export("fontId") public int fontId; - @ObfuscatedName("ce") + @ObfuscatedName("ci") @Export("text") public String text; - @ObfuscatedName("cf") + @ObfuscatedName("cj") @Export("text2") public String text2; - @ObfuscatedName("cg") + @ObfuscatedName("ca") @ObfuscatedGetter( - intValue = 1323405895 + intValue = -413643261 ) @Export("textLineHeight") public int textLineHeight; - @ObfuscatedName("cp") + @ObfuscatedName("cd") @ObfuscatedGetter( - intValue = 1997351313 + intValue = 258668731 ) @Export("textXAlignment") public int textXAlignment; - @ObfuscatedName("cc") + @ObfuscatedName("cm") @ObfuscatedGetter( - intValue = -1635883311 + intValue = -1607527969 ) @Export("textYAlignment") public int textYAlignment; - @ObfuscatedName("cl") + @ObfuscatedName("cz") @Export("textShadowed") public boolean textShadowed; - @ObfuscatedName("ci") + @ObfuscatedName("cc") @ObfuscatedGetter( - intValue = 1844469737 + intValue = 794981295 ) @Export("paddingX") public int paddingX; - @ObfuscatedName("cy") + @ObfuscatedName("ce") @ObfuscatedGetter( - intValue = 1233173447 + intValue = -135649533 ) @Export("paddingY") public int paddingY; - @ObfuscatedName("cx") + @ObfuscatedName("cb") @Export("inventoryXOffsets") public int[] inventoryXOffsets; - @ObfuscatedName("ca") + @ObfuscatedName("cf") @Export("inventoryYOffsets") public int[] inventoryYOffsets; - @ObfuscatedName("cn") + @ObfuscatedName("cr") @Export("inventorySprites") public int[] inventorySprites; - @ObfuscatedName("cw") + @ObfuscatedName("ch") @Export("itemActions") public String[] itemActions; - @ObfuscatedName("cu") + @ObfuscatedName("cq") @ObfuscatedGetter( - intValue = 59391427 + intValue = -15083415 ) @Export("flags") public int flags; - @ObfuscatedName("cq") - public boolean field2667; - @ObfuscatedName("cd") - public byte[][] field2668; - @ObfuscatedName("cj") + @ObfuscatedName("cl") + public boolean field2590; + @ObfuscatedName("cw") public byte[][] field2649; - @ObfuscatedName("cv") - public int[] field2670; - @ObfuscatedName("cz") - public int[] field2671; - @ObfuscatedName("dg") + @ObfuscatedName("cp") + public byte[][] field2637; + @ObfuscatedName("cy") + public int[] field2679; + @ObfuscatedName("cg") + public int[] field2664; + @ObfuscatedName("dh") @Export("dataText") public String dataText; - @ObfuscatedName("db") + @ObfuscatedName("dl") @Export("actions") public String[] actions; - @ObfuscatedName("dv") + @ObfuscatedName("du") @ObfuscatedSignature( - descriptor = "Lht;" + descriptor = "Lhe;" ) @Export("parent") public Widget parent; - @ObfuscatedName("df") + @ObfuscatedName("de") @ObfuscatedGetter( - intValue = 1496607755 + intValue = 1469736299 ) @Export("dragZoneSize") public int dragZoneSize; - @ObfuscatedName("dd") + @ObfuscatedName("dw") @ObfuscatedGetter( - intValue = -149689265 + intValue = -1420143935 ) @Export("dragThreshold") public int dragThreshold; - @ObfuscatedName("dl") + @ObfuscatedName("db") @Export("isScrollBar") public boolean isScrollBar; @ObfuscatedName("dq") @Export("spellActionName") public String spellActionName; - @ObfuscatedName("dp") + @ObfuscatedName("dx") @Export("hasListener") public boolean hasListener; - @ObfuscatedName("do") + @ObfuscatedName("df") @Export("onLoad") public Object[] onLoad; @ObfuscatedName("dm") @Export("onClick") public Object[] onClick; - @ObfuscatedName("dh") + @ObfuscatedName("dp") @Export("onClickRepeat") public Object[] onClickRepeat; - @ObfuscatedName("da") + @ObfuscatedName("dr") @Export("onRelease") public Object[] onRelease; - @ObfuscatedName("dz") + @ObfuscatedName("dt") @Export("onHold") public Object[] onHold; @ObfuscatedName("ds") @Export("onMouseOver") public Object[] onMouseOver; - @ObfuscatedName("dc") + @ObfuscatedName("dv") @Export("onMouseRepeat") public Object[] onMouseRepeat; - @ObfuscatedName("dy") + @ObfuscatedName("dd") @Export("onMouseLeave") public Object[] onMouseLeave; - @ObfuscatedName("dj") + @ObfuscatedName("dy") @Export("onDrag") public Object[] onDrag; - @ObfuscatedName("dw") + @ObfuscatedName("dn") @Export("onDragComplete") public Object[] onDragComplete; - @ObfuscatedName("dx") + @ObfuscatedName("dj") @Export("onTargetEnter") public Object[] onTargetEnter; - @ObfuscatedName("dt") + @ObfuscatedName("da") @Export("onTargetLeave") public Object[] onTargetLeave; - @ObfuscatedName("de") + @ObfuscatedName("di") @Export("onVarTransmit") public Object[] onVarTransmit; - @ObfuscatedName("di") + @ObfuscatedName("do") @Export("varTransmitTriggers") public int[] varTransmitTriggers; - @ObfuscatedName("dk") + @ObfuscatedName("dc") @Export("onInvTransmit") public Object[] onInvTransmit; - @ObfuscatedName("dn") + @ObfuscatedName("dg") @Export("invTransmitTriggers") public int[] invTransmitTriggers; - @ObfuscatedName("du") + @ObfuscatedName("dk") @Export("onStatTransmit") public Object[] onStatTransmit; - @ObfuscatedName("dr") + @ObfuscatedName("dz") @Export("statTransmitTriggers") public int[] statTransmitTriggers; - @ObfuscatedName("en") + @ObfuscatedName("es") @Export("onTimer") public Object[] onTimer; @ObfuscatedName("eq") @Export("onOp") public Object[] onOp; - @ObfuscatedName("ek") + @ObfuscatedName("em") @Export("onScroll") public Object[] onScroll; - @ObfuscatedName("ez") + @ObfuscatedName("eg") @Export("onChatTransmit") public Object[] onChatTransmit; - @ObfuscatedName("er") + @ObfuscatedName("eu") @Export("onKey") public Object[] onKey; - @ObfuscatedName("eo") + @ObfuscatedName("ec") @Export("onFriendTransmit") public Object[] onFriendTransmit; @ObfuscatedName("eh") @Export("onClanTransmit") public Object[] onClanTransmit; - @ObfuscatedName("ew") + @ObfuscatedName("ee") @Export("onMiscTransmit") public Object[] onMiscTransmit; - @ObfuscatedName("ep") + @ObfuscatedName("eb") @Export("onDialogAbort") public Object[] onDialogAbort; - @ObfuscatedName("et") + @ObfuscatedName("ek") @Export("onSubChange") public Object[] onSubChange; - @ObfuscatedName("eu") + @ObfuscatedName("ew") @Export("onResize") public Object[] onResize; - @ObfuscatedName("ei") + @ObfuscatedName("ej") @Export("onStockTransmit") public Object[] onStockTransmit; - @ObfuscatedName("ef") - public Object[] field2669; - @ObfuscatedName("ec") + @ObfuscatedName("eo") + public Object[] field2703; + @ObfuscatedName("et") @Export("cs1Instructions") public int[][] cs1Instructions; - @ObfuscatedName("ej") + @ObfuscatedName("er") @Export("cs1Comparisons") public int[] cs1Comparisons; - @ObfuscatedName("em") + @ObfuscatedName("ev") @Export("cs1ComparisonValues") public int[] cs1ComparisonValues; - @ObfuscatedName("eb") + @ObfuscatedName("ef") @ObfuscatedGetter( - intValue = 493890133 + intValue = 258948825 ) @Export("mouseOverRedirect") public int mouseOverRedirect; - @ObfuscatedName("ex") + @ObfuscatedName("ep") @Export("spellName") public String spellName; - @ObfuscatedName("ea") + @ObfuscatedName("ex") @Export("buttonText") public String buttonText; @ObfuscatedName("ed") @@ -615,78 +594,78 @@ public class Widget extends Node { public int[] itemQuantities; @ObfuscatedName("el") @ObfuscatedGetter( - intValue = -659047965 + intValue = 258014549 ) @Export("itemId") public int itemId; - @ObfuscatedName("es") + @ObfuscatedName("ea") @ObfuscatedGetter( - intValue = 1581915613 + intValue = -962806035 ) @Export("itemQuantity") public int itemQuantity; - @ObfuscatedName("eg") + @ObfuscatedName("ei") @ObfuscatedGetter( - intValue = 1715464223 + intValue = -394848869 ) @Export("modelFrame") public int modelFrame; - @ObfuscatedName("ev") + @ObfuscatedName("ez") @ObfuscatedGetter( - intValue = 540822947 + intValue = -1837069957 ) @Export("modelFrameCycle") public int modelFrameCycle; - @ObfuscatedName("ee") + @ObfuscatedName("en") @ObfuscatedSignature( - descriptor = "[Lht;" + descriptor = "[Lhe;" ) @Export("children") public Widget[] children; - @ObfuscatedName("fs") + @ObfuscatedName("fn") @Export("containsMouse") public boolean containsMouse; - @ObfuscatedName("fw") + @ObfuscatedName("ft") @Export("isClicked") public boolean isClicked; - @ObfuscatedName("fi") - @ObfuscatedGetter( - intValue = -884134671 - ) - public int field2726; - @ObfuscatedName("fj") - @ObfuscatedGetter( - intValue = 1253917553 - ) - public int field2727; @ObfuscatedName("fr") @ObfuscatedGetter( - intValue = 1015869805 + intValue = -1866786949 ) - public int field2728; - @ObfuscatedName("fo") + public int field2719; + @ObfuscatedName("fe") @ObfuscatedGetter( - intValue = 884540733 + intValue = -605544769 ) - public int field2729; - @ObfuscatedName("fy") + public int field2645; + @ObfuscatedName("fz") @ObfuscatedGetter( - intValue = 651630769 + intValue = 1348194339 + ) + public int field2721; + @ObfuscatedName("fj") + @ObfuscatedGetter( + intValue = -229655759 + ) + public int field2725; + @ObfuscatedName("fp") + @ObfuscatedGetter( + intValue = 138352117 ) @Export("rootIndex") public int rootIndex; @ObfuscatedName("ff") @ObfuscatedGetter( - intValue = -536480473 + intValue = -210635413 ) @Export("cycle") public int cycle; - @ObfuscatedName("fb") - public int[] field2594; - @ObfuscatedName("fv") + @ObfuscatedName("fs") + public int[] field2684; + @ObfuscatedName("fk") @Export("noClickThrough") public boolean noClickThrough; - @ObfuscatedName("fk") + @ObfuscatedName("fv") @Export("noScrollThrough") public boolean noScrollThrough; @ObfuscatedName("fm") @@ -694,876 +673,902 @@ public class Widget extends Node { public boolean prioritizeMenuEntry; static { - Widget_cachedSprites = new EvictingDualNodeHashTable(200); // L: 31 - Widget_cachedModels = new EvictingDualNodeHashTable(50); // L: 32 - Widget_cachedFonts = new EvictingDualNodeHashTable(20); // L: 33 - Widget_cachedSpriteMasks = new EvictingDualNodeHashTable(8); // L: 34 - field2677 = false; // L: 35 + Widget_cachedSprites = new EvictingDualNodeHashTable(200); + Widget_cachedModels = new EvictingDualNodeHashTable(50); + Widget_cachedFonts = new EvictingDualNodeHashTable(20); + Widget_cachedSpriteMasks = new EvictingDualNodeHashTable(8); + field2603 = false; } public Widget() { - this.isIf3 = false; // L: 36 - this.id = -1; // L: 37 - this.childIndex = -1; // L: 38 - this.buttonType = 0; // L: 40 - this.contentType = 0; // L: 41 - this.xAlignment = 0; // L: 42 - this.yAlignment = 0; // L: 43 - this.widthAlignment = 0; // L: 44 - this.heightAlignment = 0; // L: 45 - this.rawX = 0; // L: 46 - this.rawY = 0; // L: 47 - this.rawWidth = 0; // L: 48 - this.rawHeight = 0; // L: 49 - this.x = 0; // L: 50 - this.y = 0; // L: 51 - this.width = 0; // L: 52 - this.height = 0; // L: 53 - this.field2610 = 1; // L: 54 - this.field2611 = 1; // L: 55 - this.parentId = -1; // L: 56 - this.isHidden = false; // L: 57 - this.scrollX = 0; // L: 58 - this.scrollY = 0; // L: 59 - this.scrollWidth = 0; // L: 60 - this.scrollHeight = 0; // L: 61 - this.color = 0; // L: 62 - this.color2 = 0; // L: 63 - this.mouseOverColor = 0; // L: 64 - this.mouseOverColor2 = 0; // L: 65 - this.fill = false; // L: 66 - this.fillMode = FillMode.SOLID; // L: 67 - this.transparencyTop = 0; // L: 68 - this.transparencyBot = 0; // L: 69 - this.lineWid = 1; // L: 70 - this.field2627 = false; // L: 71 - this.spriteId2 = -1; // L: 72 - this.spriteId = -1; // L: 73 - this.spriteAngle = 0; // L: 74 - this.spriteTiling = false; // L: 75 - this.outline = 0; // L: 76 - this.spriteShadow = 0; // L: 77 - this.modelType = 1; // L: 80 - this.modelId = -1; // L: 81 - this.modelType2 = 1; // L: 82 - this.modelId2 = -1; // L: 83 - this.sequenceId = -1; // L: 84 - this.sequenceId2 = -1; // L: 85 - this.modelOffsetX = 0; // L: 86 - this.modelOffsetY = 0; // L: 87 - this.modelAngleX = 0; // L: 88 - this.modelAngleY = 0; // L: 89 - this.modelAngleZ = 0; // L: 90 - this.modelZoom = 100; // L: 91 - this.field2678 = 0; // L: 92 - this.field2734 = 0; // L: 93 - this.modelOrthog = false; // L: 94 - this.modelTransparency = false; // L: 95 - this.itemQuantityMode = 2; // L: 96 - this.fontId = -1; // L: 97 - this.text = ""; // L: 98 - this.text2 = ""; // L: 99 - this.textLineHeight = 0; // L: 100 - this.textXAlignment = 0; // L: 101 - this.textYAlignment = 0; // L: 102 - this.textShadowed = false; // L: 103 - this.paddingX = 0; // L: 104 - this.paddingY = 0; // L: 105 - this.flags = 0; // L: 110 - this.field2667 = false; // L: 111 - this.dataText = ""; // L: 120 - this.parent = null; // L: 122 - this.dragZoneSize = 0; // L: 123 - this.dragThreshold = 0; // L: 124 - this.isScrollBar = false; // L: 125 - this.spellActionName = ""; // L: 126 - this.hasListener = false; // L: 127 - this.mouseOverRedirect = -1; // L: 162 - this.spellName = ""; // L: 163 - this.buttonText = "Ok"; // L: 164 - this.itemId = -1; // L: 167 - this.itemQuantity = 0; // L: 168 - this.modelFrame = 0; // L: 169 - this.modelFrameCycle = 0; // L: 170 - this.containsMouse = false; // L: 172 - this.isClicked = false; // L: 173 - this.field2726 = -1; // L: 174 - this.field2727 = 0; // L: 175 - this.field2728 = 0; // L: 176 - this.field2729 = 0; // L: 177 - this.rootIndex = -1; // L: 178 - this.cycle = -1; // L: 179 - this.noClickThrough = false; // L: 181 - this.noScrollThrough = false; // L: 182 - this.prioritizeMenuEntry = false; // L: 183 - } // L: 728 + this.isIf3 = false; + this.id = -1; + this.childIndex = -1; + this.buttonType = 0; + this.contentType = 0; + this.xAlignment = 0; + this.yAlignment = 0; + this.widthAlignment = 0; + this.heightAlignment = 0; + this.rawX = 0; + this.rawY = 0; + this.rawWidth = 0; + this.rawHeight = 0; + this.x = 0; + this.y = 0; + this.width = 0; + this.height = 0; + this.field2660 = 1; + this.field2604 = 1; + this.parentId = -1; + this.isHidden = false; + this.scrollX = 0; + this.scrollY = 0; + this.scrollWidth = 0; + this.scrollHeight = 0; + this.color = 0; + this.color2 = 0; + this.mouseOverColor = 0; + this.mouseOverColor2 = 0; + this.fill = false; + this.fillMode = class333.SOLID; + this.transparencyTop = 0; + this.transparencyBot = 0; + this.lineWid = 1; + this.field2620 = false; + this.spriteId2 = -1; + this.spriteId = -1; + this.spriteAngle = 0; + this.spriteTiling = false; + this.outline = 0; + this.spriteShadow = 0; + this.modelType = 1; + this.modelId = -1; + this.modelType2 = 1; + this.modelId2 = -1; + this.sequenceId = -1; + this.sequenceId2 = -1; + this.modelOffsetX = 0; + this.modelOffsetY = 0; + this.modelAngleX = 0; + this.modelAngleY = 0; + this.modelAngleZ = 0; + this.modelZoom = 100; + this.field2641 = 0; + this.field2642 = 0; + this.modelOrthog = false; + this.modelTransparency = false; + this.itemQuantityMode = 2; + this.fontId = -1; + this.text = ""; + this.text2 = ""; + this.textLineHeight = 0; + this.textXAlignment = 0; + this.textYAlignment = 0; + this.textShadowed = false; + this.paddingX = 0; + this.paddingY = 0; + this.flags = 0; + this.field2590 = false; + this.dataText = ""; + this.parent = null; + this.dragZoneSize = 0; + this.dragThreshold = 0; + this.isScrollBar = false; + this.spellActionName = ""; + this.hasListener = false; + this.mouseOverRedirect = -1; + this.spellName = ""; + this.buttonText = "Ok"; + this.itemId = -1; + this.itemQuantity = 0; + this.modelFrame = 0; + this.modelFrameCycle = 0; + this.containsMouse = false; + this.isClicked = false; + this.field2719 = -1; + this.field2645 = 0; + this.field2721 = 0; + this.field2725 = 0; + this.rootIndex = -1; + this.cycle = -1; + this.noClickThrough = false; + this.noScrollThrough = false; + this.prioritizeMenuEntry = false; + } - @ObfuscatedName("q") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "1764104870" + descriptor = "(Lkj;I)V", + garbageValue = "1734549663" ) @Export("decodeLegacy") void decodeLegacy(Buffer var1) { - this.isIf3 = false; // L: 252 - this.type = var1.readUnsignedByte(); // L: 253 - this.buttonType = var1.readUnsignedByte(); // L: 254 - this.contentType = var1.readUnsignedShort(); // L: 255 - this.rawX = var1.readShort(); // L: 256 - this.rawY = var1.readShort(); // L: 257 - this.rawWidth = var1.readUnsignedShort(); // L: 258 - this.rawHeight = var1.readUnsignedShort(); // L: 259 - this.transparencyTop = var1.readUnsignedByte(); // L: 260 - this.parentId = var1.readUnsignedShort(); // L: 261 - if (this.parentId == 65535) { // L: 262 + this.isIf3 = false; + this.type = var1.readUnsignedByte(); + this.buttonType = var1.readUnsignedByte(); + this.contentType = var1.readUnsignedShort(); + this.rawX = var1.readShort(); + this.rawY = var1.readShort(); + this.rawWidth = var1.readUnsignedShort(); + this.rawHeight = var1.readUnsignedShort(); + this.transparencyTop = var1.readUnsignedByte(); + this.parentId = var1.readUnsignedShort(); + if (this.parentId == 65535) { this.parentId = -1; } else { - this.parentId += this.id & -65536; // L: 263 + this.parentId += this.id & -65536; } - this.mouseOverRedirect = var1.readUnsignedShort(); // L: 264 - if (this.mouseOverRedirect == 65535) { // L: 265 + this.mouseOverRedirect = var1.readUnsignedShort(); + if (this.mouseOverRedirect == 65535) { this.mouseOverRedirect = -1; } - int var2 = var1.readUnsignedByte(); // L: 266 + int var2 = var1.readUnsignedByte(); int var3; - if (var2 > 0) { // L: 267 - this.cs1Comparisons = new int[var2]; // L: 268 - this.cs1ComparisonValues = new int[var2]; // L: 269 + if (var2 > 0) { + this.cs1Comparisons = new int[var2]; + this.cs1ComparisonValues = new int[var2]; - for (var3 = 0; var3 < var2; ++var3) { // L: 270 - this.cs1Comparisons[var3] = var1.readUnsignedByte(); // L: 271 - this.cs1ComparisonValues[var3] = var1.readUnsignedShort(); // L: 272 + for (var3 = 0; var3 < var2; ++var3) { + this.cs1Comparisons[var3] = var1.readUnsignedByte(); + this.cs1ComparisonValues[var3] = var1.readUnsignedShort(); } } - var3 = var1.readUnsignedByte(); // L: 275 + var3 = var1.readUnsignedByte(); int var4; int var5; int var6; - if (var3 > 0) { // L: 276 - this.cs1Instructions = new int[var3][]; // L: 277 + if (var3 > 0) { + this.cs1Instructions = new int[var3][]; - for (var4 = 0; var4 < var3; ++var4) { // L: 278 - var5 = var1.readUnsignedShort(); // L: 279 - this.cs1Instructions[var4] = new int[var5]; // L: 280 + for (var4 = 0; var4 < var3; ++var4) { + var5 = var1.readUnsignedShort(); + this.cs1Instructions[var4] = new int[var5]; - for (var6 = 0; var6 < var5; ++var6) { // L: 281 - this.cs1Instructions[var4][var6] = var1.readUnsignedShort(); // L: 282 - if (this.cs1Instructions[var4][var6] == 65535) { // L: 283 + for (var6 = 0; var6 < var5; ++var6) { + this.cs1Instructions[var4][var6] = var1.readUnsignedShort(); + if (this.cs1Instructions[var4][var6] == 65535) { this.cs1Instructions[var4][var6] = -1; } } } } - if (this.type == 0) { // L: 287 - this.scrollHeight = var1.readUnsignedShort(); // L: 288 - this.isHidden = var1.readUnsignedByte() == 1; // L: 289 + if (this.type == 0) { + this.scrollHeight = var1.readUnsignedShort(); + this.isHidden = var1.readUnsignedByte() == 1; } - if (this.type == 1) { // L: 291 - var1.readUnsignedShort(); // L: 292 - var1.readUnsignedByte(); // L: 293 + if (this.type == 1) { + var1.readUnsignedShort(); + var1.readUnsignedByte(); } - if (this.type == 2) { // L: 295 - this.itemIds = new int[this.rawWidth * this.rawHeight]; // L: 296 - this.itemQuantities = new int[this.rawWidth * this.rawHeight]; // L: 297 - var4 = var1.readUnsignedByte(); // L: 298 - if (var4 == 1) { // L: 299 + if (this.type == 2) { + this.itemIds = new int[this.rawWidth * this.rawHeight]; + this.itemQuantities = new int[this.rawHeight * this.rawWidth]; + var4 = var1.readUnsignedByte(); + if (var4 == 1) { this.flags |= 268435456; } - var5 = var1.readUnsignedByte(); // L: 300 - if (var5 == 1) { // L: 301 + var5 = var1.readUnsignedByte(); + if (var5 == 1) { this.flags |= 1073741824; } - var6 = var1.readUnsignedByte(); // L: 302 - if (var6 == 1) { // L: 303 + var6 = var1.readUnsignedByte(); + if (var6 == 1) { this.flags |= Integer.MIN_VALUE; } - int var7 = var1.readUnsignedByte(); // L: 304 - if (var7 == 1) { // L: 305 + int var7 = var1.readUnsignedByte(); + if (var7 == 1) { this.flags |= 536870912; } - this.paddingX = var1.readUnsignedByte(); // L: 306 - this.paddingY = var1.readUnsignedByte(); // L: 307 - this.inventoryXOffsets = new int[20]; // L: 308 - this.inventoryYOffsets = new int[20]; // L: 309 - this.inventorySprites = new int[20]; // L: 310 + this.paddingX = var1.readUnsignedByte(); + this.paddingY = var1.readUnsignedByte(); + this.inventoryXOffsets = new int[20]; + this.inventoryYOffsets = new int[20]; + this.inventorySprites = new int[20]; int var8; - for (var8 = 0; var8 < 20; ++var8) { // L: 311 - int var11 = var1.readUnsignedByte(); // L: 312 - if (var11 == 1) { // L: 313 - this.inventoryXOffsets[var8] = var1.readShort(); // L: 314 - this.inventoryYOffsets[var8] = var1.readShort(); // L: 315 - this.inventorySprites[var8] = var1.readInt(); // L: 316 + for (var8 = 0; var8 < 20; ++var8) { + int var11 = var1.readUnsignedByte(); + if (var11 == 1) { + this.inventoryXOffsets[var8] = var1.readShort(); + this.inventoryYOffsets[var8] = var1.readShort(); + this.inventorySprites[var8] = var1.readInt(); } else { - this.inventorySprites[var8] = -1; // L: 318 + this.inventorySprites[var8] = -1; } } - this.itemActions = new String[5]; // L: 320 + this.itemActions = new String[5]; - for (var8 = 0; var8 < 5; ++var8) { // L: 321 - String var9 = var1.readStringCp1252NullTerminated(); // L: 322 - if (var9.length() > 0) { // L: 323 - this.itemActions[var8] = var9; // L: 324 - this.flags |= 1 << var8 + 23; // L: 325 + for (var8 = 0; var8 < 5; ++var8) { + String var9 = var1.readStringCp1252NullTerminated(); + if (var9.length() > 0) { + this.itemActions[var8] = var9; + this.flags |= 1 << var8 + 23; } } } - if (this.type == 3) { // L: 329 - this.fill = var1.readUnsignedByte() == 1; // L: 330 + if (this.type == 3) { + this.fill = var1.readUnsignedByte() == 1; } - if (this.type == 4 || this.type == 1) { // L: 332 - this.textXAlignment = var1.readUnsignedByte(); // L: 333 - this.textYAlignment = var1.readUnsignedByte(); // L: 334 - this.textLineHeight = var1.readUnsignedByte(); // L: 335 - this.fontId = var1.readUnsignedShort(); // L: 336 - if (this.fontId == 65535) { // L: 337 + if (this.type == 4 || this.type == 1) { + this.textXAlignment = var1.readUnsignedByte(); + this.textYAlignment = var1.readUnsignedByte(); + this.textLineHeight = var1.readUnsignedByte(); + this.fontId = var1.readUnsignedShort(); + if (this.fontId == 65535) { this.fontId = -1; } - this.textShadowed = var1.readUnsignedByte() == 1; // L: 338 + this.textShadowed = var1.readUnsignedByte() == 1; } - if (this.type == 4) { // L: 340 - this.text = var1.readStringCp1252NullTerminated(); // L: 341 - this.text2 = var1.readStringCp1252NullTerminated(); // L: 342 + if (this.type == 4) { + this.text = var1.readStringCp1252NullTerminated(); + this.text2 = var1.readStringCp1252NullTerminated(); } - if (this.type == 1 || this.type == 3 || this.type == 4) { // L: 344 + if (this.type == 1 || this.type == 3 || this.type == 4) { this.color = var1.readInt(); } - if (this.type == 3 || this.type == 4) { // L: 345 - this.color2 = var1.readInt(); // L: 346 - this.mouseOverColor = var1.readInt(); // L: 347 - this.mouseOverColor2 = var1.readInt(); // L: 348 + if (this.type == 3 || this.type == 4) { + this.color2 = var1.readInt(); + this.mouseOverColor = var1.readInt(); + this.mouseOverColor2 = var1.readInt(); } - if (this.type == 5) { // L: 350 - this.spriteId2 = var1.readInt(); // L: 351 - this.spriteId = var1.readInt(); // L: 352 + if (this.type == 5) { + this.spriteId2 = var1.readInt(); + this.spriteId = var1.readInt(); } - if (this.type == 6) { // L: 354 - this.modelType = 1; // L: 355 - this.modelId = var1.readUnsignedShort(); // L: 356 - if (this.modelId == 65535) { // L: 357 + if (this.type == 6) { + this.modelType = 1; + this.modelId = var1.readUnsignedShort(); + if (this.modelId == 65535) { this.modelId = -1; } - this.modelType2 = 1; // L: 358 - this.modelId2 = var1.readUnsignedShort(); // L: 359 - if (this.modelId2 == 65535) { // L: 360 + this.modelType2 = 1; + this.modelId2 = var1.readUnsignedShort(); + if (this.modelId2 == 65535) { this.modelId2 = -1; } - this.sequenceId = var1.readUnsignedShort(); // L: 361 - if (this.sequenceId == 65535) { // L: 362 + this.sequenceId = var1.readUnsignedShort(); + if (this.sequenceId == 65535) { this.sequenceId = -1; } - this.sequenceId2 = var1.readUnsignedShort(); // L: 363 - if (this.sequenceId2 == 65535) { // L: 364 + this.sequenceId2 = var1.readUnsignedShort(); + if (this.sequenceId2 == 65535) { this.sequenceId2 = -1; } - this.modelZoom = var1.readUnsignedShort(); // L: 365 - this.modelAngleX = var1.readUnsignedShort(); // L: 366 - this.modelAngleY = var1.readUnsignedShort(); // L: 367 + this.modelZoom = var1.readUnsignedShort(); + this.modelAngleX = var1.readUnsignedShort(); + this.modelAngleY = var1.readUnsignedShort(); } - if (this.type == 7) { // L: 369 - this.itemIds = new int[this.rawWidth * this.rawHeight]; // L: 370 - this.itemQuantities = new int[this.rawWidth * this.rawHeight]; // L: 371 - this.textXAlignment = var1.readUnsignedByte(); // L: 372 - this.fontId = var1.readUnsignedShort(); // L: 373 - if (this.fontId == 65535) { // L: 374 + if (this.type == 7) { + this.itemIds = new int[this.rawWidth * this.rawHeight]; + this.itemQuantities = new int[this.rawHeight * this.rawWidth]; + this.textXAlignment = var1.readUnsignedByte(); + this.fontId = var1.readUnsignedShort(); + if (this.fontId == 65535) { this.fontId = -1; } - this.textShadowed = var1.readUnsignedByte() == 1; // L: 375 - this.color = var1.readInt(); // L: 376 - this.paddingX = var1.readShort(); // L: 377 - this.paddingY = var1.readShort(); // L: 378 - var4 = var1.readUnsignedByte(); // L: 379 + this.textShadowed = var1.readUnsignedByte() == 1; + this.color = var1.readInt(); + this.paddingX = var1.readShort(); + this.paddingY = var1.readShort(); + var4 = var1.readUnsignedByte(); if (var4 == 1) { - this.flags |= 1073741824; // L: 380 + this.flags |= 1073741824; } - this.itemActions = new String[5]; // L: 381 + this.itemActions = new String[5]; - for (var5 = 0; var5 < 5; ++var5) { // L: 382 - String var10 = var1.readStringCp1252NullTerminated(); // L: 383 - if (var10.length() > 0) { // L: 384 - this.itemActions[var5] = var10; // L: 385 - this.flags |= 1 << var5 + 23; // L: 386 + for (var5 = 0; var5 < 5; ++var5) { + String var10 = var1.readStringCp1252NullTerminated(); + if (var10.length() > 0) { + this.itemActions[var5] = var10; + this.flags |= 1 << var5 + 23; } } } - if (this.type == 8) { // L: 390 - this.text = var1.readStringCp1252NullTerminated(); // L: 391 + if (this.type == 8) { + this.text = var1.readStringCp1252NullTerminated(); } - if (this.buttonType == 2 || this.type == 2) { // L: 393 - this.spellActionName = var1.readStringCp1252NullTerminated(); // L: 394 - this.spellName = var1.readStringCp1252NullTerminated(); // L: 395 - var4 = var1.readUnsignedShort() & 63; // L: 396 - this.flags |= var4 << 11; // L: 397 + if (this.buttonType == 2 || this.type == 2) { + this.spellActionName = var1.readStringCp1252NullTerminated(); + this.spellName = var1.readStringCp1252NullTerminated(); + var4 = var1.readUnsignedShort() & 63; + this.flags |= var4 << 11; } - if (this.buttonType == 1 || this.buttonType == 4 || this.buttonType == 5 || this.buttonType == 6) { // L: 399 - this.buttonText = var1.readStringCp1252NullTerminated(); // L: 400 - if (this.buttonText.length() == 0) { // L: 401 - if (this.buttonType == 1) { // L: 402 + if (this.buttonType == 1 || this.buttonType == 4 || this.buttonType == 5 || this.buttonType == 6) { + this.buttonText = var1.readStringCp1252NullTerminated(); + if (this.buttonText.length() == 0) { + if (this.buttonType == 1) { this.buttonText = "Ok"; } - if (this.buttonType == 4) { // L: 403 + if (this.buttonType == 4) { this.buttonText = "Select"; } - if (this.buttonType == 5) { // L: 404 + if (this.buttonType == 5) { this.buttonText = "Select"; } - if (this.buttonType == 6) { // L: 405 + if (this.buttonType == 6) { this.buttonText = "Continue"; } } } - if (this.buttonType == 1 || this.buttonType == 4 || this.buttonType == 5) { // L: 408 - this.flags |= 4194304; // L: 409 + if (this.buttonType == 1 || this.buttonType == 4 || this.buttonType == 5) { + this.flags |= 4194304; } - if (this.buttonType == 6) { // L: 411 - this.flags |= 1; // L: 412 + if (this.buttonType == 6) { + this.flags |= 1; } - } // L: 414 - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-517843839" - ) - @Export("decode") - void decode(Buffer var1) { - var1.readUnsignedByte(); // L: 417 - this.isIf3 = true; // L: 418 - this.type = var1.readUnsignedByte(); // L: 419 - this.contentType = var1.readUnsignedShort(); // L: 420 - this.rawX = var1.readShort(); // L: 421 - this.rawY = var1.readShort(); // L: 422 - this.rawWidth = var1.readUnsignedShort(); // L: 423 - if (this.type == 9) { // L: 424 - this.rawHeight = var1.readShort(); - } else { - this.rawHeight = var1.readUnsignedShort(); // L: 425 - } - - this.widthAlignment = var1.readByte(); // L: 426 - this.heightAlignment = var1.readByte(); // L: 427 - this.xAlignment = var1.readByte(); // L: 428 - this.yAlignment = var1.readByte(); // L: 429 - this.parentId = var1.readUnsignedShort(); // L: 430 - if (this.parentId == 65535) { // L: 431 - this.parentId = -1; - } else { - this.parentId += this.id & -65536; // L: 432 - } - - this.isHidden = var1.readUnsignedByte() == 1; // L: 433 - if (this.type == 0) { // L: 434 - this.scrollWidth = var1.readUnsignedShort(); // L: 435 - this.scrollHeight = var1.readUnsignedShort(); // L: 436 - this.noClickThrough = var1.readUnsignedByte() == 1; // L: 437 - } - - if (this.type == 5) { // L: 439 - this.spriteId2 = var1.readInt(); // L: 440 - this.spriteAngle = var1.readUnsignedShort(); // L: 441 - this.spriteTiling = var1.readUnsignedByte() == 1; // L: 442 - this.transparencyTop = var1.readUnsignedByte(); // L: 443 - this.outline = var1.readUnsignedByte(); // L: 444 - this.spriteShadow = var1.readInt(); // L: 445 - this.spriteFlipV = var1.readUnsignedByte() == 1; // L: 446 - this.spriteFlipH = var1.readUnsignedByte() == 1; // L: 447 - } - - if (this.type == 6) { // L: 449 - this.modelType = 1; // L: 450 - this.modelId = var1.readUnsignedShort(); // L: 451 - if (this.modelId == 65535) { // L: 452 - this.modelId = -1; - } - - this.modelOffsetX = var1.readShort(); // L: 453 - this.modelOffsetY = var1.readShort(); // L: 454 - this.modelAngleX = var1.readUnsignedShort(); // L: 455 - this.modelAngleY = var1.readUnsignedShort(); // L: 456 - this.modelAngleZ = var1.readUnsignedShort(); // L: 457 - this.modelZoom = var1.readUnsignedShort(); // L: 458 - this.sequenceId = var1.readUnsignedShort(); // L: 459 - if (this.sequenceId == 65535) { // L: 460 - this.sequenceId = -1; - } - - this.modelOrthog = var1.readUnsignedByte() == 1; // L: 461 - var1.readUnsignedShort(); // L: 462 - if (this.widthAlignment != 0) { // L: 463 - this.field2678 = var1.readUnsignedShort(); - } - - if (this.heightAlignment != 0) { // L: 464 - var1.readUnsignedShort(); // L: 465 - } - } - - if (this.type == 4) { // L: 468 - this.fontId = var1.readUnsignedShort(); // L: 469 - if (this.fontId == 65535) { // L: 470 - this.fontId = -1; - } - - this.text = var1.readStringCp1252NullTerminated(); // L: 471 - this.textLineHeight = var1.readUnsignedByte(); // L: 472 - this.textXAlignment = var1.readUnsignedByte(); // L: 473 - this.textYAlignment = var1.readUnsignedByte(); // L: 474 - this.textShadowed = var1.readUnsignedByte() == 1; // L: 475 - this.color = var1.readInt(); // L: 476 - } - - if (this.type == 3) { // L: 478 - this.color = var1.readInt(); // L: 479 - this.fill = var1.readUnsignedByte() == 1; // L: 480 - this.transparencyTop = var1.readUnsignedByte(); // L: 481 - } - - if (this.type == 9) { // L: 483 - this.lineWid = var1.readUnsignedByte(); // L: 484 - this.color = var1.readInt(); // L: 485 - this.field2627 = var1.readUnsignedByte() == 1; // L: 486 - } - - this.flags = var1.readMedium(); // L: 488 - this.dataText = var1.readStringCp1252NullTerminated(); // L: 489 - int var2 = var1.readUnsignedByte(); // L: 490 - if (var2 > 0) { // L: 491 - this.actions = new String[var2]; // L: 492 - - for (int var3 = 0; var3 < var2; ++var3) { // L: 493 - this.actions[var3] = var1.readStringCp1252NullTerminated(); - } - } - - this.dragZoneSize = var1.readUnsignedByte(); // L: 495 - this.dragThreshold = var1.readUnsignedByte(); // L: 496 - this.isScrollBar = var1.readUnsignedByte() == 1; // L: 497 - this.spellActionName = var1.readStringCp1252NullTerminated(); // L: 498 - this.onLoad = this.readListener(var1); // L: 499 - this.onMouseOver = this.readListener(var1); // L: 500 - this.onMouseLeave = this.readListener(var1); // L: 501 - this.onTargetLeave = this.readListener(var1); // L: 502 - this.onTargetEnter = this.readListener(var1); // L: 503 - this.onVarTransmit = this.readListener(var1); // L: 504 - this.onInvTransmit = this.readListener(var1); // L: 505 - this.onStatTransmit = this.readListener(var1); // L: 506 - this.onTimer = this.readListener(var1); // L: 507 - this.onOp = this.readListener(var1); // L: 508 - this.onMouseRepeat = this.readListener(var1); // L: 509 - this.onClick = this.readListener(var1); // L: 510 - this.onClickRepeat = this.readListener(var1); // L: 511 - this.onRelease = this.readListener(var1); // L: 512 - this.onHold = this.readListener(var1); // L: 513 - this.onDrag = this.readListener(var1); // L: 514 - this.onDragComplete = this.readListener(var1); // L: 515 - this.onScroll = this.readListener(var1); // L: 516 - this.varTransmitTriggers = this.readListenerTriggers(var1); // L: 517 - this.invTransmitTriggers = this.readListenerTriggers(var1); // L: 518 - this.statTransmitTriggers = this.readListenerTriggers(var1); // L: 519 - } // L: 520 - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(Lkb;I)[Ljava/lang/Object;", - garbageValue = "1938670345" - ) - @Export("readListener") - Object[] readListener(Buffer var1) { - int var2 = var1.readUnsignedByte(); // L: 523 - if (var2 == 0) { // L: 524 - return null; - } else { - Object[] var3 = new Object[var2]; // L: 525 - - for (int var4 = 0; var4 < var2; ++var4) { // L: 526 - int var5 = var1.readUnsignedByte(); // L: 527 - if (var5 == 0) { - var3[var4] = new Integer(var1.readInt()); // L: 528 - } else if (var5 == 1) { // L: 529 - var3[var4] = var1.readStringCp1252NullTerminated(); - } - } - - this.hasListener = true; // L: 531 - return var3; // L: 532 - } - } - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(Lkb;S)[I", - garbageValue = "22328" - ) - @Export("readListenerTriggers") - int[] readListenerTriggers(Buffer var1) { - int var2 = var1.readUnsignedByte(); // L: 536 - if (var2 == 0) { // L: 537 - return null; - } else { - int[] var3 = new int[var2]; // L: 538 - - for (int var4 = 0; var4 < var2; ++var4) { // L: 539 - var3[var4] = var1.readInt(); // L: 540 - } - - return var3; // L: 542 - } } @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(IIB)V", - garbageValue = "49" + descriptor = "(Lkj;B)V", + garbageValue = "-2" ) - @Export("swapItems") - public void swapItems(int var1, int var2) { - int var3 = this.itemIds[var2]; // L: 546 - this.itemIds[var2] = this.itemIds[var1]; // L: 547 - this.itemIds[var1] = var3; // L: 548 - var3 = this.itemQuantities[var2]; // L: 549 - this.itemQuantities[var2] = this.itemQuantities[var1]; // L: 550 - this.itemQuantities[var1] = var3; // L: 551 - } // L: 552 - - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "(ZI)Llc;", - garbageValue = "1009735615" - ) - @Export("getSprite") - public Sprite getSprite(boolean var1) { - field2677 = false; // L: 555 - int var2; - if (var1) { // L: 557 - var2 = this.spriteId; + @Export("decode") + void decode(Buffer var1) { + var1.readUnsignedByte(); + this.isIf3 = true; + this.type = var1.readUnsignedByte(); + this.contentType = var1.readUnsignedShort(); + this.rawX = var1.readShort(); + this.rawY = var1.readShort(); + this.rawWidth = var1.readUnsignedShort(); + if (this.type == 9) { + this.rawHeight = var1.readShort(); } else { - var2 = this.spriteId2; // L: 558 + this.rawHeight = var1.readUnsignedShort(); } - if (var2 == -1) { // L: 559 - return null; + this.widthAlignment = var1.readByte(); + this.heightAlignment = var1.readByte(); + this.xAlignment = var1.readByte(); + this.yAlignment = var1.readByte(); + this.parentId = var1.readUnsignedShort(); + if (this.parentId == 65535) { + this.parentId = -1; } else { - long var3 = ((long)this.spriteShadow << 40) + (long)var2 + ((long)this.outline << 36) + ((this.spriteFlipV ? 1L : 0L) << 38) + ((this.spriteFlipH ? 1L : 0L) << 39); // L: 560 - Sprite var5 = (Sprite)Widget_cachedSprites.get(var3); // L: 561 - if (var5 != null) { // L: 562 - return var5; - } else { - var5 = FloorDecoration.SpriteBuffer_getSprite(Widget_spritesArchive, var2, 0); // L: 563 - if (var5 == null) { // L: 564 - field2677 = true; // L: 565 - return null; // L: 566 - } else { - if (this.spriteFlipV) { // L: 568 - var5.flipVertically(); - } + this.parentId += this.id & -65536; + } - if (this.spriteFlipH) { // L: 569 - var5.flipHorizontally(); - } + this.isHidden = var1.readUnsignedByte() == 1; + if (this.type == 0) { + this.scrollWidth = var1.readUnsignedShort(); + this.scrollHeight = var1.readUnsignedShort(); + this.noClickThrough = var1.readUnsignedByte() == 1; + } - if (this.outline > 0) { // L: 570 - var5.pad(this.outline); - } + if (this.type == 5) { + this.spriteId2 = var1.readInt(); + this.spriteAngle = var1.readUnsignedShort(); + this.spriteTiling = var1.readUnsignedByte() == 1; + this.transparencyTop = var1.readUnsignedByte(); + this.outline = var1.readUnsignedByte(); + this.spriteShadow = var1.readInt(); + this.spriteFlipV = var1.readUnsignedByte() == 1; + this.spriteFlipH = var1.readUnsignedByte() == 1; + } - if (this.outline >= 1) { // L: 571 - var5.outline(1); - } + if (this.type == 6) { + this.modelType = 1; + this.modelId = var1.readUnsignedShort(); + if (this.modelId == 65535) { + this.modelId = -1; + } - if (this.outline >= 2) { // L: 572 - var5.outline(16777215); - } + this.modelOffsetX = var1.readShort(); + this.modelOffsetY = var1.readShort(); + this.modelAngleX = var1.readUnsignedShort(); + this.modelAngleY = var1.readUnsignedShort(); + this.modelAngleZ = var1.readUnsignedShort(); + this.modelZoom = var1.readUnsignedShort(); + this.sequenceId = var1.readUnsignedShort(); + if (this.sequenceId == 65535) { + this.sequenceId = -1; + } - if (this.spriteShadow != 0) { // L: 573 - var5.shadow(this.spriteShadow); - } + this.modelOrthog = var1.readUnsignedByte() == 1; + var1.readUnsignedShort(); + if (this.widthAlignment != 0) { + this.field2641 = var1.readUnsignedShort(); + } - Widget_cachedSprites.put(var5, var3); // L: 574 - return var5; // L: 575 - } + if (this.heightAlignment != 0) { + var1.readUnsignedShort(); } } + + if (this.type == 4) { + this.fontId = var1.readUnsignedShort(); + if (this.fontId == 65535) { + this.fontId = -1; + } + + this.text = var1.readStringCp1252NullTerminated(); + this.textLineHeight = var1.readUnsignedByte(); + this.textXAlignment = var1.readUnsignedByte(); + this.textYAlignment = var1.readUnsignedByte(); + this.textShadowed = var1.readUnsignedByte() == 1; + this.color = var1.readInt(); + } + + if (this.type == 3) { + this.color = var1.readInt(); + this.fill = var1.readUnsignedByte() == 1; + this.transparencyTop = var1.readUnsignedByte(); + } + + if (this.type == 9) { + this.lineWid = var1.readUnsignedByte(); + this.color = var1.readInt(); + this.field2620 = var1.readUnsignedByte() == 1; + } + + this.flags = var1.readMedium(); + this.dataText = var1.readStringCp1252NullTerminated(); + int var2 = var1.readUnsignedByte(); + if (var2 > 0) { + this.actions = new String[var2]; + + for (int var3 = 0; var3 < var2; ++var3) { + this.actions[var3] = var1.readStringCp1252NullTerminated(); + } + } + + this.dragZoneSize = var1.readUnsignedByte(); + this.dragThreshold = var1.readUnsignedByte(); + this.isScrollBar = var1.readUnsignedByte() == 1; + this.spellActionName = var1.readStringCp1252NullTerminated(); + this.onLoad = this.readListener(var1); + this.onMouseOver = this.readListener(var1); + this.onMouseLeave = this.readListener(var1); + this.onTargetLeave = this.readListener(var1); + this.onTargetEnter = this.readListener(var1); + this.onVarTransmit = this.readListener(var1); + this.onInvTransmit = this.readListener(var1); + this.onStatTransmit = this.readListener(var1); + this.onTimer = this.readListener(var1); + this.onOp = this.readListener(var1); + this.onMouseRepeat = this.readListener(var1); + this.onClick = this.readListener(var1); + this.onClickRepeat = this.readListener(var1); + this.onRelease = this.readListener(var1); + this.onHold = this.readListener(var1); + this.onDrag = this.readListener(var1); + this.onDragComplete = this.readListener(var1); + this.onScroll = this.readListener(var1); + this.varTransmitTriggers = this.readListenerTriggers(var1); + this.invTransmitTriggers = this.readListenerTriggers(var1); + this.statTransmitTriggers = this.readListenerTriggers(var1); } - @ObfuscatedName("o") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(I)Lkq;", - garbageValue = "-1856461280" + descriptor = "(Lkj;I)[Ljava/lang/Object;", + garbageValue = "-747120554" ) - @Export("getFont") - public Font getFont() { - field2677 = false; // L: 579 - if (this.fontId == -1) { // L: 580 + @Export("readListener") + Object[] readListener(Buffer var1) { + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { return null; } else { - Font var1 = (Font)Widget_cachedFonts.get((long)this.fontId); // L: 581 - if (var1 != null) { // L: 582 - return var1; - } else { - AbstractArchive var3 = Widget_spritesArchive; // L: 584 - AbstractArchive var4 = Widget_fontsArchive; // L: 585 - int var5 = this.fontId; // L: 586 - byte[] var7 = var3.takeFile(var5, 0); // L: 590 - boolean var6; - if (var7 == null) { // L: 591 - var6 = false; // L: 592 - } else { - class217.SpriteBuffer_decode(var7); // L: 595 - var6 = true; // L: 596 - } + Object[] var3 = new Object[var2]; - Font var2; - if (!var6) { // L: 598 - var2 = null; // L: 599 - } else { - var2 = UrlRequester.method3430(var4.takeFile(var5, 0)); // L: 602 + for (int var4 = 0; var4 < var2; ++var4) { + int var5 = var1.readUnsignedByte(); + if (var5 == 0) { + var3[var4] = new Integer(var1.readInt()); + } else if (var5 == 1) { + var3[var4] = var1.readStringCp1252NullTerminated(); } - - if (var2 != null) { - Widget_cachedFonts.put(var2, (long)this.fontId); // L: 605 - } else { - field2677 = true; // L: 606 - } - - return var2; // L: 607 } + + this.hasListener = true; + return var3; } } @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(II)Llc;", - garbageValue = "-521963360" + descriptor = "(Lkj;I)[I", + garbageValue = "-149240461" ) - @Export("getInventorySprite") - public Sprite getInventorySprite(int var1) { - field2677 = false; // L: 611 - if (var1 >= 0 && var1 < this.inventorySprites.length) { // L: 612 - int var2 = this.inventorySprites[var1]; // L: 613 - if (var2 == -1) { // L: 614 - return null; - } else { - Sprite var3 = (Sprite)Widget_cachedSprites.get((long)var2); // L: 615 - if (var3 != null) { // L: 616 - return var3; - } else { - var3 = FloorDecoration.SpriteBuffer_getSprite(Widget_spritesArchive, var2, 0); // L: 617 - if (var3 != null) { // L: 618 - Widget_cachedSprites.put(var3, (long)var2); - } else { - field2677 = true; // L: 619 - } - - return var3; // L: 620 - } - } - } else { - return null; - } - } - - @ObfuscatedName("x") - @ObfuscatedSignature( - descriptor = "(Ljg;IZLhu;I)Leh;", - garbageValue = "1269686702" - ) - @Export("getModel") - public Model getModel(SequenceDefinition var1, int var2, boolean var3, PlayerAppearance var4) { - field2677 = false; // L: 624 - int var5; - int var6; - if (var3) { // L: 627 - var5 = this.modelType2; // L: 628 - var6 = this.modelId2; // L: 629 - } else { - var5 = this.modelType; // L: 632 - var6 = this.modelId; // L: 633 - } - - if (var5 == 0) { // L: 635 - return null; - } else if (var5 == 1 && var6 == -1) { // L: 636 + @Export("readListenerTriggers") + int[] readListenerTriggers(Buffer var1) { + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { return null; } else { - Model var7 = (Model)Widget_cachedModels.get((long)(var6 + (var5 << 16))); // L: 637 - if (var7 == null) { // L: 638 - ModelData var8; - if (var5 == 1) { // L: 640 - var8 = ModelData.ModelData_get(GameBuild.Widget_modelsArchive, var6, 0); // L: 641 - if (var8 == null) { // L: 642 - field2677 = true; // L: 643 - return null; // L: 644 - } + int[] var3 = new int[var2]; - var7 = var8.toModel(64, 768, -50, -10, -50); // L: 646 - } - - if (var5 == 2) { // L: 648 - var8 = Clock.getNpcDefinition(var6).getModelData(); // L: 649 - if (var8 == null) { // L: 650 - field2677 = true; // L: 651 - return null; // L: 652 - } - - var7 = var8.toModel(64, 768, -50, -10, -50); // L: 654 - } - - if (var5 == 3) { // L: 656 - if (var4 == null) { // L: 657 - return null; - } - - var8 = var4.getModelData(); // L: 658 - if (var8 == null) { // L: 659 - field2677 = true; // L: 660 - return null; // L: 661 - } - - var7 = var8.toModel(64, 768, -50, -10, -50); // L: 663 - } - - if (var5 == 4) { // L: 665 - ItemDefinition var9 = AbstractWorldMapData.ItemDefinition_get(var6); // L: 666 - var8 = var9.getModelData(10); // L: 667 - if (var8 == null) { // L: 668 - field2677 = true; // L: 669 - return null; // L: 670 - } - - var7 = var8.toModel(var9.ambient + 64, var9.contrast + 768, -50, -10, -50); // L: 672 - } - - Widget_cachedModels.put(var7, (long)(var6 + (var5 << 16))); // L: 674 + for (int var4 = 0; var4 < var2; ++var4) { + var3[var4] = var1.readInt(); } - if (var1 != null) { // L: 676 - var7 = var1.transformWidgetModel(var7, var2); // L: 677 - } - - return var7; // L: 679 + return var3; } } @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "(ZB)Lho;", - garbageValue = "-13" + descriptor = "(IIB)V", + garbageValue = "90" ) - @Export("getSpriteMask") - public SpriteMask getSpriteMask(boolean var1) { - if (this.spriteId == -1) { // L: 683 - var1 = false; + @Export("swapItems") + public void swapItems(int var1, int var2) { + int var3 = this.itemIds[var2]; + this.itemIds[var2] = this.itemIds[var1]; + this.itemIds[var1] = var3; + var3 = this.itemQuantities[var2]; + this.itemQuantities[var2] = this.itemQuantities[var1]; + this.itemQuantities[var1] = var3; + } + + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "(ZB)Llm;", + garbageValue = "14" + ) + @Export("getSprite") + public Sprite getSprite(boolean var1) { + field2603 = false; + int var2; + if (var1) { + var2 = this.spriteId; + } else { + var2 = this.spriteId2; } - int var2 = var1 ? this.spriteId * -402783927 * -1960132359 : this.spriteId2 * 372301921 * -755383391; // L: 684 - if (var2 == -1) { // L: 685 + if (var2 == -1) { return null; } else { - long var3 = ((this.spriteFlipH ? 1L : 0L) << 39) + (long)var2 + ((long)this.outline << 36) + ((this.spriteFlipV ? 1L : 0L) << 38) + ((long)this.spriteShadow << 40); // L: 686 - SpriteMask var5 = (SpriteMask)Widget_cachedSpriteMasks.get(var3); // L: 687 - if (var5 != null) { // L: 688 + long var3 = ((long)this.spriteShadow << 40) + ((this.spriteFlipV ? 1L : 0L) << 38) + ((long)this.outline << 36) + (long)var2 + ((this.spriteFlipH ? 1L : 0L) << 39); + Sprite var5 = (Sprite)Widget_cachedSprites.get(var3); + if (var5 != null) { return var5; } else { - Sprite var6 = this.getSprite(var1); // L: 689 - if (var6 == null) { // L: 690 + var5 = Skills.SpriteBuffer_getSprite(class1.Widget_spritesArchive, var2, 0); + if (var5 == null) { + field2603 = true; return null; } else { - Sprite var7 = var6.copyNormalized(); // L: 691 - int[] var8 = new int[var7.subHeight]; // L: 692 - int[] var9 = new int[var7.subHeight]; // L: 693 - - for (int var10 = 0; var10 < var7.subHeight; ++var10) { // L: 694 - int var11 = 0; // L: 695 - int var12 = var7.subWidth; // L: 696 - - int var13; - for (var13 = 0; var13 < var7.subWidth; ++var13) { // L: 697 - if (var7.pixels[var13 + var10 * var7.subWidth] == 0) { // L: 698 - var11 = var13; // L: 699 - break; - } - } - - for (var13 = var7.subWidth - 1; var13 >= var11; --var13) { // L: 703 - if (var7.pixels[var13 + var10 * var7.subWidth] == 0) { // L: 704 - var12 = var13 + 1; // L: 705 - break; - } - } - - var8[var10] = var11; // L: 709 - var9[var10] = var12 - var11; // L: 710 + if (this.spriteFlipV) { + var5.flipVertically(); } - var5 = new SpriteMask(var7.subWidth, var7.subHeight, var9, var8, var2); // L: 712 - Widget_cachedSpriteMasks.put(var5, var3); // L: 713 - return var5; // L: 714 + if (this.spriteFlipH) { + var5.flipHorizontally(); + } + + if (this.outline > 0) { + var5.pad(this.outline); + } + + if (this.outline >= 1) { + var5.outline(1); + } + + if (this.outline >= 2) { + var5.outline(16777215); + } + + if (this.spriteShadow != 0) { + var5.shadow(this.spriteShadow); + } + + Widget_cachedSprites.put(var5, var3); + return var5; } } } } - @ObfuscatedName("r") + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(I)Lku;", + garbageValue = "521072072" + ) + @Export("getFont") + public Font getFont() { + field2603 = false; + if (this.fontId == -1) { + return null; + } else { + Font var1 = (Font)Widget_cachedFonts.get((long)this.fontId); + if (var1 != null) { + return var1; + } else { + var1 = PrivateChatMode.method5934(class1.Widget_spritesArchive, Bounds.Widget_fontsArchive, this.fontId, 0); + if (var1 != null) { + Widget_cachedFonts.put(var1, (long)this.fontId); + } else { + field2603 = true; + } + + return var1; + } + } + } + + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "(II)Llm;", + garbageValue = "1550530577" + ) + @Export("getInventorySprite") + public Sprite getInventorySprite(int var1) { + field2603 = false; + if (var1 >= 0 && var1 < this.inventorySprites.length) { + int var2 = this.inventorySprites[var1]; + if (var2 == -1) { + return null; + } else { + Sprite var3 = (Sprite)Widget_cachedSprites.get((long)var2); + if (var3 != null) { + return var3; + } else { + var3 = Skills.SpriteBuffer_getSprite(class1.Widget_spritesArchive, var2, 0); + if (var3 != null) { + Widget_cachedSprites.put(var3, (long)var2); + } else { + field2603 = true; + } + + return var3; + } + } + } else { + return null; + } + } + + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "(Ljy;IZLhh;I)Leh;", + garbageValue = "-2117213889" + ) + @Export("getModel") + public Model getModel(SequenceDefinition var1, int var2, boolean var3, PlayerAppearance var4) { + field2603 = false; + int var5; + int var6; + if (var3) { + var5 = this.modelType2; + var6 = this.modelId2; + } else { + var5 = this.modelType; + var6 = this.modelId; + } + + if (var5 == 0) { + return null; + } else if (var5 == 1 && var6 == -1) { + return null; + } else { + Model var7 = (Model)Widget_cachedModels.get((long)(var6 + (var5 << 16))); + if (var7 == null) { + ModelData var8; + if (var5 == 1) { + var8 = ModelData.ModelData_get(GrandExchangeOfferWorldComparator.Widget_modelsArchive, var6, 0); + if (var8 == null) { + field2603 = true; + return null; + } + + var7 = var8.toModel(64, 768, -50, -10, -50); + } + + if (var5 == 2) { + var8 = WorldMapIcon_0.getNpcDefinition(var6).getModelData(); + if (var8 == null) { + field2603 = true; + return null; + } + + var7 = var8.toModel(64, 768, -50, -10, -50); + } + + if (var5 == 3) { + if (var4 == null) { + return null; + } + + var8 = var4.getModelData(); + if (var8 == null) { + field2603 = true; + return null; + } + + var7 = var8.toModel(64, 768, -50, -10, -50); + } + + if (var5 == 4) { + ItemDefinition var9 = SecureRandomCallable.ItemDefinition_get(var6); + var8 = var9.getModelData(10); + if (var8 == null) { + field2603 = true; + return null; + } + + var7 = var8.toModel(var9.ambient + 64, var9.contrast + 768, -50, -10, -50); + } + + Widget_cachedModels.put(var7, (long)(var6 + (var5 << 16))); + } + + if (var1 != null) { + var7 = var1.transformWidgetModel(var7, var2); + } + + return var7; + } + } + + @ObfuscatedName("m") + @ObfuscatedSignature( + descriptor = "(ZB)Lho;", + garbageValue = "-21" + ) + @Export("getSpriteMask") + public SpriteMask getSpriteMask(boolean var1) { + if (this.spriteId == -1) { + var1 = false; + } + + int var2 = var1 ? this.spriteId : this.spriteId2; + if (var2 == -1) { + return null; + } else { + long var3 = ((long)this.spriteShadow << 40) + ((this.spriteFlipV ? 1L : 0L) << 38) + ((long)this.outline << 36) + (long)var2 + ((this.spriteFlipH ? 1L : 0L) << 39); + SpriteMask var5 = (SpriteMask)Widget_cachedSpriteMasks.get(var3); + if (var5 != null) { + return var5; + } else { + Sprite var6 = this.getSprite(var1); + if (var6 == null) { + return null; + } else { + Sprite var7 = var6.copyNormalized(); + int[] var8 = new int[var7.subHeight]; + int[] var9 = new int[var7.subHeight]; + + for (int var10 = 0; var10 < var7.subHeight; ++var10) { + int var11 = 0; + int var12 = var7.subWidth; + + int var13; + for (var13 = 0; var13 < var7.subWidth; ++var13) { + if (var7.pixels[var13 + var10 * var7.subWidth] == 0) { + var11 = var13; + break; + } + } + + for (var13 = var7.subWidth - 1; var13 >= var11; --var13) { + if (var7.pixels[var13 + var10 * var7.subWidth] == 0) { + var12 = var13 + 1; + break; + } + } + + var8[var10] = var11; + var9[var10] = var12 - var11; + } + + var5 = new SpriteMask(var7.subWidth, var7.subHeight, var9, var8, var2); + Widget_cachedSpriteMasks.put(var5, var3); + return var5; + } + } + } + } + + @ObfuscatedName("c") @ObfuscatedSignature( descriptor = "(ILjava/lang/String;I)V", - garbageValue = "1671583868" + garbageValue = "925556129" ) @Export("setAction") public void setAction(int var1, String var2) { - if (this.actions == null || this.actions.length <= var1) { // L: 718 - String[] var3 = new String[var1 + 1]; // L: 719 - if (this.actions != null) { // L: 720 - for (int var4 = 0; var4 < this.actions.length; ++var4) { // L: 721 + if (this.actions == null || this.actions.length <= var1) { + String[] var3 = new String[var1 + 1]; + if (this.actions != null) { + for (int var4 = 0; var4 < this.actions.length; ++var4) { var3[var4] = this.actions[var4]; } } - this.actions = var3; // L: 723 + this.actions = var3; } - this.actions[var1] = var2; // L: 725 - } // L: 726 + this.actions[var1] = var2; + } - @ObfuscatedName("gd") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "0" + descriptor = "(Lil;IIIBZI)V", + garbageValue = "452837182" ) - static boolean method4239() { - return (Client.drawPlayerNames & 2) != 0; // L: 4922 + @Export("requestNetFile") + static void requestNetFile(Archive var0, int var1, int var2, int var3, byte var4, boolean var5) { + long var6 = (long)((var1 << 16) + var2); + NetFileRequest var8 = (NetFileRequest)NetCache.NetCache_pendingPriorityWrites.get(var6); + if (var8 == null) { + var8 = (NetFileRequest)NetCache.NetCache_pendingPriorityResponses.get(var6); + if (var8 == null) { + var8 = (NetFileRequest)NetCache.NetCache_pendingWrites.get(var6); + if (var8 != null) { + if (var5) { + var8.removeDual(); + NetCache.NetCache_pendingPriorityWrites.put(var8, var6); + --NetCache.NetCache_pendingWritesCount; + ++NetCache.NetCache_pendingPriorityWritesCount; + } + + } else { + if (!var5) { + var8 = (NetFileRequest)NetCache.NetCache_pendingResponses.get(var6); + if (var8 != null) { + return; + } + } + + var8 = new NetFileRequest(); + var8.archive = var0; + var8.crc = var3; + var8.padding = var4; + if (var5) { + NetCache.NetCache_pendingPriorityWrites.put(var8, var6); + ++NetCache.NetCache_pendingPriorityWritesCount; + } else { + NetCache.NetCache_pendingWritesQueue.addFirst(var8); + NetCache.NetCache_pendingWrites.put(var8, var6); + ++NetCache.NetCache_pendingWritesCount; + } + + } + } + } + } + + @ObfuscatedName("j") + @Export("Entity_unpackSceneX") + public static int Entity_unpackSceneX(long var0) { + return (int)(var0 >>> 14 & 3L); } } diff --git a/runescape-client/src/main/java/World.java b/runescape-client/src/main/java/World.java index 42e16f926c..5f7bb383dd 100644 --- a/runescape-client/src/main/java/World.java +++ b/runescape-client/src/main/java/World.java @@ -4,163 +4,276 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cf") +@ObfuscatedName("cj") @Implements("World") public class World { - @ObfuscatedName("q") + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "[Lcj;" + ) + @Export("World_worlds") + static World[] World_worlds; + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = 1210898659 + intValue = -1189755659 ) @Export("World_count") static int World_count; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -1957007005 + intValue = -8988331 ) @Export("World_listCount") static int World_listCount; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("World_sortOption2") static int[] World_sortOption2; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("World_sortOption1") static int[] World_sortOption1; - @ObfuscatedName("gv") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "[Llc;" + descriptor = "Lei;" ) - @Export("headIconPkSprites") - static Sprite[] headIconPkSprites; - @ObfuscatedName("ht") + @Export("World_request") + static UrlRequest World_request; + @ObfuscatedName("u") @ObfuscatedGetter( - intValue = 1159940701 - ) - @Export("cameraPitch") - static int cameraPitch; - @ObfuscatedName("e") - @ObfuscatedGetter( - intValue = 2091631839 + intValue = 1102432463 ) @Export("id") int id; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedGetter( - intValue = -1024222647 + intValue = 920976113 ) @Export("properties") int properties; - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedGetter( - intValue = 407096125 + intValue = -1580207855 ) @Export("population") int population; - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("host") String host; - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("activity") String activity; - @ObfuscatedName("r") + @ObfuscatedName("f") @ObfuscatedGetter( - intValue = 362603231 + intValue = -1662346653 ) @Export("location") int location; - @ObfuscatedName("y") + @ObfuscatedName("a") @ObfuscatedGetter( - intValue = 271602597 + intValue = -1162479517 ) @Export("index") int index; static { - World_count = 0; // L: 14 - World_listCount = 0; // L: 15 - World_sortOption2 = new int[]{1, 1, 1, 1}; // L: 16 - World_sortOption1 = new int[]{0, 1, 2, 3}; // L: 17 + World_count = 0; + World_listCount = 0; + World_sortOption2 = new int[]{1, 1, 1, 1}; + World_sortOption1 = new int[]{0, 1, 2, 3}; } World() { - } // L: 27 + } - @ObfuscatedName("t") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-5354489" + descriptor = "(B)Z", + garbageValue = "1" ) @Export("isMembersOnly") boolean isMembersOnly() { - return (1 & this.properties) != 0; // L: 247 + return (1 & this.properties) != 0; + } + + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "-2039082864" + ) + boolean method1829() { + return (2 & this.properties) != 0; + } + + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "-1586384705" + ) + @Export("isPvp") + boolean isPvp() { + return (4 & this.properties) != 0; } @ObfuscatedName("e") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-677783544" + garbageValue = "-1688533510" ) - boolean method1901() { - return (2 & this.properties) != 0; // L: 251 - } - - @ObfuscatedName("o") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-1450485210" - ) - @Export("isPvp") - boolean isPvp() { - return (4 & this.properties) != 0; // L: 255 - } - - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-920722517" - ) - boolean method1888() { - return (8 & this.properties) != 0; // L: 259 - } - - @ObfuscatedName("x") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "233132577" - ) - @Export("isDeadman") - boolean isDeadman() { - return (536870912 & this.properties) != 0; // L: 263 - } - - @ObfuscatedName("p") - @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "50" - ) - @Export("isBeta") - boolean isBeta() { - return (33554432 & this.properties) != 0; // L: 267 - } - - @ObfuscatedName("r") - @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "1" - ) - boolean method1880() { - return (1073741824 & this.properties) != 0; // L: 271 + boolean method1831() { + return (8 & this.properties) != 0; } @ObfuscatedName("m") @ObfuscatedSignature( - descriptor = "(IZIZI)V", - garbageValue = "-738767899" + descriptor = "(B)Z", + garbageValue = "-65" ) - @Export("sortWorldList") - static void sortWorldList(int var0, boolean var1, int var2, boolean var3) { - if (DefaultsGroup.World_worlds != null) { // L: 171 - class1.doWorldSorting(0, DefaultsGroup.World_worlds.length - 1, var0, var1, var2, var3); // L: 172 + @Export("isDeadman") + boolean isDeadman() { + return (536870912 & this.properties) != 0; + } + + @ObfuscatedName("c") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "495435944" + ) + @Export("isBeta") + boolean isBeta() { + return (33554432 & this.properties) != 0; + } + + @ObfuscatedName("i") + @ObfuscatedSignature( + descriptor = "(B)Z", + garbageValue = "48" + ) + boolean method1845() { + return (1073741824 & this.properties) != 0; + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "719435212" + ) + public static int method1870(int var0) { + --var0; + var0 |= var0 >>> 1; + var0 |= var0 >>> 2; + var0 |= var0 >>> 4; + var0 |= var0 >>> 8; + var0 |= var0 >>> 16; + return var0 + 1; + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Lib;Lib;I)V", + garbageValue = "-186964533" + ) + public static void method1849(AbstractArchive var0, AbstractArchive var1) { + NPCDefinition.NpcDefinition_archive = var0; + NPCDefinition.NpcDefinition_modelArchive = var1; + } + + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "(IIIIIII)I", + garbageValue = "689239187" + ) + public static int method1871(int var0, int var1, int var2, int var3, int var4, int var5) { + if ((var5 & 1) == 1) { + int var6 = var3; + var3 = var4; + var4 = var6; } - } // L: 174 + var2 &= 3; + if (var2 == 0) { + return var1; + } else if (var2 == 1) { + return 7 - var0 - (var3 - 1); + } else { + return var2 == 2 ? 7 - var1 - (var4 - 1) : var0; + } + } + + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/CharSequence;IZI)I", + garbageValue = "1735277376" + ) + @Export("parseIntCustomRadix") + public static int parseIntCustomRadix(CharSequence var0, int var1, boolean var2) { + if (var1 >= 2 && var1 <= 36) { + boolean var3 = false; + boolean var4 = false; + int var5 = 0; + int var6 = var0.length(); + + for (int var7 = 0; var7 < var6; ++var7) { + char var8 = var0.charAt(var7); + if (var7 == 0) { + if (var8 == '-') { + var3 = true; + continue; + } + + if (var8 == '+') { + continue; + } + } + + int var10; + if (var8 >= '0' && var8 <= '9') { + var10 = var8 - '0'; + } else if (var8 >= 'A' && var8 <= 'Z') { + var10 = var8 - '7'; + } else { + if (var8 < 'a' || var8 > 'z') { + throw new NumberFormatException(); + } + + var10 = var8 - 'W'; + } + + if (var10 >= var1) { + throw new NumberFormatException(); + } + + if (var3) { + var10 = -var10; + } + + int var9 = var5 * var1 + var10; + if (var9 / var1 != var5) { + throw new NumberFormatException(); + } + + var5 = var9; + var4 = true; + } + + if (!var4) { + throw new NumberFormatException(); + } else { + return var5; + } + } else { + throw new IllegalArgumentException("" + var1); + } + } + + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "614025062" + ) + public static int method1874(int var0) { + if (var0 > 0) { + return 1; + } else { + return var0 < 0 ? -1 : 0; + } + } } diff --git a/runescape-client/src/main/java/WorldMap.java b/runescape-client/src/main/java/WorldMap.java index 9c60092f6e..244d5e57f0 100644 --- a/runescape-client/src/main/java/WorldMap.java +++ b/runescape-client/src/main/java/WorldMap.java @@ -10,1430 +10,1443 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mi") +@ObfuscatedName("ma") @Implements("WorldMap") public class WorldMap { - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "Lko;" + descriptor = "Lkr;" ) @Export("fontNameVerdana11") static final FontName fontNameVerdana11; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "Lko;" + descriptor = "Lkr;" ) @Export("fontNameVerdana13") static final FontName fontNameVerdana13; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedSignature( - descriptor = "Lko;" + descriptor = "Lkr;" ) @Export("fontNameVerdana15") static final FontName fontNameVerdana15; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("WorldMap_archive") AbstractArchive WorldMap_archive; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("WorldMap_geographyArchive") AbstractArchive WorldMap_geographyArchive; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("WorldMap_groundArchive") AbstractArchive WorldMap_groundArchive; - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedSignature( - descriptor = "Lkq;" + descriptor = "Lku;" ) @Export("font") Font font; - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("fonts") HashMap fonts; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedSignature( - descriptor = "[Lle;" + descriptor = "[Llo;" ) @Export("mapSceneSprites") IndexedSprite[] mapSceneSprites; - @ObfuscatedName("r") + @ObfuscatedName("f") @Export("details") HashMap details; - @ObfuscatedName("y") + @ObfuscatedName("a") @ObfuscatedSignature( - descriptor = "Lak;" + descriptor = "Lav;" ) @Export("mainMapArea") WorldMapArea mainMapArea; - @ObfuscatedName("s") + @ObfuscatedName("b") @ObfuscatedSignature( - descriptor = "Lak;" + descriptor = "Lav;" ) @Export("currentMapArea") WorldMapArea currentMapArea; - @ObfuscatedName("j") + @ObfuscatedName("y") @ObfuscatedSignature( - descriptor = "Lak;" + descriptor = "Lav;" ) - WorldMapArea field3995; - @ObfuscatedName("w") + WorldMapArea field4005; + @ObfuscatedName("r") @ObfuscatedSignature( - descriptor = "Lat;" + descriptor = "Lai;" ) @Export("worldMapManager") WorldMapManager worldMapManager; - @ObfuscatedName("v") + @ObfuscatedName("q") @ObfuscatedSignature( - descriptor = "Lma;" + descriptor = "Lmv;" ) @Export("cacheLoader") WorldMapArchiveLoader cacheLoader; - @ObfuscatedName("d") + @ObfuscatedName("g") @ObfuscatedGetter( - intValue = -1285200665 + intValue = 34446857 ) @Export("centerTileX") int centerTileX; - @ObfuscatedName("a") + @ObfuscatedName("s") @ObfuscatedGetter( - intValue = -1921873827 + intValue = -35156607 ) @Export("centerTileY") int centerTileY; - @ObfuscatedName("g") + @ObfuscatedName("o") @ObfuscatedGetter( - intValue = 975563565 + intValue = 1414857527 ) @Export("worldMapTargetX") int worldMapTargetX; - @ObfuscatedName("h") + @ObfuscatedName("k") @ObfuscatedGetter( - intValue = 602728647 + intValue = -2091480201 ) @Export("worldMapTargetY") int worldMapTargetY; - @ObfuscatedName("i") + @ObfuscatedName("d") @Export("zoom") float zoom; - @ObfuscatedName("ab") + @ObfuscatedName("an") @Export("zoomTarget") float zoomTarget; - @ObfuscatedName("ac") + @ObfuscatedName("aj") @ObfuscatedGetter( - intValue = -265310855 + intValue = 1073644533 ) @Export("worldMapDisplayWidth") int worldMapDisplayWidth; - @ObfuscatedName("ao") + @ObfuscatedName("ax") @ObfuscatedGetter( - intValue = -497921421 + intValue = -1190282307 ) @Export("worldMapDisplayHeight") int worldMapDisplayHeight; - @ObfuscatedName("af") + @ObfuscatedName("ag") @ObfuscatedGetter( - intValue = 1466269365 + intValue = 712779481 ) @Export("worldMapDisplayX") int worldMapDisplayX; - @ObfuscatedName("av") + @ObfuscatedName("au") @ObfuscatedGetter( - intValue = 1810186345 + intValue = -1873750981 ) @Export("worldMapDisplayY") int worldMapDisplayY; - @ObfuscatedName("ar") + @ObfuscatedName("as") @ObfuscatedGetter( - intValue = 1907516453 + intValue = 1643702919 ) @Export("maxFlashCount") int maxFlashCount; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @ObfuscatedGetter( - intValue = -1084516547 + intValue = 1440936345 ) @Export("cyclesPerFlash") int cyclesPerFlash; - @ObfuscatedName("ah") + @ObfuscatedName("ac") @Export("perpetualFlash") boolean perpetualFlash; - @ObfuscatedName("az") + @ObfuscatedName("ak") @Export("flashingElements") HashSet flashingElements; - @ObfuscatedName("ak") + @ObfuscatedName("av") @ObfuscatedGetter( - intValue = -1272835311 + intValue = 1589963879 ) @Export("flashCount") int flashCount; - @ObfuscatedName("au") + @ObfuscatedName("aq") @ObfuscatedGetter( - intValue = 1158286595 + intValue = 644572641 ) @Export("flashCycle") int flashCycle; - @ObfuscatedName("ai") + @ObfuscatedName("ah") @ObfuscatedGetter( - intValue = 977802637 + intValue = -964427915 ) int field4024; - @ObfuscatedName("ax") - @ObfuscatedGetter( - intValue = 1843671129 - ) - int field4025; - @ObfuscatedName("ag") - @ObfuscatedGetter( - intValue = -413712101 - ) - int field4026; - @ObfuscatedName("aq") - @ObfuscatedGetter( - intValue = -1365818697 - ) - int field4027; - @ObfuscatedName("aw") - @ObfuscatedGetter( - longValue = -8715931618239812219L - ) - long field3988; - @ObfuscatedName("an") - @ObfuscatedGetter( - intValue = 718100987 - ) - int field4029; @ObfuscatedName("am") @ObfuscatedGetter( - intValue = 813311499 + intValue = -233360709 ) - int field4033; + int field4025; @ObfuscatedName("aa") + @ObfuscatedGetter( + intValue = 1171495407 + ) + int field3990; + @ObfuscatedName("ao") + @ObfuscatedGetter( + intValue = -50950891 + ) + int field4027; + @ObfuscatedName("ab") + @ObfuscatedGetter( + longValue = 7754556817989080275L + ) + long field4034; + @ObfuscatedName("aw") + @ObfuscatedGetter( + intValue = 1220631433 + ) + int field4029; + @ObfuscatedName("ap") + @ObfuscatedGetter( + intValue = -490561459 + ) + int field4030; + @ObfuscatedName("ad") boolean field4031; - @ObfuscatedName("aj") + @ObfuscatedName("ay") @Export("enabledElements") HashSet enabledElements; - @ObfuscatedName("ae") + @ObfuscatedName("af") @Export("enabledCategories") HashSet enabledCategories; - @ObfuscatedName("al") + @ObfuscatedName("ar") @Export("enabledElementIds") HashSet enabledElementIds; - @ObfuscatedName("ap") - HashSet field4010; - @ObfuscatedName("ad") + @ObfuscatedName("az") + HashSet field4035; + @ObfuscatedName("at") @Export("elementsDisabled") boolean elementsDisabled; - @ObfuscatedName("bb") + @ObfuscatedName("bh") @ObfuscatedGetter( - intValue = 1745024237 + intValue = 149168837 ) int field4037; - @ObfuscatedName("bp") + @ObfuscatedName("bs") @Export("menuOpcodes") final int[] menuOpcodes; - @ObfuscatedName("bg") - List field4003; - @ObfuscatedName("bc") + @ObfuscatedName("br") + List field4039; + @ObfuscatedName("bl") @Export("iconIterator") Iterator iconIterator; - @ObfuscatedName("bj") - HashSet field4041; - @ObfuscatedName("bl") + @ObfuscatedName("bx") + HashSet field4008; + @ObfuscatedName("bf") @ObfuscatedSignature( - descriptor = "Lhw;" + descriptor = "Lhs;" ) @Export("mouseCoord") Coord mouseCoord; - @ObfuscatedName("bn") + @ObfuscatedName("bz") @Export("showCoord") public boolean showCoord; - @ObfuscatedName("bo") + @ObfuscatedName("bm") @ObfuscatedSignature( - descriptor = "Llc;" + descriptor = "Llm;" ) @Export("sprite") Sprite sprite; - @ObfuscatedName("be") + @ObfuscatedName("bn") @ObfuscatedGetter( - intValue = 1733644049 + intValue = -905159911 ) @Export("cachedPixelsPerTile") int cachedPixelsPerTile; - @ObfuscatedName("ba") + @ObfuscatedName("bd") @ObfuscatedGetter( - intValue = -237601579 + intValue = 1100678517 ) @Export("minCachedTileX") int minCachedTileX; - @ObfuscatedName("bt") + @ObfuscatedName("bc") @ObfuscatedGetter( - intValue = 753914953 + intValue = -364665697 ) @Export("minCachedTileY") int minCachedTileY; - @ObfuscatedName("bw") + @ObfuscatedName("bi") @ObfuscatedGetter( - intValue = -1869185885 + intValue = -1734483817 ) int field4048; static { - fontNameVerdana11 = FontName.FontName_verdana11; // L: 46 - fontNameVerdana13 = FontName.FontName_verdana13; // L: 47 - fontNameVerdana15 = FontName.FontName_verdana15; // L: 48 + fontNameVerdana11 = FontName.FontName_verdana11; + fontNameVerdana13 = FontName.FontName_verdana13; + fontNameVerdana15 = FontName.FontName_verdana15; } public WorldMap() { - this.worldMapTargetX = -1; // L: 60 - this.worldMapTargetY = -1; // L: 61 - this.worldMapDisplayWidth = -1; // L: 64 - this.worldMapDisplayHeight = -1; // L: 65 - this.worldMapDisplayX = -1; // L: 66 - this.worldMapDisplayY = -1; // L: 67 - this.maxFlashCount = 3; // L: 68 - this.cyclesPerFlash = 50; // L: 69 - this.perpetualFlash = false; // L: 70 - this.flashingElements = null; // L: 71 - this.flashCount = -1; // L: 72 - this.flashCycle = -1; // L: 73 - this.field4024 = -1; // L: 74 - this.field4025 = -1; // L: 75 - this.field4026 = -1; // L: 76 - this.field4027 = -1; // L: 77 - this.field4031 = true; // L: 81 - this.enabledElements = new HashSet(); // L: 84 - this.enabledCategories = new HashSet(); // L: 85 - this.enabledElementIds = new HashSet(); // L: 86 - this.field4010 = new HashSet(); // L: 87 - this.elementsDisabled = false; // L: 88 - this.field4037 = 0; // L: 89 - this.menuOpcodes = new int[]{1008, 1009, 1010, 1011, 1012}; // L: 91 - this.field4041 = new HashSet(); // L: 94 - this.mouseCoord = null; // L: 95 - this.showCoord = false; // L: 96 - this.minCachedTileX = -1; // L: 99 - this.minCachedTileY = -1; // L: 100 - this.field4048 = -1; // L: 101 + this.worldMapTargetX = -1; + this.worldMapTargetY = -1; + this.worldMapDisplayWidth = -1; + this.worldMapDisplayHeight = -1; + this.worldMapDisplayX = -1; + this.worldMapDisplayY = -1; + this.maxFlashCount = 3; + this.cyclesPerFlash = 50; + this.perpetualFlash = false; + this.flashingElements = null; + this.flashCount = -1; + this.flashCycle = -1; + this.field4024 = -1; + this.field4025 = -1; + this.field3990 = -1; + this.field4027 = -1; + this.field4031 = true; + this.enabledElements = new HashSet(); + this.enabledCategories = new HashSet(); + this.enabledElementIds = new HashSet(); + this.field4035 = new HashSet(); + this.elementsDisabled = false; + this.field4037 = 0; + this.menuOpcodes = new int[]{1008, 1009, 1010, 1011, 1012}; + this.field4008 = new HashSet(); + this.mouseCoord = null; + this.showCoord = false; + this.minCachedTileX = -1; + this.minCachedTileY = -1; + this.field4048 = -1; } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Liw;Liw;Liw;Lkq;Ljava/util/HashMap;[Lle;I)V", - garbageValue = "848642369" + descriptor = "(Lib;Lib;Lib;Lku;Ljava/util/HashMap;[Llo;I)V", + garbageValue = "-1988514493" ) @Export("init") public void init(AbstractArchive var1, AbstractArchive var2, AbstractArchive var3, Font var4, HashMap var5, IndexedSprite[] var6) { - this.mapSceneSprites = var6; // L: 105 - this.WorldMap_archive = var1; // L: 106 - this.WorldMap_geographyArchive = var2; // L: 107 - this.WorldMap_groundArchive = var3; // L: 108 - this.font = var4; // L: 109 - this.fonts = new HashMap(); // L: 110 - this.fonts.put(WorldMapLabelSize.WorldMapLabelSize_small, var5.get(fontNameVerdana11)); // L: 111 - this.fonts.put(WorldMapLabelSize.WorldMapLabelSize_medium, var5.get(fontNameVerdana13)); // L: 112 - this.fonts.put(WorldMapLabelSize.WorldMapLabelSize_large, var5.get(fontNameVerdana15)); // L: 113 - this.cacheLoader = new WorldMapArchiveLoader(var1); // L: 114 - int var7 = this.WorldMap_archive.getGroupId(WorldMapCacheName.field320.name); // L: 115 - int[] var8 = this.WorldMap_archive.getGroupFileIds(var7); // L: 116 - this.details = new HashMap(var8.length); // L: 117 + this.mapSceneSprites = var6; + this.WorldMap_archive = var1; + this.WorldMap_geographyArchive = var2; + this.WorldMap_groundArchive = var3; + this.font = var4; + this.fonts = new HashMap(); + this.fonts.put(WorldMapLabelSize.WorldMapLabelSize_small, var5.get(fontNameVerdana11)); + this.fonts.put(WorldMapLabelSize.WorldMapLabelSize_medium, var5.get(fontNameVerdana13)); + this.fonts.put(WorldMapLabelSize.WorldMapLabelSize_large, var5.get(fontNameVerdana15)); + this.cacheLoader = new WorldMapArchiveLoader(var1); + int var7 = this.WorldMap_archive.getGroupId(WorldMapCacheName.field328.name); + int[] var8 = this.WorldMap_archive.getGroupFileIds(var7); + this.details = new HashMap(var8.length); - for (int var9 = 0; var9 < var8.length; ++var9) { // L: 118 - Buffer var10 = new Buffer(this.WorldMap_archive.takeFile(var7, var8[var9])); // L: 119 - WorldMapArea var11 = new WorldMapArea(); // L: 120 - var11.read(var10, var8[var9]); // L: 121 - this.details.put(var11.getInternalName(), var11); // L: 122 - if (var11.getIsMain()) { // L: 123 - this.mainMapArea = var11; // L: 124 + for (int var9 = 0; var9 < var8.length; ++var9) { + Buffer var10 = new Buffer(this.WorldMap_archive.takeFile(var7, var8[var9])); + WorldMapArea var11 = new WorldMapArea(); + var11.read(var10, var8[var9]); + this.details.put(var11.getInternalName(), var11); + if (var11.getIsMain()) { + this.mainMapArea = var11; } } - this.setCurrentMapArea(this.mainMapArea); // L: 127 - this.field3995 = null; // L: 128 - } // L: 129 + this.setCurrentMapArea(this.mainMapArea); + this.field4005 = null; + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-96" + descriptor = "(I)V", + garbageValue = "2048812117" ) - public void method6454() { - WorldMapRegion.WorldMapRegion_cachedSprites.demote(5); // L: 133 - } // L: 135 + public void method6363() { + WorldMapRegion.WorldMapRegion_cachedSprites.demote(5); + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(IIZIIIII)V", - garbageValue = "-2023472681" + garbageValue = "-1174840947" ) @Export("onCycle") public void onCycle(int var1, int var2, boolean var3, int var4, int var5, int var6, int var7) { - if (this.cacheLoader.isLoaded()) { // L: 138 - this.smoothZoom(); // L: 141 - this.scrollToTarget(); // L: 142 - if (var3) { // L: 143 - int var8 = (int)Math.ceil((double)((float)var6 / this.zoom)); // L: 146 - int var9 = (int)Math.ceil((double)((float)var7 / this.zoom)); // L: 147 - List var10 = this.worldMapManager.method738(this.centerTileX - var8 / 2 - 1, this.centerTileY - var9 / 2 - 1, var8 / 2 + this.centerTileX + 1, var9 / 2 + this.centerTileY + 1, var4, var5, var6, var7, var1, var2); // L: 148 - HashSet var11 = new HashSet(); // L: 149 + if (this.cacheLoader.isLoaded()) { + this.smoothZoom(); + this.scrollToTarget(); + if (var3) { + int var8 = (int)Math.ceil((double)((float)var6 / this.zoom)); + int var9 = (int)Math.ceil((double)((float)var7 / this.zoom)); + List var10 = this.worldMapManager.method707(this.centerTileX - var8 / 2 - 1, this.centerTileY - var9 / 2 - 1, var8 / 2 + this.centerTileX + 1, var9 / 2 + this.centerTileY + 1, var4, var5, var6, var7, var1, var2); + HashSet var11 = new HashSet(); Iterator var12; AbstractWorldMapIcon var13; ScriptEvent var14; WorldMapEvent var15; - for (var12 = var10.iterator(); var12.hasNext(); Entity.runScriptEvent(var14)) { // L: 150 163 - var13 = (AbstractWorldMapIcon)var12.next(); // L: 151 - var11.add(var13); // L: 153 - var14 = new ScriptEvent(); // L: 154 - var15 = new WorldMapEvent(var13.getElement(), var13.coord1, var13.coord2); // L: 155 - var14.setArgs(new Object[]{var15, var1, var2}); // L: 156 - if (this.field4041.contains(var13)) { // L: 157 - var14.setType(17); // L: 158 + for (var12 = var10.iterator(); var12.hasNext(); class22.runScriptEvent(var14)) { + var13 = (AbstractWorldMapIcon)var12.next(); + var11.add(var13); + var14 = new ScriptEvent(); + var15 = new WorldMapEvent(var13.getElement(), var13.coord1, var13.coord2); + var14.setArgs(new Object[]{var15, var1, var2}); + if (this.field4008.contains(var13)) { + var14.setType(17); } else { - var14.setType(15); // L: 161 + var14.setType(15); } } - var12 = this.field4041.iterator(); // L: 166 + var12 = this.field4008.iterator(); while (var12.hasNext()) { - var13 = (AbstractWorldMapIcon)var12.next(); // L: 167 - if (!var11.contains(var13)) { // L: 169 - var14 = new ScriptEvent(); // L: 170 - var15 = new WorldMapEvent(var13.getElement(), var13.coord1, var13.coord2); // L: 171 - var14.setArgs(new Object[]{var15, var1, var2}); // L: 172 - var14.setType(16); // L: 173 - Entity.runScriptEvent(var14); // L: 174 + var13 = (AbstractWorldMapIcon)var12.next(); + if (!var11.contains(var13)) { + var14 = new ScriptEvent(); + var15 = new WorldMapEvent(var13.getElement(), var13.coord1, var13.coord2); + var14.setArgs(new Object[]{var15, var1, var2}); + var14.setType(16); + class22.runScriptEvent(var14); } } - this.field4041 = var11; // L: 178 + this.field4008 = var11; } } - } // L: 139 144 179 + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(IIZZB)V", - garbageValue = "0" + descriptor = "(IIZZI)V", + garbageValue = "771999489" ) - public void method6456(int var1, int var2, boolean var3, boolean var4) { - long var5 = User.currentTimeMillis(); // L: 182 - this.method6457(var1, var2, var4, var5); // L: 183 - if (this.hasTarget() || !var4 && !var3) { // L: 184 - this.method6461(); // L: 198 + public void method6362(int var1, int var2, boolean var3, boolean var4) { + long var5 = class298.currentTimeMillis(); + this.method6470(var1, var2, var4, var5); + if (this.hasTarget() || !var4 && !var3) { + this.method6367(); } else { - if (var4) { // L: 185 - this.field4026 = var1; // L: 186 - this.field4027 = var2; // L: 187 - this.field4024 = this.centerTileX; // L: 188 - this.field4025 = this.centerTileY; // L: 189 + if (var4) { + this.field3990 = var1; + this.field4027 = var2; + this.field4024 = this.centerTileX; + this.field4025 = this.centerTileY; } - if (this.field4024 != -1) { // L: 191 - int var7 = var1 - this.field4026; // L: 192 - int var8 = var2 - this.field4027; // L: 193 - this.setWorldMapPosition(this.field4024 - (int)((float)var7 / this.zoomTarget), (int)((float)var8 / this.zoomTarget) + this.field4025, false); // L: 194 + if (this.field4024 != -1) { + int var7 = var1 - this.field3990; + int var8 = var2 - this.field4027; + this.setWorldMapPosition(this.field4024 - (int)((float)var7 / this.zoomTarget), (int)((float)var8 / this.zoomTarget) + this.field4025, false); } } - if (var4) { // L: 200 - this.field3988 = var5; // L: 201 - this.field4029 = var1; // L: 202 - this.field4033 = var2; // L: 203 + if (var4) { + this.field4034 = var5; + this.field4029 = var1; + this.field4030 = var2; } - } // L: 205 + } - @ObfuscatedName("z") - void method6457(int var1, int var2, boolean var3, long var4) { - if (this.currentMapArea != null) { // L: 208 - int var6 = (int)((float)this.centerTileX + ((float)(var1 - this.worldMapDisplayX) - (float)this.getDisplayWith() * this.zoom / 2.0F) / this.zoom); // L: 209 - int var7 = (int)((float)this.centerTileY - ((float)(var2 - this.worldMapDisplayY) - (float)this.getDisplayHeight() * this.zoom / 2.0F) / this.zoom); // L: 210 - this.mouseCoord = this.currentMapArea.coord(var6 + this.currentMapArea.getRegionLowX() * 64, var7 + this.currentMapArea.getRegionLowY() * 64); // L: 211 - if (this.mouseCoord != null && var3) { // L: 212 - if (MilliClock.method3590() && KeyHandler.KeyHandler_pressedKeys[82] && KeyHandler.KeyHandler_pressedKeys[81]) { // L: 213 - class2.method42(this.mouseCoord.x, this.mouseCoord.y, this.mouseCoord.plane, false); // L: 214 + @ObfuscatedName("t") + void method6470(int var1, int var2, boolean var3, long var4) { + if (this.currentMapArea != null) { + int var6 = (int)((float)this.centerTileX + ((float)(var1 - this.worldMapDisplayX) - (float)this.getDisplayWith() * this.zoom / 2.0F) / this.zoom); + int var7 = (int)((float)this.centerTileY - ((float)(var2 - this.worldMapDisplayY) - (float)this.getDisplayHeight() * this.zoom / 2.0F) / this.zoom); + this.mouseCoord = this.currentMapArea.coord(var6 + this.currentMapArea.getRegionLowX() * 64, var7 + this.currentMapArea.getRegionLowY() * 64); + if (this.mouseCoord != null && var3) { + boolean var8 = Client.staffModLevel >= 2; + int var10; + int var11; + if (var8 && KeyHandler.KeyHandler_pressedKeys[82] && KeyHandler.KeyHandler_pressedKeys[81]) { + int var14 = this.mouseCoord.x; + var10 = this.mouseCoord.y; + var11 = this.mouseCoord.plane; + PacketBufferNode var12 = ItemContainer.getPacketBufferNode(ClientPacket.field2269, Client.packetWriter.isaacCipher); + var12.packetBuffer.method5578(var14); + var12.packetBuffer.method5587(0); + var12.packetBuffer.method5739(var10); + var12.packetBuffer.writeByte(var11); + Client.packetWriter.addNode(var12); } else { - boolean var8 = true; // L: 217 - if (this.field4031) { // L: 218 - int var9 = var1 - this.field4029; // L: 219 - int var10 = var2 - this.field4033; // L: 220 - if (var4 - this.field3988 > 500L || var9 < -25 || var9 > 25 || var10 < -25 || var10 > 25) { // L: 221 - var8 = false; // L: 222 + boolean var9 = true; + if (this.field4031) { + var10 = var1 - this.field4029; + var11 = var2 - this.field4030; + if (var4 - this.field4034 > 500L || var10 < -25 || var10 > 25 || var11 < -25 || var11 > 25) { + var9 = false; } } - if (var8) { // L: 225 - PacketBufferNode var11 = class4.getPacketBufferNode(ClientPacket.field2292, Client.packetWriter.isaacCipher); // L: 226 - var11.packetBuffer.method5682(this.mouseCoord.packed()); // L: 227 - Client.packetWriter.addNode(var11); // L: 228 - this.field3988 = 0L; // L: 229 + if (var9) { + PacketBufferNode var13 = ItemContainer.getPacketBufferNode(ClientPacket.field2328, Client.packetWriter.isaacCipher); + var13.packetBuffer.method5587(this.mouseCoord.packed()); + Client.packetWriter.addNode(var13); + this.field4034 = 0L; } } } } else { - this.mouseCoord = null; // L: 234 + this.mouseCoord = null; } - } // L: 235 + } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "116" + garbageValue = "-25" ) @Export("smoothZoom") void smoothZoom() { - if (ModelData0.field1895 != null) { // L: 238 - this.zoom = this.zoomTarget; // L: 239 + if (WorldMapIcon_0.field148 != null) { + this.zoom = this.zoomTarget; } else { - if (this.zoom < this.zoomTarget) { // L: 242 - this.zoom = Math.min(this.zoomTarget, this.zoom + this.zoom / 30.0F); // L: 243 + if (this.zoom < this.zoomTarget) { + this.zoom = Math.min(this.zoomTarget, this.zoom / 30.0F + this.zoom); } - if (this.zoom > this.zoomTarget) { // L: 245 - this.zoom = Math.max(this.zoomTarget, this.zoom - this.zoom / 30.0F); // L: 246 + if (this.zoom > this.zoomTarget) { + this.zoom = Math.max(this.zoomTarget, this.zoom - this.zoom / 30.0F); } } - } // L: 240 248 - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1854206843" - ) - @Export("scrollToTarget") - void scrollToTarget() { - if (this.hasTarget()) { // L: 251 - int var1 = this.worldMapTargetX - this.centerTileX; // L: 254 - int var2 = this.worldMapTargetY - this.centerTileY; // L: 255 - if (var1 != 0) { // L: 256 - var1 /= Math.min(8, Math.abs(var1)); // L: 257 - } - - if (var2 != 0) { // L: 259 - var2 /= Math.min(8, Math.abs(var2)); // L: 260 - } - - this.setWorldMapPosition(var1 + this.centerTileX, var2 + this.centerTileY, true); // L: 262 - if (this.centerTileX == this.worldMapTargetX && this.worldMapTargetY == this.centerTileY) { // L: 263 - this.worldMapTargetX = -1; // L: 264 - this.worldMapTargetY = -1; // L: 265 - } - - } - } // L: 252 267 - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(IIZI)V", - garbageValue = "-628039810" - ) - @Export("setWorldMapPosition") - final void setWorldMapPosition(int var1, int var2, boolean var3) { - this.centerTileX = var1; // L: 270 - this.centerTileY = var2; // L: 271 - User.currentTimeMillis(); // L: 272 - if (var3) { - this.method6461(); // L: 273 - } - - } // L: 274 - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1439565697" - ) - final void method6461() { - this.field4027 = -1; // L: 277 - this.field4026 = -1; // L: 278 - this.field4025 = -1; // L: 279 - this.field4024 = -1; // L: 280 - } // L: 281 - - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-116080135" - ) - @Export("hasTarget") - boolean hasTarget() { - return this.worldMapTargetX != -1 && this.worldMapTargetY != -1; // L: 284 } - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "(IIII)Lak;", - garbageValue = "-1599719722" - ) - @Export("mapAreaAtCoord") - public WorldMapArea mapAreaAtCoord(int var1, int var2, int var3) { - Iterator var4 = this.details.values().iterator(); // L: 288 - - WorldMapArea var5; - do { - if (!var4.hasNext()) { // L: 295 - return null; // L: 296 - } - - var5 = (WorldMapArea)var4.next(); // L: 289 - } while(!var5.containsCoord(var1, var2, var3)); // L: 291 - - return var5; // L: 292 - } - - @ObfuscatedName("o") - @ObfuscatedSignature( - descriptor = "(IIIZI)V", - garbageValue = "-1947716560" - ) - public void method6464(int var1, int var2, int var3, boolean var4) { - WorldMapArea var5 = this.mapAreaAtCoord(var1, var2, var3); // L: 300 - if (var5 == null) { // L: 301 - if (!var4) { // L: 302 - return; // L: 305 - } - - var5 = this.mainMapArea; // L: 303 - } - - boolean var6 = false; // L: 307 - if (var5 != this.field3995 || var4) { // L: 308 - this.field3995 = var5; // L: 309 - this.setCurrentMapArea(var5); // L: 310 - var6 = true; // L: 311 - } - - if (var6 || var4) { // L: 313 - this.jump(var1, var2, var3); // L: 314 - } - - } // L: 316 - @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1528896195" + descriptor = "(B)V", + garbageValue = "-4" ) - @Export("setCurrentMapAreaId") - public void setCurrentMapAreaId(int var1) { - WorldMapArea var2 = this.getMapArea(var1); // L: 319 - if (var2 != null) { // L: 320 - this.setCurrentMapArea(var2); // L: 321 + @Export("scrollToTarget") + void scrollToTarget() { + if (this.hasTarget()) { + int var1 = this.worldMapTargetX - this.centerTileX; + int var2 = this.worldMapTargetY - this.centerTileY; + if (var1 != 0) { + var1 /= Math.min(8, Math.abs(var1)); + } + + if (var2 != 0) { + var2 /= Math.min(8, Math.abs(var2)); + } + + this.setWorldMapPosition(var1 + this.centerTileX, var2 + this.centerTileY, true); + if (this.centerTileX == this.worldMapTargetX && this.centerTileY == this.worldMapTargetY) { + this.worldMapTargetX = -1; + this.worldMapTargetY = -1; + } + } - - } // L: 323 - - @ObfuscatedName("x") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "1" - ) - @Export("currentMapAreaId") - public int currentMapAreaId() { - return this.currentMapArea == null ? -1 : this.currentMapArea.getId(); // L: 326 327 329 } @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "(I)Lak;", - garbageValue = "-1553357344" + descriptor = "(IIZB)V", + garbageValue = "0" + ) + @Export("setWorldMapPosition") + final void setWorldMapPosition(int var1, int var2, boolean var3) { + this.centerTileX = var1; + this.centerTileY = var2; + class298.currentTimeMillis(); + if (var3) { + this.method6367(); + } + + } + + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1920245593" + ) + final void method6367() { + this.field4027 = -1; + this.field3990 = -1; + this.field4025 = -1; + this.field4024 = -1; + } + + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(B)Z", + garbageValue = "0" + ) + @Export("hasTarget") + boolean hasTarget() { + return this.worldMapTargetX != -1 && this.worldMapTargetY != -1; + } + + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "(IIII)Lav;", + garbageValue = "1888096920" + ) + @Export("mapAreaAtCoord") + public WorldMapArea mapAreaAtCoord(int var1, int var2, int var3) { + Iterator var4 = this.details.values().iterator(); + + WorldMapArea var5; + do { + if (!var4.hasNext()) { + return null; + } + + var5 = (WorldMapArea)var4.next(); + } while(!var5.containsCoord(var1, var2, var3)); + + return var5; + } + + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "(IIIZB)V", + garbageValue = "-100" + ) + public void method6370(int var1, int var2, int var3, boolean var4) { + WorldMapArea var5 = this.mapAreaAtCoord(var1, var2, var3); + if (var5 == null) { + if (!var4) { + return; + } + + var5 = this.mainMapArea; + } + + boolean var6 = false; + if (var5 != this.field4005 || var4) { + this.field4005 = var5; + this.setCurrentMapArea(var5); + var6 = true; + } + + if (var6 || var4) { + this.jump(var1, var2, var3); + } + + } + + @ObfuscatedName("m") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "1569720823" + ) + @Export("setCurrentMapAreaId") + public void setCurrentMapAreaId(int var1) { + WorldMapArea var2 = this.getMapArea(var1); + if (var2 != null) { + this.setCurrentMapArea(var2); + } + + } + + @ObfuscatedName("c") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-4" + ) + @Export("currentMapAreaId") + public int currentMapAreaId() { + return this.currentMapArea == null ? -1 : this.currentMapArea.getId(); + } + + @ObfuscatedName("i") + @ObfuscatedSignature( + descriptor = "(I)Lav;", + garbageValue = "-1618834185" ) @Export("getCurrentMapArea") public WorldMapArea getCurrentMapArea() { - return this.currentMapArea; // L: 333 + return this.currentMapArea; + } + + @ObfuscatedName("f") + @ObfuscatedSignature( + descriptor = "(Lav;I)V", + garbageValue = "-320065457" + ) + @Export("setCurrentMapArea") + void setCurrentMapArea(WorldMapArea var1) { + if (this.currentMapArea == null || var1 != this.currentMapArea) { + this.initializeWorldMapManager(var1); + this.jump(-1, -1, -1); + } + } + + @ObfuscatedName("y") + @ObfuscatedSignature( + descriptor = "(Lav;B)V", + garbageValue = "16" + ) + @Export("initializeWorldMapManager") + void initializeWorldMapManager(WorldMapArea var1) { + this.currentMapArea = var1; + this.worldMapManager = new WorldMapManager(this.mapSceneSprites, this.fonts, this.WorldMap_geographyArchive, this.WorldMap_groundArchive); + this.cacheLoader.reset(this.currentMapArea.getInternalName()); } @ObfuscatedName("r") @ObfuscatedSignature( - descriptor = "(Lak;I)V", - garbageValue = "-479215549" + descriptor = "(Lav;Lhs;Lhs;ZI)V", + garbageValue = "856208789" ) - @Export("setCurrentMapArea") - void setCurrentMapArea(WorldMapArea var1) { - if (this.currentMapArea == null || var1 != this.currentMapArea) { // L: 337 - this.initializeWorldMapManager(var1); // L: 340 - this.jump(-1, -1, -1); // L: 341 - } - } // L: 338 342 - - @ObfuscatedName("y") - @ObfuscatedSignature( - descriptor = "(Lak;I)V", - garbageValue = "-218419929" - ) - @Export("initializeWorldMapManager") - void initializeWorldMapManager(WorldMapArea var1) { - this.currentMapArea = var1; // L: 345 - this.worldMapManager = new WorldMapManager(this.mapSceneSprites, this.fonts, this.WorldMap_geographyArchive, this.WorldMap_groundArchive); // L: 346 - this.cacheLoader.reset(this.currentMapArea.getInternalName()); // L: 347 - } // L: 348 - - @ObfuscatedName("s") - @ObfuscatedSignature( - descriptor = "(Lak;Lhw;Lhw;ZB)V", - garbageValue = "106" - ) - public void method6470(WorldMapArea var1, Coord var2, Coord var3, boolean var4) { - if (var1 != null) { // L: 351 - if (this.currentMapArea == null || var1 != this.currentMapArea) { // L: 354 - this.initializeWorldMapManager(var1); // L: 355 + public void method6485(WorldMapArea var1, Coord var2, Coord var3, boolean var4) { + if (var1 != null) { + if (this.currentMapArea == null || var1 != this.currentMapArea) { + this.initializeWorldMapManager(var1); } - if (!var4 && this.currentMapArea.containsCoord(var2.plane, var2.x, var2.y)) { // L: 357 - this.jump(var2.plane, var2.x, var2.y); // L: 361 + if (!var4 && this.currentMapArea.containsCoord(var2.plane, var2.x, var2.y)) { + this.jump(var2.plane, var2.x, var2.y); } else { - this.jump(var3.plane, var3.x, var3.y); // L: 358 + this.jump(var3.plane, var3.x, var3.y); } } - } // L: 352 363 + } - @ObfuscatedName("j") + @ObfuscatedName("q") @ObfuscatedSignature( - descriptor = "(IIIB)V", - garbageValue = "-86" + descriptor = "(IIII)V", + garbageValue = "1387321592" ) @Export("jump") void jump(int var1, int var2, int var3) { - if (this.currentMapArea != null) { // L: 366 - int[] var4 = this.currentMapArea.position(var1, var2, var3); // L: 369 - if (var4 == null) { // L: 370 - var4 = this.currentMapArea.position(this.currentMapArea.getOriginPlane(), this.currentMapArea.getOriginX(), this.currentMapArea.getOriginY()); // L: 371 + if (this.currentMapArea != null) { + int[] var4 = this.currentMapArea.position(var1, var2, var3); + if (var4 == null) { + var4 = this.currentMapArea.position(this.currentMapArea.getOriginPlane(), this.currentMapArea.getOriginX(), this.currentMapArea.getOriginY()); } - this.setWorldMapPosition(var4[0] - this.currentMapArea.getRegionLowX() * 64, var4[1] - this.currentMapArea.getRegionLowY() * 64, true); // L: 373 - this.worldMapTargetX = -1; // L: 374 - this.worldMapTargetY = -1; // L: 375 - this.zoom = this.getZoomFromPercentage(this.currentMapArea.getZoom()); // L: 376 - this.zoomTarget = this.zoom; // L: 377 - this.field4003 = null; // L: 378 - this.iconIterator = null; // L: 379 - this.worldMapManager.clearIcons(); // L: 380 - } - } // L: 367 381 - - @ObfuscatedName("d") - @ObfuscatedSignature( - descriptor = "(IIIIII)V", - garbageValue = "-1854887081" - ) - @Export("draw") - public void draw(int var1, int var2, int var3, int var4, int var5) { - int[] var6 = new int[4]; // L: 384 - Rasterizer2D.Rasterizer2D_getClipArray(var6); // L: 385 - Rasterizer2D.Rasterizer2D_setClip(var1, var2, var3 + var1, var2 + var4); // L: 386 - Rasterizer2D.Rasterizer2D_fillRectangle(var1, var2, var3, var4, -16777216); // L: 387 - int var7 = this.cacheLoader.getPercentLoaded(); // L: 388 - if (var7 < 100) { // L: 389 - this.drawLoading(var1, var2, var3, var4, var7); // L: 390 - } else { - if (!this.worldMapManager.isLoaded()) { // L: 393 - this.worldMapManager.load(this.WorldMap_archive, this.currentMapArea.getInternalName(), Client.isMembersWorld); // L: 394 - if (!this.worldMapManager.isLoaded()) { // L: 395 - return; // L: 396 - } - } - - if (this.flashingElements != null) { // L: 399 - ++this.flashCycle; // L: 400 - if (this.flashCycle % this.cyclesPerFlash == 0) { // L: 401 - this.flashCycle = 0; // L: 402 - ++this.flashCount; // L: 403 - } - - if (this.flashCount >= this.maxFlashCount && !this.perpetualFlash) { // L: 405 - this.flashingElements = null; // L: 406 - } - } - - int var8 = (int)Math.ceil((double)((float)var3 / this.zoom)); // L: 409 - int var9 = (int)Math.ceil((double)((float)var4 / this.zoom)); // L: 410 - this.worldMapManager.drawTiles(this.centerTileX - var8 / 2, this.centerTileY - var9 / 2, var8 / 2 + this.centerTileX, var9 / 2 + this.centerTileY, var1, var2, var3 + var1, var2 + var4); // L: 411 - if (!this.elementsDisabled) { // L: 412 - boolean var10 = false; // L: 413 - if (var5 - this.field4037 > 100) { // L: 414 - this.field4037 = var5; // L: 415 - var10 = true; // L: 416 - } - - this.worldMapManager.drawElements(this.centerTileX - var8 / 2, this.centerTileY - var9 / 2, var8 / 2 + this.centerTileX, var9 / 2 + this.centerTileY, var1, var2, var3 + var1, var2 + var4, this.field4010, this.flashingElements, this.flashCycle, this.cyclesPerFlash, var10); // L: 418 - } - - this.method6474(var1, var2, var3, var4, var8, var9); // L: 420 - if (MilliClock.method3590() && this.showCoord && this.mouseCoord != null) { // L: 421 - this.font.draw("Coord: " + this.mouseCoord, Rasterizer2D.Rasterizer2D_xClipStart + 10, Rasterizer2D.Rasterizer2D_yClipStart + 20, 16776960, -1); - } - - this.worldMapDisplayWidth = var8; // L: 422 - this.worldMapDisplayHeight = var9; // L: 423 - this.worldMapDisplayX = var1; // L: 424 - this.worldMapDisplayY = var2; // L: 425 - Rasterizer2D.Rasterizer2D_setClipArray(var6); // L: 426 - } - } // L: 391 427 - - @ObfuscatedName("a") - @ObfuscatedSignature( - descriptor = "(IIIIIII)Z", - garbageValue = "-982047358" - ) - boolean method6473(int var1, int var2, int var3, int var4, int var5, int var6) { - if (this.sprite == null) { // L: 430 - return true; - } else if (this.sprite.subWidth == var1 && this.sprite.subHeight == var2) { // L: 431 - if (this.worldMapManager.pixelsPerTile != this.cachedPixelsPerTile) { // L: 432 - return true; - } else if (this.field4048 != Client.field950) { - return true; // L: 433 - } else if (var3 <= 0 && var4 <= 0) { // L: 434 - return var3 + var1 < var5 || var2 + var4 < var6; // L: 435 - } else { - return true; // L: 436 - } - } else { - return true; + this.setWorldMapPosition(var4[0] - this.currentMapArea.getRegionLowX() * 64, var4[1] - this.currentMapArea.getRegionLowY() * 64, true); + this.worldMapTargetX = -1; + this.worldMapTargetY = -1; + this.zoom = this.getZoomFromPercentage(this.currentMapArea.getZoom()); + this.zoomTarget = this.zoom; + this.field4039 = null; + this.iconIterator = null; + this.worldMapManager.clearIcons(); } } @ObfuscatedName("g") @ObfuscatedSignature( - descriptor = "(IIIIIII)V", - garbageValue = "1221811124" + descriptor = "(IIIIII)V", + garbageValue = "903679312" ) - void method6474(int var1, int var2, int var3, int var4, int var5, int var6) { - if (ModelData0.field1895 != null) { // L: 440 - int var7 = 512 / (this.worldMapManager.pixelsPerTile * 2); // L: 441 - int var8 = var3 + 512; // L: 442 - int var9 = var4 + 512; // L: 443 - float var10 = 1.0F; // L: 444 - var8 = (int)((float)var8 / var10); // L: 445 - var9 = (int)((float)var9 / var10); // L: 446 - int var11 = this.getDisplayX() - var5 / 2 - var7; // L: 447 - int var12 = this.getDisplayY() - var6 / 2 - var7; // L: 448 - int var13 = var1 - (var7 + var11 - this.minCachedTileX) * this.worldMapManager.pixelsPerTile; // L: 449 - int var14 = var2 - this.worldMapManager.pixelsPerTile * (var7 - (var12 - this.minCachedTileY)); // L: 450 - if (this.method6473(var8, var9, var13, var14, var3, var4)) { // L: 451 - if (this.sprite != null && this.sprite.subWidth == var8 && this.sprite.subHeight == var9) { // L: 452 - Arrays.fill(this.sprite.pixels, 0); // L: 455 - } else { - this.sprite = new Sprite(var8, var9); // L: 453 + @Export("draw") + public void draw(int var1, int var2, int var3, int var4, int var5) { + int[] var6 = new int[4]; + Rasterizer2D.Rasterizer2D_getClipArray(var6); + Rasterizer2D.Rasterizer2D_setClip(var1, var2, var3 + var1, var2 + var4); + Rasterizer2D.Rasterizer2D_fillRectangle(var1, var2, var3, var4, -16777216); + int var7 = this.cacheLoader.getPercentLoaded(); + if (var7 < 100) { + this.drawLoading(var1, var2, var3, var4, var7); + } else { + if (!this.worldMapManager.isLoaded()) { + this.worldMapManager.load(this.WorldMap_archive, this.currentMapArea.getInternalName(), Client.isMembersWorld); + if (!this.worldMapManager.isLoaded()) { + return; } - - this.minCachedTileX = this.getDisplayX() - var5 / 2 - var7; // L: 456 - this.minCachedTileY = this.getDisplayY() - var6 / 2 - var7; // L: 457 - this.cachedPixelsPerTile = this.worldMapManager.pixelsPerTile; // L: 458 - ModelData0.field1895.method4475(this.minCachedTileX, this.minCachedTileY, this.sprite, (float)this.cachedPixelsPerTile / var10); // L: 459 - this.field4048 = Client.field950; // L: 460 - var13 = var1 - (var11 + var7 - this.minCachedTileX) * this.worldMapManager.pixelsPerTile; // L: 461 - var14 = var2 - this.worldMapManager.pixelsPerTile * (var7 - (var12 - this.minCachedTileY)); // L: 462 } - Rasterizer2D.Rasterizer2D_fillRectangleAlpha(var1, var2, var3, var4, 0, 128); // L: 464 - if (1.0F == var10) { // L: 465 - this.sprite.method6290(var13, var14, 192); // L: 466 + if (this.flashingElements != null) { + ++this.flashCycle; + if (this.flashCycle % this.cyclesPerFlash == 0) { + this.flashCycle = 0; + ++this.flashCount; + } + + if (this.flashCount >= this.maxFlashCount && !this.perpetualFlash) { + this.flashingElements = null; + } + } + + int var8 = (int)Math.ceil((double)((float)var3 / this.zoom)); + int var9 = (int)Math.ceil((double)((float)var4 / this.zoom)); + this.worldMapManager.drawTiles(this.centerTileX - var8 / 2, this.centerTileY - var9 / 2, var8 / 2 + this.centerTileX, var9 / 2 + this.centerTileY, var1, var2, var3 + var1, var2 + var4); + boolean var10; + if (!this.elementsDisabled) { + var10 = false; + if (var5 - this.field4037 > 100) { + this.field4037 = var5; + var10 = true; + } + + this.worldMapManager.drawElements(this.centerTileX - var8 / 2, this.centerTileY - var9 / 2, var8 / 2 + this.centerTileX, var9 / 2 + this.centerTileY, var1, var2, var3 + var1, var2 + var4, this.field4035, this.flashingElements, this.flashCycle, this.cyclesPerFlash, var10); + } + + this.method6534(var1, var2, var3, var4, var8, var9); + var10 = Client.staffModLevel >= 2; + if (var10 && this.showCoord && this.mouseCoord != null) { + this.font.draw("Coord: " + this.mouseCoord, Rasterizer2D.Rasterizer2D_xClipStart + 10, Rasterizer2D.Rasterizer2D_yClipStart + 20, 16776960, -1); + } + + this.worldMapDisplayWidth = var8; + this.worldMapDisplayHeight = var9; + this.worldMapDisplayX = var1; + this.worldMapDisplayY = var2; + Rasterizer2D.Rasterizer2D_setClipArray(var6); + } + } + + @ObfuscatedName("o") + @ObfuscatedSignature( + descriptor = "(IIIIIIB)Z", + garbageValue = "-90" + ) + boolean method6515(int var1, int var2, int var3, int var4, int var5, int var6) { + if (this.sprite == null) { + return true; + } else if (this.sprite.subWidth == var1 && this.sprite.subHeight == var2) { + if (this.worldMapManager.pixelsPerTile != this.cachedPixelsPerTile) { + return true; + } else if (this.field4048 != Client.field915) { + return true; + } else if (var3 <= 0 && var4 <= 0) { + return var3 + var1 < var5 || var2 + var4 < var6; } else { - this.sprite.method6293(var13, var14, (int)(var10 * (float)var8), (int)(var10 * (float)var9), 192); // L: 469 + return true; } - } - - } // L: 472 - - @ObfuscatedName("h") - @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "973687295" - ) - @Export("drawOverview") - public void drawOverview(int var1, int var2, int var3, int var4) { - if (this.cacheLoader.isLoaded()) { // L: 475 - if (!this.worldMapManager.isLoaded()) { // L: 478 - this.worldMapManager.load(this.WorldMap_archive, this.currentMapArea.getInternalName(), Client.isMembersWorld); // L: 479 - if (!this.worldMapManager.isLoaded()) { // L: 480 - return; // L: 481 - } - } - - this.worldMapManager.drawOverview(var1, var2, var3, var4, this.flashingElements, this.flashCycle, this.cyclesPerFlash); // L: 484 - } - } // L: 476 485 - - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "1066180861" - ) - @Export("setZoomPercentage") - public void setZoomPercentage(int var1) { - this.zoomTarget = this.getZoomFromPercentage(var1); // L: 488 - } // L: 489 - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(IIIIIB)V", - garbageValue = "9" - ) - @Export("drawLoading") - void drawLoading(int var1, int var2, int var3, int var4, int var5) { - byte var6 = 20; // L: 492 - int var7 = var3 / 2 + var1; // L: 493 - int var8 = var4 / 2 + var2 - 18 - var6; // L: 494 - Rasterizer2D.Rasterizer2D_fillRectangle(var1, var2, var3, var4, -16777216); // L: 495 - Rasterizer2D.Rasterizer2D_drawRectangle(var7 - 152, var8, 304, 34, -65536); // L: 496 - Rasterizer2D.Rasterizer2D_fillRectangle(var7 - 150, var8 + 2, var5 * 3, 30, -65536); // L: 497 - this.font.drawCentered("Loading...", var7, var6 + var8, -1, -1); // L: 498 - } // L: 499 - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(II)F", - garbageValue = "1491201346" - ) - @Export("getZoomFromPercentage") - float getZoomFromPercentage(int var1) { - if (var1 == 25) { // L: 502 - return 1.0F; - } else if (var1 == 37) { // L: 503 - return 1.5F; - } else if (var1 == 50) { // L: 504 - return 2.0F; - } else if (var1 == 75) { // L: 505 - return 3.0F; } else { - return var1 == 100 ? 4.0F : 8.0F; // L: 506 507 + return true; } } - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-261728144" - ) - @Export("getZoomLevel") - public int getZoomLevel() { - if ((double)this.zoomTarget == 1.0D) { // L: 511 - return 25; - } else if ((double)this.zoomTarget == 1.5D) { // L: 512 - return 37; - } else if ((double)this.zoomTarget == 2.0D) { // L: 513 - return 50; - } else if ((double)this.zoomTarget == 3.0D) { // L: 514 - return 75; - } else { - return 4.0D == (double)this.zoomTarget ? 100 : 200; // L: 515 516 - } - } - - @ObfuscatedName("av") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1032558196" - ) - @Export("loadCache") - public void loadCache() { - this.cacheLoader.load(); // L: 520 - } // L: 521 - - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "79" - ) - @Export("isCacheLoaded") - public boolean isCacheLoaded() { - return this.cacheLoader.isLoaded(); // L: 524 - } - - @ObfuscatedName("ay") - @ObfuscatedSignature( - descriptor = "(II)Lak;", - garbageValue = "-439250111" - ) - @Export("getMapArea") - public WorldMapArea getMapArea(int var1) { - Iterator var2 = this.details.values().iterator(); // L: 528 - - WorldMapArea var3; - do { - if (!var2.hasNext()) { - return null; // L: 536 - } - - var3 = (WorldMapArea)var2.next(); // L: 529 - } while(var3.getId() != var1); // L: 531 - - return var3; // L: 532 - } - - @ObfuscatedName("ah") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "-2025872140" - ) - @Export("setWorldMapPositionTarget") - public void setWorldMapPositionTarget(int var1, int var2) { - if (this.currentMapArea != null && this.currentMapArea.containsPosition(var1, var2)) { // L: 540 - this.worldMapTargetX = var1 - this.currentMapArea.getRegionLowX() * 64; // L: 543 - this.worldMapTargetY = var2 - this.currentMapArea.getRegionLowY() * 64; // L: 544 - } - } // L: 541 545 - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "-17498359" - ) - @Export("setWorldMapPositionTargetInstant") - public void setWorldMapPositionTargetInstant(int var1, int var2) { - if (this.currentMapArea != null) { // L: 548 - this.setWorldMapPosition(var1 - this.currentMapArea.getRegionLowX() * 64, var2 - this.currentMapArea.getRegionLowY() * 64, true); // L: 551 - this.worldMapTargetX = -1; // L: 552 - this.worldMapTargetY = -1; // L: 553 - } - } // L: 549 554 - - @ObfuscatedName("ak") - @ObfuscatedSignature( - descriptor = "(IIII)V", - garbageValue = "2008714912" - ) - @Export("jumpToSourceCoord") - public void jumpToSourceCoord(int var1, int var2, int var3) { - if (this.currentMapArea != null) { // L: 557 - int[] var4 = this.currentMapArea.position(var1, var2, var3); // L: 560 - if (var4 != null) { // L: 561 - this.setWorldMapPositionTarget(var4[0], var4[1]); // L: 562 - } - - } - } // L: 558 564 - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(IIII)V", - garbageValue = "-229646497" - ) - @Export("jumpToSourceCoordInstant") - public void jumpToSourceCoordInstant(int var1, int var2, int var3) { - if (this.currentMapArea != null) { // L: 567 - int[] var4 = this.currentMapArea.position(var1, var2, var3); // L: 570 - if (var4 != null) { // L: 571 - this.setWorldMapPositionTargetInstant(var4[0], var4[1]); // L: 572 - } - - } - } // L: 568 574 - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "951202457" - ) - @Export("getDisplayX") - public int getDisplayX() { - return this.currentMapArea == null ? -1 : this.centerTileX + this.currentMapArea.getRegionLowX() * 64; // L: 577 578 580 - } - - @ObfuscatedName("ax") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1338500531" - ) - @Export("getDisplayY") - public int getDisplayY() { - return this.currentMapArea == null ? -1 : this.centerTileY + this.currentMapArea.getRegionLowY() * 64; // L: 584 585 587 - } - - @ObfuscatedName("ag") - @ObfuscatedSignature( - descriptor = "(I)Lhw;", - garbageValue = "594943970" - ) - @Export("getDisplayCoord") - public Coord getDisplayCoord() { - return this.currentMapArea == null ? null : this.currentMapArea.coord(this.getDisplayX(), this.getDisplayY()); // L: 591 592 594 - } - - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1464597509" - ) - @Export("getDisplayWith") - public int getDisplayWith() { - return this.worldMapDisplayWidth; // L: 598 - } - - @ObfuscatedName("aw") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-27" - ) - @Export("getDisplayHeight") - public int getDisplayHeight() { - return this.worldMapDisplayHeight; // L: 602 - } - @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1585976321" + descriptor = "(IIIIIII)V", + garbageValue = "1968364271" ) - @Export("setMaxFlashCount") - public void setMaxFlashCount(int var1) { - if (var1 >= 1) { // L: 606 - this.maxFlashCount = var1; // L: 607 - } + void method6534(int var1, int var2, int var3, int var4, int var5, int var6) { + if (WorldMapIcon_0.field148 != null) { + int var7 = 512 / (this.worldMapManager.pixelsPerTile * 2); + int var8 = var3 + 512; + int var9 = var4 + 512; + float var10 = 1.0F; + var8 = (int)((float)var8 / var10); + var9 = (int)((float)var9 / var10); + int var11 = this.getDisplayX() - var5 / 2 - var7; + int var12 = this.getDisplayY() - var6 / 2 - var7; + int var13 = var1 - (var7 + var11 - this.minCachedTileX) * this.worldMapManager.pixelsPerTile; + int var14 = var2 - this.worldMapManager.pixelsPerTile * (var7 - (var12 - this.minCachedTileY)); + if (this.method6515(var8, var9, var13, var14, var3, var4)) { + if (this.sprite != null && this.sprite.subWidth == var8 && this.sprite.subHeight == var9) { + Arrays.fill(this.sprite.pixels, 0); + } else { + this.sprite = new Sprite(var8, var9); + } - } // L: 609 + this.minCachedTileX = this.getDisplayX() - var5 / 2 - var7; + this.minCachedTileY = this.getDisplayY() - var6 / 2 - var7; + this.cachedPixelsPerTile = this.worldMapManager.pixelsPerTile; + WorldMapIcon_0.field148.method4346(this.minCachedTileX, this.minCachedTileY, this.sprite, (float)this.cachedPixelsPerTile / var10); + this.field4048 = Client.field915; + var13 = var1 - (var7 + var11 - this.minCachedTileX) * this.worldMapManager.pixelsPerTile; + var14 = var2 - this.worldMapManager.pixelsPerTile * (var7 - (var12 - this.minCachedTileY)); + } - @ObfuscatedName("am") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-2125624155" - ) - @Export("resetMaxFlashCount") - public void resetMaxFlashCount() { - this.maxFlashCount = 3; // L: 612 - } // L: 613 - - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-42452546" - ) - @Export("setCyclesPerFlash") - public void setCyclesPerFlash(int var1) { - if (var1 >= 1) { // L: 616 - this.cyclesPerFlash = var1; // L: 617 - } - - } // L: 619 - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "8" - ) - @Export("resetCyclesPerFlash") - public void resetCyclesPerFlash() { - this.cyclesPerFlash = 50; // L: 622 - } // L: 623 - - @ObfuscatedName("as") - @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "1208073894" - ) - @Export("setPerpetualFlash") - public void setPerpetualFlash(boolean var1) { - this.perpetualFlash = var1; // L: 626 - } // L: 627 - - @ObfuscatedName("aj") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "23" - ) - @Export("flashElement") - public void flashElement(int var1) { - this.flashingElements = new HashSet(); // L: 630 - this.flashingElements.add(var1); // L: 631 - this.flashCount = 0; // L: 632 - this.flashCycle = 0; // L: 633 - } // L: 634 - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1227226392" - ) - @Export("flashCategory") - public void flashCategory(int var1) { - this.flashingElements = new HashSet(); // L: 637 - this.flashCount = 0; // L: 638 - this.flashCycle = 0; // L: 639 - - for (int var2 = 0; var2 < NPC.WorldMapElement_count; ++var2) { // L: 640 - if (class194.WorldMapElement_get(var2) != null && class194.WorldMapElement_get(var2).category == var1) { // L: 641 644 - this.flashingElements.add(class194.WorldMapElement_get(var2).objectId); // L: 645 + Rasterizer2D.Rasterizer2D_fillRectangleAlpha(var1, var2, var3, var4, 0, 128); + if (1.0F == var10) { + this.sprite.method6181(var13, var14, 192); + } else { + this.sprite.method6184(var13, var14, (int)((float)var8 * var10), (int)(var10 * (float)var9), 192); } } - } // L: 648 + } - @ObfuscatedName("al") + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "(IIIII)V", + garbageValue = "1415246881" + ) + @Export("drawOverview") + public void drawOverview(int var1, int var2, int var3, int var4) { + if (this.cacheLoader.isLoaded()) { + if (!this.worldMapManager.isLoaded()) { + this.worldMapManager.load(this.WorldMap_archive, this.currentMapArea.getInternalName(), Client.isMembersWorld); + if (!this.worldMapManager.isLoaded()) { + return; + } + } + + this.worldMapManager.drawOverview(var1, var2, var3, var4, this.flashingElements, this.flashCycle, this.cyclesPerFlash); + } + } + + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-1658246176" + ) + @Export("setZoomPercentage") + public void setZoomPercentage(int var1) { + this.zoomTarget = this.getZoomFromPercentage(var1); + } + + @ObfuscatedName("ag") + @ObfuscatedSignature( + descriptor = "(IIIIII)V", + garbageValue = "483495875" + ) + @Export("drawLoading") + void drawLoading(int var1, int var2, int var3, int var4, int var5) { + byte var6 = 20; + int var7 = var3 / 2 + var1; + int var8 = var4 / 2 + var2 - 18 - var6; + Rasterizer2D.Rasterizer2D_fillRectangle(var1, var2, var3, var4, -16777216); + Rasterizer2D.Rasterizer2D_drawRectangle(var7 - 152, var8, 304, 34, -65536); + Rasterizer2D.Rasterizer2D_fillRectangle(var7 - 150, var8 + 2, var5 * 3, 30, -65536); + this.font.drawCentered("Loading...", var7, var8 + var6, -1, -1); + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(II)F", + garbageValue = "1716504753" + ) + @Export("getZoomFromPercentage") + float getZoomFromPercentage(int var1) { + if (var1 == 25) { + return 1.0F; + } else if (var1 == 37) { + return 1.5F; + } else if (var1 == 50) { + return 2.0F; + } else if (var1 == 75) { + return 3.0F; + } else { + return var1 == 100 ? 4.0F : 8.0F; + } + } + + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "106" + ) + @Export("getZoomLevel") + public int getZoomLevel() { + if (1.0D == (double)this.zoomTarget) { + return 25; + } else if ((double)this.zoomTarget == 1.5D) { + return 37; + } else if ((double)this.zoomTarget == 2.0D) { + return 50; + } else if ((double)this.zoomTarget == 3.0D) { + return 75; + } else { + return (double)this.zoomTarget == 4.0D ? 100 : 200; + } + } + + @ObfuscatedName("ae") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1665532753" + garbageValue = "-1648107795" ) - @Export("stopCurrentFlashes") - public void stopCurrentFlashes() { - this.flashingElements = null; // L: 651 - } // L: 652 + @Export("loadCache") + public void loadCache() { + this.cacheLoader.load(); + } + + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "(B)Z", + garbageValue = "-117" + ) + @Export("isCacheLoaded") + public boolean isCacheLoaded() { + return this.cacheLoader.isLoaded(); + } + + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "(IS)Lav;", + garbageValue = "10284" + ) + @Export("getMapArea") + public WorldMapArea getMapArea(int var1) { + Iterator var2 = this.details.values().iterator(); + + WorldMapArea var3; + do { + if (!var2.hasNext()) { + return null; + } + + var3 = (WorldMapArea)var2.next(); + } while(var3.getId() != var1); + + return var3; + } + + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "(IIS)V", + garbageValue = "1536" + ) + @Export("setWorldMapPositionTarget") + public void setWorldMapPositionTarget(int var1, int var2) { + if (this.currentMapArea != null && this.currentMapArea.containsPosition(var1, var2)) { + this.worldMapTargetX = var1 - this.currentMapArea.getRegionLowX() * 64; + this.worldMapTargetY = var2 - this.currentMapArea.getRegionLowY() * 64; + } + } + + @ObfuscatedName("aq") + @ObfuscatedSignature( + descriptor = "(IIB)V", + garbageValue = "-4" + ) + @Export("setWorldMapPositionTargetInstant") + public void setWorldMapPositionTargetInstant(int var1, int var2) { + if (this.currentMapArea != null) { + this.setWorldMapPosition(var1 - this.currentMapArea.getRegionLowX() * 64, var2 - this.currentMapArea.getRegionLowY() * 64, true); + this.worldMapTargetX = -1; + this.worldMapTargetY = -1; + } + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(IIII)V", + garbageValue = "1818651976" + ) + @Export("jumpToSourceCoord") + public void jumpToSourceCoord(int var1, int var2, int var3) { + if (this.currentMapArea != null) { + int[] var4 = this.currentMapArea.position(var1, var2, var3); + if (var4 != null) { + this.setWorldMapPositionTarget(var4[0], var4[1]); + } + + } + } + + @ObfuscatedName("am") + @ObfuscatedSignature( + descriptor = "(IIII)V", + garbageValue = "473887994" + ) + @Export("jumpToSourceCoordInstant") + public void jumpToSourceCoordInstant(int var1, int var2, int var3) { + if (this.currentMapArea != null) { + int[] var4 = this.currentMapArea.position(var1, var2, var3); + if (var4 != null) { + this.setWorldMapPositionTargetInstant(var4[0], var4[1]); + } + + } + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "1523132182" + ) + @Export("getDisplayX") + public int getDisplayX() { + return this.currentMapArea == null ? -1 : this.centerTileX + this.currentMapArea.getRegionLowX() * 64; + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "65408" + ) + @Export("getDisplayY") + public int getDisplayY() { + return this.currentMapArea == null ? -1 : this.centerTileY + this.currentMapArea.getRegionLowY() * 64; + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(I)Lhs;", + garbageValue = "-862509197" + ) + @Export("getDisplayCoord") + public Coord getDisplayCoord() { + return this.currentMapArea == null ? null : this.currentMapArea.coord(this.getDisplayX(), this.getDisplayY()); + } + + @ObfuscatedName("aw") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-1867921683" + ) + @Export("getDisplayWith") + public int getDisplayWith() { + return this.worldMapDisplayWidth; + } @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(ZS)V", - garbageValue = "128" + descriptor = "(B)I", + garbageValue = "0" ) - @Export("setElementsDisabled") - public void setElementsDisabled(boolean var1) { - this.elementsDisabled = !var1; // L: 655 - } // L: 656 + @Export("getDisplayHeight") + public int getDisplayHeight() { + return this.worldMapDisplayHeight; + } @ObfuscatedName("ad") + @ObfuscatedSignature( + descriptor = "(IB)V", + garbageValue = "32" + ) + @Export("setMaxFlashCount") + public void setMaxFlashCount(int var1) { + if (var1 >= 1) { + this.maxFlashCount = var1; + } + + } + + @ObfuscatedName("ai") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1668488207" + ) + @Export("resetMaxFlashCount") + public void resetMaxFlashCount() { + this.maxFlashCount = 3; + } + + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-626312657" + ) + @Export("setCyclesPerFlash") + public void setCyclesPerFlash(int var1) { + if (var1 >= 1) { + this.cyclesPerFlash = var1; + } + + } + + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "78" + ) + @Export("resetCyclesPerFlash") + public void resetCyclesPerFlash() { + this.cyclesPerFlash = 50; + } + + @ObfuscatedName("af") + @ObfuscatedSignature( + descriptor = "(ZB)V", + garbageValue = "98" + ) + @Export("setPerpetualFlash") + public void setPerpetualFlash(boolean var1) { + this.perpetualFlash = var1; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-2041133251" + ) + @Export("flashElement") + public void flashElement(int var1) { + this.flashingElements = new HashSet(); + this.flashingElements.add(var1); + this.flashCount = 0; + this.flashCycle = 0; + } + + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "982221358" + ) + @Export("flashCategory") + public void flashCategory(int var1) { + this.flashingElements = new HashSet(); + this.flashCount = 0; + this.flashCycle = 0; + + for (int var2 = 0; var2 < WorldMapElement.WorldMapElement_count; ++var2) { + if (UserComparator10.WorldMapElement_get(var2) != null && UserComparator10.WorldMapElement_get(var2).category == var1) { + this.flashingElements.add(UserComparator10.WorldMapElement_get(var2).objectId); + } + } + + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1855116248" + ) + @Export("stopCurrentFlashes") + public void stopCurrentFlashes() { + this.flashingElements = null; + } + + @ObfuscatedName("bh") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "795371287" + ) + @Export("setElementsDisabled") + public void setElementsDisabled(boolean var1) { + this.elementsDisabled = !var1; + } + + @ObfuscatedName("by") @ObfuscatedSignature( descriptor = "(IZB)V", - garbageValue = "-47" + garbageValue = "-111" ) @Export("disableElement") public void disableElement(int var1, boolean var2) { - if (!var2) { // L: 659 - this.enabledElements.add(var1); // L: 660 + if (!var2) { + this.enabledElements.add(var1); } else { - this.enabledElements.remove(var1); // L: 663 + this.enabledElements.remove(var1); } - this.method6506(); // L: 665 - } // L: 666 + this.method6412(); + } - @ObfuscatedName("bb") + @ObfuscatedName("bs") @ObfuscatedSignature( - descriptor = "(IZI)V", - garbageValue = "1863382486" + descriptor = "(IZB)V", + garbageValue = "-46" ) @Export("setCategoryDisabled") public void setCategoryDisabled(int var1, boolean var2) { - if (!var2) { // L: 669 - this.enabledCategories.add(var1); // L: 670 + if (!var2) { + this.enabledCategories.add(var1); } else { - this.enabledCategories.remove(var1); // L: 673 + this.enabledCategories.remove(var1); } - for (int var3 = 0; var3 < NPC.WorldMapElement_count; ++var3) { // L: 675 - if (class194.WorldMapElement_get(var3) != null && class194.WorldMapElement_get(var3).category == var1) { // L: 676 679 - int var4 = class194.WorldMapElement_get(var3).objectId; // L: 680 - if (!var2) { // L: 681 - this.enabledElementIds.add(var4); // L: 682 + for (int var3 = 0; var3 < WorldMapElement.WorldMapElement_count; ++var3) { + if (UserComparator10.WorldMapElement_get(var3) != null && UserComparator10.WorldMapElement_get(var3).category == var1) { + int var4 = UserComparator10.WorldMapElement_get(var3).objectId; + if (!var2) { + this.enabledElementIds.add(var4); } else { - this.enabledElementIds.remove(var4); // L: 685 + this.enabledElementIds.remove(var4); } } } - this.method6506(); // L: 689 - } // L: 690 + this.method6412(); + } - @ObfuscatedName("bf") + @ObfuscatedName("br") @ObfuscatedSignature( - descriptor = "(S)Z", - garbageValue = "-3673" + descriptor = "(I)Z", + garbageValue = "580836467" ) @Export("getElementsDisabled") public boolean getElementsDisabled() { - return !this.elementsDisabled; // L: 693 + return !this.elementsDisabled; } - @ObfuscatedName("bp") + @ObfuscatedName("bl") @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "-112" + descriptor = "(II)Z", + garbageValue = "686736746" ) @Export("isElementDisabled") public boolean isElementDisabled(int var1) { - return !this.enabledElements.contains(var1); // L: 697 + return !this.enabledElements.contains(var1); } - @ObfuscatedName("bg") + @ObfuscatedName("bx") @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "-49" + descriptor = "(II)Z", + garbageValue = "-1135479232" ) @Export("isCategoryDisabled") public boolean isCategoryDisabled(int var1) { - return !this.enabledCategories.contains(var1); // L: 701 + return !this.enabledCategories.contains(var1); } - @ObfuscatedName("bc") + @ObfuscatedName("bf") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "0" + descriptor = "(I)V", + garbageValue = "-1662329798" ) - void method6506() { - this.field4010.clear(); // L: 705 - this.field4010.addAll(this.enabledElements); // L: 706 - this.field4010.addAll(this.enabledElementIds); // L: 707 - } // L: 708 + void method6412() { + this.field4035.clear(); + this.field4035.addAll(this.enabledElements); + this.field4035.addAll(this.enabledElementIds); + } - @ObfuscatedName("bj") + @ObfuscatedName("bz") @ObfuscatedSignature( descriptor = "(IIIIIII)V", - garbageValue = "-1573355878" + garbageValue = "-1942025362" ) @Export("addElementMenuOptions") public void addElementMenuOptions(int var1, int var2, int var3, int var4, int var5, int var6) { - if (this.cacheLoader.isLoaded()) { // L: 711 - int var7 = (int)Math.ceil((double)((float)var3 / this.zoom)); // L: 714 - int var8 = (int)Math.ceil((double)((float)var4 / this.zoom)); // L: 715 - List var9 = this.worldMapManager.method738(this.centerTileX - var7 / 2 - 1, this.centerTileY - var8 / 2 - 1, var7 / 2 + this.centerTileX + 1, var8 / 2 + this.centerTileY + 1, var1, var2, var3, var4, var5, var6); // L: 716 - if (!var9.isEmpty()) { // L: 717 + if (this.cacheLoader.isLoaded()) { + int var7 = (int)Math.ceil((double)((float)var3 / this.zoom)); + int var8 = (int)Math.ceil((double)((float)var4 / this.zoom)); + List var9 = this.worldMapManager.method707(this.centerTileX - var7 / 2 - 1, this.centerTileY - var8 / 2 - 1, var7 / 2 + this.centerTileX + 1, var8 / 2 + this.centerTileY + 1, var1, var2, var3, var4, var5, var6); + if (!var9.isEmpty()) { Iterator var10 = var9.iterator(); boolean var13; do { - if (!var10.hasNext()) { // L: 720 - return; // L: 736 + if (!var10.hasNext()) { + return; } - AbstractWorldMapIcon var11 = (AbstractWorldMapIcon)var10.next(); // L: 721 - WorldMapElement var12 = class194.WorldMapElement_get(var11.getElement()); // L: 723 - var13 = false; // L: 724 + AbstractWorldMapIcon var11 = (AbstractWorldMapIcon)var10.next(); + WorldMapElement var12 = UserComparator10.WorldMapElement_get(var11.getElement()); + var13 = false; - for (int var14 = this.menuOpcodes.length - 1; var14 >= 0; --var14) { // L: 725 - if (var12.menuActions[var14] != null) { // L: 726 - ModelData0.insertMenuItemNoShift(var12.menuActions[var14], var12.menuTargetName, this.menuOpcodes[var14], var11.getElement(), var11.coord1.packed(), var11.coord2.packed()); // L: 727 - var13 = true; // L: 728 + for (int var14 = this.menuOpcodes.length - 1; var14 >= 0; --var14) { + if (var12.menuActions[var14] != null) { + WorldMapRegion.insertMenuItemNoShift(var12.menuActions[var14], var12.menuTargetName, this.menuOpcodes[var14], var11.getElement(), var11.coord1.packed(), var11.coord2.packed()); + var13 = true; } } - } while(!var13); // L: 731 + } while(!var13); } } - } // L: 712 718 732 + } - @ObfuscatedName("bl") + @ObfuscatedName("bm") @ObfuscatedSignature( - descriptor = "(ILhw;I)Lhw;", - garbageValue = "1728876075" + descriptor = "(ILhs;I)Lhs;", + garbageValue = "1185313718" ) - public Coord method6481(int var1, Coord var2) { - if (!this.cacheLoader.isLoaded()) { // L: 739 - return null; // L: 740 - } else if (!this.worldMapManager.isLoaded()) { // L: 742 - return null; // L: 743 - } else if (!this.currentMapArea.containsPosition(var2.x, var2.y)) { // L: 745 - return null; // L: 746 + public Coord method6414(int var1, Coord var2) { + if (!this.cacheLoader.isLoaded()) { + return null; + } else if (!this.worldMapManager.isLoaded()) { + return null; + } else if (!this.currentMapArea.containsPosition(var2.x, var2.y)) { + return null; } else { - HashMap var3 = this.worldMapManager.buildIcons(); // L: 748 - List var4 = (List)var3.get(var1); // L: 749 - if (var4 != null && !var4.isEmpty()) { // L: 750 - AbstractWorldMapIcon var5 = null; // L: 753 - int var6 = -1; // L: 754 - Iterator var7 = var4.iterator(); // L: 755 + HashMap var3 = this.worldMapManager.buildIcons(); + List var4 = (List)var3.get(var1); + if (var4 != null && !var4.isEmpty()) { + AbstractWorldMapIcon var5 = null; + int var6 = -1; + Iterator var7 = var4.iterator(); while (true) { AbstractWorldMapIcon var8; int var11; do { - if (!var7.hasNext()) { // L: 769 - return var5.coord2; // L: 770 + if (!var7.hasNext()) { + return var5.coord2; } - var8 = (AbstractWorldMapIcon)var7.next(); // L: 756 - int var9 = var8.coord2.x - var2.x; // L: 758 - int var10 = var8.coord2.y - var2.y; // L: 759 - var11 = var10 * var10 + var9 * var9; // L: 760 - if (var11 == 0) { // L: 761 - return var8.coord2; // L: 762 + var8 = (AbstractWorldMapIcon)var7.next(); + int var9 = var8.coord2.x - var2.x; + int var10 = var8.coord2.y - var2.y; + var11 = var10 * var10 + var9 * var9; + if (var11 == 0) { + return var8.coord2; } - } while(var11 >= var6 && var5 != null); // L: 764 + } while(var11 >= var6 && var5 != null); - var5 = var8; // L: 765 - var6 = var11; // L: 766 + var5 = var8; + var6 = var11; } } else { - return null; // L: 751 + return null; } } } @ObfuscatedName("bn") @ObfuscatedSignature( - descriptor = "(IILhw;Lhw;B)V", - garbageValue = "81" + descriptor = "(IILhs;Lhs;B)V", + garbageValue = "123" ) @Export("worldMapMenuAction") public void worldMapMenuAction(int var1, int var2, Coord var3, Coord var4) { - ScriptEvent var5 = new ScriptEvent(); // L: 774 - WorldMapEvent var6 = new WorldMapEvent(var2, var3, var4); // L: 775 - var5.setArgs(new Object[]{var6}); // L: 776 - switch(var1) { // L: 777 + ScriptEvent var5 = new ScriptEvent(); + WorldMapEvent var6 = new WorldMapEvent(var2, var3, var4); + var5.setArgs(new Object[]{var6}); + switch(var1) { case 1008: - var5.setType(10); // L: 785 - break; // L: 786 + var5.setType(10); + break; case 1009: - var5.setType(11); // L: 795 - break; // L: 796 + var5.setType(11); + break; case 1010: - var5.setType(12); // L: 790 - break; // L: 791 + var5.setType(12); + break; case 1011: - var5.setType(13); // L: 780 + var5.setType(13); break; case 1012: - var5.setType(14); // L: 800 + var5.setType(14); } - Entity.runScriptEvent(var5); // L: 804 - } // L: 805 + class22.runScriptEvent(var5); + } - @ObfuscatedName("bo") + @ObfuscatedName("bd") @ObfuscatedSignature( - descriptor = "(I)Lam;", - garbageValue = "-1173699486" + descriptor = "(I)Lap;", + garbageValue = "1413157620" ) @Export("iconStart") public AbstractWorldMapIcon iconStart() { - if (!this.cacheLoader.isLoaded()) { // L: 808 - return null; // L: 809 - } else if (!this.worldMapManager.isLoaded()) { // L: 811 - return null; // L: 812 + if (!this.cacheLoader.isLoaded()) { + return null; + } else if (!this.worldMapManager.isLoaded()) { + return null; } else { - HashMap var1 = this.worldMapManager.buildIcons(); // L: 814 - this.field4003 = new LinkedList(); // L: 815 - Iterator var2 = var1.values().iterator(); // L: 816 + HashMap var1 = this.worldMapManager.buildIcons(); + this.field4039 = new LinkedList(); + Iterator var2 = var1.values().iterator(); while (var2.hasNext()) { - List var3 = (List)var2.next(); // L: 817 - this.field4003.addAll(var3); // L: 819 + List var3 = (List)var2.next(); + this.field4039.addAll(var3); } - this.iconIterator = this.field4003.iterator(); // L: 822 - return this.iconNext(); // L: 823 + this.iconIterator = this.field4039.iterator(); + return this.iconNext(); } } - @ObfuscatedName("be") + @ObfuscatedName("bc") @ObfuscatedSignature( - descriptor = "(S)Lam;", - garbageValue = "18450" + descriptor = "(B)Lap;", + garbageValue = "71" ) @Export("iconNext") public AbstractWorldMapIcon iconNext() { - if (this.iconIterator == null) { // L: 827 - return null; // L: 828 + if (this.iconIterator == null) { + return null; } else { AbstractWorldMapIcon var1; do { - if (!this.iconIterator.hasNext()) { // L: 830 - return null; // L: 836 + if (!this.iconIterator.hasNext()) { + return null; } - var1 = (AbstractWorldMapIcon)this.iconIterator.next(); // L: 831 - } while(var1.getElement() == -1); // L: 832 + var1 = (AbstractWorldMapIcon)this.iconIterator.next(); + } while(var1.getElement() == -1); - return var1; // L: 833 + return var1; } } } diff --git a/runescape-client/src/main/java/WorldMapArchiveLoader.java b/runescape-client/src/main/java/WorldMapArchiveLoader.java index 65128d8836..0ca461dc09 100644 --- a/runescape-client/src/main/java/WorldMapArchiveLoader.java +++ b/runescape-client/src/main/java/WorldMapArchiveLoader.java @@ -4,106 +4,106 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ma") +@ObfuscatedName("mv") @Implements("WorldMapArchiveLoader") public class WorldMapArchiveLoader { - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("cacheName") String cacheName; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("archive") AbstractArchive archive; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = 1053326001 + intValue = -1853397367 ) @Export("percentLoaded") int percentLoaded; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("loaded") boolean loaded; @ObfuscatedSignature( - descriptor = "(Liw;)V" + descriptor = "(Lib;)V" ) WorldMapArchiveLoader(AbstractArchive var1) { - this.percentLoaded = 0; // L: 13 - this.loaded = false; // L: 14 - this.archive = var1; // L: 17 - } // L: 18 + this.percentLoaded = 0; + this.loaded = false; + this.archive = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)V", - garbageValue = "114" + descriptor = "(Ljava/lang/String;I)V", + garbageValue = "-1761137181" ) @Export("reset") void reset(String var1) { - if (var1 != null && !var1.isEmpty()) { // L: 21 - if (var1 != this.cacheName) { // L: 24 - this.cacheName = var1; // L: 27 - this.percentLoaded = 0; // L: 28 - this.loaded = false; // L: 29 - this.load(); // L: 30 + if (var1 != null && !var1.isEmpty()) { + if (var1 != this.cacheName) { + this.cacheName = var1; + this.percentLoaded = 0; + this.loaded = false; + this.load(); } } - } // L: 22 25 31 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-1229000181" + descriptor = "(B)I", + garbageValue = "106" ) @Export("load") int load() { - if (this.percentLoaded < 33) { // L: 34 - if (!this.archive.tryLoadFileByNames(WorldMapCacheName.field319.name, this.cacheName)) { // L: 35 - return this.percentLoaded; // L: 36 + if (this.percentLoaded < 33) { + if (!this.archive.tryLoadFileByNames(WorldMapCacheName.field326.name, this.cacheName)) { + return this.percentLoaded; } - this.percentLoaded = 33; // L: 38 + this.percentLoaded = 33; } - if (this.percentLoaded == 33) { // L: 40 - if (this.archive.isValidFileName(WorldMapCacheName.field321.name, this.cacheName) && !this.archive.tryLoadFileByNames(WorldMapCacheName.field321.name, this.cacheName)) { // L: 41 42 - return this.percentLoaded; // L: 43 + if (this.percentLoaded == 33) { + if (this.archive.isValidFileName(WorldMapCacheName.field327.name, this.cacheName) && !this.archive.tryLoadFileByNames(WorldMapCacheName.field327.name, this.cacheName)) { + return this.percentLoaded; } - this.percentLoaded = 66; // L: 46 + this.percentLoaded = 66; } - if (this.percentLoaded == 66) { // L: 48 - if (!this.archive.tryLoadFileByNames(this.cacheName, WorldMapCacheName.field328.name)) { // L: 49 - return this.percentLoaded; // L: 50 + if (this.percentLoaded == 66) { + if (!this.archive.tryLoadFileByNames(this.cacheName, WorldMapCacheName.field325.name)) { + return this.percentLoaded; } - this.percentLoaded = 100; // L: 52 - this.loaded = true; // L: 53 + this.percentLoaded = 100; + this.loaded = true; } - return this.percentLoaded; // L: 55 + return this.percentLoaded; } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-336032525" + garbageValue = "665938450" ) @Export("isLoaded") boolean isLoaded() { - return this.loaded; // L: 59 + return this.loaded; } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1960531717" + garbageValue = "-1669569125" ) @Export("getPercentLoaded") int getPercentLoaded() { - return this.percentLoaded; // L: 63 + return this.percentLoaded; } } diff --git a/runescape-client/src/main/java/WorldMapArea.java b/runescape-client/src/main/java/WorldMapArea.java index 87f400d78a..1c818b57ba 100644 --- a/runescape-client/src/main/java/WorldMapArea.java +++ b/runescape-client/src/main/java/WorldMapArea.java @@ -5,191 +5,189 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("ak") +@ObfuscatedName("av") @Implements("WorldMapArea") public class WorldMapArea { - @ObfuscatedName("lx") - @ObfuscatedGetter( - intValue = -654673941 + @ObfuscatedName("pn") + @ObfuscatedSignature( + descriptor = "Lkt;" ) - @Export("menuY") - static int menuY; - @ObfuscatedName("f") + @Export("clanChat") + static ClanChat clanChat; + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = -1009159255 + intValue = 437369697 ) @Export("id") int id; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("internalName") String internalName; - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("externalName") String externalName; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 519204621 + intValue = -1200311345 ) @Export("backGroundColor") int backGroundColor; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 1290828579 + intValue = -748601679 ) @Export("zoom") int zoom; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lhw;" + descriptor = "Lhs;" ) @Export("origin") Coord origin; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = 1500260549 + intValue = 1116802187 ) @Export("regionLowX") int regionLowX; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = -1947269635 + intValue = -647199591 ) @Export("regionHighX") int regionHighX; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = -1494847727 + intValue = 1048525541 ) @Export("regionLowY") int regionLowY; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = -255736363 + intValue = -1282095101 ) @Export("regionHighY") int regionHighY; - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("isMain") boolean isMain; - @ObfuscatedName("o") + @ObfuscatedName("e") @Export("sections") LinkedList sections; public WorldMapArea() { - this.id = -1; // L: 9 - this.backGroundColor = -1; // L: 12 - this.zoom = -1; // L: 13 - this.origin = null; // L: 14 - this.regionLowX = Integer.MAX_VALUE; // L: 15 - this.regionHighX = 0; // L: 16 - this.regionLowY = Integer.MAX_VALUE; // L: 17 - this.regionHighY = 0; // L: 18 - this.isMain = false; // L: 19 + this.id = -1; + this.backGroundColor = -1; + this.zoom = -1; + this.origin = null; + this.regionLowX = Integer.MAX_VALUE; + this.regionHighX = 0; + this.regionLowY = Integer.MAX_VALUE; + this.regionHighY = 0; + this.isMain = false; } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "1783204022" + descriptor = "(Lkj;II)V", + garbageValue = "1014419421" ) @Export("read") public void read(Buffer var1, int var2) { - this.id = var2; // L: 23 - this.internalName = var1.readStringCp1252NullTerminated(); // L: 24 - this.externalName = var1.readStringCp1252NullTerminated(); // L: 25 - this.origin = new Coord(var1.readInt()); // L: 26 - this.backGroundColor = var1.readInt(); // L: 27 - var1.readUnsignedByte(); // L: 28 - this.isMain = var1.readUnsignedByte() == 1; // L: 29 - this.zoom = var1.readUnsignedByte(); // L: 30 - int var3 = var1.readUnsignedByte(); // L: 31 - this.sections = new LinkedList(); // L: 32 + this.id = var2; + this.internalName = var1.readStringCp1252NullTerminated(); + this.externalName = var1.readStringCp1252NullTerminated(); + this.origin = new Coord(var1.readInt()); + this.backGroundColor = var1.readInt(); + var1.readUnsignedByte(); + this.isMain = var1.readUnsignedByte() == 1; + this.zoom = var1.readUnsignedByte(); + int var3 = var1.readUnsignedByte(); + this.sections = new LinkedList(); - for (int var4 = 0; var4 < var3; ++var4) { // L: 33 - this.sections.add(this.readWorldMapSection(var1)); // L: 34 + for (int var4 = 0; var4 < var3; ++var4) { + this.sections.add(this.readWorldMapSection(var1)); } - this.setBounds(); // L: 36 - } // L: 37 + this.setBounds(); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lkb;I)Las;", - garbageValue = "1469324380" + descriptor = "(Lkj;I)Lal;", + garbageValue = "1162272573" ) @Export("readWorldMapSection") WorldMapSection readWorldMapSection(Buffer var1) { - int var2 = var1.readUnsignedByte(); // L: 40 - WorldMapSectionType[] var3 = new WorldMapSectionType[]{WorldMapSectionType.WORLDMAPSECTIONTYPE3, WorldMapSectionType.WORLDMAPSECTIONTYPE0, WorldMapSectionType.WORLDMAPSECTIONTYPE2, WorldMapSectionType.WORLDMAPSECTIONTYPE1}; // L: 43 - WorldMapSectionType var4 = (WorldMapSectionType)class195.findEnumerated(var3, var2); // L: 45 - Object var5 = null; // L: 46 - switch(var4.type) { // L: 47 + int var2 = var1.readUnsignedByte(); + WorldMapSectionType var3 = (WorldMapSectionType)UrlRequester.findEnumerated(WorldMapSectionType.method295(), var2); + Object var4 = null; + switch(var3.type) { case 0: - var5 = new WorldMapSection3(); // L: 52 - break; // L: 53 + var4 = new WorldMapSection1(); + break; case 1: - var5 = new WorldMapSection0(); // L: 55 - break; // L: 56 + var4 = new WorldMapSection2(); + break; case 2: - var5 = new WorldMapSection2(); // L: 58 - break; // L: 59 + var4 = new class51(); + break; case 3: - var5 = new WorldMapSection1(); // L: 49 + var4 = new WorldMapSection0(); break; default: - throw new IllegalStateException(""); // L: 61 + throw new IllegalStateException(""); } - ((WorldMapSection)var5).read(var1); // L: 63 - return (WorldMapSection)var5; // L: 64 + ((WorldMapSection)var4).read(var1); + return (WorldMapSection)var4; } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(IIII)Z", - garbageValue = "1894749665" + garbageValue = "-262671603" ) @Export("containsCoord") public boolean containsCoord(int var1, int var2, int var3) { - Iterator var4 = this.sections.iterator(); // L: 68 + Iterator var4 = this.sections.iterator(); WorldMapSection var5; do { if (!var4.hasNext()) { - return false; // L: 76 + return false; } - var5 = (WorldMapSection)var4.next(); // L: 69 - } while(!var5.containsCoord(var1, var2, var3)); // L: 71 + var5 = (WorldMapSection)var4.next(); + } while(!var5.containsCoord(var1, var2, var3)); - return true; // L: 72 + return true; } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "125" + descriptor = "(III)Z", + garbageValue = "-1971067580" ) @Export("containsPosition") public boolean containsPosition(int var1, int var2) { - int var3 = var1 / 64; // L: 80 - int var4 = var2 / 64; // L: 81 - if (var3 >= this.regionLowX && var3 <= this.regionHighX) { // L: 82 - if (var4 >= this.regionLowY && var4 <= this.regionHighY) { // L: 83 - Iterator var5 = this.sections.iterator(); // L: 84 + int var3 = var1 / 64; + int var4 = var2 / 64; + if (var3 >= this.regionLowX && var3 <= this.regionHighX) { + if (var4 >= this.regionLowY && var4 <= this.regionHighY) { + Iterator var5 = this.sections.iterator(); WorldMapSection var6; do { if (!var5.hasNext()) { - return false; // L: 92 + return false; } - var6 = (WorldMapSection)var5.next(); // L: 85 - } while(!var6.containsPosition(var1, var2)); // L: 87 + var6 = (WorldMapSection)var5.next(); + } while(!var6.containsPosition(var1, var2)); - return true; // L: 88 + return true; } else { return false; } @@ -198,248 +196,201 @@ public class WorldMapArea { } } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(IIII)[I", - garbageValue = "1010192538" + garbageValue = "2087440042" ) @Export("position") public int[] position(int var1, int var2, int var3) { - Iterator var4 = this.sections.iterator(); // L: 96 + Iterator var4 = this.sections.iterator(); WorldMapSection var5; do { if (!var4.hasNext()) { - return null; // L: 104 + return null; } - var5 = (WorldMapSection)var4.next(); // L: 97 - } while(!var5.containsCoord(var1, var2, var3)); // L: 99 + var5 = (WorldMapSection)var4.next(); + } while(!var5.containsCoord(var1, var2, var3)); - return var5.getBorderTileLengths(var1, var2, var3); // L: 100 + return var5.getBorderTileLengths(var1, var2, var3); } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(III)Lhw;", - garbageValue = "1409626540" + descriptor = "(IIB)Lhs;", + garbageValue = "-81" ) @Export("coord") public Coord coord(int var1, int var2) { - Iterator var3 = this.sections.iterator(); // L: 108 + Iterator var3 = this.sections.iterator(); WorldMapSection var4; do { if (!var3.hasNext()) { - return null; // L: 116 + return null; } - var4 = (WorldMapSection)var3.next(); // L: 109 - } while(!var4.containsPosition(var1, var2)); // L: 111 + var4 = (WorldMapSection)var3.next(); + } while(!var4.containsPosition(var1, var2)); - return var4.coord(var1, var2); // L: 112 - } - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "106" - ) - @Export("setBounds") - void setBounds() { - Iterator var1 = this.sections.iterator(); // L: 120 - - while (var1.hasNext()) { - WorldMapSection var2 = (WorldMapSection)var1.next(); // L: 121 - var2.expandBounds(this); // L: 123 - } - - } // L: 126 - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-101" - ) - @Export("getId") - public int getId() { - return this.id; // L: 129 - } - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "279642546" - ) - @Export("getIsMain") - public boolean getIsMain() { - return this.isMain; // L: 133 - } - - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "(B)Ljava/lang/String;", - garbageValue = "-4" - ) - @Export("getInternalName") - public String getInternalName() { - return this.internalName; // L: 137 - } - - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "1313308687" - ) - @Export("getExternalName") - public String getExternalName() { - return this.externalName; // L: 141 - } - - @ObfuscatedName("o") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "443425895" - ) - @Export("getBackGroundColor") - int getBackGroundColor() { - return this.backGroundColor; // L: 145 + return var4.coord(var1, var2); } @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-61" + descriptor = "(I)V", + garbageValue = "-777365291" ) - @Export("getZoom") - public int getZoom() { - return this.zoom; // L: 149 - } + @Export("setBounds") + void setBounds() { + Iterator var1 = this.sections.iterator(); + + while (var1.hasNext()) { + WorldMapSection var2 = (WorldMapSection)var1.next(); + var2.expandBounds(this); + } - @ObfuscatedName("x") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1743240328" - ) - @Export("getRegionLowX") - public int getRegionLowX() { - return this.regionLowX; // L: 153 } @ObfuscatedName("p") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1186709723" + garbageValue = "-1513965339" + ) + @Export("getId") + public int getId() { + return this.id; + } + + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "2015329854" + ) + @Export("getIsMain") + public boolean getIsMain() { + return this.isMain; + } + + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(I)Ljava/lang/String;", + garbageValue = "1918327624" + ) + @Export("getInternalName") + public String getInternalName() { + return this.internalName; + } + + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "(I)Ljava/lang/String;", + garbageValue = "-681281722" + ) + @Export("getExternalName") + public String getExternalName() { + return this.externalName; + } + + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "473258076" + ) + @Export("getBackGroundColor") + int getBackGroundColor() { + return this.backGroundColor; + } + + @ObfuscatedName("m") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "39" + ) + @Export("getZoom") + public int getZoom() { + return this.zoom; + } + + @ObfuscatedName("c") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-41" + ) + @Export("getRegionLowX") + public int getRegionLowX() { + return this.regionLowX; + } + + @ObfuscatedName("i") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "1672346255" ) @Export("getRegionHighX") public int getRegionHighX() { - return this.regionHighX; // L: 157 + return this.regionHighX; } - @ObfuscatedName("r") + @ObfuscatedName("f") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-192109314" + garbageValue = "8844028" ) @Export("getRegionLowY") public int getRegionLowY() { - return this.regionLowY; // L: 161 + return this.regionLowY; } @ObfuscatedName("y") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-288224716" + garbageValue = "-1226108190" ) @Export("getRegionHighY") public int getRegionHighY() { - return this.regionHighY; // L: 165 - } - - @ObfuscatedName("s") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-122" - ) - @Export("getOriginX") - public int getOriginX() { - return this.origin.x; // L: 169 - } - - @ObfuscatedName("j") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-2063856409" - ) - @Export("getOriginPlane") - public int getOriginPlane() { - return this.origin.plane; // L: 173 - } - - @ObfuscatedName("d") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "575879323" - ) - @Export("getOriginY") - public int getOriginY() { - return this.origin.y; // L: 177 - } - - @ObfuscatedName("a") - @ObfuscatedSignature( - descriptor = "(I)Lhw;", - garbageValue = "1845506335" - ) - @Export("getOrigin") - public Coord getOrigin() { - return new Coord(this.origin); // L: 181 + return this.regionHighY; } @ObfuscatedName("r") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "1232455466" + descriptor = "(I)I", + garbageValue = "-1989874207" ) - static final void method506(String var0) { - StringBuilder var10000 = new StringBuilder(); - Object var10001 = null; // L: 195 - var10000 = var10000.append("Please remove ").append(var0); - var10001 = null; - String var1 = var10000.append(" from your friend list first").toString(); - DevicePcmPlayerProvider.addGameMessage(30, "", var1); // L: 197 - } // L: 199 - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "852690937" - ) - static int method511(int var0, Script var1, boolean var2) { - if (var0 == ScriptOpcodes.LOGOUT) { // L: 3185 - Client.logoutTimer = 250; // L: 3186 - return 1; // L: 3187 - } else { - return 2; // L: 3189 - } + @Export("getOriginX") + public int getOriginX() { + return this.origin.x; } - @ObfuscatedName("ev") + @ObfuscatedName("q") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "896332793" + descriptor = "(I)I", + garbageValue = "-1105888625" ) - @Export("forceDisconnect") - static final void forceDisconnect(int var0) { - class89.logOut(); // L: 3007 - switch(var0) { // L: 3008 - case 1: - Login.loginIndex = 24; // L: 3017 - GrandExchangeOfferNameComparator.setLoginResponseString("", "You were disconnected from the server.", ""); // L: 3018 - break; - case 2: - MenuAction.method2171(); // L: 3011 - } + @Export("getOriginPlane") + public int getOriginPlane() { + return this.origin.plane; + } - } // L: 3023 + @ObfuscatedName("g") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "527248188" + ) + @Export("getOriginY") + public int getOriginY() { + return this.origin.y; + } + + @ObfuscatedName("o") + @ObfuscatedSignature( + descriptor = "(I)Lhs;", + garbageValue = "-745168638" + ) + @Export("getOrigin") + public Coord getOrigin() { + return new Coord(this.origin); + } } diff --git a/runescape-client/src/main/java/WorldMapAreaData.java b/runescape-client/src/main/java/WorldMapAreaData.java index 33fde2716a..95d02f9640 100644 --- a/runescape-client/src/main/java/WorldMapAreaData.java +++ b/runescape-client/src/main/java/WorldMapAreaData.java @@ -1,4 +1,3 @@ -import java.util.Date; import java.util.HashSet; import java.util.LinkedList; import java.util.List; @@ -6,173 +5,103 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import netscape.javascript.JSObject; -@ObfuscatedName("aj") +@ObfuscatedName("ay") @Implements("WorldMapAreaData") public class WorldMapAreaData extends WorldMapArea { - @ObfuscatedName("fl") - @ObfuscatedSignature( - descriptor = "Lkn;" - ) - @Export("WorldMapElement_fonts") - static Fonts WorldMapElement_fonts; - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("worldMapData0Set") HashSet worldMapData0Set; - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("worldMapData1Set") HashSet worldMapData1Set; - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("iconList") List iconList; WorldMapAreaData() { - } // L: 14 + } - @ObfuscatedName("cp") + @ObfuscatedName("cm") @ObfuscatedSignature( - descriptor = "(Lkb;Lkb;IZI)V", - garbageValue = "-1456851235" + descriptor = "(Lkj;Lkj;IZI)V", + garbageValue = "-303993957" ) @Export("init") void init(Buffer var1, Buffer var2, int var3, boolean var4) { - this.read(var1, var3); // L: 17 - int var5 = var2.readUnsignedShort(); // L: 18 + this.read(var1, var3); + int var5 = var2.readUnsignedShort(); this.worldMapData0Set = new HashSet(var5); int var6; for (var6 = 0; var6 < var5; ++var6) { - WorldMapData_0 var7 = new WorldMapData_0(); // L: 21 + WorldMapData_0 var7 = new WorldMapData_0(); try { - var7.init(var2); // L: 23 - } catch (IllegalStateException var12) { // L: 25 - continue; // L: 26 + var7.init(var2); + } catch (IllegalStateException var12) { + continue; } - this.worldMapData0Set.add(var7); // L: 28 + this.worldMapData0Set.add(var7); } - var6 = var2.readUnsignedShort(); // L: 30 - this.worldMapData1Set = new HashSet(var6); // L: 31 + var6 = var2.readUnsignedShort(); + this.worldMapData1Set = new HashSet(var6); - for (int var10 = 0; var10 < var6; ++var10) { // L: 32 - WorldMapData_1 var8 = new WorldMapData_1(); // L: 33 + for (int var10 = 0; var10 < var6; ++var10) { + WorldMapData_1 var8 = new WorldMapData_1(); try { - var8.init(var2); // L: 35 - } catch (IllegalStateException var11) { // L: 37 - continue; // L: 38 + var8.init(var2); + } catch (IllegalStateException var11) { + continue; } - this.worldMapData1Set.add(var8); // L: 40 + this.worldMapData1Set.add(var8); } - this.initIconsList(var2, var4); // L: 42 - } // L: 43 + this.initIconsList(var2, var4); + } - @ObfuscatedName("cc") + @ObfuscatedName("cz") @ObfuscatedSignature( - descriptor = "(Lkb;ZI)V", - garbageValue = "1993639768" + descriptor = "(Lkj;ZB)V", + garbageValue = "54" ) @Export("initIconsList") void initIconsList(Buffer var1, boolean var2) { - this.iconList = new LinkedList(); // L: 46 - int var3 = var1.readUnsignedShort(); // L: 47 + this.iconList = new LinkedList(); + int var3 = var1.readUnsignedShort(); - for (int var4 = 0; var4 < var3; ++var4) { // L: 48 - int var5 = var1.method5851(); // L: 49 - Coord var6 = new Coord(var1.readInt()); // L: 50 - boolean var7 = var1.readUnsignedByte() == 1; // L: 51 - if (var2 || !var7) { // L: 52 - this.iconList.add(new WorldMapIcon_0((Coord)null, var6, var5, (WorldMapLabel)null)); // L: 53 + for (int var4 = 0; var4 < var3; ++var4) { + int var5 = var1.method5559(); + Coord var6 = new Coord(var1.readInt()); + boolean var7 = var1.readUnsignedByte() == 1; + if (var2 || !var7) { + this.iconList.add(new WorldMapIcon_0((Coord)null, var6, var5, (WorldMapLabel)null)); } } - } // L: 56 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(Liw;I)V", - garbageValue = "1786307313" - ) - public static void method791(AbstractArchive var0) { - StructDefinition.StructDefinition_archive = var0; // L: 19 - } // L: 20 - - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "(Liw;II)Z", - garbageValue = "1365673620" - ) - static boolean method787(AbstractArchive var0, int var1) { - byte[] var2 = var0.takeFileFlat(var1); // L: 253 - if (var2 == null) { // L: 254 - return false; - } else { - class217.SpriteBuffer_decode(var2); // L: 255 - return true; // L: 256 - } } - @ObfuscatedName("gg") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-651553364" + descriptor = "(CLgi;I)I", + garbageValue = "-2004067316" ) - static boolean method786() { - return (Client.drawPlayerNames & 8) != 0; // L: 4926 + @Export("lowercaseChar") + static int lowercaseChar(char var0, Language var1) { + int var2 = var0 << 4; + if (Character.isUpperCase(var0) || Character.isTitleCase(var0)) { + var0 = Character.toLowerCase(var0); + var2 = (var0 << 4) + 1; + } + + if (var0 == 241 && var1 == Language.Language_ES) { + var2 = 1762; + } + + return var2; } - - @ObfuscatedName("je") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "-1738497554" - ) - @Export("runIntfCloseListeners") - static final void runIntfCloseListeners(int var0, int var1) { - if (ScriptFrame.loadInterface(var0)) { // L: 10809 - class25.runComponentCloseListeners(Widget.Widget_interfaceComponents[var0], var1); // L: 10810 - } - } // L: 10811 - - @ObfuscatedName("km") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)V", - garbageValue = "-85" - ) - static void method790(String var0) { - WorldMapRegion.field281 = var0; // L: 11557 - - try { - String var1 = ByteArrayPool.client.getParameter(Integer.toString(18)); // L: 11559 - String var2 = ByteArrayPool.client.getParameter(Integer.toString(13)); // L: 11560 - String var3 = var1 + "settings=" + var0 + "; version=1; path=/; domain=" + var2; // L: 11561 - String var5; - if (var0.length() == 0) { // L: 11562 - var3 = var3 + "; Expires=Thu, 01-Jan-1970 00:00:00 GMT; Max-Age=0"; - } else { - String var4 = var3 + "; Expires="; // L: 11564 - long var6 = User.currentTimeMillis() + 94608000000L; // L: 11566 - Calendar.Calendar_calendar.setTime(new Date(var6)); // L: 11568 - int var8 = Calendar.Calendar_calendar.get(7); // L: 11569 - int var9 = Calendar.Calendar_calendar.get(5); // L: 11570 - int var10 = Calendar.Calendar_calendar.get(2); // L: 11571 - int var11 = Calendar.Calendar_calendar.get(1); // L: 11572 - int var12 = Calendar.Calendar_calendar.get(11); // L: 11573 - int var13 = Calendar.Calendar_calendar.get(12); // L: 11574 - int var14 = Calendar.Calendar_calendar.get(13); // L: 11575 - var5 = Calendar.DAYS_OF_THE_WEEK[var8 - 1] + ", " + var9 / 10 + var9 % 10 + "-" + Calendar.MONTH_NAMES_ENGLISH_GERMAN[0][var10] + "-" + var11 + " " + var12 / 10 + var12 % 10 + ":" + var13 / 10 + var13 % 10 + ":" + var14 / 10 + var14 % 10 + " GMT"; // L: 11576 - var3 = var4 + var5 + "; Max-Age=" + 94608000L; // L: 11578 - } - - Client var16 = ByteArrayPool.client; // L: 11580 - var5 = "document.cookie=\"" + var3 + "\""; // L: 11581 - JSObject.getWindow(var16).eval(var5); // L: 11584 - } catch (Throwable var15) { // L: 11587 - } - - } // L: 11588 } diff --git a/runescape-client/src/main/java/WorldMapCacheName.java b/runescape-client/src/main/java/WorldMapCacheName.java index b4624a3dc2..3780c46db8 100644 --- a/runescape-client/src/main/java/WorldMapCacheName.java +++ b/runescape-client/src/main/java/WorldMapCacheName.java @@ -1,146 +1,140 @@ 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("aa") +@ObfuscatedName("ad") @Implements("WorldMapCacheName") public class WorldMapCacheName { - @ObfuscatedName("ri") - @ObfuscatedGetter( - intValue = 1131188791 - ) - static int field326; - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Laa;" - ) - public static final WorldMapCacheName field320; - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "Laa;" - ) - public static final WorldMapCacheName field319; - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "Laa;" - ) - public static final WorldMapCacheName field321; - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "Laa;" - ) - static final WorldMapCacheName field322; - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "Laa;" + descriptor = "Lad;" ) public static final WorldMapCacheName field328; - @ObfuscatedName("fq") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lkq;" + descriptor = "Lad;" ) - @Export("fontPlain12") - static Font fontPlain12; - @ObfuscatedName("q") + public static final WorldMapCacheName field326; + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "Lad;" + ) + public static final WorldMapCacheName field327; + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "Lad;" + ) + static final WorldMapCacheName field329; + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "Lad;" + ) + public static final WorldMapCacheName field325; + @ObfuscatedName("z") + public static short[][] field331; + @ObfuscatedName("j") @Export("name") public final String name; static { - field320 = new WorldMapCacheName("details"); // L: 4 - field319 = new WorldMapCacheName("compositemap"); // L: 5 - field321 = new WorldMapCacheName("compositetexture"); // L: 6 - field322 = new WorldMapCacheName("area"); // L: 7 - field328 = new WorldMapCacheName("labels"); // L: 8 + field328 = new WorldMapCacheName("details"); + field326 = new WorldMapCacheName("compositemap"); + field327 = new WorldMapCacheName("compositetexture"); + field329 = new WorldMapCacheName("area"); + field325 = new WorldMapCacheName("labels"); } WorldMapCacheName(String var1) { - this.name = var1; // L: 12 - } // L: 13 - - @ObfuscatedName("z") - static boolean method725(long var0) { - return (int)(var0 >>> 16 & 1L) == 1; // L: 60 + this.name = var1; } - @ObfuscatedName("hv") + @ObfuscatedName("fp") @ObfuscatedSignature( - descriptor = "(ZLks;B)V", - garbageValue = "10" + descriptor = "(II)V", + garbageValue = "-2075220259" ) - static final void method724(boolean var0, PacketBuffer var1) { - while (true) { - if (var1.bitsRemaining(Client.packetWriter.serverPacketLength) >= 27) { // L: 7532 - int var2 = var1.readBits(15); // L: 7533 - if (var2 != 32767) { // L: 7534 - boolean var3 = false; // L: 7535 - if (Client.npcs[var2] == null) { // L: 7536 - Client.npcs[var2] = new NPC(); // L: 7537 - var3 = true; // L: 7538 - } + @Export("updateGameState") + static void updateGameState(int var0) { + if (var0 != Client.gameState) { + if (Client.gameState == 0) { + WorldMapIcon_0.client.method1050(); + } - NPC var4 = Client.npcs[var2]; // L: 7540 - Client.npcIndices[++Client.npcCount - 1] = var2; // L: 7541 - var4.npcCycle = Client.cycle; // L: 7542 - int var5 = var1.readBits(1); // L: 7543 - int var6 = var1.readBits(1); // L: 7544 - if (var6 == 1) { // L: 7545 - Client.field727[++Client.field726 - 1] = var2; - } - - int var7 = Client.defaultRotations[var1.readBits(3)]; // L: 7546 - if (var3) { // L: 7547 - var4.orientation = var4.rotation = var7; - } - - int var8; - if (var0) { // L: 7549 - var8 = var1.readBits(8); // L: 7550 - if (var8 > 127) { // L: 7551 - var8 -= 256; - } - } else { - var8 = var1.readBits(5); // L: 7554 - if (var8 > 15) { // L: 7555 - var8 -= 32; - } - } - - int var9; - if (var0) { // L: 7558 - var9 = var1.readBits(8); // L: 7559 - if (var9 > 127) { // L: 7560 - var9 -= 256; - } - } else { - var9 = var1.readBits(5); // L: 7563 - if (var9 > 15) { // L: 7564 - var9 -= 32; - } - } - - var4.definition = Clock.getNpcDefinition(var1.readBits(14)); // L: 7566 - var4.field1011 = var4.definition.size; // L: 7567 - var4.field1028 = var4.definition.rotation; // L: 7568 - if (var4.field1028 == 0) { // L: 7569 - var4.rotation = 0; - } - - var4.walkSequence = var4.definition.walkSequence; // L: 7570 - var4.walkBackSequence = var4.definition.walkBackSequence; // L: 7571 - var4.walkLeftSequence = var4.definition.walkLeftSequence; // L: 7572 - var4.walkRightSequence = var4.definition.walkRightSequence; // L: 7573 - var4.idleSequence = var4.definition.idleSequence; // L: 7574 - var4.turnLeftSequence = var4.definition.turnLeftSequence; // L: 7575 - var4.turnRightSequence = var4.definition.turnRightSequence; // L: 7576 - var4.method2144(PlayerType.localPlayer.pathX[0] + var9, PlayerType.localPlayer.pathY[0] + var8, var5 == 1); // L: 7577 - continue; // L: 7578 + if (var0 == 20 || var0 == 40 || var0 == 45) { + Client.loginState = 0; + Client.field892 = 0; + Client.field681 = 0; + Client.timer.method5033(var0); + if (var0 != 20) { + WorldMapDecoration.method380(false); } } - var1.exportIndex(); // L: 7579 - return; // L: 7580 + if (var0 != 20 && var0 != 40 && InterfaceParent.field562 != null) { + InterfaceParent.field562.close(); + InterfaceParent.field562 = null; + } + + if (Client.gameState == 25) { + Client.field704 = 0; + Client.field700 = 0; + Client.field701 = 1; + Client.field702 = 0; + Client.field703 = 1; + } + + if (var0 != 5 && var0 != 10) { + if (var0 == 20) { + Tiles.method1208(class92.archive10, Messages.archive8, true, Client.gameState == 11 ? 4 : 0); + } else if (var0 == 11) { + Tiles.method1208(class92.archive10, Messages.archive8, false, 4); + } else { + class89.method2122(); + } + } else { + Tiles.method1208(class92.archive10, Messages.archive8, true, 0); + } + + Client.gameState = var0; } } + + @ObfuscatedName("fy") + @ObfuscatedSignature( + descriptor = "(IZZZB)Lil;", + garbageValue = "-3" + ) + @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, PlayerAppearance.JagexCache_idxFiles[var0], 1000000); + } + + return new Archive(var4, class7.masterDisk, var0, var1, var2, var3); + } + + @ObfuscatedName("kk") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "1105794074" + ) + static final void method662(int var0) { + var0 = Math.min(Math.max(var0, 0), 127); + Timer.clientPreferences.soundEffectsVolume = var0; + GrandExchangeOffer.savePreferences(); + } + + @ObfuscatedName("lc") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "-1" + ) + static void method664() { + if (Client.oculusOrbState == 1) { + Client.field649 = true; + } + + } } diff --git a/runescape-client/src/main/java/WorldMapData_0.java b/runescape-client/src/main/java/WorldMapData_0.java index eb6ca49314..1b470cba31 100644 --- a/runescape-client/src/main/java/WorldMapData_0.java +++ b/runescape-client/src/main/java/WorldMapData_0.java @@ -1,248 +1,616 @@ +import java.io.ByteArrayInputStream; +import java.io.File; +import java.io.IOException; +import java.io.InvalidClassException; +import java.io.ObjectInputStream; +import java.io.OptionalDataException; +import java.io.RandomAccessFile; +import java.io.StreamCorruptedException; +import java.lang.reflect.Field; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.security.SecureRandom; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.Reflection; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("h") +@ObfuscatedName("k") @Implements("WorldMapData_0") public class WorldMapData_0 extends AbstractWorldMapData { - @ObfuscatedName("gm") + @ObfuscatedName("ro") @ObfuscatedGetter( - intValue = 1706879037 + intValue = 2110783872 ) - @Export("baseY") - static int baseY; + static int field112; + @ObfuscatedName("ei") + @Export("secureRandom") + static SecureRandom secureRandom; WorldMapData_0() { - } // L: 6 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkb;B)V", - garbageValue = "-1" + descriptor = "(Lkj;I)V", + garbageValue = "-804003183" ) @Export("init") void init(Buffer var1) { - int var2 = var1.readUnsignedByte(); // L: 9 - if (var2 != WorldMapID.field295.value) { // L: 10 - throw new IllegalStateException(""); // L: 11 + int var2 = var1.readUnsignedByte(); + if (var2 != WorldMapID.field292.value) { + throw new IllegalStateException(""); } else { - super.minPlane = var1.readUnsignedByte(); // L: 13 - super.planes = var1.readUnsignedByte(); // L: 14 - super.regionXLow = var1.readUnsignedShort(); // L: 15 - super.regionYLow = var1.readUnsignedShort(); // L: 16 - super.regionX = var1.readUnsignedShort(); // L: 17 + super.minPlane = var1.readUnsignedByte(); + super.planes = var1.readUnsignedByte(); + super.regionXLow = var1.readUnsignedShort() * 4096; + super.regionYLow = var1.readUnsignedShort() * 64; + super.regionX = var1.readUnsignedShort(); super.regionY = var1.readUnsignedShort(); - super.groupId = var1.method5851(); - super.fileId = var1.method5851(); + super.groupId = var1.method5559(); + super.fileId = var1.method5559(); } } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-1024222647" + descriptor = "(Lkj;I)V", + garbageValue = "1878970684" ) @Export("readGeography") void readGeography(Buffer var1) { - super.planes = Math.min(super.planes, 4); // L: 24 - super.floorUnderlayIds = new short[1][64][64]; // L: 25 - super.floorOverlayIds = new short[super.planes][64][64]; // L: 26 - super.field196 = new byte[super.planes][64][64]; // L: 27 - super.field187 = new byte[super.planes][64][64]; // L: 28 - super.decorations = new WorldMapDecoration[super.planes][64][64][]; // L: 29 - int var2 = var1.readUnsignedByte(); // L: 30 - if (var2 != class39.field287.value) { // L: 31 - throw new IllegalStateException(""); // L: 32 + super.planes = Math.min(super.planes, 4); + super.floorUnderlayIds = new short[1][64][64]; + super.floorOverlayIds = new short[super.planes][64][64]; + super.field178 = new byte[super.planes][64][64]; + super.field177 = new byte[super.planes][64][64]; + super.decorations = new WorldMapDecoration[super.planes][64][64][]; + int var2 = var1.readUnsignedByte(); + if (var2 != class39.field278.value) { + throw new IllegalStateException(""); } else { - int var3 = var1.readUnsignedByte(); // L: 34 - int var4 = var1.readUnsignedByte(); // L: 35 - if (var3 == super.regionX && var4 == super.regionY) { // L: 36 - for (int var5 = 0; var5 < 64; ++var5) { // L: 39 - for (int var6 = 0; var6 < 64; ++var6) { // L: 40 - this.readTile(var5, var6, var1); // L: 41 + int var3 = var1.readUnsignedByte(); + int var4 = var1.readUnsignedByte(); + if (var3 == super.regionX && var4 == super.regionY) { + for (int var5 = 0; var5 < 64; ++var5) { + for (int var6 = 0; var6 < 64; ++var6) { + this.readTile(var5, var6, var1); } } } else { - throw new IllegalStateException(""); // L: 37 + throw new IllegalStateException(""); } } - } // L: 44 + } + + public boolean equals(Object var1) { + if (!(var1 instanceof WorldMapData_0)) { + return false; + } else { + WorldMapData_0 var2 = (WorldMapData_0)var1; + return var2.regionX == super.regionX && super.regionY == var2.regionY; + } + } public int hashCode() { return super.regionX | super.regionY << 8; } - public boolean equals(Object var1) { - if (!(var1 instanceof WorldMapData_0)) { // L: 47 - return false; // L: 48 - } else { - WorldMapData_0 var2 = (WorldMapData_0)var1; - return var2.regionX == super.regionX && var2.regionY == super.regionY; - } - } - - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lkb;Ljava/lang/String;B)I", - garbageValue = "-23" + descriptor = "(CI)Z", + garbageValue = "69015458" ) - public static int method269(Buffer var0, String var1) { - int var2 = var0.offset; // L: 18 - byte[] var3 = class8.method113(var1); // L: 19 - var0.writeSmartByteShort(var3.length); // L: 20 - var0.offset += class219.huffman.compress(var3, 0, var3.length, var0.array, var0.offset); // L: 21 - return var0.offset - var2; // L: 22 - } + public static boolean method247(char var0) { + if ((var0 <= 0 || var0 >= 128) && (var0 < 160 || var0 > 255)) { + if (var0 != 0) { + char[] var1 = class298.cp1252AsciiExtension; - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "-1892884103" - ) - public static int method266(int var0) { - --var0; // L: 49 - var0 |= var0 >>> 1; // L: 50 - var0 |= var0 >>> 2; // L: 51 - var0 |= var0 >>> 4; // L: 52 - var0 |= var0 >>> 8; // L: 53 - var0 |= var0 >>> 16; // L: 54 - return var0 + 1; // L: 55 - } - - @ObfuscatedName("es") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-76" - ) - @Export("getLoginError") - static void getLoginError(int var0) { - if (var0 == -3) { // L: 2870 - GrandExchangeOfferNameComparator.setLoginResponseString("Connection timed out.", "Please try using a different world.", ""); - } else if (var0 == -2) { // L: 2871 - GrandExchangeOfferNameComparator.setLoginResponseString("Error connecting to server.", "Please try using a different world.", ""); - } else if (var0 == -1) { // L: 2872 - GrandExchangeOfferNameComparator.setLoginResponseString("No response from server.", "Please try using a different world.", ""); - } else if (var0 == 3) { // L: 2873 - Login.loginIndex = 3; // L: 2874 - Login.field1217 = 1; // L: 2875 - } else if (var0 == 4) { // L: 2877 - WorldMapDecoration.method428(0); // L: 2878 - } else if (var0 == 5) { // L: 2880 - Login.field1217 = 2; // L: 2881 - GrandExchangeOfferNameComparator.setLoginResponseString("Your account has not logged out from its last", "session or the server is too busy right now.", "Please try again in a few minutes."); // L: 2882 - } else if (var0 != 68 && (Client.onMobile || var0 != 6)) { // L: 2884 - if (var0 == 7) { // L: 2887 - GrandExchangeOfferNameComparator.setLoginResponseString("This world is full.", "Please use a different world.", ""); - } else if (var0 == 8) { // L: 2888 - GrandExchangeOfferNameComparator.setLoginResponseString("Unable to connect.", "Login server offline.", ""); - } else if (var0 == 9) { // L: 2889 - GrandExchangeOfferNameComparator.setLoginResponseString("Login limit exceeded.", "Too many connections from your address.", ""); - } else if (var0 == 10) { // L: 2890 - GrandExchangeOfferNameComparator.setLoginResponseString("Unable to connect.", "Bad session id.", ""); - } else if (var0 == 11) { // L: 2891 - GrandExchangeOfferNameComparator.setLoginResponseString("We suspect someone knows your password.", "Press 'change your password' on front page.", ""); - } else if (var0 == 12) { // L: 2892 - GrandExchangeOfferNameComparator.setLoginResponseString("You need a members account to login to this world.", "Please subscribe, or use a different world.", ""); - } else if (var0 == 13) { // L: 2893 - GrandExchangeOfferNameComparator.setLoginResponseString("Could not complete login.", "Please try using a different world.", ""); - } else if (var0 == 14) { // L: 2894 - GrandExchangeOfferNameComparator.setLoginResponseString("The server is being updated.", "Please wait 1 minute and try again.", ""); - } else if (var0 == 16) { // L: 2895 - GrandExchangeOfferNameComparator.setLoginResponseString("Too many login attempts.", "Please wait a few minutes before trying again.", ""); - } else if (var0 == 17) { // L: 2896 - GrandExchangeOfferNameComparator.setLoginResponseString("You are standing in a members-only area.", "To play on this world move to a free area first", ""); - } else if (var0 == 18) { // L: 2897 - WorldMapDecoration.method428(1); // L: 2898 - } else if (var0 == 19) { // L: 2900 - GrandExchangeOfferNameComparator.setLoginResponseString("This world is running a closed Beta.", "Sorry invited players only.", "Please use a different world."); - } else if (var0 == 20) { // L: 2901 - GrandExchangeOfferNameComparator.setLoginResponseString("Invalid loginserver requested.", "Please try using a different world.", ""); - } else if (var0 == 22) { // L: 2902 - GrandExchangeOfferNameComparator.setLoginResponseString("Malformed login packet.", "Please try again.", ""); - } else if (var0 == 23) { // L: 2903 - GrandExchangeOfferNameComparator.setLoginResponseString("No reply from loginserver.", "Please wait 1 minute and try again.", ""); - } else if (var0 == 24) { // L: 2904 - GrandExchangeOfferNameComparator.setLoginResponseString("Error loading your profile.", "Please contact customer support.", ""); - } else if (var0 == 25) { // L: 2905 - GrandExchangeOfferNameComparator.setLoginResponseString("Unexpected loginserver response.", "Please try using a different world.", ""); - } else if (var0 == 26) { // L: 2906 - GrandExchangeOfferNameComparator.setLoginResponseString("This computers address has been blocked", "as it was used to break our rules.", ""); - } else if (var0 == 27) { // L: 2907 - GrandExchangeOfferNameComparator.setLoginResponseString("", "Service unavailable.", ""); - } else if (var0 == 31) { // L: 2908 - GrandExchangeOfferNameComparator.setLoginResponseString("Your account must have a displayname set", "in order to play the game. Please set it", "via the website, or the main game."); - } else if (var0 == 32) { // L: 2909 - GrandExchangeOfferNameComparator.setLoginResponseString("Your attempt to log into your account was", "unsuccessful. Don't worry, you can sort", "this out by visiting the billing system."); - } else if (var0 == 37) { // L: 2910 - GrandExchangeOfferNameComparator.setLoginResponseString("Your account is currently inaccessible.", "Please try again in a few minutes.", ""); - } else if (var0 == 38) { // L: 2911 - GrandExchangeOfferNameComparator.setLoginResponseString("You need to vote to play!", "Visit runescape.com and vote,", "and then come back here!"); - } else if (var0 == 55) { // L: 2912 - Login.loginIndex = 8; // L: 2913 - } else { - if (var0 == 56) { // L: 2915 - GrandExchangeOfferNameComparator.setLoginResponseString("Enter the 6-digit code generated by your", "authenticator app.", ""); // L: 2916 - BuddyRankComparator.updateGameState(11); // L: 2917 - return; // L: 2918 - } - - if (var0 == 57) { // L: 2920 - GrandExchangeOfferNameComparator.setLoginResponseString("The code you entered was incorrect.", "Please try again.", ""); // L: 2921 - BuddyRankComparator.updateGameState(11); // L: 2922 - return; // L: 2923 - } - - if (var0 == 61) { // L: 2925 - Login.loginIndex = 7; // L: 2926 - } else { - GrandExchangeOfferNameComparator.setLoginResponseString("Unexpected server response", "Please try using a different world.", ""); // L: 2928 + for (int var2 = 0; var2 < var1.length; ++var2) { + char var3 = var1[var2]; + if (var0 == var3) { + return true; + } } } + + return false; } else { - GrandExchangeOfferNameComparator.setLoginResponseString("RuneScape has been updated!", "Please reload this page.", ""); // L: 2885 + return true; + } + } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(Lky;S)V", + garbageValue = "13892" + ) + @Export("performReflectionCheck") + public static void performReflectionCheck(PacketBuffer var0) { + ReflectionCheck var1 = (ReflectionCheck)class105.reflectionChecks.last(); + if (var1 != null) { + int var2 = var0.offset; + var0.writeInt(var1.id); + + for (int var3 = 0; var3 < var1.size; ++var3) { + if (var1.creationErrors[var3] != 0) { + var0.writeByte(var1.creationErrors[var3]); + } else { + try { + int var4 = var1.operations[var3]; + Field var5; + int var6; + if (var4 == 0) { + var5 = var1.fields[var3]; + var6 = Reflection.getInt(var5, (Object)null); + var0.writeByte(0); + var0.writeInt(var6); + } else if (var4 == 1) { + var5 = var1.fields[var3]; + Reflection.setInt(var5, (Object)null, var1.intReplaceValues[var3]); + var0.writeByte(0); + } else if (var4 == 2) { + var5 = var1.fields[var3]; + var6 = var5.getModifiers(); + var0.writeByte(0); + var0.writeInt(var6); + } + + Method var25; + if (var4 != 3) { + if (var4 == 4) { + var25 = var1.methods[var3]; + var6 = var25.getModifiers(); + var0.writeByte(0); + var0.writeInt(var6); + } + } else { + var25 = var1.methods[var3]; + byte[][] var10 = var1.arguments[var3]; + Object[] var7 = new Object[var10.length]; + + for (int var8 = 0; var8 < var10.length; ++var8) { + ObjectInputStream var9 = new ObjectInputStream(new ByteArrayInputStream(var10[var8])); + var7[var8] = var9.readObject(); + } + + Object var11 = Reflection.invoke(var25, (Object)null, var7); + if (var11 == null) { + var0.writeByte(0); + } else if (var11 instanceof Number) { + var0.writeByte(1); + var0.writeLong(((Number)var11).longValue()); + } else if (var11 instanceof String) { + var0.writeByte(2); + var0.writeStringCp1252NullTerminated((String)var11); + } else { + var0.writeByte(4); + } + } + } catch (ClassNotFoundException var13) { + var0.writeByte(-10); + } catch (InvalidClassException var14) { + var0.writeByte(-11); + } catch (StreamCorruptedException var15) { + var0.writeByte(-12); + } catch (OptionalDataException var16) { + var0.writeByte(-13); + } catch (IllegalAccessException var17) { + var0.writeByte(-14); + } catch (IllegalArgumentException var18) { + var0.writeByte(-15); + } catch (InvocationTargetException var19) { + var0.writeByte(-16); + } catch (SecurityException var20) { + var0.writeByte(-17); + } catch (IOException var21) { + var0.writeByte(-18); + } catch (NullPointerException var22) { + var0.writeByte(-19); + } catch (Exception var23) { + var0.writeByte(-20); + } catch (Throwable var24) { + var0.writeByte(-21); + } + } + } + + var0.writeCrc(var2); + var1.remove(); + } + } + + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-806912444" + ) + public static void method237() { + try { + File var0 = new File(TileItemPile.userHomeDirectory, "random.dat"); + int var2; + if (var0.exists()) { + JagexCache.JagexCache_randomDat = new BufferedFile(new AccessFile(var0, "rw", 25L), 24, 0); + } else { + label37: + for (int var1 = 0; var1 < DynamicObject.field1318.length; ++var1) { + for (var2 = 0; var2 < GraphicsObject.field1117.length; ++var2) { + File var3 = new File(GraphicsObject.field1117[var2] + DynamicObject.field1318[var1] + File.separatorChar + "random.dat"); + if (var3.exists()) { + JagexCache.JagexCache_randomDat = new BufferedFile(new AccessFile(var3, "rw", 25L), 24, 0); + break label37; + } + } + } + } + + if (JagexCache.JagexCache_randomDat == null) { + RandomAccessFile var4 = new RandomAccessFile(var0, "rw"); + var2 = var4.read(); + var4.seek(0L); + var4.write(var2); + var4.seek(0L); + var4.close(); + JagexCache.JagexCache_randomDat = new BufferedFile(new AccessFile(var0, "rw", 25L), 24, 0); + } + } catch (IOException var5) { } - BuddyRankComparator.updateGameState(10); // L: 2929 - } // L: 2930 + } - @ObfuscatedName("if") + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "(IIIIIB)V", - garbageValue = "94" + descriptor = "(ILcs;ZI)I", + garbageValue = "2012352771" ) - @Export("drawScrollBar") - static final void drawScrollBar(int var0, int var1, int var2, int var3, int var4) { - WorldMapSection0.scrollBarSprites[0].drawAt(var0, var1); // L: 9972 - WorldMapSection0.scrollBarSprites[1].drawAt(var0, var3 + var1 - 16); // L: 9973 - Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1 + 16, 16, var3 - 32, Client.field925); // L: 9974 - int var5 = var3 * (var3 - 32) / var4; // L: 9975 - if (var5 < 8) { // L: 9976 - var5 = 8; + static int method245(int var0, Script var1, boolean var2) { + if (var0 == ScriptOpcodes.SOUND_SYNTH) { + VarcInt.Interpreter_intStackSize -= 3; + class232.queueSoundEffect(Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize], Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1], Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 2]); + return 1; + } else if (var0 == ScriptOpcodes.SOUND_SONG) { + playSong(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + return 1; + } else if (var0 == ScriptOpcodes.SOUND_JINGLE) { + VarcInt.Interpreter_intStackSize -= 2; + LoginPacket.method3672(Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize], Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]); + return 1; + } else { + int var3; + if (var0 == 3203) { + var3 = Math.min(Math.max(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize], 0), 100); + WorldMapEvent.method810(Math.round((float)var3 * 2.55F)); + return 1; + } else if (var0 == 3204) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Math.round((float)Timer.clientPreferences.musicVolume / 2.55F); + return 1; + } else if (var0 == 3205) { + var3 = Math.min(Math.max(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize], 0), 100); + WorldMapCacheName.method662(Math.round((float)var3 * 1.27F)); + return 1; + } else if (var0 == 3206) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Math.round((float)Timer.clientPreferences.soundEffectsVolume / 1.27F); + return 1; + } else if (var0 == 3207) { + var3 = Math.min(Math.max(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize], 0), 100); + class194.method3676(Math.round(1.27F * (float)var3)); + return 1; + } else if (var0 == 3208) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Math.round((float)Timer.clientPreferences.areaSoundEffectsVolume / 1.27F); + return 1; + } else { + return 2; + } + } + } + + @ObfuscatedName("gr") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-1507499151" + ) + @Export("playSong") + static void playSong(int var0) { + if (var0 == -1 && !Client.field883) { + WorldMapRegion.method588(); + } else if (var0 != -1 && var0 != Client.currentTrackGroupId && Timer.clientPreferences.musicVolume != 0 && !Client.field883) { + SecureRandomCallable.method1221(2, class217.archive6, var0, 0, Timer.clientPreferences.musicVolume, false); } - int var6 = (var3 - 32 - var5) * var2 / (var4 - var3); // L: 9977 - Rasterizer2D.Rasterizer2D_fillRectangle(var0, var6 + var1 + 16, 16, var5, Client.field765); // L: 9978 - Rasterizer2D.Rasterizer2D_drawVerticalLine(var0, var6 + var1 + 16, var5, Client.field747); // L: 9979 - Rasterizer2D.Rasterizer2D_drawVerticalLine(var0 + 1, var6 + var1 + 16, var5, Client.field747); // L: 9980 - Rasterizer2D.Rasterizer2D_drawHorizontalLine(var0, var6 + var1 + 16, 16, Client.field747); // L: 9981 - Rasterizer2D.Rasterizer2D_drawHorizontalLine(var0, var6 + var1 + 17, 16, Client.field747); // L: 9982 - Rasterizer2D.Rasterizer2D_drawVerticalLine(var0 + 15, var6 + var1 + 16, var5, Client.field746); // L: 9983 - Rasterizer2D.Rasterizer2D_drawVerticalLine(var0 + 14, var6 + var1 + 17, var5 - 1, Client.field746); // L: 9984 - Rasterizer2D.Rasterizer2D_drawHorizontalLine(var0, var5 + var6 + var1 + 15, 16, Client.field746); // L: 9985 - Rasterizer2D.Rasterizer2D_drawHorizontalLine(var0 + 1, var5 + var6 + var1 + 14, 15, Client.field746); // L: 9986 - } // L: 9987 + Client.currentTrackGroupId = var0; + } - @ObfuscatedName("kl") + @ObfuscatedName("hw") @ObfuscatedSignature( - descriptor = "(Lht;I)I", - garbageValue = "1533112407" + descriptor = "(ZLky;I)V", + garbageValue = "-1863896009" ) - @Export("getWidgetFlags") - static int getWidgetFlags(Widget var0) { - IntegerNode var1 = (IntegerNode)Client.widgetFlags.get((long)var0.childIndex + ((long)var0.id << 32)); // L: 11526 - return var1 != null ? var1.integer : var0.flags; // L: 11527 11528 + @Export("updateNpcs") + static final void updateNpcs(boolean var0, PacketBuffer var1) { + Client.field769 = 0; + Client.field826 = 0; + PacketBuffer var2 = Client.packetWriter.packetBuffer; + var2.importIndex(); + int var3 = var2.readBits(8); + int var4; + if (var3 < Client.npcCount) { + for (var4 = var3; var4 < Client.npcCount; ++var4) { + Client.field770[++Client.field769 - 1] = Client.npcIndices[var4]; + } + } + + if (var3 > Client.npcCount) { + throw new RuntimeException(""); + } else { + Client.npcCount = 0; + + int var5; + int var7; + int var8; + int var9; + int var10; + int var11; + for (var4 = 0; var4 < var3; ++var4) { + var5 = Client.npcIndices[var4]; + NPC var16 = Client.npcs[var5]; + var7 = var2.readBits(1); + if (var7 == 0) { + Client.npcIndices[++Client.npcCount - 1] = var5; + var16.npcCycle = Client.cycle; + } else { + var8 = var2.readBits(2); + if (var8 == 0) { + Client.npcIndices[++Client.npcCount - 1] = var5; + var16.npcCycle = Client.cycle; + Client.field654[++Client.field826 - 1] = var5; + } else if (var8 == 1) { + Client.npcIndices[++Client.npcCount - 1] = var5; + var16.npcCycle = Client.cycle; + var9 = var2.readBits(3); + var16.method2102(var9, (byte)1); + var10 = var2.readBits(1); + if (var10 == 1) { + Client.field654[++Client.field826 - 1] = var5; + } + } else if (var8 == 2) { + Client.npcIndices[++Client.npcCount - 1] = var5; + var16.npcCycle = Client.cycle; + var9 = var2.readBits(3); + var16.method2102(var9, (byte)2); + var10 = var2.readBits(3); + var16.method2102(var10, (byte)2); + var11 = var2.readBits(1); + if (var11 == 1) { + Client.field654[++Client.field826 - 1] = var5; + } + } else if (var8 == 3) { + Client.field770[++Client.field769 - 1] = var5; + } + } + } + + ModeWhere.method3714(var0, var1); + + int var14; + for (var14 = 0; var14 < Client.field826; ++var14) { + var3 = Client.field654[var14]; + NPC var15 = Client.npcs[var3]; + var5 = var1.readUnsignedByte(); + int var6; + if ((var5 & 8) != 0) { + var15.spotAnimation = var1.method5539(); + var6 = var1.readInt(); + var15.field979 = var6 >> 16; + var15.field978 = (var6 & 65535) + Client.cycle; + var15.spotAnimationFrame = 0; + var15.spotAnimationFrameCycle = 0; + if (var15.field978 > Client.cycle) { + var15.spotAnimationFrame = -1; + } + + if (var15.spotAnimation == 65535) { + var15.spotAnimation = -1; + } + } + + if ((var5 & 2) != 0) { + var6 = var1.method5582(); + var7 = var1.method5539(); + var8 = var15.x - (var6 - NetFileRequest.baseX * 64 - NetFileRequest.baseX * 64) * 64; + var9 = var15.y - (var7 - class41.baseY * 64 - class41.baseY * 64) * 64; + if (var8 != 0 || var9 != 0) { + var15.field959 = (int)(Math.atan2((double)var8, (double)var9) * 325.949D) & 2047; + } + } + + if ((var5 & 16) != 0) { + var15.targetIndex = var1.method5580(); + if (var15.targetIndex == 65535) { + var15.targetIndex = -1; + } + } + + if ((var5 & 32) != 0) { + var15.overheadText = var1.readStringCp1252NullTerminated(); + var15.overheadTextCyclesRemaining = 100; + } + + if ((var5 & 1) != 0) { + var15.definition = WorldMapIcon_0.getNpcDefinition(var1.method5580()); + var15.field941 = var15.definition.size * 64; + var15.field940 = var15.definition.rotation; + var15.walkSequence = var15.definition.walkSequence; + var15.walkBackSequence = var15.definition.walkBackSequence; + var15.walkLeftSequence = var15.definition.walkLeftSequence; + var15.walkRightSequence = var15.definition.walkRightSequence; + var15.idleSequence = var15.definition.idleSequence; + var15.turnLeftSequence = var15.definition.turnLeftSequence; + var15.turnRightSequence = var15.definition.turnRightSequence; + } + + if ((var5 & 64) != 0) { + var6 = var1.method5582(); + if (var6 == 65535) { + var6 = -1; + } + + var7 = var1.readUnsignedByte(); + if (var6 == var15.sequence && var6 != -1) { + var8 = ParamDefinition.SequenceDefinition_get(var6).field3548; + if (var8 == 1) { + var15.sequenceFrame = 0; + var15.sequenceFrameCycle = 0; + var15.sequenceDelay = var7; + var15.field974 = 0; + } + + if (var8 == 2) { + var15.field974 = 0; + } + } else if (var6 == -1 || var15.sequence == -1 || ParamDefinition.SequenceDefinition_get(var6).field3557 >= ParamDefinition.SequenceDefinition_get(var15.sequence).field3557) { + var15.sequence = var6; + var15.sequenceFrame = 0; + var15.sequenceFrameCycle = 0; + var15.sequenceDelay = var7; + var15.field974 = 0; + var15.field996 = var15.pathLength; + } + } + + if ((var5 & 4) != 0) { + var6 = var1.method5571(); + int var12; + if (var6 > 0) { + for (var7 = 0; var7 < var6; ++var7) { + var9 = -1; + var10 = -1; + var11 = -1; + var8 = var1.readUShortSmart(); + if (var8 == 32767) { + var8 = var1.readUShortSmart(); + var10 = var1.readUShortSmart(); + var9 = var1.readUShortSmart(); + var11 = var1.readUShortSmart(); + } else if (var8 != 32766) { + var10 = var1.readUShortSmart(); + } else { + var8 = -1; + } + + var12 = var1.readUShortSmart(); + var15.addHitSplat(var8, var10, var9, var11, Client.cycle, var12); + } + } + + var7 = var1.readUnsignedByte(); + if (var7 > 0) { + for (var8 = 0; var8 < var7; ++var8) { + var9 = var1.readUShortSmart(); + var10 = var1.readUShortSmart(); + if (var10 != 32767) { + var11 = var1.readUShortSmart(); + var12 = var1.method5572(); + int var13 = var10 > 0 ? var1.method5572() : var12; + var15.addHealthBar(var9, Client.cycle, var10, var11, var12, var13); + } else { + var15.removeHealthBar(var9); + } + } + } + } + + if ((var5 & 128) != 0) { + var15.field981 = var1.method5645(); + var15.field982 = var1.method5645(); + var15.field958 = var1.method5645(); + var15.field956 = var1.method5645(); + var15.field984 = var1.readUnsignedShort() + Client.cycle; + var15.field973 = var1.method5582() + Client.cycle; + var15.field986 = var1.readUnsignedShort(); + var15.pathLength = 1; + var15.field996 = 0; + var15.field981 += var15.pathX[0]; + var15.field982 += var15.pathY[0]; + var15.field958 += var15.pathX[0]; + var15.field956 += var15.pathY[0]; + } + } + + for (var14 = 0; var14 < Client.field769; ++var14) { + var3 = Client.field770[var14]; + if (Client.npcs[var3].npcCycle != Client.cycle) { + Client.npcs[var3].definition = null; + Client.npcs[var3] = null; + } + } + + if (var1.offset != Client.packetWriter.serverPacketLength) { + throw new RuntimeException(var1.offset + "," + Client.packetWriter.serverPacketLength); + } else { + for (var14 = 0; var14 < Client.npcCount; ++var14) { + if (Client.npcs[Client.npcIndices[var14]] == null) { + throw new RuntimeException(var14 + "," + Client.npcCount); + } + } + + } + } + } + + @ObfuscatedName("ii") + @ObfuscatedSignature( + descriptor = "(IIB)V", + garbageValue = "43" + ) + static final void method243(int var0, int var1) { + if (Client.menuOptionsCount >= 2 || Client.isItemSelected != 0 || Client.isSpellSelected) { + if (Client.showMouseOverText) { + int var2 = WorldMapSprite.method463(); + String var3; + if (Client.isItemSelected == 1 && Client.menuOptionsCount < 2) { + var3 = "Use" + " " + Client.selectedItemName + " " + "->"; + } else if (Client.isSpellSelected && Client.menuOptionsCount < 2) { + var3 = Client.selectedSpellActionName + " " + Client.selectedSpellName + " " + "->"; + } else { + var3 = ArchiveLoader.method1230(var2); + } + + if (Client.menuOptionsCount > 2) { + var3 = var3 + class23.colorStartTag(16777215) + " " + '/' + " " + (Client.menuOptionsCount - 2) + " more options"; + } + + GrandExchangeOfferTotalQuantityComparator.fontBold12.drawRandomAlphaAndSpacing(var3, var0 + 4, var1 + 15, 16777215, 0, Client.cycle / 1000); + } + } + } + + @ObfuscatedName("ln") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;B)V", + garbageValue = "-51" + ) + static void method244(String var0) { + WorldMapSection1.field317 = var0; + + try { + String var1 = WorldMapIcon_0.client.getParameter(Integer.toString(18)); + String var2 = WorldMapIcon_0.client.getParameter(Integer.toString(13)); + String var3 = var1 + "settings=" + var0 + "; version=1; path=/; domain=" + var2; + if (var0.length() == 0) { + var3 = var3 + "; Expires=Thu, 01-Jan-1970 00:00:00 GMT; Max-Age=0"; + } else { + var3 = var3 + "; Expires=" + class3.method40(class298.currentTimeMillis() + 94608000000L) + "; Max-Age=" + 94608000L; + } + + Client var4 = WorldMapIcon_0.client; + String var5 = "document.cookie=\"" + var3 + "\""; + //JSObject.getWindow(var4).eval(var5); + } catch (Throwable var6) { + } + } } diff --git a/runescape-client/src/main/java/WorldMapData_1.java b/runescape-client/src/main/java/WorldMapData_1.java index 963f83e7a6..9483d8c0a3 100644 --- a/runescape-client/src/main/java/WorldMapData_1.java +++ b/runescape-client/src/main/java/WorldMapData_1.java @@ -1,511 +1,478 @@ -import java.lang.reflect.Field; -import java.lang.reflect.Method; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.Reflection; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("ae") +@ObfuscatedName("af") @Implements("WorldMapData_1") public class WorldMapData_1 extends AbstractWorldMapData { - @ObfuscatedName("di") - @ObfuscatedSignature( - descriptor = "Lid;" - ) - @Export("archive9") - static Archive archive9; - @ObfuscatedName("r") + @ObfuscatedName("f") @ObfuscatedGetter( - intValue = -212739847 + intValue = -1324815795 ) @Export("chunkXLow") int chunkXLow; - @ObfuscatedName("y") + @ObfuscatedName("a") @ObfuscatedGetter( - intValue = -1897982075 + intValue = 1581992363 ) @Export("chunkYLow") int chunkYLow; - @ObfuscatedName("s") + @ObfuscatedName("b") @ObfuscatedGetter( - intValue = -1681555037 + intValue = 1550350231 ) @Export("chunkX") int chunkX; - @ObfuscatedName("j") + @ObfuscatedName("y") @ObfuscatedGetter( - intValue = -1263884987 + intValue = -706955927 ) @Export("chunkY") int chunkY; WorldMapData_1() { - } // L: 11 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkb;B)V", - garbageValue = "-1" + descriptor = "(Lkj;I)V", + garbageValue = "-804130257" ) @Export("init") void init(Buffer var1) { - int var2 = var1.readUnsignedByte(); // L: 14 - if (var2 != WorldMapID.field292.value) { // L: 15 - throw new IllegalStateException(""); // L: 16 + int var2 = var1.readUnsignedByte(); + if (var2 != WorldMapID.field296.value) { + throw new IllegalStateException(""); } else { - super.minPlane = var1.readUnsignedByte(); // L: 18 - super.planes = var1.readUnsignedByte(); // L: 19 - super.regionXLow = var1.readUnsignedShort(); // L: 20 - super.regionYLow = var1.readUnsignedShort(); // L: 21 - this.chunkXLow = var1.readUnsignedByte(); // L: 22 - this.chunkYLow = var1.readUnsignedByte(); // L: 23 - super.regionX = var1.readUnsignedShort(); // L: 24 - super.regionY = var1.readUnsignedShort(); // L: 25 - this.chunkX = var1.readUnsignedByte(); // L: 26 - this.chunkY = var1.readUnsignedByte(); // L: 27 - super.groupId = var1.method5851(); // L: 28 - super.fileId = var1.method5851(); // L: 29 + super.minPlane = var1.readUnsignedByte(); + super.planes = var1.readUnsignedByte(); + super.regionXLow = var1.readUnsignedShort() * 4096; + super.regionYLow = var1.readUnsignedShort() * 64; + this.chunkXLow = var1.readUnsignedByte(); + this.chunkYLow = var1.readUnsignedByte(); + super.regionX = var1.readUnsignedShort(); + super.regionY = var1.readUnsignedShort(); + this.chunkX = var1.readUnsignedByte(); + this.chunkY = var1.readUnsignedByte(); + super.groupId = var1.method5559(); + super.fileId = var1.method5559(); } - } // L: 30 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-1024222647" + descriptor = "(Lkj;I)V", + garbageValue = "1878970684" ) @Export("readGeography") void readGeography(Buffer var1) { - super.planes = Math.min(super.planes, 4); // L: 33 - super.floorUnderlayIds = new short[1][64][64]; // L: 34 - super.floorOverlayIds = new short[super.planes][64][64]; // L: 35 - super.field196 = new byte[super.planes][64][64]; // L: 36 - super.field187 = new byte[super.planes][64][64]; // L: 37 - super.decorations = new WorldMapDecoration[super.planes][64][64][]; // L: 38 - int var2 = var1.readUnsignedByte(); // L: 39 - if (var2 != class39.field285.value) { // L: 40 - throw new IllegalStateException(""); // L: 41 + super.planes = Math.min(super.planes, 4); + super.floorUnderlayIds = new short[1][64][64]; + super.floorOverlayIds = new short[super.planes][64][64]; + super.field178 = new byte[super.planes][64][64]; + super.field177 = new byte[super.planes][64][64]; + super.decorations = new WorldMapDecoration[super.planes][64][64][]; + int var2 = var1.readUnsignedByte(); + if (var2 != class39.field277.value) { + throw new IllegalStateException(""); } else { - int var3 = var1.readUnsignedByte(); // L: 43 - int var4 = var1.readUnsignedByte(); // L: 44 - int var5 = var1.readUnsignedByte(); // L: 45 - int var6 = var1.readUnsignedByte(); // L: 46 - if (var3 == super.regionX && var4 == super.regionY && var5 == this.chunkX && var6 == this.chunkY) { // L: 47 - for (int var7 = 0; var7 < 8; ++var7) { // L: 50 - for (int var8 = 0; var8 < 8; ++var8) { // L: 51 - this.readTile(var7 + this.chunkX * 8, var8 + this.chunkY * 8, var1); // L: 52 + int var3 = var1.readUnsignedByte(); + int var4 = var1.readUnsignedByte(); + int var5 = var1.readUnsignedByte(); + int var6 = var1.readUnsignedByte(); + if (var3 == super.regionX && var4 == super.regionY && var5 == this.chunkX && var6 == this.chunkY) { + for (int var7 = 0; var7 < 8; ++var7) { + for (int var8 = 0; var8 < 8; ++var8) { + this.readTile(var7 + this.chunkX * 8, var8 + this.chunkY * 8, var1); } } } else { - throw new IllegalStateException(""); // L: 48 + throw new IllegalStateException(""); } } - } // L: 55 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-11" + descriptor = "(I)I", + garbageValue = "-915979405" ) @Export("getChunkXLow") int getChunkXLow() { return this.chunkXLow; } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-810889585" + garbageValue = "-1034896406" ) @Export("getChunkYLow") int getChunkYLow() { - return this.chunkYLow; // L: 77 + return this.chunkYLow; } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "65" + garbageValue = "3" ) @Export("getChunkX") int getChunkX() { - return this.chunkX; // L: 81 + return this.chunkX; } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "936777914" + garbageValue = "1372566315" ) @Export("getChunkY") int getChunkY() { - return this.chunkY; // L: 85 + return this.chunkY; } public boolean equals(Object var1) { - if (!(var1 instanceof WorldMapData_1)) { // L: 58 - return false; // L: 59 + if (!(var1 instanceof WorldMapData_1)) { + return false; } else { - WorldMapData_1 var2 = (WorldMapData_1)var1; // L: 61 - if (super.regionX == var2.regionX && super.regionY == var2.regionY) { // L: 62 - return var2.chunkX == this.chunkX && this.chunkY == var2.chunkY; // L: 65 + WorldMapData_1 var2 = (WorldMapData_1)var1; + if (var2.regionX == super.regionX && var2.regionY == super.regionY) { + return var2.chunkX == this.chunkX && this.chunkY == var2.chunkY; } else { - return false; // L: 63 + return false; } } } public int hashCode() { - return super.regionX | super.regionY << 8 | this.chunkX << 16 | this.chunkY << 24; // L: 69 + return super.regionX | super.regionY << 8 | this.chunkX << 16 | this.chunkY << 24; } - @ObfuscatedName("l") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "-984950165" + descriptor = "(II)Lif;", + garbageValue = "1792117497" ) - @Export("readReflectionCheck") - public static void readReflectionCheck(Buffer var0, int var1) { - ReflectionCheck var2 = new ReflectionCheck(); // L: 129 - var2.size = var0.readUnsignedByte(); // L: 130 - var2.id = var0.readInt(); // L: 131 - var2.operations = new int[var2.size]; // L: 132 - var2.creationErrors = new int[var2.size]; // L: 133 - var2.fields = new Field[var2.size]; // L: 134 - var2.intReplaceValues = new int[var2.size]; // L: 135 - var2.methods = new Method[var2.size]; // L: 136 - var2.arguments = new byte[var2.size][][]; // L: 137 - - for (int var3 = 0; var3 < var2.size; ++var3) { // L: 138 - try { - int var4 = var0.readUnsignedByte(); // L: 140 - String var5; - String var6; - int var7; - if (var4 != 0 && var4 != 1 && var4 != 2) { // L: 141 - if (var4 == 3 || var4 == 4) { // L: 151 - var5 = var0.readStringCp1252NullTerminated(); // L: 152 - var6 = var0.readStringCp1252NullTerminated(); // L: 153 - var7 = var0.readUnsignedByte(); // L: 154 - String[] var8 = new String[var7]; // L: 155 - - for (int var9 = 0; var9 < var7; ++var9) { // L: 156 - var8[var9] = var0.readStringCp1252NullTerminated(); - } - - String var20 = var0.readStringCp1252NullTerminated(); // L: 157 - byte[][] var10 = new byte[var7][]; // L: 158 - int var12; - if (var4 == 3) { // L: 159 - for (int var11 = 0; var11 < var7; ++var11) { // L: 160 - var12 = var0.readInt(); // L: 161 - var10[var11] = new byte[var12]; // L: 162 - var0.readBytes(var10[var11], 0, var12); // L: 163 - } - } - - var2.operations[var3] = var4; // L: 166 - Class[] var21 = new Class[var7]; // L: 167 - - for (var12 = 0; var12 < var7; ++var12) { // L: 168 - var21[var12] = Archive.loadClassFromDescriptor(var8[var12]); - } - - Class var22 = Archive.loadClassFromDescriptor(var20); // L: 169 - if (Archive.loadClassFromDescriptor(var5).getClassLoader() == null) { // L: 170 - throw new SecurityException(); - } - - Method[] var13 = Archive.loadClassFromDescriptor(var5).getDeclaredMethods(); // L: 171 - Method[] var14 = var13; // L: 173 - - for (int var15 = 0; var15 < var14.length; ++var15) { // L: 174 - Method var16 = var14[var15]; // L: 175 - if (Reflection.getMethodName(var16).equals(var6)) { // L: 177 - Class[] var17 = Reflection.getParameterTypes(var16); // L: 178 - if (var17.length == var21.length) { // L: 179 - boolean var18 = true; // L: 180 - - for (int var19 = 0; var19 < var21.length; ++var19) { // L: 181 - if (var21[var19] != var17[var19]) { // L: 182 - var18 = false; // L: 183 - break; // L: 184 - } - } - - if (var18 && var22 == var16.getReturnType()) { // L: 187 - var2.methods[var3] = var16; // L: 188 - } - } - } - } - - var2.arguments[var3] = var10; // L: 195 - } - } else { - var5 = var0.readStringCp1252NullTerminated(); // L: 142 - var6 = var0.readStringCp1252NullTerminated(); // L: 143 - var7 = 0; // L: 144 - if (var4 == 1) { // L: 145 - var7 = var0.readInt(); - } - - var2.operations[var3] = var4; // L: 146 - var2.intReplaceValues[var3] = var7; // L: 147 - if (Archive.loadClassFromDescriptor(var5).getClassLoader() == null) { // L: 148 - throw new SecurityException(); - } - - var2.fields[var3] = Reflection.findField(Archive.loadClassFromDescriptor(var5), var6); // L: 149 - } - } catch (ClassNotFoundException var24) { // L: 198 - var2.creationErrors[var3] = -1; // L: 199 - } catch (SecurityException var25) { // L: 201 - var2.creationErrors[var3] = -2; // L: 202 - } catch (NullPointerException var26) { // L: 204 - var2.creationErrors[var3] = -3; // L: 205 - } catch (Exception var27) { // L: 207 - var2.creationErrors[var3] = -4; // L: 208 - } catch (Throwable var28) { // L: 210 - var2.creationErrors[var3] = -5; // L: 211 - } - } - - class105.reflectionChecks.addFirst(var2); // L: 214 - } // L: 215 - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(Lks;IB)V", - garbageValue = "0" - ) - @Export("readPlayerUpdate") - static void readPlayerUpdate(PacketBuffer var0, int var1) { - boolean var2 = var0.readBits(1) == 1; // L: 362 - if (var2) { // L: 363 - Players.Players_pendingUpdateIndices[++Players.Players_pendingUpdateCount - 1] = var1; - } - - int var3 = var0.readBits(2); // L: 364 - Player var4 = Client.players[var1]; // L: 365 - if (var3 == 0) { // L: 366 - if (var2) { // L: 367 - var4.field664 = false; // L: 368 - } else if (Client.localPlayerIndex == var1) { // L: 371 - throw new RuntimeException(); - } else { - Players.Players_regions[var1] = (var4.plane << 28) + (FloorDecoration.baseX + var4.pathX[0] >> 13 << 14) + (WorldMapData_0.baseY + var4.pathY[0] >> 13); // L: 372 - if (var4.field1003 != -1) { // L: 373 - Players.Players_orientations[var1] = var4.field1003; - } else { - Players.Players_orientations[var1] = var4.orientation; // L: 374 - } - - Players.Players_targetIndices[var1] = var4.targetIndex; // L: 375 - Client.players[var1] = null; // L: 376 - if (var0.readBits(1) != 0) { // L: 377 - class9.updateExternalPlayer(var0, var1); - } - - } - } else { - int var5; - int var6; - int var7; - if (var3 == 1) { // L: 380 - var5 = var0.readBits(3); // L: 381 - var6 = var4.pathX[0]; // L: 382 - var7 = var4.pathY[0]; // L: 383 - if (var5 == 0) { // L: 384 - --var6; // L: 385 - --var7; // L: 386 - } else if (var5 == 1) { // L: 388 - --var7; - } else if (var5 == 2) { // L: 389 - ++var6; // L: 390 - --var7; // L: 391 - } else if (var5 == 3) { // L: 393 - --var6; - } else if (var5 == 4) { // L: 394 - ++var6; - } else if (var5 == 5) { // L: 395 - --var6; // L: 396 - ++var7; // L: 397 - } else if (var5 == 6) { // L: 399 - ++var7; - } else if (var5 == 7) { // L: 400 - ++var6; // L: 401 - ++var7; // L: 402 - } - - if (Client.localPlayerIndex == var1 && (var4.x < 1536 || var4.y < 1536 || var4.x >= 11776 || var4.y >= 11776)) { // L: 404 - var4.resetPath(var6, var7); // L: 405 - var4.field664 = false; // L: 406 - } else if (var2) { // L: 408 - var4.field664 = true; // L: 409 - var4.tileX = var6; // L: 410 - var4.tileY = var7; // L: 411 - } else { - var4.field664 = false; // L: 414 - var4.method1335(var6, var7, Players.field1295[var1]); // L: 415 - } - - } else if (var3 == 2) { // L: 419 - var5 = var0.readBits(4); // L: 420 - var6 = var4.pathX[0]; // L: 421 - var7 = var4.pathY[0]; // L: 422 - if (var5 == 0) { // L: 423 - var6 -= 2; // L: 424 - var7 -= 2; // L: 425 - } else if (var5 == 1) { // L: 427 - --var6; // L: 428 - var7 -= 2; // L: 429 - } else if (var5 == 2) { // L: 431 - var7 -= 2; - } else if (var5 == 3) { // L: 432 - ++var6; // L: 433 - var7 -= 2; // L: 434 - } else if (var5 == 4) { // L: 436 - var6 += 2; // L: 437 - var7 -= 2; // L: 438 - } else if (var5 == 5) { // L: 440 - var6 -= 2; // L: 441 - --var7; // L: 442 - } else if (var5 == 6) { // L: 444 - var6 += 2; // L: 445 - --var7; // L: 446 - } else if (var5 == 7) { // L: 448 - var6 -= 2; - } else if (var5 == 8) { // L: 449 - var6 += 2; - } else if (var5 == 9) { // L: 450 - var6 -= 2; // L: 451 - ++var7; // L: 452 - } else if (var5 == 10) { // L: 454 - var6 += 2; // L: 455 - ++var7; // L: 456 - } else if (var5 == 11) { // L: 458 - var6 -= 2; // L: 459 - var7 += 2; // L: 460 - } else if (var5 == 12) { // L: 462 - --var6; // L: 463 - var7 += 2; // L: 464 - } else if (var5 == 13) { // L: 466 - var7 += 2; - } else if (var5 == 14) { // L: 467 - ++var6; // L: 468 - var7 += 2; // L: 469 - } else if (var5 == 15) { // L: 471 - var6 += 2; // L: 472 - var7 += 2; // L: 473 - } - - if (Client.localPlayerIndex != var1 || var4.x >= 1536 && var4.y >= 1536 && var4.x < 11776 && var4.y < 11776) { // L: 475 - if (var2) { // L: 479 - var4.field664 = true; // L: 480 - var4.tileX = var6; // L: 481 - var4.tileY = var7; // L: 482 - } else { - var4.field664 = false; // L: 485 - var4.method1335(var6, var7, Players.field1295[var1]); // L: 486 - } - } else { - var4.resetPath(var6, var7); // L: 476 - var4.field664 = false; // L: 477 - } - - } else { - var5 = var0.readBits(1); // L: 490 - int var8; - int var9; - int var10; - int var11; - if (var5 == 0) { // L: 491 - var6 = var0.readBits(12); // L: 492 - var7 = var6 >> 10; // L: 493 - var8 = var6 >> 5 & 31; // L: 494 - if (var8 > 15) { // L: 495 - var8 -= 32; - } - - var9 = var6 & 31; // L: 496 - if (var9 > 15) { // L: 497 - var9 -= 32; - } - - var10 = var8 + var4.pathX[0]; // L: 498 - var11 = var9 + var4.pathY[0]; // L: 499 - if (Client.localPlayerIndex == var1 && (var4.x < 1536 || var4.y < 1536 || var4.x >= 11776 || var4.y >= 11776)) { // L: 500 - var4.resetPath(var10, var11); // L: 501 - var4.field664 = false; // L: 502 - } else if (var2) { // L: 504 - var4.field664 = true; // L: 505 - var4.tileX = var10; // L: 506 - var4.tileY = var11; // L: 507 - } else { - var4.field664 = false; // L: 510 - var4.method1335(var10, var11, Players.field1295[var1]); // L: 511 - } - - var4.plane = (byte)(var7 + var4.plane & 3); // L: 513 - if (Client.localPlayerIndex == var1) { // L: 514 - GrandExchangeOfferUnitPriceComparator.Client_plane = var4.plane; - } - - } else { - var6 = var0.readBits(30); // L: 517 - var7 = var6 >> 28; // L: 518 - var8 = var6 >> 14 & 16383; // L: 519 - var9 = var6 & 16383; // L: 520 - var10 = (var8 + FloorDecoration.baseX + var4.pathX[0] & 16383) - FloorDecoration.baseX; // L: 521 - var11 = (var9 + WorldMapData_0.baseY + var4.pathY[0] & 16383) - WorldMapData_0.baseY; // L: 522 - if (Client.localPlayerIndex == var1 && (var4.x < 1536 || var4.y < 1536 || var4.x >= 11776 || var4.y >= 11776)) { // L: 523 - var4.resetPath(var10, var11); // L: 524 - var4.field664 = false; // L: 525 - } else if (var2) { // L: 527 - var4.field664 = true; // L: 528 - var4.tileX = var10; // L: 529 - var4.tileY = var11; // L: 530 - } else { - var4.field664 = false; // L: 533 - var4.method1335(var10, var11, Players.field1295[var1]); // L: 534 - } - - var4.plane = (byte)(var7 + var4.plane & 3); // L: 536 - if (Client.localPlayerIndex == var1) { // L: 537 - GrandExchangeOfferUnitPriceComparator.Client_plane = var4.plane; - } - - } - } - } - } // L: 369 378 417 488 515 538 - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-218590717" - ) - static void method817(int var0) { - ItemContainer var1 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); // L: 72 + @Export("KitDefinition_get") + public static KitDefinition KitDefinition_get(int var0) { + KitDefinition var1 = (KitDefinition)KitDefinition.KitDefinition_cached.get((long)var0); if (var1 != null) { - var1.remove(); // L: 74 - } - } // L: 73 75 + return var1; + } else { + byte[] var2 = KitDefinition.KitDefinition_archive.takeFile(3, var0); + var1 = new KitDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); + } - @ObfuscatedName("am") + KitDefinition.KitDefinition_cached.put(var1, (long)var0); + return var1; + } + } + + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(ILhw;ZI)V", - garbageValue = "2083872008" + descriptor = "(ILcs;ZB)I", + garbageValue = "6" ) - static void method796(int var0, Coord var1, boolean var2) { - WorldMapArea var3 = Canvas.getWorldMap().getMapArea(var0); // L: 3851 - int var4 = PlayerType.localPlayer.plane; // L: 3852 - int var5 = (PlayerType.localPlayer.x >> 7) + FloorDecoration.baseX; // L: 3853 - int var6 = (PlayerType.localPlayer.y >> 7) + WorldMapData_0.baseY; // L: 3854 - Coord var7 = new Coord(var4, var5, var6); // L: 3855 - Canvas.getWorldMap().method6470(var3, var7, var1, var2); // L: 3856 - } // L: 3857 + static int method736(int var0, Script var1, boolean var2) { + int var4 = -1; + Widget var3; + if (var0 >= 2000) { + var0 -= 1000; + var4 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var3 = CollisionMap.getWidget(var4); + } else { + var3 = var2 ? PlayerAppearance.field2561 : VarcInt.field3264; + } + + if (var0 == ScriptOpcodes.CC_SETSCROLLPOS) { + VarcInt.Interpreter_intStackSize -= 2; + var3.scrollX = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + if (var3.scrollX > var3.scrollWidth - var3.width) { + var3.scrollX = var3.scrollWidth - var3.width; + } + + if (var3.scrollX < 0) { + var3.scrollX = 0; + } + + var3.scrollY = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + if (var3.scrollY > var3.scrollHeight - var3.height) { + var3.scrollY = var3.scrollHeight - var3.height; + } + + if (var3.scrollY < 0) { + var3.scrollY = 0; + } + + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETCOLOUR) { + var3.color = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETFILL) { + var3.fill = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETTRANS) { + var3.transparencyTop = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETLINEWID) { + var3.lineWid = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETGRAPHIC) { + var3.spriteId2 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SET2DANGLE) { + var3.spriteAngle = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETTILING) { + var3.spriteTiling = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETMODEL) { + var3.modelType = 1; + var3.modelId = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETMODELANGLE) { + VarcInt.Interpreter_intStackSize -= 6; + var3.modelOffsetX = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var3.modelOffsetY = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + var3.modelAngleX = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 2]; + var3.modelAngleY = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 3]; + var3.modelAngleZ = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 4]; + var3.modelZoom = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 5]; + CollisionMap.invalidateWidget(var3); + return 1; + } else { + int var8; + if (var0 == ScriptOpcodes.CC_SETMODELANIM) { + var8 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (var8 != var3.sequenceId) { + var3.sequenceId = var8; + var3.modelFrame = 0; + var3.modelFrameCycle = 0; + CollisionMap.invalidateWidget(var3); + } + + return 1; + } else if (var0 == ScriptOpcodes.CC_SETMODELORTHOG) { + var3.modelOrthog = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETTEXT) { + String var7 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + if (!var7.equals(var3.text)) { + var3.text = var7; + CollisionMap.invalidateWidget(var3); + } + + return 1; + } else if (var0 == ScriptOpcodes.CC_SETTEXTFONT) { + var3.fontId = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETTEXTALIGN) { + VarcInt.Interpreter_intStackSize -= 3; + var3.textXAlignment = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var3.textYAlignment = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + var3.textLineHeight = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 2]; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETTEXTSHADOW) { + var3.textShadowed = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETOUTLINE) { + var3.outline = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETGRAPHICSHADOW) { + var3.spriteShadow = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETVFLIP) { + var3.spriteFlipV = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETHFLIP) { + var3.spriteFlipH = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETSCROLLSIZE) { + VarcInt.Interpreter_intStackSize -= 2; + var3.scrollWidth = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var3.scrollHeight = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + CollisionMap.invalidateWidget(var3); + if (var4 != -1 && var3.type == 0) { + PendingSpawn.revalidateWidgetScroll(class9.Widget_interfaceComponents[var4 >> 16], var3, false); + } + + return 1; + } else if (var0 == ScriptOpcodes.CC_RESUME_PAUSEBUTTON) { + DynamicObject.resumePauseWidget(var3.id, var3.childIndex); + Client.meslayerContinueWidget = var3; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == 1122) { + var3.spriteId = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETFILLCOLOUR) { + var3.color2 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == 1124) { + var3.transparencyBot = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 == ScriptOpcodes.CC_SETFILLMODE) { + var8 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + class333 var6 = (class333)UrlRequester.findEnumerated(NetSocket.FillMode_values(), var8); + if (var6 != null) { + var3.fillMode = var6; + CollisionMap.invalidateWidget(var3); + } + + return 1; + } else { + boolean var5; + if (var0 == ScriptOpcodes.CC_SETLINEDIRECTION) { + var5 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + var3.field2620 = var5; + return 1; + } else if (var0 == ScriptOpcodes.CC_SETMODELTRANSPARENT) { + var5 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + var3.modelTransparency = var5; + return 1; + } else { + return 2; + } + } + } + } + + @ObfuscatedName("hb") + @ObfuscatedSignature( + descriptor = "(IIIIIIII)V", + garbageValue = "1785957932" + ) + @Export("addPendingSpawnToScene") + static final void addPendingSpawnToScene(int var0, int var1, int var2, int var3, int var4, int var5, int var6) { + if (var2 >= 1 && var3 >= 1 && var2 <= 102 && var3 <= 102) { + if (Client.isLowDetail && var0 != GameObject.Client_plane) { + return; + } + + long var7 = 0L; + boolean var9 = true; + boolean var10 = false; + boolean var11 = false; + if (var1 == 0) { + var7 = ArchiveLoader.scene.getBoundaryObjectTag(var0, var2, var3); + } + + if (var1 == 1) { + var7 = ArchiveLoader.scene.getWallDecorationTag(var0, var2, var3); + } + + if (var1 == 2) { + var7 = ArchiveLoader.scene.getGameObjectTag(var0, var2, var3); + } + + if (var1 == 3) { + var7 = ArchiveLoader.scene.getFloorDecorationTag(var0, var2, var3); + } + + int var12; + if (var7 != 0L) { + var12 = ArchiveLoader.scene.getObjectFlags(var0, var2, var3, var7); + int var14 = Occluder.Entity_unpackID(var7); + int var15 = var12 & 31; + int var16 = var12 >> 6 & 3; + ObjectDefinition var13; + if (var1 == 0) { + ArchiveLoader.scene.removeBoundaryObject(var0, var2, var3); + var13 = WorldMapDecoration.getObjectDefinition(var14); + if (var13.interactType != 0) { + Client.collisionMaps[var0].method3616(var2, var3, var15, var16, var13.boolean1); + } + } + + if (var1 == 1) { + ArchiveLoader.scene.removeWallDecoration(var0, var2, var3); + } + + if (var1 == 2) { + ArchiveLoader.scene.removeGameObject(var0, var2, var3); + var13 = WorldMapDecoration.getObjectDefinition(var14); + if (var2 + var13.sizeX > 103 || var3 + var13.sizeX > 103 || var2 + var13.sizeY > 103 || var3 + var13.sizeY > 103) { + return; + } + + if (var13.interactType != 0) { + Client.collisionMaps[var0].setFlagOffNonSquare(var2, var3, var13.sizeX, var13.sizeY, var16, var13.boolean1); + } + } + + if (var1 == 3) { + ArchiveLoader.scene.removeFloorDecoration(var0, var2, var3); + var13 = WorldMapDecoration.getObjectDefinition(var14); + if (var13.interactType == 1) { + Client.collisionMaps[var0].method3619(var2, var3); + } + } + } + + if (var4 >= 0) { + var12 = var0; + if (var0 < 3 && (Tiles.Tiles_renderFlags[1][var2][var3] & 2) == 2) { + var12 = var0 + 1; + } + + ScriptEvent.method1259(var0, var12, var2, var3, var4, var5, var6, ArchiveLoader.scene, Client.collisionMaps[var0]); + } + } + + } + + @ObfuscatedName("if") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "155276335" + ) + static void method767() { + for (int var0 = 0; var0 < Client.menuOptionsCount; ++var0) { + if (WorldMapSection1.method624(Client.menuOpcodes[var0])) { + if (var0 < Client.menuOptionsCount - 1) { + for (int var1 = var0; var1 < Client.menuOptionsCount - 1; ++var1) { + Client.menuActions[var1] = Client.menuActions[var1 + 1]; + Client.menuTargets[var1] = Client.menuTargets[var1 + 1]; + Client.menuOpcodes[var1] = Client.menuOpcodes[var1 + 1]; + Client.menuIdentifiers[var1] = Client.menuIdentifiers[var1 + 1]; + Client.menuArguments1[var1] = Client.menuArguments1[var1 + 1]; + Client.menuArguments2[var1] = Client.menuArguments2[var1 + 1]; + Client.menuShiftClick[var1] = Client.menuShiftClick[var1 + 1]; + } + } + + --var0; + --Client.menuOptionsCount; + } + } + + BuddyRankComparator.method3522(Occluder.menuWidth / 2 + AbstractUserComparator.menuX, DynamicObject.menuY); + } } diff --git a/runescape-client/src/main/java/WorldMapDecoration.java b/runescape-client/src/main/java/WorldMapDecoration.java index 277271463e..4676f2bda1 100644 --- a/runescape-client/src/main/java/WorldMapDecoration.java +++ b/runescape-client/src/main/java/WorldMapDecoration.java @@ -1,79 +1,178 @@ +import java.util.LinkedHashMap; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("az") +@ObfuscatedName("ak") @Implements("WorldMapDecoration") public class WorldMapDecoration { - @ObfuscatedName("se") - @ObfuscatedSignature( - descriptor = "Lr;" - ) - @Export("grandExchangeEvents") - static GrandExchangeEvents grandExchangeEvents; - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "Ldz;" - ) - @Export("soundSystem") - static SoundSystem soundSystem; - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 573803167 + intValue = 1756359553 ) @Export("objectDefinitionId") final int objectDefinitionId; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 502095041 + intValue = 1376256815 ) @Export("decoration") final int decoration; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -81694959 + intValue = 112778991 ) @Export("rotation") final int rotation; WorldMapDecoration(int var1, int var2, int var3) { - this.objectDefinitionId = var1; // L: 9 - this.decoration = var2; // L: 10 - this.rotation = var3; // L: 11 - } // L: 12 - - @ObfuscatedName("x") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "7" - ) - static void method428(int var0) { - Login.loginIndex = 12; // L: 1560 - Login.field1216 = var0; // L: 1561 - } // L: 1562 + this.objectDefinitionId = var1; + this.decoration = var2; + this.rotation = var3; + } @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "-1847675306" + descriptor = "(II)Ljm;", + garbageValue = "-671846279" ) - static int method429(int var0, Script var1, boolean var2) { - if (var0 == ScriptOpcodes.SOUND_SYNTH) { // L: 1705 - MilliClock.Interpreter_intStackSize -= 3; // L: 1706 - KitDefinition.queueSoundEffect(Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize], Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1], Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 2]); // L: 1707 - return 1; // L: 1708 - } else if (var0 == ScriptOpcodes.SOUND_SONG) { // L: 1710 - Messages.playSong(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 1711 - return 1; // L: 1712 - } else if (var0 == ScriptOpcodes.SOUND_JINGLE) { // L: 1714 - MilliClock.Interpreter_intStackSize -= 2; // L: 1715 - Projectile.playSoundJingle(Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize], Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]); // L: 1716 - return 1; // L: 1717 + @Export("getObjectDefinition") + public static ObjectDefinition getObjectDefinition(int var0) { + ObjectDefinition var1 = (ObjectDefinition)ObjectDefinition.ObjectDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; } else { - return 2; // L: 1719 + byte[] var2 = ObjectDefinition.ObjectDefinition_archive.takeFile(6, var0); + var1 = new ObjectDefinition(); + var1.id = var0; + if (var2 != null) { + var1.decode(new Buffer(var2)); + } + + var1.postDecode(); + if (var1.isSolid) { + var1.interactType = 0; + var1.boolean1 = false; + } + + ObjectDefinition.ObjectDefinition_cached.put(var1, (long)var0); + return var1; } } + + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "([BIIIIIII[Lfo;B)V", + garbageValue = "-44" + ) + static final void method381(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 var21 = 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 var15 = var2 + class51.method815(var11 & 7, var12 & 7, var7); + int var18 = var11 & 7; + int var19 = var12 & 7; + int var20 = var7 & 3; + int var17; + if (var20 == 0) { + var17 = var19; + } else if (var20 == 1) { + var17 = 7 - var18; + } else if (var20 == 2) { + var17 = 7 - var19; + } else { + var17 = var18; + } + + Huffman.loadTerrain(var21, var1, var15, var3 + var17, 0, 0, var7); + } else { + Huffman.loadTerrain(var21, 0, -1, -1, 0, 0, 0); + } + } + } + } + + } + + @ObfuscatedName("fl") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "1662959699" + ) + static final void method380(boolean var0) { + if (var0) { + Client.field872 = Login.field1200 ? class169.field2019 : class169.field2020; + } else { + LinkedHashMap var1 = Timer.clientPreferences.parameters; + String var3 = Login.Login_username; + int var4 = var3.length(); + int var5 = 0; + + for (int var6 = 0; var6 < var4; ++var6) { + var5 = (var5 << 5) - var5 + var3.charAt(var6); + } + + Client.field872 = var1.containsKey(var5) ? class169.field2025 : class169.field2021; + } + + } + + @ObfuscatedName("hp") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-708398742" + ) + static final void method382() { + for (PendingSpawn var0 = (PendingSpawn)Client.pendingSpawns.last(); var0 != null; var0 = (PendingSpawn)Client.pendingSpawns.previous()) { + if (var0.hitpoints > 0) { + --var0.hitpoints; + } + + if (var0.hitpoints == 0) { + if (var0.objectId < 0 || class234.method4159(var0.objectId, var0.field935)) { + WorldMapData_1.addPendingSpawnToScene(var0.plane, var0.type, var0.x, var0.y, var0.objectId, var0.field929, var0.field935); + var0.remove(); + } + } else { + if (var0.delay > 0) { + --var0.delay; + } + + if (var0.delay == 0 && var0.x >= 1 && var0.y >= 1 && var0.x <= 102 && var0.y <= 102 && (var0.id < 0 || class234.method4159(var0.id, var0.field933))) { + WorldMapData_1.addPendingSpawnToScene(var0.plane, var0.type, var0.x, var0.y, var0.id, var0.orientation, var0.field933); + var0.delay = -1; + if (var0.id == var0.objectId && var0.objectId == -1) { + var0.remove(); + } else if (var0.id == var0.objectId && var0.field929 == var0.orientation && var0.field935 == var0.field933) { + var0.remove(); + } + } + } + } + + } + + @ObfuscatedName("ij") + @ObfuscatedSignature( + descriptor = "(Lcq;IIB)V", + garbageValue = "-43" + ) + static final void method379(MenuAction var0, int var1, int var2) { + RouteStrategy.menuAction(var0.param0, var0.param1, var0.opcode, var0.identifier, var0.action, var0.action, var1, var2); + } } diff --git a/runescape-client/src/main/java/WorldMapDecorationType.java b/runescape-client/src/main/java/WorldMapDecorationType.java index defd550b58..ca98d09d63 100644 --- a/runescape-client/src/main/java/WorldMapDecorationType.java +++ b/runescape-client/src/main/java/WorldMapDecorationType.java @@ -4,128 +4,128 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ha") +@ObfuscatedName("ht") @Implements("WorldMapDecorationType") public enum WorldMapDecorationType implements Enumerated { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lha;" + descriptor = "Lht;" ) - field2750(0, 0), - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2747(1, 0), - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2748(2, 0), - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2754(3, 0), - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2751(9, 2), - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2746(4, 1), - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2752(5, 1), - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2753(6, 1), - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2749(7, 1), - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2769(8, 1), - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2756(12, 2), - @ObfuscatedName("o") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2757(13, 2), - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2758(14, 2), - @ObfuscatedName("x") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2759(15, 2), - @ObfuscatedName("p") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2760(16, 2), - @ObfuscatedName("r") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2761(17, 2), - @ObfuscatedName("y") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2762(18, 2), - @ObfuscatedName("s") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2755(19, 2), - @ObfuscatedName("j") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2764(20, 2), - @ObfuscatedName("w") - @ObfuscatedSignature( - descriptor = "Lha;" - ) - field2765(21, 2), + field2761(0, 0), @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lha;" + descriptor = "Lht;" ) - field2766(10, 2), - @ObfuscatedName("d") + field2745(1, 0), + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lha;" + descriptor = "Lht;" ) - field2767(11, 2), + field2746(2, 0), + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2747(3, 0), + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2748(9, 2), + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2753(4, 1), + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2744(5, 1), + @ObfuscatedName("p") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2751(6, 1), + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2752(7, 1), + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2756(8, 1), + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2754(12, 2), + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2765(13, 2), + @ObfuscatedName("m") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2762(14, 2), + @ObfuscatedName("c") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2757(15, 2), + @ObfuscatedName("i") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2758(16, 2), + @ObfuscatedName("f") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2759(17, 2), @ObfuscatedName("a") @ObfuscatedSignature( - descriptor = "Lha;" + descriptor = "Lht;" ) - field2768(22, 3); - + field2749(18, 2), + @ObfuscatedName("b") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2760(19, 2), + @ObfuscatedName("y") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2750(20, 2), + @ObfuscatedName("r") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2763(21, 2), + @ObfuscatedName("q") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2764(10, 2), @ObfuscatedName("g") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2755(11, 2), + @ObfuscatedName("s") + @ObfuscatedSignature( + descriptor = "Lht;" + ) + field2766(22, 3); + + @ObfuscatedName("o") @ObfuscatedGetter( - intValue = 1136720449 + intValue = 1564744229 ) @Export("id") public final int id; @@ -135,25 +135,16 @@ public enum WorldMapDecorationType implements Enumerated { garbageValue = "0" ) WorldMapDecorationType(int var3, int var4) { - this.id = var3; // L: 34 - } // L: 35 + this.id = var3; + } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "23" + descriptor = "(I)I", + garbageValue = "-275768542" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.id; // L: 38 - } - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(I)[Lgd;", - garbageValue = "-518638866" - ) - static LoginPacket[] method4257() { - return new LoginPacket[]{LoginPacket.field2342, LoginPacket.field2341, LoginPacket.field2338, LoginPacket.field2346, LoginPacket.field2339, LoginPacket.field2340}; // L: 22 + return this.id; } } diff --git a/runescape-client/src/main/java/WorldMapElement.java b/runescape-client/src/main/java/WorldMapElement.java index ec9051b30b..2193332b81 100644 --- a/runescape-client/src/main/java/WorldMapElement.java +++ b/runescape-client/src/main/java/WorldMapElement.java @@ -4,308 +4,337 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ij") +@ObfuscatedName("iy") @Implements("WorldMapElement") public class WorldMapElement extends DualNode { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("WorldMapElement_archive") static AbstractArchive WorldMapElement_archive; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "[Lij;" + descriptor = "[Liy;" ) @Export("WorldMapElement_cached") static WorldMapElement[] WorldMapElement_cached; - @ObfuscatedName("m") + @ObfuscatedName("x") + @ObfuscatedGetter( + intValue = 1991794269 + ) + @Export("WorldMapElement_count") + public static int WorldMapElement_count; + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lev;" + descriptor = "Lez;" ) @Export("WorldMapElement_cachedSprites") - static EvictingDualNodeHashTable WorldMapElement_cachedSprites; - @ObfuscatedName("z") + public static EvictingDualNodeHashTable WorldMapElement_cachedSprites; + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -1215445883 + intValue = 1735605345 ) @Export("objectId") public final int objectId; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = 1607593407 + intValue = 733089851 ) @Export("sprite1") public int sprite1; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = 97047321 + intValue = -2004503055 ) @Export("sprite2") int sprite2; - @ObfuscatedName("c") + @ObfuscatedName("p") @Export("name") public String name; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = -1968208311 + intValue = 2118102397 ) - public int field3245; - @ObfuscatedName("t") + public int field3251; + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = -1892301399 + intValue = -1394872311 ) @Export("textSize") public int textSize; - @ObfuscatedName("o") - public boolean field3258; - @ObfuscatedName("n") - public boolean field3248; - @ObfuscatedName("x") + @ObfuscatedName("e") + public boolean field3250; + @ObfuscatedName("m") + public boolean field3263; + @ObfuscatedName("c") @Export("menuActions") public String[] menuActions; - @ObfuscatedName("p") + @ObfuscatedName("i") @Export("menuTargetName") public String menuTargetName; - @ObfuscatedName("r") - int[] field3243; - @ObfuscatedName("y") + @ObfuscatedName("f") + int[] field3254; + @ObfuscatedName("a") @ObfuscatedGetter( - intValue = 802871207 - ) - int field3252; - @ObfuscatedName("s") - @ObfuscatedGetter( - intValue = -294512157 - ) - int field3253; - @ObfuscatedName("j") - @ObfuscatedGetter( - intValue = -935648347 - ) - int field3247; - @ObfuscatedName("w") - @ObfuscatedGetter( - intValue = 2073996601 + intValue = -1853395127 ) int field3255; - @ObfuscatedName("v") + @ObfuscatedName("b") + @ObfuscatedGetter( + intValue = 1120447861 + ) + int field3256; + @ObfuscatedName("y") + @ObfuscatedGetter( + intValue = 1444444969 + ) + int field3257; + @ObfuscatedName("r") + @ObfuscatedGetter( + intValue = 765833913 + ) + int field3258; + @ObfuscatedName("q") @ObfuscatedSignature( - descriptor = "Ljy;" + descriptor = "Ljt;" ) @Export("horizontalAlignment") public HorizontalAlignment horizontalAlignment; - @ObfuscatedName("d") + @ObfuscatedName("g") @ObfuscatedSignature( - descriptor = "Lir;" + descriptor = "Lit;" ) @Export("verticalAlignment") public VerticalAlignment verticalAlignment; - @ObfuscatedName("a") - int[] field3251; - @ObfuscatedName("g") - byte[] field3240; - @ObfuscatedName("h") + @ObfuscatedName("s") + int[] field3261; + @ObfuscatedName("o") + byte[] field3242; + @ObfuscatedName("k") @ObfuscatedGetter( - intValue = 2142350901 + intValue = 1907461079 ) @Export("category") public int category; static { - WorldMapElement_cachedSprites = new EvictingDualNodeHashTable(256); // L: 16 + WorldMapElement_cachedSprites = new EvictingDualNodeHashTable(256); } WorldMapElement(int var1) { - this.sprite1 = -1; // L: 18 - this.sprite2 = -1; // L: 19 - this.textSize = 0; // L: 22 - this.field3258 = true; // L: 24 - this.field3248 = false; // L: 25 - this.menuActions = new String[5]; // L: 26 - this.field3252 = Integer.MAX_VALUE; // L: 29 - this.field3253 = Integer.MAX_VALUE; // L: 30 - this.field3247 = Integer.MIN_VALUE; // L: 31 - this.field3255 = Integer.MIN_VALUE; // L: 32 - this.horizontalAlignment = HorizontalAlignment.HorizontalAlignment_centered; // L: 33 - this.verticalAlignment = VerticalAlignment.VerticalAlignment_centered; // L: 34 - this.category = -1; // L: 37 - this.objectId = var1; // L: 40 - } // L: 41 + this.sprite1 = -1; + this.sprite2 = -1; + this.textSize = 0; + this.field3250 = true; + this.field3263 = false; + this.menuActions = new String[5]; + this.field3255 = Integer.MAX_VALUE; + this.field3256 = Integer.MAX_VALUE; + this.field3257 = Integer.MIN_VALUE; + this.field3258 = Integer.MIN_VALUE; + this.horizontalAlignment = HorizontalAlignment.HorizontalAlignment_centered; + this.verticalAlignment = VerticalAlignment.VerticalAlignment_centered; + this.category = -1; + this.objectId = var1; + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lkb;S)V", - garbageValue = "-15323" + descriptor = "(Lkj;I)V", + garbageValue = "-1959908559" ) @Export("decode") void decode(Buffer var1) { while (true) { - int var2 = var1.readUnsignedByte(); // L: 70 - if (var2 == 0) { // L: 71 - return; // L: 74 + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; } - this.decodeNext(var1, var2); // L: 72 + this.decodeNext(var1, var2); } } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lkb;II)V", - garbageValue = "-2023596008" + descriptor = "(Lkj;II)V", + garbageValue = "-694353382" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { - if (var2 == 1) { // L: 77 - this.sprite1 = var1.method5851(); - } else if (var2 == 2) { // L: 78 - this.sprite2 = var1.method5851(); - } else if (var2 == 3) { // L: 79 + if (var2 == 1) { + this.sprite1 = var1.method5559(); + } else if (var2 == 2) { + this.sprite2 = var1.method5559(); + } else if (var2 == 3) { this.name = var1.readStringCp1252NullTerminated(); - } else if (var2 == 4) { // L: 80 - this.field3245 = var1.readMedium(); - } else if (var2 == 5) { // L: 81 - var1.readMedium(); // L: 82 - } else if (var2 == 6) { // L: 84 + } else if (var2 == 4) { + this.field3251 = var1.readMedium(); + } else if (var2 == 5) { + var1.readMedium(); + } else if (var2 == 6) { this.textSize = var1.readUnsignedByte(); } else { int var6; - if (var2 == 7) { // L: 85 - var6 = var1.readUnsignedByte(); // L: 86 - if ((var6 & 1) == 0) { // L: 87 - this.field3258 = false; + if (var2 == 7) { + var6 = var1.readUnsignedByte(); + if ((var6 & 1) == 0) { + this.field3250 = false; } - if ((var6 & 2) == 2) { // L: 88 - this.field3248 = true; + if ((var6 & 2) == 2) { + this.field3263 = true; } - } else if (var2 == 8) { // L: 90 - var1.readUnsignedByte(); // L: 91 - } else if (var2 >= 10 && var2 <= 14) { // L: 93 + } else if (var2 == 8) { + var1.readUnsignedByte(); + } else if (var2 >= 10 && var2 <= 14) { this.menuActions[var2 - 10] = var1.readStringCp1252NullTerminated(); - } else if (var2 == 15) { // L: 94 - var6 = var1.readUnsignedByte(); // L: 95 - this.field3243 = new int[var6 * 2]; // L: 96 + } else if (var2 == 15) { + var6 = var1.readUnsignedByte(); + this.field3254 = new int[var6 * 2]; int var4; - for (var4 = 0; var4 < var6 * 2; ++var4) { // L: 97 - this.field3243[var4] = var1.readShort(); + for (var4 = 0; var4 < var6 * 2; ++var4) { + this.field3254[var4] = var1.readShort(); } - var1.readInt(); // L: 98 - var4 = var1.readUnsignedByte(); // L: 99 - this.field3251 = new int[var4]; // L: 100 + var1.readInt(); + var4 = var1.readUnsignedByte(); + this.field3261 = new int[var4]; int var5; - for (var5 = 0; var5 < this.field3251.length; ++var5) { // L: 101 - this.field3251[var5] = var1.readInt(); + for (var5 = 0; var5 < this.field3261.length; ++var5) { + this.field3261[var5] = var1.readInt(); } - this.field3240 = new byte[var6]; // L: 102 + this.field3242 = new byte[var6]; - for (var5 = 0; var5 < var6; ++var5) { // L: 103 - this.field3240[var5] = var1.readByte(); + for (var5 = 0; var5 < var6; ++var5) { + this.field3242[var5] = var1.readByte(); } - } else if (var2 != 16) { // L: 105 - if (var2 == 17) { // L: 106 + } else if (var2 != 16) { + if (var2 == 17) { this.menuTargetName = var1.readStringCp1252NullTerminated(); - } else if (var2 == 18) { // L: 107 - var1.method5851(); // L: 108 - } else if (var2 == 19) { // L: 110 + } else if (var2 == 18) { + var1.method5559(); + } else if (var2 == 19) { this.category = var1.readUnsignedShort(); - } else if (var2 == 21) { // L: 111 - var1.readInt(); // L: 112 - } else if (var2 == 22) { // L: 114 - var1.readInt(); // L: 115 - } else if (var2 == 23) { // L: 117 - var1.readUnsignedByte(); // L: 118 - var1.readUnsignedByte(); // L: 119 - var1.readUnsignedByte(); // L: 120 - } else if (var2 == 24) { // L: 122 - var1.readShort(); // L: 123 - var1.readShort(); // L: 124 - } else if (var2 == 25) { // L: 126 - var1.method5851(); // L: 127 - } else if (var2 == 28) { // L: 129 - var1.readUnsignedByte(); // L: 130 - } else if (var2 == 29) { // L: 132 - HorizontalAlignment[] var3 = new HorizontalAlignment[]{HorizontalAlignment.field3479, HorizontalAlignment.field3481, HorizontalAlignment.HorizontalAlignment_centered}; // L: 135 - this.horizontalAlignment = (HorizontalAlignment)class195.findEnumerated(var3, var1.readUnsignedByte()); // L: 137 - } else if (var2 == 30) { // L: 139 - this.verticalAlignment = (VerticalAlignment)class195.findEnumerated(ScriptEvent.method1279(), var1.readUnsignedByte()); // L: 140 + } else if (var2 == 21) { + var1.readInt(); + } else if (var2 == 22) { + var1.readInt(); + } else if (var2 == 23) { + var1.readUnsignedByte(); + var1.readUnsignedByte(); + var1.readUnsignedByte(); + } else if (var2 == 24) { + var1.readShort(); + var1.readShort(); + } else if (var2 == 25) { + var1.method5559(); + } else if (var2 == 28) { + var1.readUnsignedByte(); + } else if (var2 == 29) { + HorizontalAlignment[] var3 = new HorizontalAlignment[]{HorizontalAlignment.field3491, HorizontalAlignment.HorizontalAlignment_centered, HorizontalAlignment.field3490}; + this.horizontalAlignment = (HorizontalAlignment)UrlRequester.findEnumerated(var3, var1.readUnsignedByte()); + } else if (var2 == 30) { + VerticalAlignment[] var7 = new VerticalAlignment[]{VerticalAlignment.field3225, VerticalAlignment.field3229, VerticalAlignment.VerticalAlignment_centered}; + this.verticalAlignment = (VerticalAlignment)UrlRequester.findEnumerated(var7, var1.readUnsignedByte()); } } } - } // L: 143 + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1612993867" + garbageValue = "-604734124" ) - void method4518() { - if (this.field3243 != null) { // L: 146 - for (int var1 = 0; var1 < this.field3243.length; var1 += 2) { // L: 147 - if (this.field3243[var1] < this.field3252) { // L: 148 - this.field3252 = this.field3243[var1]; - } else if (this.field3243[var1] > this.field3247) { // L: 149 - this.field3247 = this.field3243[var1]; + void method4391() { + if (this.field3254 != null) { + for (int var1 = 0; var1 < this.field3254.length; var1 += 2) { + if (this.field3254[var1] < this.field3255) { + this.field3255 = this.field3254[var1]; + } else if (this.field3254[var1] > this.field3257) { + this.field3257 = this.field3254[var1]; } - if (this.field3243[var1 + 1] < this.field3253) { // L: 150 - this.field3253 = this.field3243[var1 + 1]; - } else if (this.field3243[var1 + 1] > this.field3255) { - this.field3255 = this.field3243[var1 + 1]; // L: 151 + if (this.field3254[var1 + 1] < this.field3256) { + this.field3256 = this.field3254[var1 + 1]; + } else if (this.field3254[var1 + 1] > this.field3258) { + this.field3258 = this.field3254[var1 + 1]; } } } - } // L: 154 + } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(ZI)Llc;", - garbageValue = "-2016135845" + descriptor = "(ZI)Llm;", + garbageValue = "-375882692" ) @Export("getSpriteBool") public Sprite getSpriteBool(boolean var1) { - int var2 = this.sprite1; // L: 157 - return this.getSprite(var2); // L: 158 + int var2 = this.sprite1; + return this.getSprite(var2); } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(II)Llc;", - garbageValue = "1884936089" + descriptor = "(II)Llm;", + garbageValue = "954144981" ) @Export("getSprite") Sprite getSprite(int var1) { - if (var1 < 0) { // L: 162 + if (var1 < 0) { return null; } else { - Sprite var2 = (Sprite)WorldMapElement_cachedSprites.get((long)var1); // L: 163 - if (var2 != null) { // L: 164 + Sprite var2 = (Sprite)WorldMapElement_cachedSprites.get((long)var1); + if (var2 != null) { return var2; } else { - var2 = FloorDecoration.SpriteBuffer_getSprite(WorldMapElement_archive, var1, 0); // L: 165 - if (var2 != null) { // L: 166 - WorldMapElement_cachedSprites.put(var2, (long)var1); // L: 167 + var2 = Skills.SpriteBuffer_getSprite(WorldMapElement_archive, var1, 0); + if (var2 != null) { + WorldMapElement_cachedSprites.put(var2, (long)var1); } - return var2; // L: 169 + return var2; } } } - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-932820751" + garbageValue = "-1401841512" ) @Export("getObjectId") public int getObjectId() { - return this.objectId; // L: 173 + return this.objectId; + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(II)Liw;", + garbageValue = "1557457090" + ) + public static FloorUnderlayDefinition method4405(int var0) { + FloorUnderlayDefinition var1 = (FloorUnderlayDefinition)FloorUnderlayDefinition.FloorUnderlayDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = FloorUnderlayDefinition.FloorUnderlayDefinition_archive.takeFile(1, var0); + var1 = new FloorUnderlayDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2), var0); + } + + var1.postDecode(); + FloorUnderlayDefinition.FloorUnderlayDefinition_cached.put(var1, (long)var0); + return var1; + } } } diff --git a/runescape-client/src/main/java/WorldMapEvent.java b/runescape-client/src/main/java/WorldMapEvent.java index 48de99319c..081c6535e1 100644 --- a/runescape-client/src/main/java/WorldMapEvent.java +++ b/runescape-client/src/main/java/WorldMapEvent.java @@ -4,380 +4,123 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ap") +@ObfuscatedName("az") @Implements("WorldMapEvent") public class WorldMapEvent { - @ObfuscatedName("q") - @ObfuscatedGetter( - intValue = 1740090343 + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "Llo;" ) - static int field377; - @ObfuscatedName("gg") - @Export("xteaKeys") - static int[][] xteaKeys; - @ObfuscatedName("f") + @Export("titleboxSprite") + static IndexedSprite titleboxSprite; + @ObfuscatedName("iz") @ObfuscatedGetter( - intValue = -507222601 + intValue = 972918301 + ) + @Export("selectedItemId") + static int selectedItemId; + @ObfuscatedName("h") + @ObfuscatedGetter( + intValue = 1211419281 ) @Export("mapElement") public int mapElement; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lhw;" + descriptor = "Lhs;" ) @Export("coord1") public Coord coord1; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lhw;" + descriptor = "Lhs;" ) @Export("coord2") public Coord coord2; @ObfuscatedSignature( - descriptor = "(ILhw;Lhw;)V" + descriptor = "(ILhs;Lhs;)V" ) public WorldMapEvent(int var1, Coord var2, Coord var3) { - this.mapElement = var1; // L: 11 - this.coord1 = var2; // L: 12 - this.coord2 = var3; // L: 13 - } // L: 14 + this.mapElement = var1; + this.coord1 = var2; + this.coord2 = var3; + } @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(IIIS)I", - garbageValue = "3638" + descriptor = "(B)V", + garbageValue = "1" ) - @Export("hslToRgb") - static final int hslToRgb(int var0, int var1, int var2) { - if (var2 > 179) { // L: 490 - var1 /= 2; - } + public static void method809() { + while (true) { + ArchiveDiskAction var0; + synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue) { + var0 = (ArchiveDiskAction)ArchiveDiskActionHandler.ArchiveDiskActionHandler_responseQueue.removeLast(); + } - if (var2 > 192) { // L: 491 - var1 /= 2; - } + if (var0 == null) { + return; + } - if (var2 > 217) { // L: 492 - var1 /= 2; + var0.archive.load(var0.archiveDisk, (int)var0.key, var0.data, false); } - - if (var2 > 243) { // L: 493 - var1 /= 2; - } - - int var3 = (var1 / 32 << 7) + (var0 / 4 << 10) + var2 / 2; // L: 494 - return var3; // L: 495 } - @ObfuscatedName("hl") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lgg;I)V", - garbageValue = "-242639541" + descriptor = "(I)V", + garbageValue = "787195295" ) - static final void method865(class194 var0) { - PacketBuffer var1 = Client.packetWriter.packetBuffer; // L: 6876 - int var3; - int var5; - int var6; - int var7; - int var8; - int var9; - int var10; - int var11; - int var12; - int var13; - int var14; - if (class194.field2355 == var0) { // L: 6877 - byte var2 = var1.method5837(); // L: 6878 - var3 = var1.method5659(); // L: 6879 - byte var4 = var1.method5837(); // L: 6880 - var5 = var1.method5650(); // L: 6881 - var6 = (var5 >> 4 & 7) + GameShell.field466; // L: 6882 - var7 = (var5 & 7) + GrandExchangeEvents.field64; // L: 6883 - var8 = var1.method5659(); // L: 6884 - var9 = var1.readUnsignedShort(); // L: 6885 - var10 = var1.readUnsignedShort(); // L: 6886 - var11 = var1.method5619(); // L: 6887 - var12 = var11 >> 2; // L: 6888 - var13 = var11 & 3; // L: 6889 - var14 = Client.field954[var12]; // L: 6890 - byte var15 = var1.method5837(); // L: 6891 - byte var16 = var1.method5837(); // L: 6892 - Player var17; - if (var9 == Client.localPlayerIndex) { // L: 6894 - var17 = PlayerType.localPlayer; - } else { - var17 = Client.players[var9]; // L: 6895 - } - - if (var17 != null) { // L: 6896 - ObjectDefinition var18 = ScriptEvent.getObjectDefinition(var10); // L: 6897 - int var19; - int var20; - if (var13 != 1 && var13 != 3) { // L: 6900 - var19 = var18.sizeX; // L: 6905 - var20 = var18.sizeY; // L: 6906 - } else { - var19 = var18.sizeY; // L: 6901 - var20 = var18.sizeX; // L: 6902 - } - - int var21 = var6 + (var19 >> 1); // L: 6908 - int var22 = var6 + (var19 + 1 >> 1); // L: 6909 - int var23 = var7 + (var20 >> 1); // L: 6910 - int var24 = var7 + (var20 + 1 >> 1); // L: 6911 - int[][] var25 = Tiles.Tiles_heights[GrandExchangeOfferUnitPriceComparator.Client_plane]; // L: 6912 - int var26 = var25[var21][var23] + var25[var22][var23] + var25[var21][var24] + var25[var22][var24] >> 2; // L: 6913 - int var27 = (var6 << 7) + (var19 << 6); // L: 6914 - int var28 = (var7 << 7) + (var20 << 6); // L: 6915 - Model var29 = var18.getModel(var12, var13, var25, var27, var26, var28); // L: 6916 - if (var29 != null) { // L: 6917 - GrandExchangeOffer.updatePendingSpawn(GrandExchangeOfferUnitPriceComparator.Client_plane, var6, var7, var14, -1, 0, 0, var8 + 1, var3 + 1); // L: 6918 - var17.animationCycleStart = var8 + Client.cycle; // L: 6919 - var17.animationCycleEnd = var3 + Client.cycle; // L: 6920 - var17.model0 = var29; // L: 6921 - var17.field654 = var19 * 64 + var6 * 128; // L: 6922 - var17.field656 = var20 * 64 + var7 * 128; // L: 6923 - var17.tileHeight2 = var26; // L: 6924 - byte var30; - if (var2 > var15) { // L: 6925 - var30 = var2; // L: 6926 - var2 = var15; // L: 6927 - var15 = var30; // L: 6928 - } - - if (var4 > var16) { // L: 6930 - var30 = var4; // L: 6931 - var4 = var16; // L: 6932 - var16 = var30; // L: 6933 - } - - var17.field646 = var6 + var2; // L: 6935 - var17.field660 = var6 + var15; // L: 6936 - var17.field669 = var7 + var4; // L: 6937 - var17.field661 = var16 + var7; // L: 6938 - } + public static void method807() { + if (KeyHandler.KeyHandler_instance != null) { + synchronized(KeyHandler.KeyHandler_instance) { + KeyHandler.KeyHandler_instance = null; } } - TileItem var33; - int var37; - int var38; - if (class194.field2353 == var0) { // L: 6942 - var37 = var1.readUnsignedByte(); // L: 6943 - var3 = (var37 >> 4 & 7) + GameShell.field466; // L: 6944 - var38 = (var37 & 7) + GrandExchangeEvents.field64; // L: 6945 - var5 = var1.method5659(); // L: 6946 - var6 = var1.method5659(); // L: 6947 - if (var3 >= 0 && var38 >= 0 && var3 < 104 && var38 < 104) { // L: 6948 - var33 = new TileItem(); // L: 6949 - var33.id = var5; // L: 6950 - var33.quantity = var6; // L: 6951 - if (Client.groundItems[GrandExchangeOfferUnitPriceComparator.Client_plane][var3][var38] == null) { // L: 6952 - Client.groundItems[GrandExchangeOfferUnitPriceComparator.Client_plane][var3][var38] = new NodeDeque(); - } + } - Client.groundItems[GrandExchangeOfferUnitPriceComparator.Client_plane][var3][var38].addFirst(var33); // L: 6953 - class41.updateItemPile(var3, var38); // L: 6954 - } - - } else if (class194.field2348 == var0) { // L: 6958 - var37 = var1.method5619(); // L: 6959 - var3 = (var37 >> 4 & 7) + GameShell.field466; // L: 6960 - var38 = (var37 & 7) + GrandExchangeEvents.field64; // L: 6961 - var5 = var1.method5619(); // L: 6962 - var6 = var5 >> 2; // L: 6963 - var7 = var5 & 3; // L: 6964 - var8 = Client.field954[var6]; // L: 6965 - var9 = var1.method5659(); // L: 6966 - if (var3 >= 0 && var38 >= 0 && var3 < 104 && var38 < 104) { // L: 6967 - GrandExchangeOffer.updatePendingSpawn(GrandExchangeOfferUnitPriceComparator.Client_plane, var3, var38, var8, var9, var6, var7, 0, -1); // L: 6968 - } - - } else if (class194.field2349 == var0) { // L: 6972 - var37 = var1.method5797(); // L: 6973 - var3 = var1.method5675(); // L: 6974 - var38 = var1.readUnsignedByte(); // L: 6975 - var5 = (var38 >> 4 & 7) + GameShell.field466; // L: 6976 - var6 = (var38 & 7) + GrandExchangeEvents.field64; // L: 6977 - var7 = var1.method5650(); // L: 6978 - if (var5 >= 0 && var6 >= 0 && var5 < 104 && var6 < 104) { // L: 6979 - var5 = var5 * 128 + 64; // L: 6980 - var6 = var6 * 128 + 64; // L: 6981 - GraphicsObject var44 = new GraphicsObject(var3, GrandExchangeOfferUnitPriceComparator.Client_plane, var5, var6, GrandExchangeOfferWorldComparator.getTileHeight(var5, var6, GrandExchangeOfferUnitPriceComparator.Client_plane) - var7, var37, Client.cycle); // L: 6982 - Client.graphicsObjects.addFirst(var44); // L: 6983 - } - - } else if (class194.field2352 == var0) { // L: 6987 - var37 = var1.method5668(); // L: 6988 - var3 = var1.readUnsignedShort(); // L: 6989 - var38 = var1.method5668(); // L: 6990 - var5 = (var38 >> 4 & 7) + GameShell.field466; // L: 6991 - var6 = (var38 & 7) + GrandExchangeEvents.field64; // L: 6992 - byte var39 = var1.method5669(); // L: 6993 - byte var40 = var1.method5688(); // L: 6994 - var9 = var1.method5668() * 4; // L: 6995 - var10 = var1.method5650(); // L: 6996 - var11 = var1.readUnsignedShort(); // L: 6997 - var12 = var1.readUnsignedShort(); // L: 6998 - var13 = var1.method5679(); // L: 6999 - var14 = var1.method5619() * 4; // L: 7000 - var8 = var40 + var5; // L: 7001 - var7 = var39 + var6; // L: 7002 - if (var5 >= 0 && var6 >= 0 && var5 < 104 && var6 < 104 && var8 >= 0 && var7 >= 0 && var8 < 104 && var7 < 104 && var12 != 65535) { // L: 7003 - var5 = var5 * 128 + 64; // L: 7004 - var6 = var6 * 128 + 64; // L: 7005 - var8 = var8 * 128 + 64; // L: 7006 - var7 = var7 * 128 + 64; // L: 7007 - Projectile var36 = new Projectile(var12, GrandExchangeOfferUnitPriceComparator.Client_plane, var5, var6, GrandExchangeOfferWorldComparator.getTileHeight(var5, var6, GrandExchangeOfferUnitPriceComparator.Client_plane) - var14, var11 + Client.cycle, var3 + Client.cycle, var37, var10, var13, var9); // L: 7008 - var36.setDestination(var8, var7, GrandExchangeOfferWorldComparator.getTileHeight(var8, var7, GrandExchangeOfferUnitPriceComparator.Client_plane) - var9, var11 + Client.cycle); // L: 7009 - Client.projectiles.addFirst(var36); // L: 7010 - } - - } else if (class194.field2357 == var0) { // L: 7014 - var37 = var1.method5659(); // L: 7015 - var3 = var1.method5659(); // L: 7016 - var38 = var1.method5668(); // L: 7017 - var5 = (var38 >> 4 & 7) + GameShell.field466; // L: 7018 - var6 = (var38 & 7) + GrandExchangeEvents.field64; // L: 7019 - var7 = var1.method5797(); // L: 7020 - if (var5 >= 0 && var6 >= 0 && var5 < 104 && var6 < 104) { // L: 7021 - NodeDeque var34 = Client.groundItems[GrandExchangeOfferUnitPriceComparator.Client_plane][var5][var6]; // L: 7022 - if (var34 != null) { // L: 7023 - for (TileItem var35 = (TileItem)var34.last(); var35 != null; var35 = (TileItem)var34.previous()) { // L: 7024 7025 7030 - if ((var37 & 32767) == var35.id && var7 == var35.quantity) { // L: 7026 - var35.quantity = var3; // L: 7027 - break; - } - } - - class41.updateItemPile(var5, var6); // L: 7032 - } - } - - } else { - if (class194.field2351 == var0) { // L: 7037 - var37 = var1.method5619(); // L: 7038 - var3 = var1.readUnsignedByte(); // L: 7039 - var38 = var3 >> 4 & 15; // L: 7040 - var5 = var3 & 7; // L: 7041 - var6 = var1.method5668(); // L: 7042 - var7 = (var6 >> 4 & 7) + GameShell.field466; // L: 7043 - var8 = (var6 & 7) + GrandExchangeEvents.field64; // L: 7044 - var9 = var1.method5659(); // L: 7045 - if (var7 >= 0 && var8 >= 0 && var7 < 104 && var8 < 104) { // L: 7046 - var10 = var38 + 1; // L: 7047 - if (PlayerType.localPlayer.pathX[0] >= var7 - var10 && PlayerType.localPlayer.pathX[0] <= var7 + var10 && PlayerType.localPlayer.pathY[0] >= var8 - var10 && PlayerType.localPlayer.pathY[0] <= var8 + var10 && Client.areaSoundEffectVolume != 0 && var5 > 0 && Client.soundEffectCount < 50) { // L: 7048 7049 - Client.soundEffectIds[Client.soundEffectCount] = var9; // L: 7050 - Client.queuedSoundEffectLoops[Client.soundEffectCount] = var5; // L: 7051 - Client.queuedSoundEffectDelays[Client.soundEffectCount] = var37; // L: 7052 - Client.soundEffects[Client.soundEffectCount] = null; // L: 7053 - Client.soundLocations[Client.soundEffectCount] = var38 + (var8 << 8) + (var7 << 16); // L: 7054 - ++Client.soundEffectCount; // L: 7055 - } - } - } - - if (class194.field2356 == var0) { // L: 7060 - var37 = var1.method5650(); // L: 7061 - var3 = (var37 >> 4 & 7) + GameShell.field466; // L: 7062 - var38 = (var37 & 7) + GrandExchangeEvents.field64; // L: 7063 - var5 = var1.method5659(); // L: 7064 - if (var3 >= 0 && var38 >= 0 && var3 < 104 && var38 < 104) { // L: 7065 - NodeDeque var32 = Client.groundItems[GrandExchangeOfferUnitPriceComparator.Client_plane][var3][var38]; // L: 7066 - if (var32 != null) { // L: 7067 - for (var33 = (TileItem)var32.last(); var33 != null; var33 = (TileItem)var32.previous()) { // L: 7068 7069 7074 - if ((var5 & 32767) == var33.id) { // L: 7070 - var33.remove(); // L: 7071 - break; - } - } - - if (var32.last() == null) { // L: 7076 - Client.groundItems[GrandExchangeOfferUnitPriceComparator.Client_plane][var3][var38] = null; - } - - class41.updateItemPile(var3, var38); // L: 7077 - } - } - - } else if (class194.field2354 != var0) { // L: 7082 - if (class194.field2359 == var0) { // L: 7128 - var37 = var1.method5650(); // L: 7129 - var3 = (var37 >> 4 & 7) + GameShell.field466; // L: 7130 - var38 = (var37 & 7) + GrandExchangeEvents.field64; // L: 7131 - var5 = var1.method5650(); // L: 7132 - var6 = var5 >> 2; // L: 7133 - var7 = var5 & 3; // L: 7134 - var8 = Client.field954[var6]; // L: 7135 - if (var3 >= 0 && var38 >= 0 && var3 < 104 && var38 < 104) { // L: 7136 - GrandExchangeOffer.updatePendingSpawn(GrandExchangeOfferUnitPriceComparator.Client_plane, var3, var38, var8, -1, var6, var7, 0, -1); // L: 7137 - } - - } + @ObfuscatedName("kq") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "1393718801" + ) + static final void method810(int var0) { + var0 = Math.min(Math.max(var0, 0), 255); + if (var0 != Timer.clientPreferences.musicVolume) { + if (Timer.clientPreferences.musicVolume == 0 && Client.currentTrackGroupId != -1) { + Interpreter.method2082(class217.archive6, Client.currentTrackGroupId, 0, var0, false); + Client.field883 = false; + } else if (var0 == 0) { + WorldMapRegion.method588(); + Client.field883 = false; + } else if (class206.musicPlayerStatus != 0) { + GrandExchangeEvent.musicTrackVolume = var0; } else { - var37 = var1.method5668(); // L: 7083 - var3 = var37 >> 2; // L: 7084 - var38 = var37 & 3; // L: 7085 - var5 = Client.field954[var3]; // L: 7086 - var6 = var1.method5675(); // L: 7087 - var7 = var1.method5619(); // L: 7088 - var8 = (var7 >> 4 & 7) + GameShell.field466; // L: 7089 - var9 = (var7 & 7) + GrandExchangeEvents.field64; // L: 7090 - if (var8 >= 0 && var9 >= 0 && var8 < 103 && var9 < 103) { // L: 7091 - if (var5 == 0) { // L: 7092 - BoundaryObject var31 = ModeWhere.scene.method3277(GrandExchangeOfferUnitPriceComparator.Client_plane, var8, var9); // L: 7093 - if (var31 != null) { // L: 7094 - var11 = ObjectSound.Entity_unpackID(var31.tag); // L: 7095 - if (var3 == 2) { // L: 7096 - var31.entity1 = new DynamicObject(var11, 2, var38 + 4, GrandExchangeOfferUnitPriceComparator.Client_plane, var8, var9, var6, false, var31.entity1); // L: 7097 - var31.entity2 = new DynamicObject(var11, 2, var38 + 1 & 3, GrandExchangeOfferUnitPriceComparator.Client_plane, var8, var9, var6, false, var31.entity2); // L: 7098 - } else { - var31.entity1 = new DynamicObject(var11, var3, var38, GrandExchangeOfferUnitPriceComparator.Client_plane, var8, var9, var6, false, var31.entity1); // L: 7100 - } - } - } + class206.midiPcmStream.setPcmStreamVolume(var0); + } - if (var5 == 1) { // L: 7103 - WallDecoration var41 = ModeWhere.scene.method3276(GrandExchangeOfferUnitPriceComparator.Client_plane, var8, var9); // L: 7104 - if (var41 != null) { // L: 7105 - var11 = ObjectSound.Entity_unpackID(var41.tag); // L: 7106 - if (var3 != 4 && var3 != 5) { // L: 7107 - if (var3 == 6) { // L: 7108 - var41.entity1 = new DynamicObject(var11, 4, var38 + 4, GrandExchangeOfferUnitPriceComparator.Client_plane, var8, var9, var6, false, var41.entity1); - } else if (var3 == 7) { // L: 7109 - var41.entity1 = new DynamicObject(var11, 4, (var38 + 2 & 3) + 4, GrandExchangeOfferUnitPriceComparator.Client_plane, var8, var9, var6, false, var41.entity1); - } else if (var3 == 8) { // L: 7110 - var41.entity1 = new DynamicObject(var11, 4, var38 + 4, GrandExchangeOfferUnitPriceComparator.Client_plane, var8, var9, var6, false, var41.entity1); // L: 7111 - var41.entity2 = new DynamicObject(var11, 4, (var38 + 2 & 3) + 4, GrandExchangeOfferUnitPriceComparator.Client_plane, var8, var9, var6, false, var41.entity2); // L: 7112 - } - } else { - var41.entity1 = new DynamicObject(var11, 4, var38, GrandExchangeOfferUnitPriceComparator.Client_plane, var8, var9, var6, false, var41.entity1); - } - } - } + Timer.clientPreferences.musicVolume = var0; + GrandExchangeOffer.savePreferences(); + } - if (var5 == 2) { // L: 7116 - GameObject var42 = ModeWhere.scene.method3241(GrandExchangeOfferUnitPriceComparator.Client_plane, var8, var9); // L: 7117 - if (var3 == 11) { // L: 7118 - var3 = 10; - } - - if (var42 != null) { // L: 7119 - var42.entity = new DynamicObject(ObjectSound.Entity_unpackID(var42.tag), var3, var38, GrandExchangeOfferUnitPriceComparator.Client_plane, var8, var9, var6, false, var42.entity); - } - } - - if (var5 == 3) { // L: 7121 - FloorDecoration var43 = ModeWhere.scene.getFloorDecoration(GrandExchangeOfferUnitPriceComparator.Client_plane, var8, var9); // L: 7122 - if (var43 != null) { // L: 7123 - var43.entity = new DynamicObject(ObjectSound.Entity_unpackID(var43.tag), 22, var38, GrandExchangeOfferUnitPriceComparator.Client_plane, var8, var9, var6, false, var43.entity); - } - } - } + } + @ObfuscatedName("lv") + @ObfuscatedSignature( + descriptor = "(Lkj;IB)V", + garbageValue = "-67" + ) + static void method808(Buffer var0, int var1) { + AbstractSocket.method5846(var0.array, var1); + if (JagexCache.JagexCache_randomDat != null) { + try { + JagexCache.JagexCache_randomDat.seek(0L); + JagexCache.JagexCache_randomDat.write(var0.array, var1, 24); + } catch (Exception var3) { } } - } // L: 6956 6970 6985 7012 7035 7080 7126 7139 7141 + + } } diff --git a/runescape-client/src/main/java/WorldMapID.java b/runescape-client/src/main/java/WorldMapID.java index 4d181210f1..4cc320c552 100644 --- a/runescape-client/src/main/java/WorldMapID.java +++ b/runescape-client/src/main/java/WorldMapID.java @@ -1,5 +1,3 @@ -import java.io.File; -import java.io.IOException; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; @@ -7,352 +5,662 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("aq") +@ObfuscatedName("ao") @Implements("WorldMapID") public class WorldMapID { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Laq;" - ) - static final WorldMapID field295; - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "Laq;" + descriptor = "Lao;" ) static final WorldMapID field292; - @ObfuscatedName("c") - @Export("SpriteBuffer_spritePalette") - static int[] SpriteBuffer_spritePalette; - @ObfuscatedName("l") + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "Lao;" + ) + static final WorldMapID field296; + @ObfuscatedName("fm") + @ObfuscatedSignature( + descriptor = "Lfd;" + ) + @Export("socketTask") + static Task socketTask; + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1395703893 + intValue = -1634523621 ) @Export("value") final int value; static { - field295 = new WorldMapID(0); // L: 4 - field292 = new WorldMapID(1); // L: 5 + field292 = new WorldMapID(0); + field296 = new WorldMapID(1); } WorldMapID(int var1) { - this.value = var1; // L: 9 - } // L: 10 - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/String;ZB)Lmr;", - garbageValue = "-97" - ) - @Export("getPreferencesFile") - public static AccessFile getPreferencesFile(String var0, String var1, boolean var2) { - File var3 = new File(JagexCache.cacheDir, "preferences" + var0 + ".dat"); // L: 252 - if (var3.exists()) { // L: 253 - try { - AccessFile var10 = new AccessFile(var3, "rw", 10000L); // L: 255 - return var10; // L: 256 - } catch (IOException var9) { // L: 258 - } - } - - String var4 = ""; // L: 260 - if (AbstractUserComparator.cacheGamebuild == 33) { // L: 261 - var4 = "_rc"; - } else if (AbstractUserComparator.cacheGamebuild == 34) { // L: 262 - var4 = "_wip"; - } - - File var5 = new File(class52.userHomeDirectory, "jagex_" + var1 + "_preferences" + var0 + var4 + ".dat"); // L: 263 - AccessFile var6; - if (!var2 && var5.exists()) { // L: 264 - try { - var6 = new AccessFile(var5, "rw", 10000L); // L: 266 - return var6; // L: 267 - } catch (IOException var8) { // L: 269 - } - } - - try { - var6 = new AccessFile(var3, "rw", 10000L); // L: 272 - return var6; // L: 273 - } catch (IOException var7) { // L: 275 - throw new RuntimeException(); // L: 276 - } + this.value = var1; } - @ObfuscatedName("t") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(IIB)I", - garbageValue = "0" + descriptor = "(I)V", + garbageValue = "-1557996921" ) - static final int method665(int var0, int var1) { - int var2 = SecureRandomFuture.method2252(var0 - 1, var1 - 1) + SecureRandomFuture.method2252(1 + var0, var1 - 1) + SecureRandomFuture.method2252(var0 - 1, 1 + var1) + SecureRandomFuture.method2252(var0 + 1, 1 + var1); // L: 455 - int var3 = SecureRandomFuture.method2252(var0 - 1, var1) + SecureRandomFuture.method2252(1 + var0, var1) + SecureRandomFuture.method2252(var0, var1 - 1) + SecureRandomFuture.method2252(var0, 1 + var1); // L: 456 - int var4 = SecureRandomFuture.method2252(var0, var1); // L: 457 - return var2 / 16 + var3 / 8 + var4 / 4; // L: 458 + public static void method601() { + VarpDefinition.VarpDefinition_cached.clear(); } - @ObfuscatedName("a") + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "-610468122" + descriptor = "(ILcs;ZI)I", + garbageValue = "-1833830337" ) - static int method667(int var0, Script var1, boolean var2) { - Widget var3 = UserComparator4.getWidget(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 1285 - if (var0 == ScriptOpcodes.IF_GETTARGETMASK) { // L: 1286 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = JagexCache.Widget_unpackTargetMask(WorldMapData_0.getWidgetFlags(var3)); // L: 1287 - return 1; // L: 1288 - } else if (var0 != ScriptOpcodes.IF_GETOP) { // L: 1290 - if (var0 == ScriptOpcodes.IF_GETOPBASE) { // L: 1297 - if (var3.dataText == null) { // L: 1298 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; + static int method600(int var0, Script var1, boolean var2) { + String var7; + if (var0 == ScriptOpcodes.MES) { + var7 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + class234.addGameMessage(0, "", var7); + return 1; + } else if (var0 == ScriptOpcodes.ANIM) { + VarcInt.Interpreter_intStackSize -= 2; + Tiles.performPlayerAnimation(PlayerAppearance.localPlayer, Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize], Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]); + return 1; + } else if (var0 == ScriptOpcodes.IF_CLOSE) { + if (!Interpreter.field1103) { + Interpreter.field1104 = true; + } + + return 1; + } else { + int var16; + if (var0 == ScriptOpcodes.RESUME_COUNTDIALOG) { + var7 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + var16 = 0; + if (ArchiveDiskAction.isNumber(var7)) { + var16 = class279.parseInt(var7); + } + + PacketBufferNode var14 = ItemContainer.getPacketBufferNode(ClientPacket.field2291, Client.packetWriter.isaacCipher); + var14.packetBuffer.writeInt(var16); + Client.packetWriter.addNode(var14); + return 1; + } else { + PacketBufferNode var12; + if (var0 == ScriptOpcodes.RESUME_NAMEDIALOG) { + var7 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + var12 = ItemContainer.getPacketBufferNode(ClientPacket.field2245, Client.packetWriter.isaacCipher); + var12.packetBuffer.writeByte(var7.length() + 1); + var12.packetBuffer.writeStringCp1252NullTerminated(var7); + Client.packetWriter.addNode(var12); + return 1; + } else if (var0 == ScriptOpcodes.RESUME_STRINGDIALOG) { + var7 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + var12 = ItemContainer.getPacketBufferNode(ClientPacket.field2261, Client.packetWriter.isaacCipher); + var12.packetBuffer.writeByte(var7.length() + 1); + var12.packetBuffer.writeStringCp1252NullTerminated(var7); + Client.packetWriter.addNode(var12); + return 1; } else { - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3.dataText; // L: 1299 - } - - return 1; // L: 1300 - } else { - return 2; // L: 1302 - } - } else { - int var4 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1291 - --var4; // L: 1292 - if (var3.actions != null && var4 < var3.actions.length && var3.actions[var4] != null) { // L: 1293 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3.actions[var4]; // L: 1294 - } else { - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; - } - - return 1; // L: 1295 - } - } - - @ObfuscatedName("fc") - @ObfuscatedSignature( - descriptor = "(Lcs;I)V", - garbageValue = "1072079291" - ) - static final void method666(Actor var0) { - if (var0.field1024 == Client.cycle || var0.sequence == -1 || var0.sequenceDelay != 0 || var0.sequenceFrameCycle + 1 > class105.SequenceDefinition_get(var0.sequence).frameLengths[var0.sequenceFrame]) { // L: 4104 - int var1 = var0.field1024 - var0.field1009; // L: 4105 - int var2 = Client.cycle - var0.field1009; // L: 4106 - int var3 = var0.field1011 * 64 + var0.field1017 * 128; // L: 4107 - int var4 = var0.field1011 * 64 + var0.field1019 * 128; // L: 4108 - int var5 = var0.field1011 * 64 + var0.field1018 * 128; // L: 4109 - int var6 = var0.field1011 * 64 + var0.field1020 * 128; // L: 4110 - var0.x = (var2 * var5 + var3 * (var1 - var2)) / var1; // L: 4111 - var0.y = (var6 * var2 + var4 * (var1 - var2)) / var1; // L: 4112 - } - - var0.field978 = 0; // L: 4114 - var0.orientation = var0.field1023; // L: 4115 - var0.rotation = var0.orientation; // L: 4116 - } // L: 4117 - - @ObfuscatedName("ii") - @ObfuscatedSignature( - descriptor = "(Lht;II)I", - garbageValue = "1789445641" - ) - static final int method663(Widget var0, int var1) { - if (var0.cs1Instructions != null && var1 < var0.cs1Instructions.length) { // L: 10014 - try { - int[] var2 = var0.cs1Instructions[var1]; // L: 10016 - int var3 = 0; // L: 10017 - int var4 = 0; // L: 10018 - byte var5 = 0; // L: 10019 - - while (true) { - int var6 = var2[var4++]; // L: 10021 - int var7 = 0; // L: 10022 - byte var8 = 0; // L: 10023 - if (var6 == 0) { // L: 10024 - return var3; - } - - if (var6 == 1) { // L: 10025 - var7 = Client.currentLevels[var2[var4++]]; - } - - if (var6 == 2) { // L: 10026 - var7 = Client.levels[var2[var4++]]; - } - - if (var6 == 3) { // L: 10027 - var7 = Client.experience[var2[var4++]]; - } - - int var9; - Widget var10; - int var11; - int var12; - if (var6 == 4) { // L: 10028 - var9 = var2[var4++] << 16; // L: 10029 - var9 += var2[var4++]; // L: 10030 - var10 = UserComparator4.getWidget(var9); // L: 10031 - var11 = var2[var4++]; // L: 10032 - if (var11 != -1 && (!AbstractWorldMapData.ItemDefinition_get(var11).isMembersOnly || Client.isMembersWorld)) { // L: 10033 - for (var12 = 0; var12 < var10.itemIds.length; ++var12) { // L: 10034 - if (var11 + 1 == var10.itemIds[var12]) { // L: 10035 - var7 += var10.itemQuantities[var12]; - } - } + String var4; + int var10; + if (var0 == ScriptOpcodes.OPPLAYER) { + var10 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + FloorDecoration.method2931(var10, var4); + return 1; + } else if (var0 == ScriptOpcodes.IF_DRAGPICKUP) { + VarcInt.Interpreter_intStackSize -= 3; + var10 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var16 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + int var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 2]; + Widget var15 = CollisionMap.getWidget(var9); + class13.clickWidget(var15, var10, var16); + return 1; + } else if (var0 == ScriptOpcodes.CC_DRAGPICKUP) { + VarcInt.Interpreter_intStackSize -= 2; + var10 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var16 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Widget var13 = var2 ? PlayerAppearance.field2561 : VarcInt.field3264; + class13.clickWidget(var13, var10, var16); + return 1; + } else if (var0 == ScriptOpcodes.MOUSECAM) { + UserComparator9.mouseCam = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == ScriptOpcodes.GETREMOVEROOFS) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Timer.clientPreferences.roofsHidden ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.SETREMOVEROOFS) { + Timer.clientPreferences.roofsHidden = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + GrandExchangeOffer.savePreferences(); + return 1; + } else if (var0 == ScriptOpcodes.OPENURL) { + var7 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + boolean var8 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + AttackOption.openURL(var7, var8, false); + return 1; + } else if (var0 == ScriptOpcodes.RESUME_OBJDIALOG) { + var10 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var12 = ItemContainer.getPacketBufferNode(ClientPacket.field2250, Client.packetWriter.isaacCipher); + var12.packetBuffer.writeShort(var10); + Client.packetWriter.addNode(var12); + return 1; + } else if (var0 == ScriptOpcodes.BUG_REPORT) { + var10 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_stringStackSize -= 2; + var4 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize]; + String var5 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize + 1]; + if (var4.length() > 500) { + return 1; + } else if (var5.length() > 500) { + return 1; + } else { + PacketBufferNode var6 = ItemContainer.getPacketBufferNode(ClientPacket.field2270, Client.packetWriter.isaacCipher); + var6.packetBuffer.writeShort(1 + FloorDecoration.stringCp1252NullTerminatedByteSize(var4) + FloorDecoration.stringCp1252NullTerminatedByteSize(var5)); + var6.packetBuffer.writeByte(var10); + var6.packetBuffer.writeStringCp1252NullTerminated(var4); + var6.packetBuffer.writeStringCp1252NullTerminated(var5); + Client.packetWriter.addNode(var6); + return 1; } - } - - if (var6 == 5) { // L: 10039 - var7 = Varps.Varps_main[var2[var4++]]; - } - - if (var6 == 6) { // L: 10040 - var7 = Skills.Skills_experienceTable[Client.levels[var2[var4++]] - 1]; - } - - if (var6 == 7) { // L: 10041 - var7 = Varps.Varps_main[var2[var4++]] * 100 / 46875; - } - - if (var6 == 8) { // L: 10042 - var7 = PlayerType.localPlayer.combatLevel; - } - - if (var6 == 9) { // L: 10043 - for (var9 = 0; var9 < 25; ++var9) { // L: 10044 - if (Skills.Skills_enabled[var9]) { // L: 10045 - var7 += Client.levels[var9]; - } - } - } - - if (var6 == 10) { // L: 10048 - var9 = var2[var4++] << 16; // L: 10049 - var9 += var2[var4++]; // L: 10050 - var10 = UserComparator4.getWidget(var9); // L: 10051 - var11 = var2[var4++]; // L: 10052 - if (var11 != -1 && (!AbstractWorldMapData.ItemDefinition_get(var11).isMembersOnly || Client.isMembersWorld)) { // L: 10053 - for (var12 = 0; var12 < var10.itemIds.length; ++var12) { // L: 10054 - if (var11 + 1 == var10.itemIds[var12]) { // L: 10055 - var7 = 999999999; // L: 10056 - break; // L: 10057 - } - } - } - } - - if (var6 == 11) { // L: 10062 - var7 = Client.runEnergy; - } - - if (var6 == 12) { // L: 10063 - var7 = Client.weight; - } - - if (var6 == 13) { // L: 10064 - var9 = Varps.Varps_main[var2[var4++]]; // L: 10065 - int var13 = var2[var4++]; // L: 10066 - var7 = (var9 & 1 << var13) != 0 ? 1 : 0; // L: 10067 - } - - if (var6 == 14) { // L: 10069 - var9 = var2[var4++]; // L: 10070 - var7 = ApproximateRouteStrategy.getVarbit(var9); // L: 10071 - } - - if (var6 == 15) { // L: 10073 - var8 = 1; - } - - if (var6 == 16) { // L: 10074 - var8 = 2; - } - - if (var6 == 17) { // L: 10075 - var8 = 3; - } - - if (var6 == 18) { // L: 10076 - var7 = (PlayerType.localPlayer.x >> 7) + FloorDecoration.baseX; - } - - if (var6 == 19) { // L: 10077 - var7 = (PlayerType.localPlayer.y >> 7) + WorldMapData_0.baseY; - } - - if (var6 == 20) { // L: 10078 - var7 = var2[var4++]; - } - - if (var8 == 0) { // L: 10079 - if (var5 == 0) { // L: 10080 - var3 += var7; + } else if (var0 == ScriptOpcodes.SETSHIFTCLICKDROP) { + Client.shiftClickDrop = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == ScriptOpcodes.SETSHOWMOUSEOVERTEXT) { + Client.showMouseOverText = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == ScriptOpcodes.RENDERSELF) { + Client.renderSelf = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == 3120) { + if (Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1) { + Client.drawPlayerNames |= 1; + } else { + Client.drawPlayerNames &= -2; } - if (var5 == 1) { // L: 10081 - var3 -= var7; + return 1; + } else if (var0 == 3121) { + if (Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1) { + Client.drawPlayerNames |= 2; + } else { + Client.drawPlayerNames &= -3; } - if (var5 == 2 && var7 != 0) { // L: 10082 - var3 /= var7; + return 1; + } else if (var0 == 3122) { + if (Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1) { + Client.drawPlayerNames |= 4; + } else { + Client.drawPlayerNames &= -5; } - if (var5 == 3) { // L: 10083 - var3 *= var7; + return 1; + } else if (var0 == 3123) { + if (Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1) { + Client.drawPlayerNames |= 8; + } else { + Client.drawPlayerNames &= -9; } - var5 = 0; // L: 10084 + return 1; + } else if (var0 == 3124) { + Client.drawPlayerNames = 0; + return 1; + } else if (var0 == ScriptOpcodes.SETSHOWMOUSECROSS) { + Client.showMouseCross = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == ScriptOpcodes.SETSHOWLOADINGMESSAGES) { + Client.showLoadingMessages = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == ScriptOpcodes.SETTAPTODROP) { + class25.setTapToDrop(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1); + return 1; + } else if (var0 == ScriptOpcodes.GETTAPTODROP) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = class3.getTapToDrop() ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.SETOCULUSORBSPEED) { + VarcInt.Interpreter_intStackSize -= 2; + Client.oculusOrbNormalSpeed = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + Client.oculusOrbSlowedSpeed = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + return 1; + } else if (var0 == 3130) { + VarcInt.Interpreter_intStackSize -= 2; + return 1; + } else if (var0 == 3131) { + --VarcInt.Interpreter_intStackSize; + return 1; + } else if (var0 == ScriptOpcodes.GETCANVASSIZE) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = IgnoreList.canvasWidth; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = ModelData0.canvasHeight; + return 1; + } else if (var0 == ScriptOpcodes.MOBILE_SETFPS) { + --VarcInt.Interpreter_intStackSize; + return 1; + } else if (var0 == ScriptOpcodes.MOBILE_OPENSTORE) { + return 1; + } else if (var0 == ScriptOpcodes.MOBILE_OPENSTORECATEGORY) { + VarcInt.Interpreter_intStackSize -= 2; + return 1; + } else if (var0 == 3136) { + Client.field810 = 3; + Client.field811 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + return 1; + } else if (var0 == 3137) { + Client.field810 = 2; + Client.field811 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + return 1; + } else if (var0 == 3138) { + Client.field810 = 0; + return 1; + } else if (var0 == 3139) { + Client.field810 = 1; + return 1; + } else if (var0 == 3140) { + Client.field810 = 3; + Client.field811 = var2 ? PlayerAppearance.field2561.id : VarcInt.field3264.id; + return 1; } else { - var5 = var8; // L: 10086 + boolean var11; + if (var0 == ScriptOpcodes.SETHIDEUSERNAME) { + var11 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + Timer.clientPreferences.hideUsername = var11; + GrandExchangeOffer.savePreferences(); + return 1; + } else if (var0 == ScriptOpcodes.GETHIDEUSERNAME) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Timer.clientPreferences.hideUsername ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.SETREMEMBERUSERNAME) { + var11 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + Client.Login_isUsernameRemembered = var11; + if (!var11) { + Timer.clientPreferences.rememberedUsername = ""; + GrandExchangeOffer.savePreferences(); + } + + return 1; + } else if (var0 == ScriptOpcodes.GETREMEMBERUSERNAME) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.Login_isUsernameRemembered ? 1 : 0; + return 1; + } else if (var0 == 3145) { + return 1; + } else if (var0 == ScriptOpcodes.SETTITLEMUSICENABLED) { + var11 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (var11 == Timer.clientPreferences.titleMusicDisabled) { + Timer.clientPreferences.titleMusicDisabled = !var11; + GrandExchangeOffer.savePreferences(); + } + + return 1; + } else if (var0 == ScriptOpcodes.GETTITLEMUSICENABLED) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Timer.clientPreferences.titleMusicDisabled ? 0 : 1; + return 1; + } else if (var0 == 3148) { + return 1; + } else if (var0 == 3149) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3150) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3151) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3152) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3153) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Login.Login_loadingPercent; + return 1; + } else if (var0 == 3154) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = class13.method132(); + return 1; + } else if (var0 == 3155) { + --Interpreter.Interpreter_stringStackSize; + return 1; + } else if (var0 == 3156) { + return 1; + } else if (var0 == 3157) { + VarcInt.Interpreter_intStackSize -= 2; + return 1; + } else if (var0 == 3158) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3159) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3160) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3161) { + --VarcInt.Interpreter_intStackSize; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3162) { + --VarcInt.Interpreter_intStackSize; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3163) { + --Interpreter.Interpreter_stringStackSize; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3164) { + --VarcInt.Interpreter_intStackSize; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + return 1; + } else if (var0 == 3165) { + --VarcInt.Interpreter_intStackSize; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3166) { + VarcInt.Interpreter_intStackSize -= 2; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3167) { + VarcInt.Interpreter_intStackSize -= 2; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3168) { + VarcInt.Interpreter_intStackSize -= 2; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + return 1; + } else if (var0 == 3169) { + return 1; + } else if (var0 == 3170) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3171) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3172) { + --VarcInt.Interpreter_intStackSize; + return 1; + } else if (var0 == 3173) { + --VarcInt.Interpreter_intStackSize; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3174) { + --VarcInt.Interpreter_intStackSize; + return 1; + } else if (var0 == 3175) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3176) { + return 1; + } else if (var0 == 3177) { + return 1; + } else if (var0 == 3178) { + --Interpreter.Interpreter_stringStackSize; + return 1; + } else if (var0 == 3179) { + return 1; + } else if (var0 == 3180) { + --Interpreter.Interpreter_stringStackSize; + return 1; + } else if (var0 == 3181) { + var10 = 100 - Math.min(Math.max(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize], 0), 100); + WorldMapSection1.method626((double)((float)var10 / 200.0F + 0.5F)); + return 1; + } else if (var0 == 3182) { + float var3 = ((float)Timer.clientPreferences.field1057 - 0.5F) * 200.0F; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 100 - Math.round(var3); + return 1; + } else { + return 2; + } } } - } catch (Exception var14) { // L: 10089 - return -1; // L: 10090 } - } else { - return -2; } } - @ObfuscatedName("jb") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Lht;I)V", - garbageValue = "898207937" + descriptor = "(ILcs;ZI)I", + garbageValue = "-1805385873" ) - static final void method664(Widget var0) { - int var1 = var0.contentType; // L: 11212 - if (var1 == 324) { // L: 11213 - if (Client.field945 == -1) { // L: 11214 - Client.field945 = var0.spriteId2; // L: 11215 - Client.field895 = var0.spriteId; // L: 11216 + static int method599(int var0, Script var1, boolean var2) { + if (var0 == ScriptOpcodes.VIEWPORT_SETFOV) { + VarcInt.Interpreter_intStackSize -= 2; + Client.field896 = (short)HealthBarUpdate.method1823(Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]); + if (Client.field896 <= 0) { + Client.field896 = 256; } - if (Client.playerAppearance.isFemale) { // L: 11218 - var0.spriteId2 = Client.field945; + Client.field897 = (short)HealthBarUpdate.method1823(Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]); + if (Client.field897 <= 0) { + Client.field897 = 256; + } + + return 1; + } else if (var0 == ScriptOpcodes.VIEWPORT_SETZOOM) { + VarcInt.Interpreter_intStackSize -= 2; + Client.zoomHeight = (short)Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + if (Client.zoomHeight <= 0) { + Client.zoomHeight = 256; + } + + Client.zoomWidth = (short)Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + if (Client.zoomWidth <= 0) { + Client.zoomWidth = 320; + } + + return 1; + } else if (var0 == ScriptOpcodes.VIEWPORT_CLAMPFOV) { + VarcInt.Interpreter_intStackSize -= 4; + Client.field900 = (short)Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + if (Client.field900 <= 0) { + Client.field900 = 1; + } + + Client.field731 = (short)Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + if (Client.field731 <= 0) { + Client.field731 = 32767; + } else if (Client.field731 < Client.field900) { + Client.field731 = Client.field900; + } + + Client.field828 = (short)Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 2]; + if (Client.field828 <= 0) { + Client.field828 = 1; + } + + Client.field903 = (short)Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 3]; + if (Client.field903 <= 0) { + Client.field903 = 32767; + } else if (Client.field903 < Client.field828) { + Client.field903 = Client.field828; + } + + return 1; + } else if (var0 == ScriptOpcodes.VIEWPORT_GETEFFECTIVESIZE) { + if (Client.viewportWidget != null) { + class25.setViewportShape(0, 0, Client.viewportWidget.width, Client.viewportWidget.height, false); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.viewportWidth; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.viewportHeight; } else { - var0.spriteId2 = Client.field895; // L: 11219 + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; } - } else if (var1 == 325) { // L: 11222 - if (Client.field945 == -1) { // L: 11223 - Client.field945 = var0.spriteId2; // L: 11224 - Client.field895 = var0.spriteId; // L: 11225 - } - - if (Client.playerAppearance.isFemale) { // L: 11227 - var0.spriteId2 = Client.field895; - } else { - var0.spriteId2 = Client.field945; // L: 11228 - } - - } else if (var1 == 327) { // L: 11231 - var0.modelAngleX = 150; // L: 11232 - var0.modelAngleY = (int)(Math.sin((double)Client.cycle / 40.0D) * 256.0D) & 2047; // L: 11233 - var0.modelType = 5; // L: 11234 - var0.modelId = 0; // L: 11235 - } else if (var1 == 328) { // L: 11238 - var0.modelAngleX = 150; // L: 11239 - var0.modelAngleY = (int)(Math.sin((double)Client.cycle / 40.0D) * 256.0D) & 2047; // L: 11240 - var0.modelType = 5; // L: 11241 - var0.modelId = 1; // L: 11242 + return 1; + } else if (var0 == ScriptOpcodes.VIEWPORT_GETZOOM) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.zoomHeight; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.zoomWidth; + return 1; + } else if (var0 == ScriptOpcodes.VIEWPORT_GETFOV) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = MouseHandler.method1156(Client.field896); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = MouseHandler.method1156(Client.field897); + return 1; + } else if (var0 == 6220) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 6221) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 6222) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = IgnoreList.canvasWidth; + return 1; + } else if (var0 == 6223) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = ModelData0.canvasHeight; + return 1; + } else { + return 2; } - } // L: 11220 11229 11236 11243 11245 + } + + @ObfuscatedName("gw") + @ObfuscatedSignature( + descriptor = "(Lcx;II)V", + garbageValue = "646312603" + ) + @Export("updateActorSequence") + static final void updateActorSequence(Actor var0, int var1) { + int var2; + int var3; + int var4; + if (var0.field984 >= Client.cycle) { + WorldMapManager.method672(var0); + } else if (var0.field973 >= Client.cycle) { + if (var0.field973 == Client.cycle || var0.sequence == -1 || var0.sequenceDelay != 0 || var0.sequenceFrameCycle + 1 > ParamDefinition.SequenceDefinition_get(var0.sequence).frameLengths[var0.sequenceFrame]) { + var2 = var0.field973 - var0.field984; + var3 = Client.cycle - var0.field984; + var4 = var0.field981 * 128 + var0.field941 * 108072960; + int var5 = var0.field982 * 128 + var0.field941 * 108072960; + int var6 = var0.field958 * 128 + var0.field941 * 108072960; + int var7 = var0.field956 * 128 + var0.field941 * 108072960; + var0.x = (var6 * var3 + var4 * (var2 - var3)) / var2; + var0.y = (var3 * var7 + var5 * (var2 - var3)) / var2; + } + + var0.field963 = 0; + var0.orientation = var0.field986; + var0.rotation = var0.orientation; + } else { + class51.method831(var0); + } + + if (var0.x < 128 || var0.y < 128 || var0.x >= 13184 || var0.y >= 13184) { + var0.sequence = -1; + var0.spotAnimation = -1; + var0.field984 = 0; + var0.field973 = 0; + var0.x = var0.pathX[0] * 128 + var0.field941 * 108072960; + var0.y = var0.pathY[0] * 128 + var0.field941 * 108072960; + var0.method1803(); + } + + if (PlayerAppearance.localPlayer == var0 && (var0.x < 1536 || var0.y < 1536 || var0.x >= 11776 || var0.y >= 11776)) { + var0.sequence = -1; + var0.spotAnimation = -1; + var0.field984 = 0; + var0.field973 = 0; + var0.x = var0.pathX[0] * 128 + var0.field941 * 108072960; + var0.y = var0.pathY[0] * 128 + var0.field941 * 108072960; + var0.method1803(); + } + + if (var0.field940 != 0) { + if (var0.targetIndex != -1) { + Object var8 = null; + if (var0.targetIndex < 32768) { + var8 = Client.npcs[var0.targetIndex]; + } else if (var0.targetIndex >= 32768) { + var8 = Client.players[var0.targetIndex - 32768]; + } + + if (var8 != null) { + var3 = var0.x - ((Actor)var8).x; + var4 = var0.y - ((Actor)var8).y; + if (var3 != 0 || var4 != 0) { + var0.orientation = (int)(Math.atan2((double)var3, (double)var4) * 325.949D) & 2047; + } + } else if (var0.false0) { + var0.targetIndex = -1; + var0.false0 = false; + } + } + + if (var0.field959 != -1 && (var0.pathLength == 0 || var0.field963 > 0)) { + var0.orientation = var0.field959; + var0.field959 = -1; + } + + var2 = var0.orientation - var0.rotation & 2047; + if (var2 == 0 && var0.false0) { + var0.targetIndex = -1; + var0.false0 = false; + } + + if (var2 != 0) { + ++var0.field954; + boolean var10; + if (var2 > 1024) { + var0.rotation -= var0.field940; + var10 = true; + if (var2 < var0.field940 || var2 > 2048 - var0.field940) { + var0.rotation = var0.orientation; + var10 = false; + } + + if (var0.idleSequence == var0.movementSequence && (var0.field954 > 25 || var10)) { + if (var0.turnLeftSequence != -1) { + var0.movementSequence = var0.turnLeftSequence; + } else { + var0.movementSequence = var0.walkSequence; + } + } + } else { + var0.rotation += var0.field940; + var10 = true; + if (var2 < var0.field940 || var2 > 2048 - var0.field940) { + var0.rotation = var0.orientation; + var10 = false; + } + + if (var0.movementSequence == var0.idleSequence && (var0.field954 > 25 || var10)) { + if (var0.turnRightSequence != -1) { + var0.movementSequence = var0.turnRightSequence; + } else { + var0.movementSequence = var0.walkSequence; + } + } + } + + var0.rotation &= 2047; + } else { + var0.field954 = 0; + } + } + + TilePaint.method3154(var0); + } + + @ObfuscatedName("ik") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;Ljava/lang/String;IIIIZI)V", + garbageValue = "-1609914367" + ) + @Export("insertMenuItem") + static final void insertMenuItem(String var0, String var1, int var2, int var3, int var4, int var5, boolean var6) { + if (!Client.isMenuOpen) { + if (Client.menuOptionsCount < 500) { + Client.menuActions[Client.menuOptionsCount] = var0; + Client.menuTargets[Client.menuOptionsCount] = var1; + Client.menuOpcodes[Client.menuOptionsCount] = var2; + Client.menuIdentifiers[Client.menuOptionsCount] = var3; + Client.menuArguments1[Client.menuOptionsCount] = var4; + Client.menuArguments2[Client.menuOptionsCount] = var5; + Client.menuShiftClick[Client.menuOptionsCount] = var6; + ++Client.menuOptionsCount; + } + + } + } } diff --git a/runescape-client/src/main/java/WorldMapIcon_0.java b/runescape-client/src/main/java/WorldMapIcon_0.java index b52e7e25bc..0afe5bd1ae 100644 --- a/runescape-client/src/main/java/WorldMapIcon_0.java +++ b/runescape-client/src/main/java/WorldMapIcon_0.java @@ -4,474 +4,154 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ac") +@ObfuscatedName("aj") @Implements("WorldMapIcon_0") public class WorldMapIcon_0 extends AbstractWorldMapIcon { - @ObfuscatedName("f") + @ObfuscatedName("sv") + @ObfuscatedSignature( + descriptor = "Liz;" + ) + public static class248 field148; + @ObfuscatedName("m") @ObfuscatedGetter( - intValue = 1286160069 + intValue = -2114229287 + ) + static int field146; + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Llu;" + ) + @Export("rasterProvider") + public static AbstractRasterProvider rasterProvider; + @ObfuscatedName("az") + @Export("client") + @ObfuscatedSignature( + descriptor = "Lclient;" + ) + static Client client; + @ObfuscatedName("gk") + @Export("regionLandArchives") + static byte[][] regionLandArchives; + @ObfuscatedName("h") + @ObfuscatedGetter( + intValue = 660088057 ) @Export("element") final int element; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lai;" + descriptor = "Lah;" ) @Export("label") final WorldMapLabel label; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 1200101821 + intValue = 1542772613 ) @Export("subWidth") final int subWidth; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 1527714453 + intValue = 112630785 ) @Export("subHeight") final int subHeight; @ObfuscatedSignature( - descriptor = "(Lhw;Lhw;ILai;)V" + descriptor = "(Lhs;Lhs;ILah;)V" ) WorldMapIcon_0(Coord var1, Coord var2, int var3, WorldMapLabel var4) { - super(var1, var2); // L: 14 - this.element = var3; // L: 15 - this.label = var4; // L: 16 - WorldMapElement var5 = class194.WorldMapElement_get(this.getElement()); // L: 17 - Sprite var6 = var5.getSpriteBool(false); // L: 18 + super(var1, var2); + this.element = var3; + this.label = var4; + WorldMapElement var5 = UserComparator10.WorldMapElement_get(this.getElement()); + Sprite var6 = var5.getSpriteBool(false); if (var6 != null) { - this.subWidth = var6.subWidth; // L: 20 - this.subHeight = var6.subHeight; // L: 21 + this.subWidth = var6.subWidth; + this.subHeight = var6.subHeight; } else { - this.subWidth = 0; // L: 24 - this.subHeight = 0; // L: 25 + this.subWidth = 0; + this.subHeight = 0; } - } // L: 27 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "24" + descriptor = "(I)I", + garbageValue = "-359753179" ) @Export("getElement") public int getElement() { - return this.element; // L: 30 + return this.element; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(I)Lai;", - garbageValue = "-669051823" + descriptor = "(I)Lah;", + garbageValue = "1889474780" ) @Export("getLabel") WorldMapLabel getLabel() { return this.label; } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1627026836" + descriptor = "(B)I", + garbageValue = "-79" ) @Export("getSubWidth") int getSubWidth() { return this.subWidth; } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "190840278" + garbageValue = "1082591682" ) @Export("getSubHeight") int getSubHeight() { - return this.subHeight; // L: 42 + return this.subHeight; } - @ObfuscatedName("f") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "104" + descriptor = "(II)Ljd;", + garbageValue = "-1562808952" ) - @Export("isWorldMapEvent") - public static boolean isWorldMapEvent(int var0) { - return var0 == 10 || var0 == 11 || var0 == 12 || var0 == 13 || var0 == 14 || var0 == 15 || var0 == 16 || var0 == 17; // L: 19 - } - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(IB)Lii;", - garbageValue = "55" - ) - @Export("KitDefinition_get") - public static KitDefinition KitDefinition_get(int var0) { - KitDefinition var1 = (KitDefinition)KitDefinition.KitDefinition_cached.get((long)var0); // L: 33 - if (var1 != null) { // L: 34 + @Export("getNpcDefinition") + public static NPCDefinition getNpcDefinition(int var0) { + NPCDefinition var1 = (NPCDefinition)NPCDefinition.NpcDefinition_cached.get((long)var0); + if (var1 != null) { return var1; } else { - byte[] var2 = KitDefinition.KitDefinition_archive.takeFile(3, var0); // L: 35 - var1 = new KitDefinition(); // L: 36 - if (var2 != null) { // L: 37 + byte[] var2 = NPCDefinition.NpcDefinition_archive.takeFile(9, var0); + var1 = new NPCDefinition(); + var1.id = var0; + if (var2 != null) { var1.decode(new Buffer(var2)); } - KitDefinition.KitDefinition_cached.put(var1, (long)var0); // L: 38 - return var1; // L: 39 + var1.postDecode(); + NPCDefinition.NpcDefinition_cached.put(var1, (long)var0); + return var1; } } - @ObfuscatedName("z") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "2085091146" + descriptor = "(IZII)V", + garbageValue = "1525295907" ) - public static void method297() { - HealthBarDefinition.HealthBarDefinition_cached.clear(); // L: 77 - HealthBarDefinition.HealthBarDefinition_cachedSprites.clear(); // L: 78 - } // L: 79 - - @ObfuscatedName("hj") - @ObfuscatedSignature( - descriptor = "(IIIIIIII)V", - garbageValue = "-1229271771" - ) - @Export("addPendingSpawnToScene") - static final void addPendingSpawnToScene(int var0, int var1, int var2, int var3, int var4, int var5, int var6) { - if (var2 >= 1 && var3 >= 1 && var2 <= 102 && var3 <= 102) { // L: 7215 - if (Client.isLowDetail && var0 != GrandExchangeOfferUnitPriceComparator.Client_plane) { // L: 7216 - return; - } - - long var7 = 0L; // L: 7217 - boolean var9 = true; // L: 7218 - boolean var10 = false; // L: 7219 - boolean var11 = false; // L: 7220 - if (var1 == 0) { // L: 7221 - var7 = ModeWhere.scene.getBoundaryObjectTag(var0, var2, var3); - } - - if (var1 == 1) { // L: 7222 - var7 = ModeWhere.scene.getWallDecorationTag(var0, var2, var3); - } - - if (var1 == 2) { // L: 7223 - var7 = ModeWhere.scene.getGameObjectTag(var0, var2, var3); - } - - if (var1 == 3) { // L: 7224 - var7 = ModeWhere.scene.getFloorDecorationTag(var0, var2, var3); - } - - int var12; - if (0L != var7) { // L: 7225 - var12 = ModeWhere.scene.getObjectFlags(var0, var2, var3, var7); // L: 7226 - int var38 = ObjectSound.Entity_unpackID(var7); // L: 7227 - int var39 = var12 & 31; // L: 7228 - int var40 = var12 >> 6 & 3; // L: 7229 - ObjectDefinition var13; - if (var1 == 0) { // L: 7230 - ModeWhere.scene.removeBoundaryObject(var0, var2, var3); // L: 7231 - var13 = ScriptEvent.getObjectDefinition(var38); // L: 7232 - if (var13.interactType != 0) { // L: 7233 - Client.collisionMaps[var0].method3688(var2, var3, var39, var40, var13.boolean1); - } - } - - if (var1 == 1) { // L: 7235 - ModeWhere.scene.removeWallDecoration(var0, var2, var3); - } - - if (var1 == 2) { // L: 7236 - ModeWhere.scene.removeGameObject(var0, var2, var3); // L: 7237 - var13 = ScriptEvent.getObjectDefinition(var38); // L: 7238 - if (var2 + var13.sizeX > 103 || var3 + var13.sizeX > 103 || var2 + var13.sizeY > 103 || var3 + var13.sizeY > 103) { // L: 7239 - return; - } - - if (var13.interactType != 0) { // L: 7240 - Client.collisionMaps[var0].setFlagOffNonSquare(var2, var3, var13.sizeX, var13.sizeY, var40, var13.boolean1); - } - } - - if (var1 == 3) { // L: 7242 - ModeWhere.scene.removeFloorDecoration(var0, var2, var3); // L: 7243 - var13 = ScriptEvent.getObjectDefinition(var38); // L: 7244 - if (var13.interactType == 1) { // L: 7245 - Client.collisionMaps[var0].method3691(var2, var3); - } - } - } - - if (var4 >= 0) { // L: 7248 - var12 = var0; // L: 7249 - if (var0 < 3 && (Tiles.Tiles_renderFlags[1][var2][var3] & 2) == 2) { // L: 7250 - var12 = var0 + 1; - } - - Scene var41 = ModeWhere.scene; // L: 7251 - CollisionMap var14 = Client.collisionMaps[var0]; // L: 7252 - ObjectDefinition var15 = ScriptEvent.getObjectDefinition(var4); // L: 7254 - int var16; - int var17; - if (var5 != 1 && var5 != 3) { // L: 7257 - var16 = var15.sizeX; // L: 7262 - var17 = var15.sizeY; // L: 7263 - } else { - var16 = var15.sizeY; // L: 7258 - var17 = var15.sizeX; // L: 7259 - } - - int var18; - int var19; - if (var16 + var2 <= 104) { // L: 7269 - var18 = (var16 >> 1) + var2; // L: 7270 - var19 = var2 + (var16 + 1 >> 1); // L: 7271 - } else { - var18 = var2; // L: 7274 - var19 = var2 + 1; // L: 7275 - } - - int var20; - int var21; - if (var3 + var17 <= 104) { // L: 7277 - var20 = var3 + (var17 >> 1); // L: 7278 - var21 = var3 + (var17 + 1 >> 1); // L: 7279 - } else { - var20 = var3; // L: 7282 - var21 = var3 + 1; // L: 7283 - } - - int[][] var22 = Tiles.Tiles_heights[var12]; // L: 7285 - int var23 = var22[var19][var20] + var22[var18][var20] + var22[var18][var21] + var22[var19][var21] >> 2; // L: 7286 - int var24 = (var2 << 7) + (var16 << 6); // L: 7287 - int var25 = (var3 << 7) + (var17 << 6); // L: 7288 - long var26 = GrandExchangeOfferOwnWorldComparator.calculateTag(var2, var3, 2, var15.int1 == 0, var4); // L: 7289 - int var28 = (var5 << 6) + var6; // L: 7290 - if (var15.int3 == 1) { // L: 7291 - var28 += 256; - } - - Object var36; - if (var6 == 22) { // L: 7292 - if (var15.animationId == -1 && var15.transforms == null) { // L: 7294 - var36 = var15.getModel(22, var5, var22, var24, var23, var25); - } else { - var36 = new DynamicObject(var4, 22, var5, var12, var2, var3, var15.animationId, true, (Entity)null); // L: 7295 - } - - var41.newFloorDecoration(var0, var2, var3, var23, (Entity)var36, var26, var28); // L: 7296 - if (var15.interactType == 1) { // L: 7297 - var14.setBlockedByFloorDec(var2, var3); - } - } else if (var6 != 10 && var6 != 11) { // L: 7300 - if (var6 >= 12) { // L: 7308 - if (var15.animationId == -1 && var15.transforms == null) { // L: 7310 - var36 = var15.getModel(var6, var5, var22, var24, var23, var25); - } else { - var36 = new DynamicObject(var4, var6, var5, var12, var2, var3, var15.animationId, true, (Entity)null); // L: 7311 - } - - var41.method3227(var0, var2, var3, var23, 1, 1, (Entity)var36, 0, var26, var28); // L: 7312 - if (var15.interactType != 0) { // L: 7313 - var14.addGameObject(var2, var3, var16, var17, var15.boolean1); - } - } else if (var6 == 0) { // L: 7316 - if (var15.animationId == -1 && var15.transforms == null) { // L: 7318 - var36 = var15.getModel(0, var5, var22, var24, var23, var25); - } else { - var36 = new DynamicObject(var4, 0, var5, var12, var2, var3, var15.animationId, true, (Entity)null); // L: 7319 - } - - var41.newBoundaryObject(var0, var2, var3, var23, (Entity)var36, (Entity)null, Tiles.field533[var5], 0, var26, var28); // L: 7320 - if (var15.interactType != 0) { // L: 7321 - var14.method3683(var2, var3, var6, var5, var15.boolean1); - } - } else if (var6 == 1) { // L: 7324 - if (var15.animationId == -1 && var15.transforms == null) { // L: 7326 - var36 = var15.getModel(1, var5, var22, var24, var23, var25); - } else { - var36 = new DynamicObject(var4, 1, var5, var12, var2, var3, var15.animationId, true, (Entity)null); // L: 7327 - } - - var41.newBoundaryObject(var0, var2, var3, var23, (Entity)var36, (Entity)null, Tiles.field534[var5], 0, var26, var28); // L: 7328 - if (var15.interactType != 0) { // L: 7329 - var14.method3683(var2, var3, var6, var5, var15.boolean1); - } - } else { - int var29; - if (var6 == 2) { // L: 7332 - var29 = var5 + 1 & 3; // L: 7333 - Object var31; - Object var37; - if (var15.animationId == -1 && var15.transforms == null) { // L: 7336 - var37 = var15.getModel(2, var5 + 4, var22, var24, var23, var25); // L: 7337 - var31 = var15.getModel(2, var29, var22, var24, var23, var25); // L: 7338 - } else { - var37 = new DynamicObject(var4, 2, var5 + 4, var12, var2, var3, var15.animationId, true, (Entity)null); // L: 7341 - var31 = new DynamicObject(var4, 2, var29, var12, var2, var3, var15.animationId, true, (Entity)null); // L: 7342 - } - - var41.newBoundaryObject(var0, var2, var3, var23, (Entity)var37, (Entity)var31, Tiles.field533[var5], Tiles.field533[var29], var26, var28); // L: 7344 - if (var15.interactType != 0) { // L: 7345 - var14.method3683(var2, var3, var6, var5, var15.boolean1); - } - } else if (var6 == 3) { // L: 7348 - if (var15.animationId == -1 && var15.transforms == null) { // L: 7350 - var36 = var15.getModel(3, var5, var22, var24, var23, var25); - } else { - var36 = new DynamicObject(var4, 3, var5, var12, var2, var3, var15.animationId, true, (Entity)null); // L: 7351 - } - - var41.newBoundaryObject(var0, var2, var3, var23, (Entity)var36, (Entity)null, Tiles.field534[var5], 0, var26, var28); // L: 7352 - if (var15.interactType != 0) { // L: 7353 - var14.method3683(var2, var3, var6, var5, var15.boolean1); - } - } else if (var6 == 9) { // L: 7356 - if (var15.animationId == -1 && var15.transforms == null) { // L: 7358 - var36 = var15.getModel(var6, var5, var22, var24, var23, var25); - } else { - var36 = new DynamicObject(var4, var6, var5, var12, var2, var3, var15.animationId, true, (Entity)null); // L: 7359 - } - - var41.method3227(var0, var2, var3, var23, 1, 1, (Entity)var36, 0, var26, var28); // L: 7360 - if (var15.interactType != 0) { // L: 7361 - var14.addGameObject(var2, var3, var16, var17, var15.boolean1); - } - } else if (var6 == 4) { // L: 7364 - if (var15.animationId == -1 && var15.transforms == null) { // L: 7366 - var36 = var15.getModel(4, var5, var22, var24, var23, var25); - } else { - var36 = new DynamicObject(var4, 4, var5, var12, var2, var3, var15.animationId, true, (Entity)null); // L: 7367 - } - - var41.newWallDecoration(var0, var2, var3, var23, (Entity)var36, (Entity)null, Tiles.field533[var5], 0, 0, 0, var26, var28); // L: 7368 - } else { - long var30; - Object var32; - if (var6 == 5) { // L: 7371 - var29 = 16; // L: 7372 - var30 = var41.getBoundaryObjectTag(var0, var2, var3); // L: 7373 - if (0L != var30) { // L: 7374 - var29 = ScriptEvent.getObjectDefinition(ObjectSound.Entity_unpackID(var30)).int2; - } - - if (var15.animationId == -1 && var15.transforms == null) { // L: 7376 - var32 = var15.getModel(4, var5, var22, var24, var23, var25); - } else { - var32 = new DynamicObject(var4, 4, var5, var12, var2, var3, var15.animationId, true, (Entity)null); // L: 7377 - } - - var41.newWallDecoration(var0, var2, var3, var23, (Entity)var32, (Entity)null, Tiles.field533[var5], 0, var29 * Tiles.field528[var5], var29 * Tiles.field536[var5], var26, var28); // L: 7378 - } else if (var6 == 6) { // L: 7381 - var29 = 8; // L: 7382 - var30 = var41.getBoundaryObjectTag(var0, var2, var3); // L: 7383 - if (var30 != 0L) { // L: 7384 - var29 = ScriptEvent.getObjectDefinition(ObjectSound.Entity_unpackID(var30)).int2 / 2; - } - - if (var15.animationId == -1 && var15.transforms == null) { // L: 7386 - var32 = var15.getModel(4, var5 + 4, var22, var24, var23, var25); - } else { - var32 = new DynamicObject(var4, 4, var5 + 4, var12, var2, var3, var15.animationId, true, (Entity)null); // L: 7387 - } - - var41.newWallDecoration(var0, var2, var3, var23, (Entity)var32, (Entity)null, 256, var5, var29 * Tiles.field535[var5], var29 * Tiles.field529[var5], var26, var28); // L: 7388 - } else if (var6 == 7) { // L: 7391 - int var35 = var5 + 2 & 3; // L: 7393 - if (var15.animationId == -1 && var15.transforms == null) { // L: 7394 - var36 = var15.getModel(4, var35 + 4, var22, var24, var23, var25); - } else { - var36 = new DynamicObject(var4, 4, var35 + 4, var12, var2, var3, var15.animationId, true, (Entity)null); // L: 7395 - } - - var41.newWallDecoration(var0, var2, var3, var23, (Entity)var36, (Entity)null, 256, var35, 0, 0, var26, var28); // L: 7396 - } else if (var6 == 8) { // L: 7399 - var29 = 8; // L: 7400 - var30 = var41.getBoundaryObjectTag(var0, var2, var3); // L: 7401 - if (var30 != 0L) { // L: 7402 - var29 = ScriptEvent.getObjectDefinition(ObjectSound.Entity_unpackID(var30)).int2 / 2; - } - - int var34 = var5 + 2 & 3; // L: 7405 - Object var33; - if (var15.animationId == -1 && var15.transforms == null) { // L: 7406 - var32 = var15.getModel(4, var5 + 4, var22, var24, var23, var25); // L: 7407 - var33 = var15.getModel(4, var34 + 4, var22, var24, var23, var25); // L: 7408 - } else { - var32 = new DynamicObject(var4, 4, var5 + 4, var12, var2, var3, var15.animationId, true, (Entity)null); // L: 7411 - var33 = new DynamicObject(var4, 4, var34 + 4, var12, var2, var3, var15.animationId, true, (Entity)null); // L: 7412 - } - - var41.newWallDecoration(var0, var2, var3, var23, (Entity)var32, (Entity)var33, 256, var5, var29 * Tiles.field535[var5], var29 * Tiles.field529[var5], var26, var28); // L: 7414 - } - } - } - } else { - if (var15.animationId == -1 && var15.transforms == null) { // L: 7302 - var36 = var15.getModel(10, var5, var22, var24, var23, var25); - } else { - var36 = new DynamicObject(var4, 10, var5, var12, var2, var3, var15.animationId, true, (Entity)null); // L: 7303 - } - - if (var36 != null) { // L: 7304 - var41.method3227(var0, var2, var3, var23, var16, var17, (Entity)var36, var6 == 11 ? 256 : 0, var26, var28); - } - - if (var15.interactType != 0) { // L: 7305 - var14.addGameObject(var2, var3, var16, var17, var15.boolean1); - } - } - } + public static final void method270(int var0, boolean var1, int var2) { + if (var0 >= 8000 && var0 <= 48000) { + PcmPlayer.field1443 = var0; + PcmPlayer.PcmPlayer_stereo = var1; + PcmPlayer.field1424 = var2; + } else { + throw new IllegalArgumentException(); } - - } // L: 7419 - - @ObfuscatedName("it") - @ObfuscatedSignature( - descriptor = "(Lht;IIZB)V", - garbageValue = "-45" - ) - @Export("alignWidgetSize") - static void alignWidgetSize(Widget var0, int var1, int var2, boolean var3) { - int var4 = var0.width; // L: 9905 - int var5 = var0.height; // L: 9906 - if (var0.widthAlignment == 0) { // L: 9907 - var0.width = var0.rawWidth; - } else if (var0.widthAlignment == 1) { // L: 9908 - var0.width = var1 - var0.rawWidth; - } else if (var0.widthAlignment == 2) { // L: 9909 - var0.width = var0.rawWidth * var1 >> 14; - } - - if (var0.heightAlignment == 0) { // L: 9910 - var0.height = var0.rawHeight; - } else if (var0.heightAlignment == 1) { // L: 9911 - var0.height = var2 - var0.rawHeight; - } else if (var0.heightAlignment == 2) { - var0.height = var2 * var0.rawHeight >> 14; // L: 9912 - } - - if (var0.widthAlignment == 4) { // L: 9913 - var0.width = var0.height * var0.field2610 / var0.field2611; - } - - if (var0.heightAlignment == 4) { // L: 9914 - var0.height = var0.width * var0.field2611 / var0.field2610; - } - - if (var0.contentType == 1337) { // L: 9915 - Client.viewportWidget = var0; - } - - if (var3 && var0.onResize != null && (var4 != var0.width || var5 != var0.height)) { // L: 9916 - ScriptEvent var6 = new ScriptEvent(); // L: 9917 - var6.widget = var0; // L: 9918 - var6.args = var0.onResize; // L: 9919 - Client.scriptEvents.addFirst(var6); // L: 9920 - } - - } // L: 9922 + } } diff --git a/runescape-client/src/main/java/WorldMapIcon_1.java b/runescape-client/src/main/java/WorldMapIcon_1.java index 87cf932eb9..e21bf772b1 100644 --- a/runescape-client/src/main/java/WorldMapIcon_1.java +++ b/runescape-client/src/main/java/WorldMapIcon_1.java @@ -3,272 +3,304 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("ay") +@ObfuscatedName("ae") @Implements("WorldMapIcon_1") public class WorldMapIcon_1 extends AbstractWorldMapIcon { - @ObfuscatedName("f") + @ObfuscatedName("pv") + @Export("ClanChat_inClanChat") + static boolean ClanChat_inClanChat; + @ObfuscatedName("cf") + public static char field200; + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = -1272071383 + intValue = 1040342565 ) @Export("objectDefId") final int objectDefId; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lax;" + descriptor = "Lam;" ) @Export("region") final WorldMapRegion region; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1816725297 + intValue = -1070346919 ) @Export("element") int element; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lai;" + descriptor = "Lah;" ) @Export("label") WorldMapLabel label; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -29406003 + intValue = 807187901 ) @Export("subWidth") int subWidth; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -1922717703 + intValue = 1506081143 ) @Export("subHeight") int subHeight; @ObfuscatedSignature( - descriptor = "(Lhw;Lhw;ILax;)V" + descriptor = "(Lhs;Lhs;ILam;)V" ) WorldMapIcon_1(Coord var1, Coord var2, int var3, WorldMapRegion var4) { - super(var1, var2); // L: 17 - this.objectDefId = var3; // L: 18 - this.region = var4; // L: 19 - this.init(); // L: 20 - } // L: 21 + super(var1, var2); + this.objectDefId = var3; + this.region = var4; + this.init(); + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "24" + descriptor = "(I)I", + garbageValue = "-359753179" ) @Export("getElement") public int getElement() { - return this.element; // L: 39 + return this.element; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(I)Lai;", - garbageValue = "-669051823" + descriptor = "(I)Lah;", + garbageValue = "1889474780" ) @Export("getLabel") WorldMapLabel getLabel() { - return this.label; // L: 43 + return this.label; } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1627026836" + descriptor = "(B)I", + garbageValue = "-79" ) @Export("getSubWidth") int getSubWidth() { - return this.subWidth; // L: 47 + return this.subWidth; } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "190840278" + garbageValue = "1082591682" ) @Export("getSubHeight") int getSubHeight() { - return this.subHeight; // L: 51 + return this.subHeight; } - @ObfuscatedName("n") + @ObfuscatedName("f") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1939133514" + garbageValue = "1102738521" ) @Export("init") void init() { - this.element = ScriptEvent.getObjectDefinition(this.objectDefId).transform().mapIconId; // L: 24 - this.label = this.region.createMapLabel(class194.WorldMapElement_get(this.element)); // L: 25 - WorldMapElement var1 = class194.WorldMapElement_get(this.getElement()); // L: 26 - Sprite var2 = var1.getSpriteBool(false); // L: 27 - if (var2 != null) { // L: 28 - this.subWidth = var2.subWidth; // L: 29 - this.subHeight = var2.subHeight; // L: 30 + this.element = WorldMapDecoration.getObjectDefinition(this.objectDefId).transform().mapIconId; + this.label = this.region.createMapLabel(UserComparator10.WorldMapElement_get(this.element)); + WorldMapElement var1 = UserComparator10.WorldMapElement_get(this.getElement()); + Sprite var2 = var1.getSpriteBool(false); + if (var2 != null) { + this.subWidth = var2.subWidth; + this.subHeight = var2.subHeight; } else { - this.subWidth = 0; // L: 33 - this.subHeight = 0; // L: 34 + this.subWidth = 0; + this.subHeight = 0; } - } // L: 36 + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "14" + ) + static void method354() { + if (TaskHandler.javaVendor.toLowerCase().indexOf("microsoft") != -1) { + KeyHandler.KeyHandler_keyCodes[186] = 57; + KeyHandler.KeyHandler_keyCodes[187] = 27; + KeyHandler.KeyHandler_keyCodes[188] = 71; + KeyHandler.KeyHandler_keyCodes[189] = 26; + KeyHandler.KeyHandler_keyCodes[190] = 72; + KeyHandler.KeyHandler_keyCodes[191] = 73; + KeyHandler.KeyHandler_keyCodes[192] = 58; + KeyHandler.KeyHandler_keyCodes[219] = 42; + KeyHandler.KeyHandler_keyCodes[220] = 74; + KeyHandler.KeyHandler_keyCodes[221] = 43; + KeyHandler.KeyHandler_keyCodes[222] = 59; + KeyHandler.KeyHandler_keyCodes[223] = 28; + } else { + KeyHandler.KeyHandler_keyCodes[44] = 71; + KeyHandler.KeyHandler_keyCodes[45] = 26; + KeyHandler.KeyHandler_keyCodes[46] = 72; + KeyHandler.KeyHandler_keyCodes[47] = 73; + KeyHandler.KeyHandler_keyCodes[59] = 57; + KeyHandler.KeyHandler_keyCodes[61] = 27; + KeyHandler.KeyHandler_keyCodes[91] = 42; + KeyHandler.KeyHandler_keyCodes[92] = 74; + KeyHandler.KeyHandler_keyCodes[93] = 43; + KeyHandler.KeyHandler_keyCodes[192] = 28; + KeyHandler.KeyHandler_keyCodes[222] = 58; + KeyHandler.KeyHandler_keyCodes[520] = 59; + } + + } + + @ObfuscatedName("p") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "982246175" + ) + public static boolean method355() { + try { + if (class206.musicPlayerStatus == 2) { + if (FileSystem.musicTrack == null) { + FileSystem.musicTrack = MusicTrack.readTrack(Varps.musicTrackArchive, HealthBarUpdate.musicTrackGroupId, class206.musicTrackFileId); + if (FileSystem.musicTrack == null) { + return false; + } + } + + if (class206.soundCache == null) { + class206.soundCache = new SoundCache(class206.soundEffectsArchive, class206.musicSamplesArchive); + } + + if (class206.midiPcmStream.loadMusicTrack(FileSystem.musicTrack, class206.musicPatchesArchive, class206.soundCache, 22050)) { + class206.midiPcmStream.clearAll(); + class206.midiPcmStream.setPcmStreamVolume(GrandExchangeEvent.musicTrackVolume); + class206.midiPcmStream.setMusicTrack(FileSystem.musicTrack, class231.musicTrackBoolean); + class206.musicPlayerStatus = 0; + FileSystem.musicTrack = null; + class206.soundCache = null; + Varps.musicTrackArchive = null; + return true; + } + } + } catch (Exception var1) { + var1.printStackTrace(); + class206.midiPcmStream.clear(); + class206.musicPlayerStatus = 0; + FileSystem.musicTrack = null; + class206.soundCache = null; + Varps.musicTrackArchive = null; + } + + return false; + } + + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "620552386" + ) + public static void method339() { + NPCDefinition.NpcDefinition_cached.clear(); + NPCDefinition.NpcDefinition_cachedModels.clear(); + } @ObfuscatedName("q") @ObfuscatedSignature( - descriptor = "(Lcf;Lcf;IZIZI)I", - garbageValue = "586968313" + descriptor = "(ILcs;ZI)I", + garbageValue = "1021880804" ) - static int method395(World var0, World var1, int var2, boolean var3, int var4, boolean var5) { - int var6 = WorldMapSprite.compareWorlds(var0, var1, var2, var3); // L: 199 - if (var6 != 0) { // L: 200 - return var3 ? -var6 : var6; // L: 201 - } else if (var4 == -1) { // L: 204 - return 0; + static int method336(int var0, Script var1, boolean var2) { + Widget var3 = CollisionMap.getWidget(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + if (var0 == ScriptOpcodes.IF_GETSCROLLX) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.scrollX; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETSCROLLY) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.scrollY; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETTEXT) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3.text; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETSCROLLWIDTH) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.scrollWidth; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETSCROLLHEIGHT) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.scrollHeight; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETMODELZOOM) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.modelZoom; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETMODELANGLE_X) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.modelAngleX; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETMODELANGLE_Z) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.modelAngleZ; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETMODELANGLE_Y) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.modelAngleY; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETTRANSTOP) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.transparencyTop; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETTRANSBOT) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.transparencyBot; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETCOLOUR) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.color; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETFILLCOLOUR) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.color2; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETFILLMODE) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.fillMode.rsOrdinal(); + return 1; + } else if (var0 == ScriptOpcodes.IF_GETMODELTRANSPARENT) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.modelTransparency ? 1 : 0; + return 1; } else { - int var7 = WorldMapSprite.compareWorlds(var0, var1, var4, var5); // L: 205 - return var5 ? -var7 : var7; // L: 206 + return 2; } } - @ObfuscatedName("t") + @ObfuscatedName("g") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-218709876" + descriptor = "(ILcs;ZS)I", + garbageValue = "255" ) - public static void method398() { - PlayerAppearance.PlayerAppearance_cachedModels.clear(); // L: 252 - } // L: 253 + static int method345(int var0, Script var1, boolean var2) { + Widget var5; + if (var0 == ScriptOpcodes.IF_GETINVOBJECT) { + var5 = CollisionMap.getWidget(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var5.itemId; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETINVCOUNT) { + var5 = CollisionMap.getWidget(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + if (var5.itemId != -1) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var5.itemQuantity; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "(Lht;IIII)V", - garbageValue = "-630082836" - ) - @Export("Widget_setKeyRate") - static final void Widget_setKeyRate(Widget var0, int var1, int var2, int var3) { - if (var0.field2670 == null) { // L: 926 - throw new RuntimeException(); // L: 927 + return 1; + } else if (var0 == ScriptOpcodes.IF_HASSUB) { + int var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + InterfaceParent var4 = (InterfaceParent)Client.interfaceParents.get((long)var3); + if (var4 != null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == ScriptOpcodes.IF_GETTOP) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.rootInterface; + return 1; } else { - var0.field2670[var1] = var2; // L: 929 - var0.field2671[var1] = var3; // L: 930 + return 2; } - } // L: 931 - - @ObfuscatedName("fg") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1198701264" - ) - static final void method392() { - int var0 = WorldMapSection2.field225 * 128 + 64; // L: 3711 - int var1 = WorldMapLabelSize.field152 * 128 + 64; // L: 3712 - int var2 = GrandExchangeOfferWorldComparator.getTileHeight(var0, var1, GrandExchangeOfferUnitPriceComparator.Client_plane) - SpriteMask.field2542; // L: 3713 - if (ItemContainer.cameraX < var0) { // L: 3714 - ItemContainer.cameraX = (var0 - ItemContainer.cameraX) * ReflectionCheck.field1364 / 1000 + ItemContainer.cameraX + Player.field674; // L: 3715 - if (ItemContainer.cameraX > var0) { // L: 3716 - ItemContainer.cameraX = var0; - } - } - - if (ItemContainer.cameraX > var0) { // L: 3718 - ItemContainer.cameraX -= ReflectionCheck.field1364 * (ItemContainer.cameraX - var0) / 1000 + Player.field674; // L: 3719 - if (ItemContainer.cameraX < var0) { // L: 3720 - ItemContainer.cameraX = var0; - } - } - - if (ChatChannel.cameraY < var2) { // L: 3722 - ChatChannel.cameraY = (var2 - ChatChannel.cameraY) * ReflectionCheck.field1364 / 1000 + ChatChannel.cameraY + Player.field674; // L: 3723 - if (ChatChannel.cameraY > var2) { // L: 3724 - ChatChannel.cameraY = var2; - } - } - - if (ChatChannel.cameraY > var2) { // L: 3726 - ChatChannel.cameraY -= ReflectionCheck.field1364 * (ChatChannel.cameraY - var2) / 1000 + Player.field674; // L: 3727 - if (ChatChannel.cameraY < var2) { // L: 3728 - ChatChannel.cameraY = var2; - } - } - - if (WorldMapManager.cameraZ < var1) { // L: 3730 - WorldMapManager.cameraZ = (var1 - WorldMapManager.cameraZ) * ReflectionCheck.field1364 / 1000 + WorldMapManager.cameraZ + Player.field674; // L: 3731 - if (WorldMapManager.cameraZ > var1) { // L: 3732 - WorldMapManager.cameraZ = var1; - } - } - - if (WorldMapManager.cameraZ > var1) { // L: 3734 - WorldMapManager.cameraZ -= ReflectionCheck.field1364 * (WorldMapManager.cameraZ - var1) / 1000 + Player.field674; // L: 3735 - if (WorldMapManager.cameraZ < var1) { // L: 3736 - WorldMapManager.cameraZ = var1; - } - } - - var0 = MilliClock.field2048 * 128 + 64; // L: 3738 - var1 = PcmPlayer.field1449 * 128 + 64; // L: 3739 - var2 = GrandExchangeOfferWorldComparator.getTileHeight(var0, var1, GrandExchangeOfferUnitPriceComparator.Client_plane) - AbstractRasterProvider.field3890; // L: 3740 - int var3 = var0 - ItemContainer.cameraX; // L: 3741 - int var4 = var2 - ChatChannel.cameraY; // L: 3742 - int var5 = var1 - WorldMapManager.cameraZ; // L: 3743 - int var6 = (int)Math.sqrt((double)(var5 * var5 + var3 * var3)); // L: 3744 - int var7 = (int)(Math.atan2((double)var4, (double)var6) * 325.949D) & 2047; // L: 3745 - int var8 = (int)(Math.atan2((double)var3, (double)var5) * -325.949D) & 2047; // L: 3746 - if (var7 < 128) { // L: 3747 - var7 = 128; - } - - if (var7 > 383) { // L: 3748 - var7 = 383; - } - - if (World.cameraPitch < var7) { // L: 3749 - World.cameraPitch = (var7 - World.cameraPitch) * class60.field452 / 1000 + World.cameraPitch + WorldMapCacheName.field326; // L: 3750 - if (World.cameraPitch > var7) { // L: 3751 - World.cameraPitch = var7; - } - } - - if (World.cameraPitch > var7) { // L: 3753 - World.cameraPitch -= class60.field452 * (World.cameraPitch - var7) / 1000 + WorldMapCacheName.field326; // L: 3754 - if (World.cameraPitch < var7) { // L: 3755 - World.cameraPitch = var7; - } - } - - int var9 = var8 - ViewportMouse.cameraYaw; // L: 3757 - if (var9 > 1024) { // L: 3758 - var9 -= 2048; - } - - if (var9 < -1024) { // L: 3759 - var9 += 2048; - } - - if (var9 > 0) { // L: 3760 - ViewportMouse.cameraYaw = var9 * class60.field452 / 1000 + ViewportMouse.cameraYaw + WorldMapCacheName.field326; // L: 3761 - ViewportMouse.cameraYaw &= 2047; // L: 3762 - } - - if (var9 < 0) { // L: 3764 - ViewportMouse.cameraYaw -= -var9 * class60.field452 / 1000 + WorldMapCacheName.field326; // L: 3765 - ViewportMouse.cameraYaw &= 2047; // L: 3766 - } - - int var10 = var8 - ViewportMouse.cameraYaw; // L: 3768 - if (var10 > 1024) { // L: 3769 - var10 -= 2048; - } - - if (var10 < -1024) { // L: 3770 - var10 += 2048; - } - - if (var10 < 0 && var9 > 0 || var10 > 0 && var9 < 0) { // L: 3771 - ViewportMouse.cameraYaw = var8; - } - - } // L: 3772 + } } diff --git a/runescape-client/src/main/java/WorldMapLabel.java b/runescape-client/src/main/java/WorldMapLabel.java index 46418251fb..5637192275 100644 --- a/runescape-client/src/main/java/WorldMapLabel.java +++ b/runescape-client/src/main/java/WorldMapLabel.java @@ -4,58 +4,65 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ai") +@ObfuscatedName("ah") @Implements("WorldMapLabel") public class WorldMapLabel { - @ObfuscatedName("f") + @ObfuscatedName("r") + @ObfuscatedSignature( + descriptor = "Lkj;" + ) + @Export("NetCache_reference") + public static Buffer NetCache_reference; + @ObfuscatedName("ey") + @ObfuscatedGetter( + intValue = 1487211049 + ) + static int field258; + @ObfuscatedName("fa") + @ObfuscatedSignature( + descriptor = "Lkv;" + ) + @Export("WorldMapElement_fonts") + static Fonts WorldMapElement_fonts; + @ObfuscatedName("h") @Export("text") String text; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -1900229559 + intValue = 1156578913 ) @Export("width") int width; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 424685221 + intValue = 2007608325 ) @Export("height") int height; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lab;" + descriptor = "Lan;" ) @Export("size") WorldMapLabelSize size; @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;IILab;)V" + descriptor = "(Ljava/lang/String;IILan;)V" ) WorldMapLabel(String var1, int var2, int var3, WorldMapLabelSize var4) { - this.text = var1; // L: 10 - this.width = var2; // L: 11 - this.height = var3; // L: 12 - this.size = var4; // L: 13 - } // L: 14 + this.text = var1; + this.width = var2; + this.height = var3; + this.size = var4; + } - @ObfuscatedName("ay") + @ObfuscatedName("li") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1774401095" + descriptor = "(B)V", + garbageValue = "-13" ) - protected static final void method519() { - UserComparator3.clock.mark(); // L: 405 - - int var0; - for (var0 = 0; var0 < 32; ++var0) { // L: 406 - GameShell.graphicsTickTimes[var0] = 0L; - } - - for (var0 = 0; var0 < 32; ++var0) { // L: 407 - GameShell.clientTickTimes[var0] = 0L; - } - - GameShell.gameCyclesToDo = 0; // L: 408 - } // L: 409 + static final void method469() { + Client.field842 = Client.cycleCntr; + WorldMapIcon_1.ClanChat_inClanChat = true; + } } diff --git a/runescape-client/src/main/java/WorldMapLabelSize.java b/runescape-client/src/main/java/WorldMapLabelSize.java index d75b649e59..8eae45d981 100644 --- a/runescape-client/src/main/java/WorldMapLabelSize.java +++ b/runescape-client/src/main/java/WorldMapLabelSize.java @@ -4,91 +4,100 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ab") +@ObfuscatedName("an") @Implements("WorldMapLabelSize") public class WorldMapLabelSize { - @ObfuscatedName("sc") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lcc;" - ) - @Export("friendSystem") - public static FriendSystem friendSystem; - @ObfuscatedName("re") - @ObfuscatedGetter( - intValue = -1977795359 - ) - static int field152; - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "Lab;" + descriptor = "Lan;" ) @Export("WorldMapLabelSize_small") public static final WorldMapLabelSize WorldMapLabelSize_small; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lab;" + descriptor = "Lan;" ) @Export("WorldMapLabelSize_medium") public static final WorldMapLabelSize WorldMapLabelSize_medium; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lab;" + descriptor = "Lan;" ) @Export("WorldMapLabelSize_large") public static final WorldMapLabelSize WorldMapLabelSize_large; - @ObfuscatedName("m") - @ObfuscatedGetter( - intValue = 542681527 + @ObfuscatedName("fi") + @ObfuscatedSignature( + descriptor = "Lku;" ) - final int field147; - @ObfuscatedName("z") + @Export("fontPlain12") + static Font fontPlain12; + @ObfuscatedName("ix") @ObfuscatedGetter( - intValue = -679221485 + intValue = -36540981 ) - final int field150; - @ObfuscatedName("q") + @Export("selectedItemWidget") + static int selectedItemWidget; + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 1499246127 + intValue = 277822877 ) - final int field148; + final int field142; + @ObfuscatedName("t") + @ObfuscatedGetter( + intValue = 655374697 + ) + final int field133; + @ObfuscatedName("j") + @ObfuscatedGetter( + intValue = -1182850847 + ) + final int field135; static { - WorldMapLabelSize_small = new WorldMapLabelSize(2, 0, 4); // L: 7 - WorldMapLabelSize_medium = new WorldMapLabelSize(1, 1, 2); // L: 8 - WorldMapLabelSize_large = new WorldMapLabelSize(0, 2, 0); // L: 9 + WorldMapLabelSize_small = new WorldMapLabelSize(2, 0, 4); + WorldMapLabelSize_medium = new WorldMapLabelSize(1, 1, 2); + WorldMapLabelSize_large = new WorldMapLabelSize(0, 2, 0); } WorldMapLabelSize(int var1, int var2, int var3) { - this.field147 = var1; // L: 19 - this.field150 = var2; - this.field148 = var3; // L: 21 - } // L: 22 + this.field142 = var1; + this.field133 = var2; + this.field135 = var3; + } - @ObfuscatedName("b") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(FI)Z", - garbageValue = "-747547430" + descriptor = "(FB)Z", + garbageValue = "-7" ) - boolean method277(float var1) { - return var1 >= (float)this.field148; // L: 25 + boolean method254(float var1) { + return var1 >= (float)this.field135; } @ObfuscatedName("f") @ObfuscatedSignature( - descriptor = "(I)[Lin;", - garbageValue = "1762578081" + descriptor = "(IIIB)I", + garbageValue = "-3" ) - @Export("PlayerType_values") - public static PlayerType[] PlayerType_values() { - return new PlayerType[]{PlayerType.PlayerType_ironman, PlayerType.PlayerType_playerModerator, PlayerType.PlayerType_normal, PlayerType.PlayerType_jagexModerator, PlayerType.field3125, PlayerType.PlayerType_hardcoreIronman, PlayerType.PlayerType_ultimateIronman}; // L: 20 - } + @Export("hslToRgb") + static final int hslToRgb(int var0, int var1, int var2) { + if (var2 > 179) { + var1 /= 2; + } - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(I)[Lab;", - garbageValue = "-594087890" - ) - static WorldMapLabelSize[] method273() { - return new WorldMapLabelSize[]{WorldMapLabelSize_small, WorldMapLabelSize_large, WorldMapLabelSize_medium}; // L: 15 + if (var2 > 192) { + var1 /= 2; + } + + if (var2 > 217) { + var1 /= 2; + } + + if (var2 > 243) { + var1 /= 2; + } + + int var3 = (var1 / 32 << 7) + (var0 / 4 << 10) + var2 / 2; + return var3; } } diff --git a/runescape-client/src/main/java/WorldMapManager.java b/runescape-client/src/main/java/WorldMapManager.java index bb08db73c0..dfaee7f9f9 100644 --- a/runescape-client/src/main/java/WorldMapManager.java +++ b/runescape-client/src/main/java/WorldMapManager.java @@ -1,5 +1,3 @@ -import java.applet.Applet; -import java.net.URL; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; @@ -10,139 +8,142 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import netscape.javascript.JSObject; -@ObfuscatedName("at") +@ObfuscatedName("ai") @Implements("WorldMapManager") public final class WorldMapManager { - @ObfuscatedName("ca") - public static char field335; - @ObfuscatedName("ds") + @ObfuscatedName("qz") @ObfuscatedSignature( - descriptor = "Lid;" + descriptor = "Lde;" ) - @Export("archive1") - static Archive archive1; - @ObfuscatedName("hr") - @ObfuscatedGetter( - intValue = 104039997 + @Export("pcmStreamMixer") + static PcmStreamMixer pcmStreamMixer; + @ObfuscatedName("dx") + @ObfuscatedSignature( + descriptor = "Lfd;" ) - @Export("cameraZ") - static int cameraZ; - @ObfuscatedName("f") + @Export("js5SocketTask") + static Task js5SocketTask; + @ObfuscatedName("ee") + @ObfuscatedSignature( + descriptor = "Lln;" + ) + @Export("spriteIds") + static GraphicsDefaults spriteIds; + @ObfuscatedName("h") @Export("loaded") boolean loaded; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("loadStarted") boolean loadStarted; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Laj;" + descriptor = "Lay;" ) @Export("mapAreaData") WorldMapAreaData mapAreaData; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Llc;" + descriptor = "Llm;" ) @Export("compositeTextureSprite") Sprite compositeTextureSprite; - @ObfuscatedName("z") + @ObfuscatedName("t") @Export("icons") HashMap icons; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "[[Lax;" + descriptor = "[[Lam;" ) @Export("regions") WorldMapRegion[][] regions; - @ObfuscatedName("k") + @ObfuscatedName("n") @Export("scaleHandlers") HashMap scaleHandlers; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "[Lle;" + descriptor = "[Llo;" ) @Export("mapSceneSprites") IndexedSprite[] mapSceneSprites; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("geographyArchive") final AbstractArchive geographyArchive; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("groundArchive") final AbstractArchive groundArchive; - @ObfuscatedName("e") + @ObfuscatedName("u") @Export("fonts") final HashMap fonts; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedGetter( - intValue = -847908099 + intValue = -1926509867 ) @Export("tileX") int tileX; - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedGetter( - intValue = -1911109555 + intValue = 631527739 ) @Export("tileY") int tileY; - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedGetter( - intValue = 1404433049 + intValue = 1016148160 ) @Export("tileWidth") int tileWidth; - @ObfuscatedName("p") + @ObfuscatedName("i") @ObfuscatedGetter( - intValue = 617444511 + intValue = 525885632 ) @Export("tileHeight") int tileHeight; - @ObfuscatedName("r") + @ObfuscatedName("f") @ObfuscatedGetter( - intValue = -2140717099 + intValue = -1280315109 ) @Export("pixelsPerTile") public int pixelsPerTile; @ObfuscatedSignature( - descriptor = "([Lle;Ljava/util/HashMap;Liw;Liw;)V" + descriptor = "([Llo;Ljava/util/HashMap;Lib;Lib;)V" ) public WorldMapManager(IndexedSprite[] var1, HashMap var2, AbstractArchive var3, AbstractArchive var4) { - this.loaded = false; // L: 16 - this.loadStarted = false; // L: 17 - this.scaleHandlers = new HashMap(); // L: 22 - this.pixelsPerTile = 0; // L: 31 - this.mapSceneSprites = var1; // L: 34 - this.fonts = var2; // L: 35 - this.geographyArchive = var3; // L: 36 - this.groundArchive = var4; // L: 37 - } // L: 38 + this.loaded = false; + this.loadStarted = false; + this.scaleHandlers = new HashMap(); + this.pixelsPerTile = 0; + this.mapSceneSprites = var1; + this.fonts = var2; + this.geographyArchive = var3; + this.groundArchive = var4; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Liw;Ljava/lang/String;ZI)V", - garbageValue = "-295737943" + descriptor = "(Lib;Ljava/lang/String;ZI)V", + garbageValue = "1247485995" ) @Export("load") public void load(AbstractArchive var1, String var2, boolean var3) { - if (!this.loadStarted) { // L: 41 + if (!this.loadStarted) { this.loaded = false; - this.loadStarted = true; // L: 45 - System.nanoTime(); // L: 46 - int var4 = var1.getGroupId(WorldMapCacheName.field320.name); // L: 47 + this.loadStarted = true; + System.nanoTime(); + int var4 = var1.getGroupId(WorldMapCacheName.field328.name); int var5 = var1.getFileId(var4, var2); - Buffer var6 = new Buffer(var1.takeFileByNames(WorldMapCacheName.field320.name, var2)); // L: 49 - Buffer var7 = new Buffer(var1.takeFileByNames(WorldMapCacheName.field319.name, var2)); // L: 50 + Buffer var6 = new Buffer(var1.takeFileByNames(WorldMapCacheName.field328.name, var2)); + Buffer var7 = new Buffer(var1.takeFileByNames(WorldMapCacheName.field326.name, var2)); System.nanoTime(); System.nanoTime(); - this.mapAreaData = new WorldMapAreaData(); // L: 53 + this.mapAreaData = new WorldMapAreaData(); try { this.mapAreaData.init(var6, var7, var5, var3); @@ -151,409 +152,933 @@ public final class WorldMapManager { } this.mapAreaData.getOriginX(); - this.mapAreaData.getOriginPlane(); // L: 61 + this.mapAreaData.getOriginPlane(); this.mapAreaData.getOriginY(); this.tileX = this.mapAreaData.getRegionLowX() * 64; - this.tileY = this.mapAreaData.getRegionLowY() * 64; // L: 64 - this.tileWidth = (this.mapAreaData.getRegionHighX() - this.mapAreaData.getRegionLowX() + 1) * 64; - this.tileHeight = (this.mapAreaData.getRegionHighY() - this.mapAreaData.getRegionLowY() + 1) * 64; - int var16 = this.mapAreaData.getRegionHighX() - this.mapAreaData.getRegionLowX() + 1; // L: 67 - int var9 = this.mapAreaData.getRegionHighY() - this.mapAreaData.getRegionLowY() + 1; // L: 68 + this.tileY = this.mapAreaData.getRegionLowY() * 64; + this.tileWidth = (this.mapAreaData.getRegionHighX() - this.mapAreaData.getRegionLowX() + 1) * 4096; + this.tileHeight = (this.mapAreaData.getRegionHighY() - this.mapAreaData.getRegionLowY() + 1) * 4096; + int var16 = this.mapAreaData.getRegionHighX() - this.mapAreaData.getRegionLowX() + 1; + int var9 = this.mapAreaData.getRegionHighY() - this.mapAreaData.getRegionLowY() + 1; System.nanoTime(); - System.nanoTime(); // L: 70 - GrandExchangeOfferNameComparator.method227(); // L: 71 + System.nanoTime(); + GrandExchangeOfferNameComparator.method201(); this.regions = new WorldMapRegion[var16][var9]; Iterator var10 = this.mapAreaData.worldMapData0Set.iterator(); while (var10.hasNext()) { - WorldMapData_0 var11 = (WorldMapData_0)var10.next(); // L: 74 + WorldMapData_0 var11 = (WorldMapData_0)var10.next(); int var12 = var11.regionX; - int var13 = var11.regionY; // L: 77 - int var14 = var12 - this.mapAreaData.getRegionLowX(); // L: 78 + int var13 = var11.regionY; + int var14 = var12 - this.mapAreaData.getRegionLowX(); int var15 = var13 - this.mapAreaData.getRegionLowY(); - this.regions[var14][var15] = new WorldMapRegion(var12, var13, this.mapAreaData.getBackGroundColor(), this.fonts); // L: 80 + this.regions[var14][var15] = new WorldMapRegion(var12, var13, this.mapAreaData.getBackGroundColor(), this.fonts); this.regions[var14][var15].initWorldMapData0(var11, this.mapAreaData.iconList); } - for (int var17 = 0; var17 < var16; ++var17) { // L: 84 + for (int var17 = 0; var17 < var16; ++var17) { for (int var18 = 0; var18 < var9; ++var18) { - if (this.regions[var17][var18] == null) { // L: 86 + if (this.regions[var17][var18] == null) { this.regions[var17][var18] = new WorldMapRegion(this.mapAreaData.getRegionLowX() + var17, this.mapAreaData.getRegionLowY() + var18, this.mapAreaData.getBackGroundColor(), this.fonts); this.regions[var17][var18].initWorldMapData1(this.mapAreaData.worldMapData1Set, this.mapAreaData.iconList); } } } - System.nanoTime(); // L: 92 - System.nanoTime(); // L: 93 - if (var1.isValidFileName(WorldMapCacheName.field321.name, var2)) { - byte[] var20 = var1.takeFileByNames(WorldMapCacheName.field321.name, var2); // L: 95 - this.compositeTextureSprite = class39.convertJpgToSprite(var20); + System.nanoTime(); + System.nanoTime(); + if (var1.isValidFileName(WorldMapCacheName.field327.name, var2)) { + byte[] var20 = var1.takeFileByNames(WorldMapCacheName.field327.name, var2); + this.compositeTextureSprite = WorldMapSection0.convertJpgToSprite(var20); } - System.nanoTime(); // L: 98 + System.nanoTime(); var1.clearGroups(); - var1.clearFiles(); // L: 100 - this.loaded = true; // L: 101 + var1.clearFiles(); + this.loaded = true; } } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-2022462293" + descriptor = "(B)V", + garbageValue = "54" ) @Export("clearIcons") public final void clearIcons() { this.icons = null; - } // L: 106 + } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( descriptor = "(IIIIIIIII)V", - garbageValue = "-2080515212" + garbageValue = "1886974954" ) @Export("drawTiles") public final void drawTiles(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { - int[] var9 = Rasterizer2D.Rasterizer2D_pixels; // L: 109 - int var10 = Rasterizer2D.Rasterizer2D_width; // L: 110 + int[] var9 = Rasterizer2D.Rasterizer2D_pixels; + int var10 = Rasterizer2D.Rasterizer2D_width; int var11 = Rasterizer2D.Rasterizer2D_height; - int[] var12 = new int[4]; // L: 112 - Rasterizer2D.Rasterizer2D_getClipArray(var12); // L: 113 - WorldMapRectangle var13 = this.createWorldMapRectangle(var1, var2, var3, var4); // L: 114 - float var14 = this.getPixelsPerTile(var7 - var5, var3 - var1); // L: 115 - int var15 = (int)Math.ceil((double)var14); // L: 116 - this.pixelsPerTile = var15; // L: 117 - if (!this.scaleHandlers.containsKey(var15)) { // L: 118 - WorldMapScaleHandler var16 = new WorldMapScaleHandler(var15); // L: 119 - var16.init(); // L: 120 - this.scaleHandlers.put(var15, var16); // L: 121 + int[] var12 = new int[4]; + Rasterizer2D.Rasterizer2D_getClipArray(var12); + WorldMapRectangle var13 = this.createWorldMapRectangle(var1, var2, var3, var4); + float var14 = this.getPixelsPerTile(var7 - var5, var3 - var1); + int var15 = (int)Math.ceil((double)var14); + this.pixelsPerTile = var15; + if (!this.scaleHandlers.containsKey(var15)) { + WorldMapScaleHandler var16 = new WorldMapScaleHandler(var15); + var16.init(); + this.scaleHandlers.put(var15, var16); } - int var23 = var13.x + var13.width - 1; // L: 123 - int var17 = var13.height + var13.y - 1; // L: 124 + int var23 = var13.x + var13.width - 1; + int var17 = var13.height + var13.y - 1; int var18; int var19; - for (var18 = var13.x; var18 <= var23; ++var18) { // L: 125 - for (var19 = var13.y; var19 <= var17; ++var19) { // L: 126 - this.regions[var18][var19].drawTile(var15, (WorldMapScaleHandler)this.scaleHandlers.get(var15), this.mapSceneSprites, this.geographyArchive, this.groundArchive); // L: 127 + for (var18 = var13.x; var18 <= var23; ++var18) { + for (var19 = var13.y; var19 <= var17; ++var19) { + this.regions[var18][var19].drawTile(var15, (WorldMapScaleHandler)this.scaleHandlers.get(var15), this.mapSceneSprites, this.geographyArchive, this.groundArchive); } } - Rasterizer2D.Rasterizer2D_replace(var9, var10, var11); // L: 130 - Rasterizer2D.Rasterizer2D_setClipArray(var12); // L: 131 - var18 = (int)(64.0F * var14); // L: 132 - var19 = this.tileX + var1; // L: 133 - int var20 = var2 + this.tileY; // L: 134 + Rasterizer2D.Rasterizer2D_replace(var9, var10, var11); + Rasterizer2D.Rasterizer2D_setClipArray(var12); + var18 = (int)(var14 * 64.0F); + var19 = this.tileX * 4096 + var1; + int var20 = this.tileY * 4096 + var2; - for (int var21 = var13.x; var21 < var13.x + var13.width; ++var21) { // L: 135 - for (int var22 = var13.y; var22 < var13.y + var13.height; ++var22) { // L: 136 - this.regions[var21][var22].method521(var5 + (this.regions[var21][var22].regionX * 64 - var19) * var18 / 64, var8 - (this.regions[var21][var22].regionY * 64 - var20 + 64) * var18 / 64, var18); // L: 137 + for (int var21 = var13.x; var21 < var13.width + var13.x; ++var21) { + for (int var22 = var13.y; var22 < var13.y + var13.height; ++var22) { + this.regions[var21][var22].method534(var5 + var18 * (this.regions[var21][var22].regionX * 64 - var19) / 64, var8 - var18 * (this.regions[var21][var22].regionY * 64 - var20 + 64) / 64, var18); } } - } // L: 140 + } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(IIIIIIIILjava/util/HashSet;Ljava/util/HashSet;IIZB)V", - garbageValue = "-104" + descriptor = "(IIIIIIIILjava/util/HashSet;Ljava/util/HashSet;IIZI)V", + garbageValue = "1206614213" ) @Export("drawElements") public final void drawElements(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, HashSet var9, HashSet var10, int var11, int var12, boolean var13) { - WorldMapRectangle var14 = this.createWorldMapRectangle(var1, var2, var3, var4); // L: 143 - float var15 = this.getPixelsPerTile(var7 - var5, var3 - var1); // L: 144 - int var16 = (int)(64.0F * var15); // L: 145 - int var17 = this.tileX + var1; // L: 146 - int var18 = var2 + this.tileY; // L: 147 + WorldMapRectangle var14 = this.createWorldMapRectangle(var1, var2, var3, var4); + float var15 = this.getPixelsPerTile(var7 - var5, var3 - var1); + int var16 = (int)(var15 * 64.0F); + int var17 = this.tileX * 4096 + var1; + int var18 = this.tileY * 4096 + var2; int var19; int var20; - for (var19 = var14.x; var19 < var14.width + var14.x; ++var19) { // L: 148 - for (var20 = var14.y; var20 < var14.y + var14.height; ++var20) { // L: 149 - if (var13) { // L: 150 - this.regions[var19][var20].initWorldMapIcon1s(); // L: 151 + for (var19 = var14.x; var19 < var14.x + var14.width; ++var19) { + for (var20 = var14.y; var20 < var14.y + var14.height; ++var20) { + if (var13) { + this.regions[var19][var20].initWorldMapIcon1s(); } - this.regions[var19][var20].method585(var5 + (this.regions[var19][var20].regionX * 64 - var17) * var16 / 64, var8 - (this.regions[var19][var20].regionY * 64 - var18 + 64) * var16 / 64, var16, var9); // L: 153 + this.regions[var19][var20].method481(var5 + var16 * (this.regions[var19][var20].regionX * 64 - var17) / 64, var8 - var16 * (this.regions[var19][var20].regionY * 64 - var18 + 64) / 64, var16, var9); } } - if (var10 != null && var11 > 0) { // L: 156 - for (var19 = var14.x; var19 < var14.x + var14.width; ++var19) { // L: 157 - for (var20 = var14.y; var20 < var14.y + var14.height; ++var20) { // L: 158 - this.regions[var19][var20].flashElements(var10, var11, var12); // L: 159 + if (var10 != null && var11 > 0) { + for (var19 = var14.x; var19 < var14.width + var14.x; ++var19) { + for (var20 = var14.y; var20 < var14.height + var14.y; ++var20) { + this.regions[var19][var20].flashElements(var10, var11, var12); } } } - } // L: 163 + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(IIIILjava/util/HashSet;III)V", - garbageValue = "-1490055830" + descriptor = "(IIIILjava/util/HashSet;IIB)V", + garbageValue = "-11" ) @Export("drawOverview") public void drawOverview(int var1, int var2, int var3, int var4, HashSet var5, int var6, int var7) { - if (this.compositeTextureSprite != null) { // L: 166 - this.compositeTextureSprite.drawScaledAt(var1, var2, var3, var4); // L: 169 - if (var6 > 0 && var6 % var7 < var7 / 2) { // L: 170 - if (this.icons == null) { // L: 173 - this.buildIcons0(); // L: 174 + if (this.compositeTextureSprite != null) { + this.compositeTextureSprite.drawScaledAt(var1, var2, var3, var4); + if (var6 > 0 && var6 % var7 < var7 / 2) { + if (this.icons == null) { + this.buildIcons0(); } - Iterator var8 = var5.iterator(); // L: 176 + Iterator var8 = var5.iterator(); while (true) { List var10; do { if (!var8.hasNext()) { - return; // L: 193 + return; } - int var9 = (Integer)var8.next(); // L: 177 - var10 = (List)this.icons.get(var9); // L: 179 - } while(var10 == null); // L: 180 + int var9 = (Integer)var8.next(); + var10 = (List)this.icons.get(var9); + } while(var10 == null); Iterator var11 = var10.iterator(); - while (var11.hasNext()) { // L: 183 - AbstractWorldMapIcon var12 = (AbstractWorldMapIcon)var11.next(); // L: 184 - int var13 = var3 * (var12.coord2.x - this.tileX) / this.tileWidth; // L: 186 - int var14 = var4 - (var12.coord2.y - this.tileY) * var4 / this.tileHeight; // L: 187 - Rasterizer2D.Rasterizer2D_drawCircleAlpha(var13 + var1, var14 + var2, 2, 16776960, 256); // L: 188 + while (var11.hasNext()) { + AbstractWorldMapIcon var12 = (AbstractWorldMapIcon)var11.next(); + int var13 = var3 * (var12.coord2.x - this.tileX * 4096) / (this.tileWidth * 64); + int var14 = var4 - (var12.coord2.y - this.tileY * 4096) * var4 / (this.tileHeight * 64); + Rasterizer2D.Rasterizer2D_drawCircleAlpha(var13 + var1, var14 + var2, 2, 16776960, 256); } } } } - } // L: 167 171 - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(IIIIIIIIIIB)Ljava/util/List;", - garbageValue = "-66" - ) - public List method738(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10) { - LinkedList var11 = new LinkedList(); // L: 196 - if (!this.loaded) { // L: 197 - return var11; // L: 198 - } else { - WorldMapRectangle var12 = this.createWorldMapRectangle(var1, var2, var3, var4); // L: 200 - float var13 = this.getPixelsPerTile(var7, var3 - var1); // L: 201 - int var14 = (int)(64.0F * var13); // L: 202 - int var15 = this.tileX + var1; // L: 203 - int var16 = var2 + this.tileY; // L: 204 - - for (int var17 = var12.x; var17 < var12.width + var12.x; ++var17) { // L: 205 - for (int var18 = var12.y; var18 < var12.height + var12.y; ++var18) { // L: 206 - List var19 = this.regions[var17][var18].method609(var5 + (this.regions[var17][var18].regionX * 64 - var15) * var14 / 64, var8 + var6 - (this.regions[var17][var18].regionY * 64 - var16 + 64) * var14 / 64, var14, var9, var10); // L: 207 - if (!var19.isEmpty()) { // L: 208 - var11.addAll(var19); // L: 209 - } - } - } - - return var11; // L: 213 - } } - @ObfuscatedName("k") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(IIIII)Lar;", - garbageValue = "1387747355" + descriptor = "(IIIIIIIIIII)Ljava/util/List;", + garbageValue = "279349552" + ) + public List method707(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10) { + LinkedList var11 = new LinkedList(); + if (!this.loaded) { + return var11; + } else { + WorldMapRectangle var12 = this.createWorldMapRectangle(var1, var2, var3, var4); + float var13 = this.getPixelsPerTile(var7, var3 - var1); + int var14 = (int)(var13 * 64.0F); + int var15 = this.tileX * 4096 + var1; + int var16 = this.tileY * 4096 + var2; + + for (int var17 = var12.x; var17 < var12.x + var12.width; ++var17) { + for (int var18 = var12.y; var18 < var12.height + var12.y; ++var18) { + List var19 = this.regions[var17][var18].method501(var5 + var14 * (this.regions[var17][var18].regionX * 64 - var15) / 64, var8 + var6 - var14 * (this.regions[var17][var18].regionY * 64 - var16 + 64) / 64, var14, var9, var10); + if (!var19.isEmpty()) { + var11.addAll(var19); + } + } + } + + return var11; + } + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "(IIIII)Las;", + garbageValue = "604537210" ) @Export("createWorldMapRectangle") WorldMapRectangle createWorldMapRectangle(int var1, int var2, int var3, int var4) { - WorldMapRectangle var5 = new WorldMapRectangle(this); // L: 217 - int var6 = this.tileX + var1; // L: 218 - int var7 = var2 + this.tileY; // L: 219 - int var8 = var3 + this.tileX; // L: 220 - int var9 = var4 + this.tileY; // L: 221 - int var10 = var6 / 64; // L: 222 - int var11 = var7 / 64; // L: 223 - int var12 = var8 / 64; // L: 224 - int var13 = var9 / 64; // L: 225 - var5.width = var12 - var10 + 1; // L: 226 - var5.height = var13 - var11 + 1; // L: 227 - var5.x = var10 - this.mapAreaData.getRegionLowX(); // L: 228 - var5.y = var11 - this.mapAreaData.getRegionLowY(); // L: 229 - if (var5.x < 0) { // L: 230 - var5.width += var5.x; // L: 231 - var5.x = 0; // L: 232 + WorldMapRectangle var5 = new WorldMapRectangle(this); + int var6 = this.tileX * 4096 + var1; + int var7 = this.tileY * 4096 + var2; + int var8 = var3 + this.tileX * 4096; + int var9 = this.tileY * 4096 + var4; + int var10 = var6 / 64; + int var11 = var7 / 64; + int var12 = var8 / 64; + int var13 = var9 / 64; + var5.width = var12 - var10 + 1; + var5.height = var13 - var11 + 1; + var5.x = var10 - this.mapAreaData.getRegionLowX(); + var5.y = var11 - this.mapAreaData.getRegionLowY(); + if (var5.x < 0) { + var5.width += var5.x; + var5.x = 0; } - if (var5.x > this.regions.length - var5.width) { // L: 234 - var5.width = this.regions.length - var5.x; // L: 235 + if (var5.x > this.regions.length - var5.width) { + var5.width = this.regions.length - var5.x; } - if (var5.y < 0) { // L: 237 - var5.height += var5.y; // L: 238 - var5.y = 0; // L: 239 + if (var5.y < 0) { + var5.height += var5.y; + var5.y = 0; } - if (var5.y > this.regions[0].length - var5.height) { // L: 241 - var5.height = this.regions[0].length - var5.y; // L: 242 + if (var5.y > this.regions[0].length - var5.height) { + var5.height = this.regions[0].length - var5.y; } - var5.width = Math.min(var5.width, this.regions.length); // L: 244 - var5.height = Math.min(var5.height, this.regions[0].length); // L: 245 - return var5; // L: 246 + var5.width = Math.min(var5.width, this.regions.length); + var5.height = Math.min(var5.height, this.regions[0].length); + return var5; } - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-1114977640" + garbageValue = "-1914860720" ) @Export("isLoaded") public boolean isLoaded() { - return this.loaded; // L: 250 - } - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(I)Ljava/util/HashMap;", - garbageValue = "-562559742" - ) - @Export("buildIcons") - public HashMap buildIcons() { - this.buildIcons0(); // L: 254 - return this.icons; // L: 255 - } - - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "209943751" - ) - @Export("buildIcons0") - void buildIcons0() { - if (this.icons == null) { // L: 259 - this.icons = new HashMap(); // L: 260 - } - - this.icons.clear(); // L: 262 - - for (int var1 = 0; var1 < this.regions.length; ++var1) { // L: 263 - for (int var2 = 0; var2 < this.regions[var1].length; ++var2) { // L: 264 - List var3 = this.regions[var1][var2].icons(); // L: 265 - Iterator var4 = var3.iterator(); // L: 266 - - while (var4.hasNext()) { - AbstractWorldMapIcon var5 = (AbstractWorldMapIcon)var4.next(); // L: 267 - if (var5.hasValidElement()) { // L: 269 - int var6 = var5.getElement(); // L: 270 - if (!this.icons.containsKey(var6)) { // L: 271 - LinkedList var7 = new LinkedList(); // L: 272 - var7.add(var5); // L: 273 - this.icons.put(var6, var7); // L: 274 - } else { - List var8 = (List)this.icons.get(var6); // L: 277 - var8.add(var5); // L: 278 - } - } - } - } - } - - } // L: 284 - - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "(III)F", - garbageValue = "-813508891" - ) - @Export("getPixelsPerTile") - float getPixelsPerTile(int var1, int var2) { - float var3 = (float)var1 / (float)var2; // L: 287 - if (var3 > 8.0F) { // L: 288 - return 8.0F; - } else if (var3 < 1.0F) { // L: 289 - return 1.0F; - } else { - int var4 = Math.round(var3); // L: 290 - return Math.abs((float)var4 - var3) < 0.05F ? (float)var4 : var3; // L: 291 292 - } - } - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(IIII)Lco;", - garbageValue = "-310655150" - ) - @Export("getWorldMapScript") - static Script getWorldMapScript(int var0, int var1, int var2) { - int var3 = (var1 << 8) + var0; // L: 39 - Script var5 = ArchiveLoader.method1240(var3, var0); // L: 42 - if (var5 != null) { // L: 43 - return var5; // L: 44 - } else { - int var6 = var0 + (var2 + 40000 << 8); // L: 48 - var5 = ArchiveLoader.method1240(var6, var0); // L: 51 - return var5 != null ? var5 : null; // L: 52 55 - } + return this.loaded; } @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;ILjava/lang/String;B)Z", - garbageValue = "42" + descriptor = "(I)Ljava/util/HashMap;", + garbageValue = "-1074161201" ) - static boolean method735(String var0, int var1, String var2) { - if (var1 == 0) { // L: 54 - try { - if (!class60.field453.startsWith("win")) { // L: 56 - throw new Exception(); - } else if (!var0.startsWith("http://") && !var0.startsWith("https://")) { // L: 57 - throw new Exception(); - } else { - String var14 = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789?&=,.%+-_#:/*"; // L: 58 + @Export("buildIcons") + public HashMap buildIcons() { + this.buildIcons0(); + return this.icons; + } - for (int var4 = 0; var4 < var0.length(); ++var4) { // L: 59 - if (var14.indexOf(var0.charAt(var4)) == -1) { // L: 60 - throw new Exception(); + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "2005270001" + ) + @Export("buildIcons0") + void buildIcons0() { + if (this.icons == null) { + this.icons = new HashMap(); + } + + this.icons.clear(); + + for (int var1 = 0; var1 < this.regions.length; ++var1) { + for (int var2 = 0; var2 < this.regions[var1].length; ++var2) { + List var3 = this.regions[var1][var2].icons(); + Iterator var4 = var3.iterator(); + + while (var4.hasNext()) { + AbstractWorldMapIcon var5 = (AbstractWorldMapIcon)var4.next(); + if (var5.hasValidElement()) { + int var6 = var5.getElement(); + if (!this.icons.containsKey(var6)) { + LinkedList var7 = new LinkedList(); + var7.add(var5); + this.icons.put(var6, var7); + } else { + List var8 = (List)this.icons.get(var6); + var8.add(var5); } } - - Runtime.getRuntime().exec("cmd /c start \"j\" \"" + var0 + "\""); // L: 62 - return true; // L: 63 } - } catch (Throwable var8) { // L: 65 - return false; // L: 66 } - } else if (var1 == 1) { // L: 69 - try { - Applet var7 = class60.applet; // L: 72 - Object[] var5 = new Object[]{(new URL(class60.applet.getCodeBase(), var0)).toString()}; // L: 73 - Object var13 = JSObject.getWindow(var7).call(var2, var5); // L: 76 - return var13 != null; // L: 79 - } catch (Throwable var9) { // L: 81 - return false; // L: 82 + } + + } + + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "(III)F", + garbageValue = "-1229276140" + ) + @Export("getPixelsPerTile") + float getPixelsPerTile(int var1, int var2) { + float var3 = (float)var1 / (float)var2; + if (var3 > 8.0F) { + return 8.0F; + } else if (var3 < 1.0F) { + return 1.0F; + } else { + int var4 = Math.round(var3); + return Math.abs((float)var4 - var3) < 0.05F ? (float)var4 : var3; + } + } + + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/CharSequence;II[BIB)I", + garbageValue = "-67" + ) + @Export("encodeStringCp1252") + public static int encodeStringCp1252(CharSequence var0, int var1, int var2, byte[] var3, int var4) { + int var5 = var2 - var1; + + for (int var6 = 0; var6 < var5; ++var6) { + char var7 = var0.charAt(var6 + var1); + if (var7 > 0 && var7 < 128 || var7 >= 160 && var7 <= 255) { + var3[var6 + var4] = (byte)var7; + } else if (var7 == 8364) { + var3[var6 + var4] = -128; + } else if (var7 == 8218) { + var3[var6 + var4] = -126; + } else if (var7 == 402) { + var3[var6 + var4] = -125; + } else if (var7 == 8222) { + var3[var6 + var4] = -124; + } else if (var7 == 8230) { + var3[var6 + var4] = -123; + } else if (var7 == 8224) { + var3[var6 + var4] = -122; + } else if (var7 == 8225) { + var3[var6 + var4] = -121; + } else if (var7 == 710) { + var3[var6 + var4] = -120; + } else if (var7 == 8240) { + var3[var6 + var4] = -119; + } else if (var7 == 352) { + var3[var6 + var4] = -118; + } else if (var7 == 8249) { + var3[var6 + var4] = -117; + } else if (var7 == 338) { + var3[var6 + var4] = -116; + } else if (var7 == 381) { + var3[var6 + var4] = -114; + } else if (var7 == 8216) { + var3[var6 + var4] = -111; + } else if (var7 == 8217) { + var3[var6 + var4] = -110; + } else if (var7 == 8220) { + var3[var6 + var4] = -109; + } else if (var7 == 8221) { + var3[var6 + var4] = -108; + } else if (var7 == 8226) { + var3[var6 + var4] = -107; + } else if (var7 == 8211) { + var3[var6 + var4] = -106; + } else if (var7 == 8212) { + var3[var6 + var4] = -105; + } else if (var7 == 732) { + var3[var6 + var4] = -104; + } else if (var7 == 8482) { + var3[var6 + var4] = -103; + } else if (var7 == 353) { + var3[var6 + var4] = -102; + } else if (var7 == 8250) { + var3[var6 + var4] = -101; + } else if (var7 == 339) { + var3[var6 + var4] = -100; + } else if (var7 == 382) { + var3[var6 + var4] = -98; + } else if (var7 == 376) { + var3[var6 + var4] = -97; + } else { + var3[var6 + var4] = 63; } - } else if (var1 == 2) { // L: 85 - try { - class60.applet.getAppletContext().showDocument(new URL(class60.applet.getCodeBase(), var0), "_blank"); // L: 87 - return true; // L: 88 - } catch (Exception var10) { // L: 90 - return false; // L: 91 - } - } else if (var1 == 3) { // L: 94 - try { - Applet var3 = class60.applet; // L: 96 - JSObject.getWindow(var3).call("loggedout", (Object[])null); // L: 99 - } catch (Throwable var12) { // L: 102 + } + + return var5; + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "(Lky;ILbq;II)V", + garbageValue = "-2082174377" + ) + static final void method709(PacketBuffer var0, int var1, Player var2, int var3) { + byte var4 = -1; + if ((var3 & 256) != 0) { + var2.field981 = var0.method5665(); + var2.field982 = var0.method5665(); + var2.field958 = var0.method5665(); + var2.field956 = var0.method5661(); + var2.field984 = var0.method5582() + Client.cycle; + var2.field973 = var0.method5539() + Client.cycle; + var2.field986 = var0.readUnsignedShort(); + if (var2.field631) { + var2.field981 += var2.tileX; + var2.field982 += var2.tileY; + var2.field958 += var2.tileX; + var2.field956 += var2.tileY; + var2.pathLength = 0; + } else { + var2.field981 += var2.pathX[0]; + var2.field982 += var2.pathY[0]; + var2.field958 += var2.pathX[0]; + var2.field956 += var2.pathY[0]; + var2.pathLength = 1; } - try { - class60.applet.getAppletContext().showDocument(new URL(class60.applet.getCodeBase(), var0), "_top"); // L: 104 - return true; // L: 105 - } catch (Exception var11) { // L: 107 - return false; // L: 108 + var2.field996 = 0; + } + + if ((var3 & 32) != 0) { + var2.overheadText = var0.readStringCp1252NullTerminated(); + if (var2.overheadText.charAt(0) == '~') { + var2.overheadText = var2.overheadText.substring(1); + class234.addGameMessage(2, var2.username.getName(), var2.overheadText); + } else if (var2 == PlayerAppearance.localPlayer) { + class234.addGameMessage(2, var2.username.getName(), var2.overheadText); } + + var2.isAutoChatting = false; + var2.overheadTextColor = 0; + var2.overheadTextEffect = 0; + var2.overheadTextCyclesRemaining = 150; + } + + int var5; + int var8; + int var9; + int var12; + if ((var3 & 128) != 0) { + var5 = var0.method5582(); + PlayerType var6 = (PlayerType)UrlRequester.findEnumerated(class234.PlayerType_values(), var0.method5571()); + boolean var7 = var0.readUnsignedByte() == 1; + var8 = var0.method5572(); + var9 = var0.offset; + if (var2.username != null && var2.appearance != null) { + boolean var10 = false; + if (var6.isUser && MilliClock.friendSystem.isIgnored(var2.username)) { + var10 = true; + } + + if (!var10 && Client.field762 == 0 && !var2.isHidden) { + Players.field1264.offset = 0; + var0.method5593(Players.field1264.array, 0, var8); + Players.field1264.offset = 0; + String var11 = AbstractFont.escapeBrackets(ServerPacket.method3663(AttackOption.method2135(Players.field1264))); + var2.overheadText = var11.trim(); + var2.overheadTextColor = var5 >> 8; + var2.overheadTextEffect = var5 & 255; + var2.overheadTextCyclesRemaining = 150; + var2.isAutoChatting = var7; + var2.field953 = var2 != PlayerAppearance.localPlayer && var6.isUser && "" != Client.field871 && var11.toLowerCase().indexOf(Client.field871) == -1; + if (var6.isPrivileged) { + var12 = var7 ? 91 : 1; + } else { + var12 = var7 ? 90 : 2; + } + + if (var6.modIcon != -1) { + class234.addGameMessage(var12, class25.method248(var6.modIcon) + var2.username.getName(), var11); + } else { + class234.addGameMessage(var12, var2.username.getName(), var11); + } + } + } + + var0.offset = var8 + var9; + } + + if ((var3 & 1024) != 0) { + for (var5 = 0; var5 < 3; ++var5) { + var2.actions[var5] = var0.readStringCp1252NullTerminated(); + } + } + + if ((var3 & 8) != 0) { + var2.field959 = var0.method5582(); + if (var2.pathLength == 0) { + var2.orientation = var2.field959; + var2.field959 = -1; + } + } + + int var13; + if ((var3 & 16) != 0) { + var5 = var0.method5571(); + int var15; + int var17; + int var19; + if (var5 > 0) { + for (var13 = 0; var13 < var5; ++var13) { + var8 = -1; + var9 = -1; + var19 = -1; + var17 = var0.readUShortSmart(); + if (var17 == 32767) { + var17 = var0.readUShortSmart(); + var9 = var0.readUShortSmart(); + var8 = var0.readUShortSmart(); + var19 = var0.readUShortSmart(); + } else if (var17 != 32766) { + var9 = var0.readUShortSmart(); + } else { + var17 = -1; + } + + var15 = var0.readUShortSmart(); + var2.addHitSplat(var17, var9, var8, var19, Client.cycle, var15); + } + } + + var13 = var0.method5572(); + if (var13 > 0) { + for (var17 = 0; var17 < var13; ++var17) { + var8 = var0.readUShortSmart(); + var9 = var0.readUShortSmart(); + if (var9 != 32767) { + var19 = var0.readUShortSmart(); + var15 = var0.method5572(); + var12 = var9 > 0 ? var0.method5573() : var15; + var2.addHealthBar(var8, Client.cycle, var9, var19, var15, var12); + } else { + var2.removeHealthBar(var8); + } + } + } + } + + if ((var3 & 512) != 0) { + Players.field1253[var1] = var0.method5661(); + } + + if ((var3 & 1) != 0) { + var2.targetIndex = var0.method5539(); + if (var2.targetIndex == 65535) { + var2.targetIndex = -1; + } + } + + if ((var3 & 4096) != 0) { + var2.spotAnimation = var0.method5539(); + var5 = var0.method5643(); + var2.field979 = var5 >> 16; + var2.field978 = (var5 & 65535) + Client.cycle; + var2.spotAnimationFrame = 0; + var2.spotAnimationFrameCycle = 0; + if (var2.field978 > Client.cycle) { + var2.spotAnimationFrame = -1; + } + + if (var2.spotAnimation == 65535) { + var2.spotAnimation = -1; + } + } + + if ((var3 & 2048) != 0) { + var4 = var0.method5665(); + } + + if ((var3 & 2) != 0) { + var5 = var0.method5539(); + if (var5 == 65535) { + var5 = -1; + } + + var13 = var0.method5571(); + Tiles.performPlayerAnimation(var2, var5, var13); + } + + if ((var3 & 4) != 0) { + var5 = var0.method5573(); + byte[] var16 = new byte[var5]; + Buffer var14 = new Buffer(var16); + var0.method5733(var16, 0, var5); + Players.field1254[var1] = var14; + var2.read(var14); + } + + if (var2.field631) { + if (var4 == 127) { + var2.resetPath(var2.tileX, var2.tileY); + } else { + byte var18; + if (var4 != -1) { + var18 = var4; + } else { + var18 = Players.field1253[var1]; + } + + var2.method1313(var2.tileX, var2.tileY, var18); + } + } + + } + + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "(IIIIIZI)Llm;", + garbageValue = "-1786223770" + ) + @Export("getItemSprite") + public static final Sprite getItemSprite(int var0, int var1, int var2, int var3, int var4, boolean var5) { + if (var1 == -1) { + var4 = 0; + } else if (var4 == 2 && var1 != 1) { + var4 = 1; + } + + long var6 = ((long)var3 << 42) + ((long)var4 << 40) + ((long)var2 << 38) + (long)var0 + ((long)var1 << 16); + Sprite var8; + if (!var5) { + var8 = (Sprite)ItemDefinition.ItemDefinition_cachedSprites.get(var6); + if (var8 != null) { + return var8; + } + } + + ItemDefinition var9 = SecureRandomCallable.ItemDefinition_get(var0); + if (var1 > 1 && var9.countobj != null) { + int var10 = -1; + + for (int var11 = 0; var11 < 10; ++var11) { + if (var1 >= var9.countco[var11] && var9.countco[var11] != 0) { + var10 = var9.countobj[var11]; + } + } + + if (var10 != -1) { + var9 = SecureRandomCallable.ItemDefinition_get(var10); + } + } + + Model var19 = var9.getModel(1); + if (var19 == null) { + return null; } else { - throw new IllegalArgumentException(); // L: 111 + Sprite var20 = null; + if (var9.noteTemplate != -1) { + var20 = getItemSprite(var9.note, 10, 1, 0, 0, true); + if (var20 == null) { + return null; + } + } else if (var9.notedId != -1) { + var20 = getItemSprite(var9.unnotedId, var1, var2, var3, 0, false); + if (var20 == null) { + return null; + } + } else if (var9.placeholderTemplate != -1) { + var20 = getItemSprite(var9.placeholder, var1, 0, 0, 0, false); + if (var20 == null) { + return null; + } + } + + int[] var12 = Rasterizer2D.Rasterizer2D_pixels; + int var13 = Rasterizer2D.Rasterizer2D_width; + int var14 = Rasterizer2D.Rasterizer2D_height; + int[] var15 = new int[4]; + Rasterizer2D.Rasterizer2D_getClipArray(var15); + var8 = new Sprite(36, 32); + Rasterizer2D.Rasterizer2D_replace(var8.pixels, 36, 32); + Rasterizer2D.Rasterizer2D_clear(); + Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D(); + Rasterizer3D.method3138(16, 16); + Rasterizer3D.field1782 = false; + if (var9.placeholderTemplate != -1) { + var20.drawTransBgAt(0, 0); + } + + int var16 = var9.zoom2d; + if (var5) { + var16 = (int)(1.5D * (double)var16); + } else if (var2 == 2) { + var16 = (int)(1.04D * (double)var16); + } + + int var17 = var16 * Rasterizer3D.Rasterizer3D_sine[var9.xan2d] >> 16; + int var18 = var16 * Rasterizer3D.Rasterizer3D_cosine[var9.xan2d] >> 16; + var19.calculateBoundsCylinder(); + var19.method2966(0, var9.yan2d, var9.zan2d, var9.xan2d, var9.offsetX2d, var19.height / 2 + var17 + var9.offsetY2d, var18 + var9.offsetY2d); + if (var9.notedId != -1) { + var20.drawTransBgAt(0, 0); + } + + if (var2 >= 1) { + var8.outline(1); + } + + if (var2 >= 2) { + var8.outline(16777215); + } + + if (var3 != 0) { + var8.shadow(var3); + } + + Rasterizer2D.Rasterizer2D_replace(var8.pixels, 36, 32); + if (var9.noteTemplate != -1) { + var20.drawTransBgAt(0, 0); + } + + if (var4 == 1 || var4 == 2 && var9.isStackable == 1) { + ItemDefinition.ItemDefinition_fontPlain11.draw(class195.inventoryQuantityFormat(var1), 0, 9, 16776960, 1); + } + + if (!var5) { + ItemDefinition.ItemDefinition_cachedSprites.put(var8, var6); + } + + Rasterizer2D.Rasterizer2D_replace(var12, var13, var14); + Rasterizer2D.Rasterizer2D_setClipArray(var15); + Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D(); + Rasterizer3D.field1782 = true; + return var8; + } + } + + @ObfuscatedName("fx") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "2111583994" + ) + static int method704(int var0) { + return var0 * 3 + 600; + } + + @ObfuscatedName("gc") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-10595779" + ) + static final void method679() { + for (int var0 = 0; var0 < Client.soundEffectCount; ++var0) { + int var10002 = Client.queuedSoundEffectDelays[var0]--; + if (Client.queuedSoundEffectDelays[var0] >= -10) { + SoundEffect var1 = Client.soundEffects[var0]; + if (var1 == null) { + Object var10000 = null; + var1 = SoundEffect.readSoundEffect(class227.archive4, Client.soundEffectIds[var0], 0); + if (var1 == null) { + continue; + } + + int[] var12 = Client.queuedSoundEffectDelays; + var12[var0] += var1.calculateDelay(); + Client.soundEffects[var0] = var1; + } + + if (Client.queuedSoundEffectDelays[var0] < 0) { + int var2; + if (Client.soundLocations[var0] != 0) { + int var3 = (Client.soundLocations[var0] & 255) * 128; + int var4 = Client.soundLocations[var0] >> 16 & 255; + int var5 = var4 * 128 + 64 - PlayerAppearance.localPlayer.x; + if (var5 < 0) { + var5 = -var5; + } + + int var6 = Client.soundLocations[var0] >> 8 & 255; + int var7 = var6 * 128 + 64 - PlayerAppearance.localPlayer.y; + if (var7 < 0) { + var7 = -var7; + } + + int var8 = var5 + var7 - 128; + if (var8 > var3) { + Client.queuedSoundEffectDelays[var0] = -100; + continue; + } + + if (var8 < 0) { + var8 = 0; + } + + var2 = (var3 - var8) * Timer.clientPreferences.areaSoundEffectsVolume / var3; + } else { + var2 = Timer.clientPreferences.soundEffectsVolume; + } + + if (var2 > 0) { + RawSound var9 = var1.toRawSound().resample(TileItemPile.decimator); + RawPcmStream var10 = RawPcmStream.createRawPcmStream(var9, 100, var2); + var10.setNumLoops(Client.queuedSoundEffectLoops[var0] - 1); + pcmStreamMixer.addSubStream(var10); + } + + Client.queuedSoundEffectDelays[var0] = -100; + } + } else { + --Client.soundEffectCount; + + for (int var11 = var0; var11 < Client.soundEffectCount; ++var11) { + Client.soundEffectIds[var11] = Client.soundEffectIds[var11 + 1]; + Client.soundEffects[var11] = Client.soundEffects[var11 + 1]; + Client.queuedSoundEffectLoops[var11] = Client.queuedSoundEffectLoops[var11 + 1]; + Client.queuedSoundEffectDelays[var11] = Client.queuedSoundEffectDelays[var11 + 1]; + Client.soundLocations[var11] = Client.soundLocations[var11 + 1]; + } + + --var0; + } + } + + if (Client.field883 && !JagexCache.method3566()) { + if (Timer.clientPreferences.musicVolume != 0 && Client.currentTrackGroupId != -1) { + Interpreter.method2082(class217.archive6, Client.currentTrackGroupId, 0, Timer.clientPreferences.musicVolume, false); + } + + Client.field883 = false; + } + + } + + @ObfuscatedName("go") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-504342638" + ) + static final void method703() { + int[] var0 = Players.Players_indices; + + int var1; + for (var1 = 0; var1 < Players.Players_count; ++var1) { + Player var4 = Client.players[var0[var1]]; + if (var4 != null && var4.overheadTextCyclesRemaining > 0) { + --var4.overheadTextCyclesRemaining; + if (var4.overheadTextCyclesRemaining == 0) { + var4.overheadText = null; + } + } + } + + for (var1 = 0; var1 < Client.npcCount; ++var1) { + int var2 = Client.npcIndices[var1]; + NPC var3 = Client.npcs[var2]; + if (var3 != null && var3.overheadTextCyclesRemaining > 0) { + --var3.overheadTextCyclesRemaining; + if (var3.overheadTextCyclesRemaining == 0) { + var3.overheadText = null; + } + } + } + + } + + @ObfuscatedName("gs") + @ObfuscatedSignature( + descriptor = "(Lcx;I)V", + garbageValue = "-939198295" + ) + static final void method672(Actor var0) { + int var1 = Math.max(1, var0.field984 - Client.cycle); + int var2 = var0.field981 * 128 + var0.field941 * 108072960; + int var3 = var0.field982 * 128 + var0.field941 * 108072960; + var0.x += (var2 - var0.x) / var1; + var0.y += (var3 - var0.y) / var1; + var0.field963 = 0; + var0.orientation = var0.field986; + } + + @ObfuscatedName("hg") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "1888675083" + ) + static final int method712() { + if (Timer.clientPreferences.roofsHidden) { + return GameObject.Client_plane; + } else { + int var0 = SecureRandomFuture.getTileHeight(Player.cameraX, class69.cameraZ, GameObject.Client_plane); + return var0 - KeyHandler.cameraY < 800 && (Tiles.Tiles_renderFlags[GameObject.Client_plane][Player.cameraX >> 7][class69.cameraZ >> 7] & 4) != 0 ? GameObject.Client_plane : 3; + } + } + + @ObfuscatedName("it") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1369174129" + ) + @Export("Widget_runOnTargetLeave") + static void Widget_runOnTargetLeave() { + if (Client.isSpellSelected) { + Widget var0 = class92.getWidgetChild(MouseHandler.selectedSpellWidget, Client.selectedSpellChildIndex); + if (var0 != null && var0.onTargetLeave != null) { + ScriptEvent var1 = new ScriptEvent(); + var1.widget = var0; + var1.args = var0.onTargetLeave; + class22.runScriptEvent(var1); + } + + Client.isSpellSelected = false; + CollisionMap.invalidateWidget(var0); + } + } + + @ObfuscatedName("ji") + @ObfuscatedSignature( + descriptor = "(IIIZI)V", + garbageValue = "1536063708" + ) + static final void method686(int var0, int var1, int var2, boolean var3) { + if (class41.loadInterface(var0)) { + Interpreter.resizeInterface(class9.Widget_interfaceComponents[var0], -1, var1, var2, var3); } } } diff --git a/runescape-client/src/main/java/WorldMapRectangle.java b/runescape-client/src/main/java/WorldMapRectangle.java index 62f76b16f9..c9daa1c3a6 100644 --- a/runescape-client/src/main/java/WorldMapRectangle.java +++ b/runescape-client/src/main/java/WorldMapRectangle.java @@ -3,44 +3,204 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("ar") +@ObfuscatedName("as") @Implements("WorldMapRectangle") public final class WorldMapRectangle { - @ObfuscatedName("f") + @ObfuscatedName("sa") + @ObfuscatedSignature( + descriptor = "Lma;" + ) + @Export("worldMap") + static WorldMap worldMap; + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = -822197791 + intValue = 841729037 ) @Export("width") int width; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 2015029351 + intValue = 618067361 ) @Export("height") int height; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -352971205 + intValue = -1268324115 ) @Export("x") int x; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 1080355853 + intValue = 235337233 ) @Export("y") int y; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lat;" + descriptor = "Lai;" ) final WorldMapManager this$0; @ObfuscatedSignature( - descriptor = "(Lat;)V" + descriptor = "(Lai;)V" ) WorldMapRectangle(WorldMapManager var1) { - this.this$0 = var1; // L: 303 + this.this$0 = var1; + } + + @ObfuscatedName("f") + @ObfuscatedSignature( + descriptor = "(ILcs;ZI)I", + garbageValue = "470419605" + ) + static int method331(int var0, Script var1, boolean var2) { + Widget var3 = var2 ? PlayerAppearance.field2561 : VarcInt.field3264; + if (var0 == ScriptOpcodes.CC_GETTARGETMASK) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = ServerPacket.Widget_unpackTargetMask(FaceNormal.getWidgetFlags(var3)); + return 1; + } else if (var0 != ScriptOpcodes.CC_GETOP) { + if (var0 == ScriptOpcodes.CC_GETOPBASE) { + if (var3.dataText == null) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + } else { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3.dataText; + } + + return 1; + } else { + return 2; + } + } else { + int var4 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + --var4; + if (var3.actions != null && var4 < var3.actions.length && var3.actions[var4] != null) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3.actions[var4]; + } else { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + } + + return 1; + } + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "([BIII)I", + garbageValue = "-738122321" + ) + static int method334(byte[] var0, int var1, int var2) { + int var3 = -1; + + for (int var4 = var1; var4 < var2; ++var4) { + var3 = var3 >>> 8 ^ Buffer.crc32Table[(var3 ^ var0[var4]) & 255]; + } + + var3 = ~var3; + return var3; + } + + @ObfuscatedName("fu") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1843949362" + ) + @Export("logOut") + static final void logOut() { + Client.packetWriter.close(); + FloorOverlayDefinition.FloorOverlayDefinition_cached.clear(); + MusicPatchPcmStream.method3953(); + UserComparator2.method5959(); + ObjectDefinition.ObjectDefinition_cached.clear(); + ObjectDefinition.ObjectDefinition_cachedModelData.clear(); + ObjectDefinition.ObjectDefinition_cachedEntities.clear(); + ObjectDefinition.ObjectDefinition_cachedModels.clear(); + WorldMapIcon_1.method339(); + TileItem.method2187(); + SequenceDefinition.SequenceDefinition_cached.clear(); + SequenceDefinition.SequenceDefinition_cachedFrames.clear(); + WallDecoration.method3379(); + VarbitDefinition.VarbitDefinition_cached.clear(); + WorldMapID.method601(); + HealthBarDefinition.method4509(); + VarcInt.method4426(); + StructDefinition.StructDefinition_cached.clear(); + StudioGame.method4185(); + WorldMapElement.WorldMapElement_cachedSprites.clear(); + PlayerAppearance.PlayerAppearance_cachedModels.clear(); + Widget.Widget_cachedSprites.clear(); + Widget.Widget_cachedModels.clear(); + Widget.Widget_cachedFonts.clear(); + Widget.Widget_cachedSpriteMasks.clear(); + ((TextureProvider)Rasterizer3D.Rasterizer3D_textureLoader).clear(); + Script.Script_cached.clear(); + TilePaint.archive0.clearFiles(); + WorldMapSprite.archive1.clearFiles(); + class330.archive3.clearFiles(); + class227.archive4.clearFiles(); + GameShell.archive5.clearFiles(); + class217.archive6.clearFiles(); + BuddyRankComparator.archive7.clearFiles(); + Messages.archive8.clearFiles(); + GrandExchangeOfferUnitPriceComparator.archive9.clearFiles(); + class92.archive10.clearFiles(); + ItemContainer.archive11.clearFiles(); + PacketBufferNode.archive12.clearFiles(); + ArchiveLoader.scene.clear(); + + for (int var0 = 0; var0 < 4; ++var0) { + Client.collisionMaps[var0].clear(); + } + + System.gc(); + SecureRandomCallable.method1220(2); + Client.currentTrackGroupId = -1; + Client.field883 = false; + + for (ObjectSound var1 = (ObjectSound)ObjectSound.objectSounds.last(); var1 != null; var1 = (ObjectSound)ObjectSound.objectSounds.previous()) { + if (var1.stream1 != null) { + WorldMapManager.pcmStreamMixer.removeSubStream(var1.stream1); + var1.stream1 = null; + } + + if (var1.stream2 != null) { + WorldMapManager.pcmStreamMixer.removeSubStream(var1.stream2); + var1.stream2 = null; + } + } + + ObjectSound.objectSounds.clear(); + WorldMapCacheName.updateGameState(10); + } + + @ObfuscatedName("hn") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1899321298" + ) + static void method332() { + int var0 = Players.Players_count; + int[] var1 = Players.Players_indices; + + for (int var2 = 0; var2 < var0; ++var2) { + if (var1[var2] != Client.combatTargetPlayerIndex && var1[var2] != Client.localPlayerIndex) { + ClientPreferences.addPlayerToScene(Client.players[var1[var2]], true); + } + } + + } + + @ObfuscatedName("kb") + @ObfuscatedSignature( + descriptor = "(III)V", + garbageValue = "-159412455" + ) + @Export("runIntfCloseListeners") + static final void runIntfCloseListeners(int var0, int var1) { + if (class41.loadInterface(var0)) { + class51.runComponentCloseListeners(class9.Widget_interfaceComponents[var0], var1); + } } } diff --git a/runescape-client/src/main/java/WorldMapRegion.java b/runescape-client/src/main/java/WorldMapRegion.java index d1cee90df9..38e9cea731 100644 --- a/runescape-client/src/main/java/WorldMapRegion.java +++ b/runescape-client/src/main/java/WorldMapRegion.java @@ -1,3 +1,5 @@ +import java.io.File; +import java.io.IOException; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; @@ -10,144 +12,175 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ax") +@ObfuscatedName("am") @Implements("WorldMapRegion") public class WorldMapRegion { - @ObfuscatedName("z") + @ObfuscatedName("rs") + @ObfuscatedGetter( + intValue = 625285525 + ) + static int field271; + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Lfi;" + descriptor = "Lfr;" ) @Export("WorldMapRegion_cachedSprites") public static DemotingHashTable WorldMapRegion_cachedSprites; - @ObfuscatedName("ba") - static String field281; - @ObfuscatedName("q") + @ObfuscatedName("gq") + @ObfuscatedSignature( + descriptor = "[Llo;" + ) + @Export("mapSceneSprites") + static IndexedSprite[] mapSceneSprites; + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -1496476917 + intValue = -1611303231 ) @Export("regionX") int regionX; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = 159033397 + intValue = -1835973111 ) @Export("regionY") int regionY; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "Lh;" + descriptor = "Lk;" ) @Export("worldMapData_0") WorldMapData_0 worldMapData_0; - @ObfuscatedName("u") + @ObfuscatedName("l") @Export("worldMapData1List") LinkedList worldMapData1List; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = 1241362547 + intValue = 900207131 ) @Export("backgroundColor") int backgroundColor; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedGetter( - intValue = -2000095907 + intValue = -1432423267 ) @Export("pixelsPerTile") int pixelsPerTile; - @ObfuscatedName("o") + @ObfuscatedName("e") @Export("icon0List") List icon0List; - @ObfuscatedName("n") + @ObfuscatedName("m") @Export("iconMap") HashMap iconMap; - @ObfuscatedName("x") + @ObfuscatedName("c") @Export("fonts") final HashMap fonts; static { - WorldMapRegion_cachedSprites = new DemotingHashTable(37748736, 256); // L: 26 + WorldMapRegion_cachedSprites = new DemotingHashTable(37748736, 256); } WorldMapRegion(int var1, int var2, int var3, HashMap var4) { - this.regionX = var1; // L: 54 - this.regionY = var2; // L: 55 - this.worldMapData1List = new LinkedList(); // L: 56 - this.icon0List = new LinkedList(); // L: 57 - this.iconMap = new HashMap(); // L: 58 - this.backgroundColor = var3 | -16777216; // L: 59 - this.fonts = var4; // L: 60 - } // L: 61 + this.regionX = var1; + this.regionY = var2; + this.worldMapData1List = new LinkedList(); + this.icon0List = new LinkedList(); + this.iconMap = new HashMap(); + this.backgroundColor = var3 | -16777216; + this.fonts = var4; + } - @ObfuscatedName("z") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(IIIB)V", - garbageValue = "4" + descriptor = "(IIII)V", + garbageValue = "-1252499183" ) - void method521(int var1, int var2, int var3) { - Sprite var4 = Buddy.method5321(this.regionX, this.regionY, this.pixelsPerTile); // L: 64 - if (var4 != null) { // L: 65 - if (var3 == this.pixelsPerTile * 64) { // L: 66 - var4.drawAt(var1, var2); // L: 67 + void method534(int var1, int var2, int var3) { + Sprite var4 = PlayerType.method4170(this.regionX, this.regionY, this.pixelsPerTile); + if (var4 != null) { + if (var3 == this.pixelsPerTile * 64) { + var4.drawAt(var1, var2); } else { - var4.drawScaledWorldmap(var1, var2, var3, var3); // L: 70 + var4.drawScaledWorldmap(var1, var2, var3, var3); } } - } // L: 72 + } - @ObfuscatedName("q") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lh;Ljava/util/List;I)V", - garbageValue = "-1766116567" + descriptor = "(Lk;Ljava/util/List;B)V", + garbageValue = "1" ) @Export("initWorldMapData0") void initWorldMapData0(WorldMapData_0 var1, List var2) { - this.iconMap.clear(); // L: 75 - this.worldMapData_0 = var1; // L: 76 - this.addAllToIconList(var2); // L: 77 - } // L: 78 + this.iconMap.clear(); + this.worldMapData_0 = var1; + this.addAllToIconList(var2); + } - @ObfuscatedName("k") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(Ljava/util/HashSet;Ljava/util/List;I)V", - garbageValue = "-555470431" + garbageValue = "390590880" ) @Export("initWorldMapData1") void initWorldMapData1(HashSet var1, List var2) { - this.iconMap.clear(); // L: 81 - Iterator var3 = var1.iterator(); // L: 82 + this.iconMap.clear(); + Iterator var3 = var1.iterator(); - while (var3.hasNext()) { // L: 89 - WorldMapData_1 var4 = (WorldMapData_1)var3.next(); // L: 83 - if (var4.getRegionX() == this.regionX && var4.getRegionY() == this.regionY) { // L: 85 - this.worldMapData1List.add(var4); // L: 86 + while (var3.hasNext()) { + WorldMapData_1 var4 = (WorldMapData_1)var3.next(); + if (var4.getRegionX() == this.regionX && var4.getRegionY() == this.regionY) { + this.worldMapData1List.add(var4); } } - this.addAllToIconList(var2); // L: 90 - } // L: 91 + this.addAllToIconList(var2); + } - @ObfuscatedName("c") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(IIIILav;B)V", - garbageValue = "92" + descriptor = "(IIIILau;I)V", + garbageValue = "-1057419535" ) @Export("getIconsForTiles") void getIconsForTiles(int var1, int var2, int var3, int var4, AbstractWorldMapData var5) { - for (int var6 = var1; var6 < var3 + var1; ++var6) { // L: 94 - label51: - for (int var7 = var2; var7 < var2 + var4; ++var7) { // L: 95 - for (int var8 = 0; var8 < var5.planes; ++var8) { // L: 96 - WorldMapDecoration[] var9 = var5.decorations[var8][var6][var7]; // L: 97 - if (var9 != null && var9.length != 0) { // L: 98 - WorldMapDecoration[] var10 = var9; // L: 102 + for (int var6 = var1; var6 < var3 + var1; ++var6) { + label75: + for (int var7 = var2; var7 < var2 + var4; ++var7) { + for (int var8 = 0; var8 < var5.planes; ++var8) { + WorldMapDecoration[] var9 = var5.decorations[var8][var6][var7]; + if (var9 != null && var9.length != 0) { + WorldMapDecoration[] var10 = var9; - for (int var11 = 0; var11 < var10.length; ++var11) { // L: 103 - WorldMapDecoration var12 = var10[var11]; // L: 104 - ObjectDefinition var13 = ScriptEvent.getObjectDefinition(var12.objectDefinitionId); // L: 106 - if (PcmPlayer.method2598(var13)) { // L: 107 - this.getIcon(var13, var8, var6, var7, var5); // L: 110 - continue label51; // L: 111 + for (int var11 = 0; var11 < var10.length; ++var11) { + ObjectDefinition var13; + boolean var14; + label66: { + WorldMapDecoration var12 = var10[var11]; + var13 = WorldMapDecoration.getObjectDefinition(var12.objectDefinitionId); + if (var13.transforms != null) { + int[] var15 = var13.transforms; + + for (int var16 = 0; var16 < var15.length; ++var16) { + int var17 = var15[var16]; + ObjectDefinition var18 = WorldMapDecoration.getObjectDefinition(var17); + if (var18.mapIconId != -1) { + var14 = true; + break label66; + } + } + } else if (var13.mapIconId != -1) { + var14 = true; + break label66; + } + + var14 = false; + } + + if (var14) { + this.getIcon(var13, var8, var6, var7, var5); + continue label75; } } } @@ -155,431 +188,365 @@ public class WorldMapRegion { } } - } // L: 118 + } - @ObfuscatedName("u") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(Lje;IIILav;B)V", - garbageValue = "-109" + descriptor = "(Ljm;IIILau;I)V", + garbageValue = "1801137136" ) @Export("getIcon") void getIcon(ObjectDefinition var1, int var2, int var3, int var4, AbstractWorldMapData var5) { - Coord var6 = new Coord(var2, var3 + this.regionX * 64, this.regionY * 64 + var4); // L: 121 - Coord var7 = null; // L: 122 - if (this.worldMapData_0 != null) { // L: 123 - var7 = new Coord(this.worldMapData_0.minPlane + var2, var3 + this.worldMapData_0.regionXLow * 64, var4 + this.worldMapData_0.regionYLow * 64); // L: 124 + Coord var6 = new Coord(var2, var3 + this.regionX * 64, this.regionY * 64 + var4); + Coord var7 = null; + if (this.worldMapData_0 != null) { + var7 = new Coord(this.worldMapData_0.minPlane + var2, var3 + this.worldMapData_0.regionXLow * 64, this.worldMapData_0.regionYLow * 4096 + var4); } else { - WorldMapData_1 var8 = (WorldMapData_1)var5; // L: 127 - var7 = new Coord(var2 + var8.minPlane, var3 + var8.regionXLow * 64 + var8.getChunkXLow() * 8, var4 + var8.regionYLow * 64 + var8.getChunkYLow() * 8); // L: 128 + WorldMapData_1 var8 = (WorldMapData_1)var5; + var7 = new Coord(var2 + var8.minPlane, var3 + var8.regionXLow * 64 + var8.getChunkXLow() * 8, var8.regionYLow * 4096 + var4 + var8.getChunkYLow() * 8); } WorldMapElement var9; Object var10; - if (var1.transforms != null) { // L: 131 - var10 = new WorldMapIcon_1(var7, var6, var1.id, this); // L: 132 + if (var1.transforms != null) { + var10 = new WorldMapIcon_1(var7, var6, var1.id, this); } else { - var9 = class194.WorldMapElement_get(var1.mapIconId); // L: 135 - var10 = new WorldMapIcon_0(var7, var6, var9.objectId, this.createMapLabel(var9)); // L: 136 + var9 = UserComparator10.WorldMapElement_get(var1.mapIconId); + var10 = new WorldMapIcon_0(var7, var6, var9.objectId, this.createMapLabel(var9)); } - var9 = class194.WorldMapElement_get(((AbstractWorldMapIcon)var10).getElement()); // L: 138 - if (var9.field3258) { // L: 139 - this.iconMap.put(new Coord(0, var3, var4), var10); // L: 140 + var9 = UserComparator10.WorldMapElement_get(((AbstractWorldMapIcon)var10).getElement()); + if (var9.field3250) { + this.iconMap.put(new Coord(0, var3, var4), var10); } - } // L: 142 - - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1279150124" - ) - @Export("initWorldMapIcon1s") - void initWorldMapIcon1s() { - Iterator var1 = this.iconMap.values().iterator(); // L: 145 - - while (var1.hasNext()) { - AbstractWorldMapIcon var2 = (AbstractWorldMapIcon)var1.next(); // L: 146 - if (var2 instanceof WorldMapIcon_1) { // L: 148 - ((WorldMapIcon_1)var2).init(); // L: 149 - } - } - - } // L: 153 - - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "(Ljava/util/List;B)V", - garbageValue = "3" - ) - @Export("addAllToIconList") - void addAllToIconList(List var1) { - Iterator var2 = var1.iterator(); // L: 156 - - while (var2.hasNext()) { - WorldMapIcon_0 var3 = (WorldMapIcon_0)var2.next(); // L: 157 - if (class194.WorldMapElement_get(var3.element).field3258 && var3.coord2.x >> 6 == this.regionX && var3.coord2.y >> 6 == this.regionY) { // L: 159 162 - WorldMapIcon_0 var4 = new WorldMapIcon_0(var3.coord2, var3.coord2, var3.element, this.method550(var3.element)); // L: 163 - this.icon0List.add(var4); // L: 164 - } - } - - } // L: 168 - - @ObfuscatedName("o") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1315993718" - ) - void method528() { - if (this.worldMapData_0 != null) { // L: 171 - this.worldMapData_0.reset(); // L: 172 - } else { - Iterator var1 = this.worldMapData1List.iterator(); // L: 175 - - while (var1.hasNext()) { - WorldMapData_1 var2 = (WorldMapData_1)var1.next(); // L: 176 - var2.reset(); // L: 178 - } - } - - } // L: 182 - - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "(Liw;I)Z", - garbageValue = "-1635082422" - ) - @Export("loadGeography") - boolean loadGeography(AbstractArchive var1) { - this.iconMap.clear(); // L: 185 - if (this.worldMapData_0 != null) { // L: 186 - this.worldMapData_0.loadGeography(var1); // L: 187 - if (this.worldMapData_0.isFullyLoaded()) { // L: 188 - this.getIconsForTiles(0, 0, 64, 64, this.worldMapData_0); // L: 189 - return true; // L: 190 - } else { - return false; // L: 192 - } - } else { - boolean var2 = true; // L: 195 - - Iterator var3; - WorldMapData_1 var4; - for (var3 = this.worldMapData1List.iterator(); var3.hasNext(); var2 &= var4.isFullyLoaded()) { // L: 196 200 - var4 = (WorldMapData_1)var3.next(); // L: 197 - var4.loadGeography(var1); // L: 199 - } - - if (var2) { // L: 203 - var3 = this.worldMapData1List.iterator(); // L: 204 - - while (var3.hasNext()) { - var4 = (WorldMapData_1)var3.next(); // L: 205 - this.getIconsForTiles(var4.getChunkX() * 8, var4.getChunkY() * 8, 8, 8, var4); // L: 207 - } - } - - return var2; // L: 211 - } } - @ObfuscatedName("x") - @ObfuscatedSignature( - descriptor = "(ILal;[Lle;Liw;Liw;I)V", - garbageValue = "-406335289" - ) - @Export("drawTile") - void drawTile(int var1, WorldMapScaleHandler var2, IndexedSprite[] var3, AbstractArchive var4, AbstractArchive var5) { - this.pixelsPerTile = var1; // L: 216 - if (this.worldMapData_0 != null || !this.worldMapData1List.isEmpty()) { // L: 217 - if (Buddy.method5321(this.regionX, this.regionY, var1) == null) { // L: 220 - boolean var6 = true; // L: 223 - var6 &= this.loadGeography(var4); // L: 224 - int var8; - if (this.worldMapData_0 != null) { // L: 227 - var8 = this.worldMapData_0.groupId; // L: 228 - } else { - var8 = ((AbstractWorldMapData)this.worldMapData1List.getFirst()).groupId; // L: 231 - } - - var6 &= var5.tryLoadGroup(var8); // L: 233 - if (var6) { // L: 234 - byte[] var7 = var5.takeFileFlat(var8); // L: 235 - WorldMapSprite var9 = ChatChannel.method2375(var7); // L: 236 - Sprite var10 = new Sprite(this.pixelsPerTile * 64, this.pixelsPerTile * 64); // L: 237 - var10.setRaster(); // L: 238 - if (this.worldMapData_0 != null) { // L: 239 - this.method533(var2, var3, var9); // L: 240 - } else { - this.method534(var2, var3, var9); // L: 243 - } - - ModeWhere.method3814(var10, this.regionX, this.regionY, this.pixelsPerTile); // L: 245 - this.method528(); // L: 246 - } - } - } - } // L: 218 221 247 - @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "(IIILjava/util/HashSet;I)V", - garbageValue = "-134217045" + descriptor = "(I)V", + garbageValue = "-1147787882" ) - void method585(int var1, int var2, int var3, HashSet var4) { - if (var4 == null) { // L: 250 - var4 = new HashSet(); // L: 251 + @Export("initWorldMapIcon1s") + void initWorldMapIcon1s() { + Iterator var1 = this.iconMap.values().iterator(); + + while (var1.hasNext()) { + AbstractWorldMapIcon var2 = (AbstractWorldMapIcon)var1.next(); + if (var2 instanceof WorldMapIcon_1) { + ((WorldMapIcon_1)var2).init(); + } } - this.drawNonLinkMapIcons(var1, var2, var4, var3); // L: 253 - this.drawMapLinks(var1, var2, var4, var3); // L: 254 - } // L: 255 + } - @ObfuscatedName("r") + @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "(Ljava/util/HashSet;IIB)V", - garbageValue = "-33" + descriptor = "(Ljava/util/List;I)V", + garbageValue = "-1315662131" + ) + @Export("addAllToIconList") + void addAllToIconList(List var1) { + Iterator var2 = var1.iterator(); + + while (var2.hasNext()) { + WorldMapIcon_0 var3 = (WorldMapIcon_0)var2.next(); + if (UserComparator10.WorldMapElement_get(var3.element).field3250 && var3.coord2.x >> 6 == this.regionX && var3.coord2.y >> 6 == this.regionY) { + WorldMapIcon_0 var4 = new WorldMapIcon_0(var3.coord2, var3.coord2, var3.element, this.method474(var3.element)); + this.icon0List.add(var4); + } + } + + } + + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(S)V", + garbageValue = "1700" + ) + void method530() { + if (this.worldMapData_0 != null) { + this.worldMapData_0.reset(); + } else { + Iterator var1 = this.worldMapData1List.iterator(); + + while (var1.hasNext()) { + WorldMapData_1 var2 = (WorldMapData_1)var1.next(); + var2.reset(); + } + } + + } + + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "(Lib;I)Z", + garbageValue = "-1344110120" + ) + @Export("loadGeography") + boolean loadGeography(AbstractArchive var1) { + this.iconMap.clear(); + if (this.worldMapData_0 != null) { + this.worldMapData_0.loadGeography(var1); + if (this.worldMapData_0.isFullyLoaded()) { + this.getIconsForTiles(0, 0, 64, 64, this.worldMapData_0); + return true; + } else { + return false; + } + } else { + boolean var2 = true; + + Iterator var3; + WorldMapData_1 var4; + for (var3 = this.worldMapData1List.iterator(); var3.hasNext(); var2 &= var4.isFullyLoaded()) { + var4 = (WorldMapData_1)var3.next(); + var4.loadGeography(var1); + } + + if (var2) { + var3 = this.worldMapData1List.iterator(); + + while (var3.hasNext()) { + var4 = (WorldMapData_1)var3.next(); + this.getIconsForTiles(var4.getChunkX() * 8, var4.getChunkY() * 8, 8, 8, var4); + } + } + + return var2; + } + } + + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "(ILar;[Llo;Lib;Lib;B)V", + garbageValue = "71" + ) + @Export("drawTile") + void drawTile(int var1, WorldMapScaleHandler var2, IndexedSprite[] var3, AbstractArchive var4, AbstractArchive var5) { + this.pixelsPerTile = var1; + if (this.worldMapData_0 != null || !this.worldMapData1List.isEmpty()) { + if (PlayerType.method4170(this.regionX, this.regionY, var1) == null) { + boolean var6 = true; + var6 &= this.loadGeography(var4); + int var8; + if (this.worldMapData_0 != null) { + var8 = this.worldMapData_0.groupId; + } else { + var8 = ((AbstractWorldMapData)this.worldMapData1List.getFirst()).groupId; + } + + var6 &= var5.tryLoadGroup(var8); + if (var6) { + byte[] var7 = var5.takeFileFlat(var8); + WorldMapSprite var9 = DynamicObject.method2300(var7); + Sprite var10 = new Sprite(this.pixelsPerTile * 64, this.pixelsPerTile * 64); + var10.setRaster(); + if (this.worldMapData_0 != null) { + this.method471(var2, var3, var9); + } else { + this.method484(var2, var3, var9); + } + + int var11 = this.regionX; + int var12 = this.regionY; + int var13 = this.pixelsPerTile; + DemotingHashTable var14 = WorldMapRegion_cachedSprites; + long var16 = (long)(var13 << 16 | var11 << 8 | var12); + var14.put(var10, var16, var10.pixels.length * 4); + this.method530(); + } + } + } + } + + @ObfuscatedName("m") + @ObfuscatedSignature( + descriptor = "(IIILjava/util/HashSet;I)V", + garbageValue = "-935222416" + ) + void method481(int var1, int var2, int var3, HashSet var4) { + if (var4 == null) { + var4 = new HashSet(); + } + + this.drawNonLinkMapIcons(var1, var2, var4, var3); + this.drawMapLinks(var1, var2, var4, var3); + } + + @ObfuscatedName("c") + @ObfuscatedSignature( + descriptor = "(Ljava/util/HashSet;III)V", + garbageValue = "-879873974" ) @Export("flashElements") void flashElements(HashSet var1, int var2, int var3) { - Iterator var4 = this.iconMap.values().iterator(); // L: 258 + Iterator var4 = this.iconMap.values().iterator(); while (var4.hasNext()) { - AbstractWorldMapIcon var5 = (AbstractWorldMapIcon)var4.next(); // L: 259 - if (var5.hasValidElement()) { // L: 261 - int var6 = var5.getElement(); // L: 262 - if (var1.contains(var6)) { // L: 263 - WorldMapElement var7 = class194.WorldMapElement_get(var6); // L: 264 - this.drawBackgroundCircle(var7, var5.screenX, var5.screenY, var2, var3); // L: 265 + AbstractWorldMapIcon var5 = (AbstractWorldMapIcon)var4.next(); + if (var5.hasValidElement()) { + int var6 = var5.getElement(); + if (var1.contains(var6)) { + WorldMapElement var7 = UserComparator10.WorldMapElement_get(var6); + this.drawBackgroundCircle(var7, var5.screenX, var5.screenY, var2, var3); } } } - this.method540(var1, var2, var3); // L: 269 - } // L: 270 + this.method491(var1, var2, var3); + } - @ObfuscatedName("y") + @ObfuscatedName("i") @ObfuscatedSignature( - descriptor = "(Lal;[Lle;Lau;B)V", - garbageValue = "-28" + descriptor = "(Lar;[Llo;Laq;I)V", + garbageValue = "-830543594" ) - void method533(WorldMapScaleHandler var1, IndexedSprite[] var2, WorldMapSprite var3) { + void method471(WorldMapScaleHandler var1, IndexedSprite[] var2, WorldMapSprite var3) { int var4; int var5; - for (var4 = 0; var4 < 64; ++var4) { // L: 273 - for (var5 = 0; var5 < 64; ++var5) { // L: 274 - this.drawTileGround(var4, var5, this.worldMapData_0, var1, var3); // L: 275 - this.method623(var4, var5, this.worldMapData_0, var1); // L: 276 + for (var4 = 0; var4 < 64; ++var4) { + for (var5 = 0; var5 < 64; ++var5) { + this.drawTileGround(var4, var5, this.worldMapData_0, var1, var3); + this.method487(var4, var5, this.worldMapData_0, var1); } } - for (var4 = 0; var4 < 64; ++var4) { // L: 279 - for (var5 = 0; var5 < 64; ++var5) { // L: 280 - this.method535(var4, var5, this.worldMapData_0, var1, var2); // L: 281 + for (var4 = 0; var4 < 64; ++var4) { + for (var5 = 0; var5 < 64; ++var5) { + this.method485(var4, var5, this.worldMapData_0, var1, var2); } } - } // L: 284 + } - @ObfuscatedName("s") + @ObfuscatedName("f") @ObfuscatedSignature( - descriptor = "(Lal;[Lle;Lau;I)V", - garbageValue = "1440356366" + descriptor = "(Lar;[Llo;Laq;I)V", + garbageValue = "574283591" ) - void method534(WorldMapScaleHandler var1, IndexedSprite[] var2, WorldMapSprite var3) { - Iterator var4 = this.worldMapData1List.iterator(); // L: 287 + void method484(WorldMapScaleHandler var1, IndexedSprite[] var2, WorldMapSprite var3) { + Iterator var4 = this.worldMapData1List.iterator(); WorldMapData_1 var5; int var6; int var7; while (var4.hasNext()) { - var5 = (WorldMapData_1)var4.next(); // L: 288 + var5 = (WorldMapData_1)var4.next(); - for (var6 = var5.getChunkX() * 8; var6 < var5.getChunkX() * 8 + 8; ++var6) { // L: 290 - for (var7 = var5.getChunkY() * 8; var7 < var5.getChunkY() * 8 + 8; ++var7) { // L: 291 - this.drawTileGround(var6, var7, var5, var1, var3); // L: 292 - this.method623(var6, var7, var5, var1); // L: 293 + for (var6 = var5.getChunkX() * 8; var6 < var5.getChunkX() * 8 + 8; ++var6) { + for (var7 = var5.getChunkY() * 8; var7 < var5.getChunkY() * 8 + 8; ++var7) { + this.drawTileGround(var6, var7, var5, var1, var3); + this.method487(var6, var7, var5, var1); } } } - var4 = this.worldMapData1List.iterator(); // L: 298 + var4 = this.worldMapData1List.iterator(); while (var4.hasNext()) { - var5 = (WorldMapData_1)var4.next(); // L: 299 + var5 = (WorldMapData_1)var4.next(); - for (var6 = var5.getChunkX() * 8; var6 < var5.getChunkX() * 8 + 8; ++var6) { // L: 301 - for (var7 = var5.getChunkY() * 8; var7 < var5.getChunkY() * 8 + 8; ++var7) { // L: 302 - this.method535(var6, var7, var5, var1, var2); // L: 303 + for (var6 = var5.getChunkX() * 8; var6 < var5.getChunkX() * 8 + 8; ++var6) { + for (var7 = var5.getChunkY() * 8; var7 < var5.getChunkY() * 8 + 8; ++var7) { + this.method485(var6, var7, var5, var1, var2); } } } - } // L: 308 + } - @ObfuscatedName("j") + @ObfuscatedName("y") @ObfuscatedSignature( - descriptor = "(IILav;Lal;[Lle;I)V", - garbageValue = "-2045754418" + descriptor = "(IILau;Lar;[Llo;B)V", + garbageValue = "-14" ) - void method535(int var1, int var2, AbstractWorldMapData var3, WorldMapScaleHandler var4, IndexedSprite[] var5) { - this.method630(var1, var2, var3); // L: 311 - this.method539(var1, var2, var3, var5); // L: 312 - } // L: 313 + void method485(int var1, int var2, AbstractWorldMapData var3, WorldMapScaleHandler var4, IndexedSprite[] var5) { + this.method548(var1, var2, var3); + this.method552(var1, var2, var3, var5); + } - @ObfuscatedName("d") + @ObfuscatedName("r") @ObfuscatedSignature( - descriptor = "(IILav;Lal;Lau;S)V", - garbageValue = "-3017" + descriptor = "(IILau;Lar;Laq;I)V", + garbageValue = "143170882" ) @Export("drawTileGround") void drawTileGround(int var1, int var2, AbstractWorldMapData var3, WorldMapScaleHandler var4, WorldMapSprite var5) { - int var6 = var3.floorUnderlayIds[0][var1][var2] - 1; // L: 316 - int var7 = var3.floorOverlayIds[0][var1][var2] - 1; // L: 317 - if (var6 == -1 && var7 == -1) { // L: 318 - Rasterizer2D.Rasterizer2D_fillRectangle(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, this.pixelsPerTile, this.backgroundColor); // L: 319 + int var6 = var3.floorUnderlayIds[0][var1][var2] - 1; + int var7 = var3.floorOverlayIds[0][var1][var2] - 1; + if (var6 == -1 && var7 == -1) { + Rasterizer2D.Rasterizer2D_fillRectangle(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, this.pixelsPerTile, this.backgroundColor); } - int var8 = 16711935; // L: 321 - int var9; - if (var7 != -1) { // L: 322 - int var10 = this.backgroundColor; // L: 324 - FloorOverlayDefinition var11 = PendingSpawn.method1839(var7); // L: 326 - if (var11 == null) { // L: 327 - var9 = var10; // L: 328 - } else if (var11.secondaryRgb >= 0) { // L: 331 - var9 = var11.secondaryRgb | -16777216; // L: 332 - } else if (var11.texture >= 0) { // L: 334 - int var12 = BuddyRankComparator.method3558(Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var11.texture), 96); // L: 335 - var9 = Rasterizer3D.Rasterizer3D_colorPalette[var12] | -16777216; // L: 336 - } else if (var11.primaryRgb == 16711935) { // L: 338 - var9 = var10; // L: 339 - } else { - int var13 = var11.hue; // L: 343 - int var14 = var11.saturation; // L: 344 - int var15 = var11.lightness; // L: 345 - if (var15 > 179) { // L: 347 - var14 /= 2; - } - - if (var15 > 192) { // L: 348 - var14 /= 2; - } - - if (var15 > 217) { // L: 349 - var14 /= 2; - } - - if (var15 > 243) { // L: 350 - var14 /= 2; - } - - int var16 = (var14 / 32 << 7) + var15 / 2 + (var13 / 4 << 10); // L: 351 - int var17 = BuddyRankComparator.method3558(var16, 96); // L: 355 - var9 = Rasterizer3D.Rasterizer3D_colorPalette[var17] | -16777216; // L: 356 - } - - var8 = var9; // L: 359 + int var8 = 16711935; + if (var7 != -1) { + var8 = GrandExchangeOffer.method186(var7, this.backgroundColor); } - if (var7 > -1 && var3.field196[0][var1][var2] == 0) { // L: 361 - Rasterizer2D.Rasterizer2D_fillRectangle(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, this.pixelsPerTile, var8); // L: 362 + if (var7 > -1 && var3.field178[0][var1][var2] == 0) { + Rasterizer2D.Rasterizer2D_fillRectangle(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, this.pixelsPerTile, var8); } else { - var9 = this.method538(var1, var2, var3, var5); // L: 365 - if (var7 == -1) { // L: 366 - Rasterizer2D.Rasterizer2D_fillRectangle(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, this.pixelsPerTile, var9); // L: 367 + int var9 = this.method488(var1, var2, var3, var5); + if (var7 == -1) { + Rasterizer2D.Rasterizer2D_fillRectangle(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, this.pixelsPerTile, var9); } else { - var4.method826(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), var9, var8, this.pixelsPerTile, this.pixelsPerTile, var3.field196[0][var1][var2], var3.field187[0][var1][var2]); // L: 370 + var4.method780(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), var9, var8, this.pixelsPerTile, this.pixelsPerTile, var3.field178[0][var1][var2], var3.field177[0][var1][var2]); } } - } // L: 363 368 371 + } - @ObfuscatedName("a") + @ObfuscatedName("q") @ObfuscatedSignature( - descriptor = "(IILav;Lal;I)V", - garbageValue = "208983501" + descriptor = "(IILau;Lar;I)V", + garbageValue = "1236225695" ) - void method623(int var1, int var2, AbstractWorldMapData var3, WorldMapScaleHandler var4) { - for (int var5 = 1; var5 < var3.planes; ++var5) { // L: 374 - int var6 = var3.floorOverlayIds[var5][var1][var2] - 1; // L: 375 - if (var6 > -1) { // L: 376 - int var8 = this.backgroundColor; // L: 378 - FloorOverlayDefinition var9 = PendingSpawn.method1839(var6); // L: 380 - int var7; - if (var9 == null) { // L: 381 - var7 = var8; // L: 382 - } else if (var9.secondaryRgb >= 0) { // L: 385 - var7 = var9.secondaryRgb | -16777216; // L: 386 - } else if (var9.texture >= 0) { // L: 388 - int var10 = BuddyRankComparator.method3558(Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var9.texture), 96); // L: 389 - var7 = Rasterizer3D.Rasterizer3D_colorPalette[var10] | -16777216; // L: 390 - } else if (var9.primaryRgb == 16711935) { // L: 392 - var7 = var8; // L: 393 + void method487(int var1, int var2, AbstractWorldMapData var3, WorldMapScaleHandler var4) { + for (int var5 = 1; var5 < var3.planes; ++var5) { + int var6 = var3.floorOverlayIds[var5][var1][var2] - 1; + if (var6 > -1) { + int var7 = GrandExchangeOffer.method186(var6, this.backgroundColor); + if (var3.field178[var5][var1][var2] == 0) { + Rasterizer2D.Rasterizer2D_fillRectangle(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, this.pixelsPerTile, var7); } else { - int var11 = var9.hue; // L: 397 - int var12 = var9.saturation; // L: 398 - int var13 = var9.lightness; // L: 399 - if (var13 > 179) { // L: 401 - var12 /= 2; - } - - if (var13 > 192) { // L: 402 - var12 /= 2; - } - - if (var13 > 217) { // L: 403 - var12 /= 2; - } - - if (var13 > 243) { // L: 404 - var12 /= 2; - } - - int var14 = (var12 / 32 << 7) + var13 / 2 + (var11 / 4 << 10); // L: 405 - int var15 = BuddyRankComparator.method3558(var14, 96); // L: 409 - var7 = Rasterizer3D.Rasterizer3D_colorPalette[var15] | -16777216; // L: 410 - } - - if (var3.field196[var5][var1][var2] == 0) { // L: 414 - Rasterizer2D.Rasterizer2D_fillRectangle(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, this.pixelsPerTile, var7); // L: 415 - } else { - var4.method826(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), 0, var7, this.pixelsPerTile, this.pixelsPerTile, var3.field196[var5][var1][var2], var3.field187[var5][var1][var2]); // L: 418 + var4.method780(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), 0, var7, this.pixelsPerTile, this.pixelsPerTile, var3.field178[var5][var1][var2], var3.field177[var5][var1][var2]); } } } - } // L: 422 + } @ObfuscatedName("g") @ObfuscatedSignature( - descriptor = "(IILav;Lau;I)I", - garbageValue = "-2000366066" + descriptor = "(IILau;Laq;I)I", + garbageValue = "372915391" ) - int method538(int var1, int var2, AbstractWorldMapData var3, WorldMapSprite var4) { - return var3.floorUnderlayIds[0][var1][var2] == 0 ? this.backgroundColor : var4.getTileColor(var1, var2); // L: 425 426 428 + int method488(int var1, int var2, AbstractWorldMapData var3, WorldMapSprite var4) { + return var3.floorUnderlayIds[0][var1][var2] == 0 ? this.backgroundColor : var4.getTileColor(var1, var2); } - @ObfuscatedName("h") + @ObfuscatedName("o") @ObfuscatedSignature( - descriptor = "(IILav;[Lle;I)V", - garbageValue = "2146304456" + descriptor = "(IILau;[Llo;B)V", + garbageValue = "109" ) - void method539(int var1, int var2, AbstractWorldMapData var3, IndexedSprite[] var4) { - for (int var5 = 0; var5 < var3.planes; ++var5) { // L: 432 - WorldMapDecoration[] var6 = var3.decorations[var5][var1][var2]; // L: 433 - if (var6 != null && var6.length != 0) { // L: 434 - WorldMapDecoration[] var7 = var6; // L: 438 + void method552(int var1, int var2, AbstractWorldMapData var3, IndexedSprite[] var4) { + for (int var5 = 0; var5 < var3.planes; ++var5) { + WorldMapDecoration[] var6 = var3.decorations[var5][var1][var2]; + if (var6 != null && var6.length != 0) { + WorldMapDecoration[] var7 = var6; - for (int var8 = 0; var8 < var7.length; ++var8) { // L: 439 - WorldMapDecoration var9 = var7[var8]; // L: 440 - if (GameObject.method3416(var9.decoration) || class7.method108(var9.decoration)) { // L: 442 - ObjectDefinition var10 = ScriptEvent.getObjectDefinition(var9.objectDefinitionId); // L: 443 - if (var10.mapSceneId != -1) { // L: 444 - if (var10.mapSceneId != 46 && var10.mapSceneId != 52) { // L: 445 - var4[var10.mapSceneId].method6247(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile * 2, this.pixelsPerTile * 2); // L: 449 + for (int var8 = 0; var8 < var7.length; ++var8) { + WorldMapDecoration var9 = var7[var8]; + int var11 = var9.decoration; + boolean var10 = var11 >= WorldMapDecorationType.field2764.id && var11 <= WorldMapDecorationType.field2755.id; + if (var10 || BoundaryObject.method3342(var9.decoration)) { + ObjectDefinition var12 = WorldMapDecoration.getObjectDefinition(var9.objectDefinitionId); + if (var12.mapSceneId != -1) { + if (var12.mapSceneId != 46 && var12.mapSceneId != 52) { + var4[var12.mapSceneId].method6141(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile * 2, this.pixelsPerTile * 2); } else { - var4[var10.mapSceneId].method6247(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile * 2 + 1, this.pixelsPerTile * 2 + 1); // L: 446 + var4[var12.mapSceneId].method6141(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile * 2 + 1, this.pixelsPerTile * 2 + 1); } } } @@ -587,61 +554,61 @@ public class WorldMapRegion { } } - } // L: 457 + } - @ObfuscatedName("ab") + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "(IILav;I)V", - garbageValue = "-1846642435" + descriptor = "(IILau;I)V", + garbageValue = "160900359" ) - void method630(int var1, int var2, AbstractWorldMapData var3) { - for (int var4 = 0; var4 < var3.planes; ++var4) { // L: 460 - WorldMapDecoration[] var5 = var3.decorations[var4][var1][var2]; // L: 461 - if (var5 != null && var5.length != 0) { // L: 462 - WorldMapDecoration[] var6 = var5; // L: 466 + void method548(int var1, int var2, AbstractWorldMapData var3) { + for (int var4 = 0; var4 < var3.planes; ++var4) { + WorldMapDecoration[] var5 = var3.decorations[var4][var1][var2]; + if (var5 != null && var5.length != 0) { + WorldMapDecoration[] var6 = var5; - for (int var7 = 0; var7 < var6.length; ++var7) { // L: 467 - WorldMapDecoration var8 = var6[var7]; // L: 468 - if (LoginPacket.method3751(var8.decoration)) { // L: 470 - ObjectDefinition var9 = ScriptEvent.getObjectDefinition(var8.objectDefinitionId); // L: 471 - int var10 = var9.int1 != 0 ? -3407872 : -3355444; // L: 472 - if (var8.decoration == WorldMapDecorationType.field2750.id) { // L: 473 - this.method554(var1, var2, var8.rotation, var10); // L: 474 + for (int var7 = 0; var7 < var6.length; ++var7) { + WorldMapDecoration var8 = var6[var7]; + if (FriendLoginUpdate.method5290(var8.decoration)) { + ObjectDefinition var9 = WorldMapDecoration.getObjectDefinition(var8.objectDefinitionId); + int var10 = var9.int1 != 0 ? -3407872 : -3355444; + if (var8.decoration == WorldMapDecorationType.field2761.id) { + this.method503(var1, var2, var8.rotation, var10); } - if (var8.decoration == WorldMapDecorationType.field2748.id) { // L: 476 - this.method554(var1, var2, var8.rotation, -3355444); // L: 477 - this.method554(var1, var2, var8.rotation + 1, var10); // L: 478 + if (var8.decoration == WorldMapDecorationType.field2746.id) { + this.method503(var1, var2, var8.rotation, -3355444); + this.method503(var1, var2, var8.rotation + 1, var10); } - if (var8.decoration == WorldMapDecorationType.field2754.id) { // L: 480 - if (var8.rotation == 0) { // L: 481 + if (var8.decoration == WorldMapDecorationType.field2747.id) { + if (var8.rotation == 0) { Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), 1, var10); } if (var8.rotation == 1) { - Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1 + this.pixelsPerTile - 1, this.pixelsPerTile * (63 - var2), 1, var10); // L: 482 + Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1 + this.pixelsPerTile - 1, this.pixelsPerTile * (63 - var2), 1, var10); } - if (var8.rotation == 2) { // L: 483 + if (var8.rotation == 2) { Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile + this.pixelsPerTile * var1 - 1, this.pixelsPerTile * (63 - var2) + this.pixelsPerTile - 1, 1, var10); } - if (var8.rotation == 3) { // L: 484 + if (var8.rotation == 3) { Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2) + this.pixelsPerTile - 1, 1, var10); } } - if (var8.decoration == WorldMapDecorationType.field2751.id) { // L: 486 - int var11 = var8.rotation % 2; // L: 487 + if (var8.decoration == WorldMapDecorationType.field2748.id) { + int var11 = var8.rotation % 2; int var12; - if (var11 == 0) { // L: 488 - for (var12 = 0; var12 < this.pixelsPerTile; ++var12) { // L: 489 - Rasterizer2D.Rasterizer2D_drawHorizontalLine(var12 + this.pixelsPerTile * var1, (64 - var2) * this.pixelsPerTile - 1 - var12, 1, var10); // L: 490 + if (var11 == 0) { + for (var12 = 0; var12 < this.pixelsPerTile; ++var12) { + Rasterizer2D.Rasterizer2D_drawHorizontalLine(var12 + this.pixelsPerTile * var1, (64 - var2) * this.pixelsPerTile - 1 - var12, 1, var10); } } else { - for (var12 = 0; var12 < this.pixelsPerTile; ++var12) { // L: 494 - Rasterizer2D.Rasterizer2D_drawHorizontalLine(var12 + this.pixelsPerTile * var1, var12 + this.pixelsPerTile * (63 - var2), 1, var10); // L: 495 + for (var12 = 0; var12 < this.pixelsPerTile; ++var12) { + Rasterizer2D.Rasterizer2D_drawHorizontalLine(var12 + this.pixelsPerTile * var1, var12 + this.pixelsPerTile * (63 - var2), 1, var10); } } } @@ -650,944 +617,585 @@ public class WorldMapRegion { } } - } // L: 504 + } - @ObfuscatedName("ac") + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "(IILjava/util/HashSet;IB)V", - garbageValue = "-66" + descriptor = "(IILjava/util/HashSet;II)V", + garbageValue = "1579796963" ) @Export("drawNonLinkMapIcons") void drawNonLinkMapIcons(int var1, int var2, HashSet var3, int var4) { - float var5 = (float)var4 / 64.0F; // L: 507 - float var6 = var5 / 2.0F; // L: 508 - Iterator var7 = this.iconMap.entrySet().iterator(); // L: 509 + float var5 = (float)var4 / 64.0F; + float var6 = var5 / 2.0F; + Iterator var7 = this.iconMap.entrySet().iterator(); while (var7.hasNext()) { - Entry var8 = (Entry)var7.next(); // L: 510 - Coord var9 = (Coord)var8.getKey(); // L: 512 - int var10 = (int)(var5 * (float)var9.x + (float)var1 - var6); // L: 513 - int var11 = (int)((float)(var2 + var4) - var5 * (float)var9.y - var6); // L: 514 - AbstractWorldMapIcon var12 = (AbstractWorldMapIcon)var8.getValue(); // L: 515 - if (var12 != null && var12.hasValidElement()) { // L: 516 - var12.screenX = var10; // L: 517 - var12.screenY = var11; // L: 518 - WorldMapElement var13 = class194.WorldMapElement_get(var12.getElement()); // L: 519 - if (!var3.contains(var13.getObjectId())) { // L: 520 - this.method544(var12, var10, var11, var5); // L: 521 + Entry var8 = (Entry)var7.next(); + Coord var9 = (Coord)var8.getKey(); + int var10 = (int)((float)var9.x * var5 + (float)var1 - var6); + int var11 = (int)((float)(var2 + var4) - var5 * (float)var9.y - var6); + AbstractWorldMapIcon var12 = (AbstractWorldMapIcon)var8.getValue(); + if (var12 != null && var12.hasValidElement()) { + var12.screenX = var10; + var12.screenY = var11; + WorldMapElement var13 = UserComparator10.WorldMapElement_get(var12.getElement()); + if (!var3.contains(var13.getObjectId())) { + this.method493(var12, var10, var11, var5); } } } - } // L: 526 - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(Ljava/util/HashSet;IIS)V", - garbageValue = "-19257" - ) - void method540(HashSet var1, int var2, int var3) { - Iterator var4 = this.icon0List.iterator(); // L: 529 - - while (var4.hasNext()) { - AbstractWorldMapIcon var5 = (AbstractWorldMapIcon)var4.next(); // L: 530 - if (var5.hasValidElement()) { // L: 532 - WorldMapElement var6 = class194.WorldMapElement_get(var5.getElement()); // L: 533 - if (var6 != null && var1.contains(var6.getObjectId())) { // L: 534 - this.drawBackgroundCircle(var6, var5.screenX, var5.screenY, var2, var3); // L: 535 - } - } - } - - } // L: 539 - - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "(Lij;IIIII)V", - garbageValue = "1701094485" - ) - @Export("drawBackgroundCircle") - void drawBackgroundCircle(WorldMapElement var1, int var2, int var3, int var4, int var5) { - Sprite var6 = var1.getSpriteBool(false); // L: 542 - if (var6 != null) { // L: 543 - var6.drawTransBgAt(var2 - var6.subWidth / 2, var3 - var6.subHeight / 2); // L: 546 - if (var4 % var5 < var5 / 2) { // L: 547 - Rasterizer2D.Rasterizer2D_drawCircleAlpha(var2, var3, 15, 16776960, 128); // L: 548 - Rasterizer2D.Rasterizer2D_drawCircleAlpha(var2, var3, 7, 16777215, 256); // L: 549 - } - - } - } // L: 544 551 - - @ObfuscatedName("av") - @ObfuscatedSignature( - descriptor = "(Lam;IIFB)V", - garbageValue = "37" - ) - void method544(AbstractWorldMapIcon var1, int var2, int var3, float var4) { - WorldMapElement var5 = class194.WorldMapElement_get(var1.getElement()); // L: 554 - this.method545(var5, var2, var3); // L: 555 - this.method599(var1, var5, var2, var3, var4); // L: 556 - } // L: 557 - - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "(Lij;III)V", - garbageValue = "-1898823455" - ) - void method545(WorldMapElement var1, int var2, int var3) { - Sprite var4 = var1.getSpriteBool(false); // L: 560 - if (var4 != null) { // L: 561 - int var5 = this.method531(var4, var1.horizontalAlignment); // L: 562 - int var6 = this.method549(var4, var1.verticalAlignment); // L: 563 - var4.drawTransBgAt(var5 + var2, var3 + var6); // L: 564 - } - - } // L: 566 - - @ObfuscatedName("ay") - @ObfuscatedSignature( - descriptor = "(Lam;Lij;IIFI)V", - garbageValue = "-937867024" - ) - void method599(AbstractWorldMapIcon var1, WorldMapElement var2, int var3, int var4, float var5) { - WorldMapLabel var6 = var1.getLabel(); // L: 569 - if (var6 != null) { // L: 570 - if (var6.size.method277(var5)) { // L: 573 - Font var7 = (Font)this.fonts.get(var6.size); // L: 576 - var7.drawLines(var6.text, var3 - var6.width / 2, var4, var6.width, var6.height, -16777216 | var2.field3245, 0, 1, 0, var7.ascent / 2); // L: 577 - } - } - } // L: 571 574 578 - - @ObfuscatedName("ah") - @ObfuscatedSignature( - descriptor = "(IILjava/util/HashSet;IB)V", - garbageValue = "-97" - ) - @Export("drawMapLinks") - void drawMapLinks(int var1, int var2, HashSet var3, int var4) { - float var5 = (float)var4 / 64.0F; // L: 581 - Iterator var6 = this.icon0List.iterator(); // L: 582 - - while (var6.hasNext()) { - AbstractWorldMapIcon var7 = (AbstractWorldMapIcon)var6.next(); // L: 583 - if (var7.hasValidElement()) { // L: 585 - int var8 = var7.coord2.x % 64; // L: 586 - int var9 = var7.coord2.y % 64; // L: 587 - var7.screenX = (int)((float)var1 + var5 * (float)var8); // L: 588 - var7.screenY = (int)(var5 * (float)(63 - var9) + (float)var2); // L: 589 - if (!var3.contains(var7.getElement())) { // L: 590 - this.method544(var7, var7.screenX, var7.screenY, var5); // L: 593 - } - } - } - - } // L: 596 - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(Llc;Ljy;I)I", - garbageValue = "2012053105" - ) - int method531(Sprite var1, HorizontalAlignment var2) { - switch(var2.value) { // L: 599 - case 1: - return 0; // L: 606 - case 2: - return -var1.subWidth / 2; // L: 610 - default: - return -var1.subWidth; // L: 602 - } - } - - @ObfuscatedName("ak") - @ObfuscatedSignature( - descriptor = "(Llc;Lir;B)I", - garbageValue = "-1" - ) - int method549(Sprite var1, VerticalAlignment var2) { - switch(var2.value) { // L: 616 - case 0: - return 0; // L: 627 - case 1: - return -var1.subHeight / 2; // L: 619 - default: - return -var1.subHeight; // L: 623 - } - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(II)Lai;", - garbageValue = "-1045904165" - ) - WorldMapLabel method550(int var1) { - WorldMapElement var2 = class194.WorldMapElement_get(var1); // L: 654 - return this.createMapLabel(var2); // L: 655 } @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(Lij;I)Lai;", - garbageValue = "1905291224" + descriptor = "(Ljava/util/HashSet;III)V", + garbageValue = "-1282937551" ) - @Export("createMapLabel") - WorldMapLabel createMapLabel(WorldMapElement var1) { - if (var1.name != null && this.fonts != null && this.fonts.get(WorldMapLabelSize.WorldMapLabelSize_small) != null) { // L: 659 - int var3 = var1.textSize; // L: 663 - WorldMapLabelSize[] var4 = WorldMapLabelSize.method273(); // L: 666 - int var5 = 0; + void method491(HashSet var1, int var2, int var3) { + Iterator var4 = this.icon0List.iterator(); - WorldMapLabelSize var2; - while (true) { - if (var5 >= var4.length) { - var2 = null; // L: 677 - break; - } - - WorldMapLabelSize var6 = var4[var5]; // L: 668 - if (var3 == var6.field150) { // L: 670 - var2 = var6; // L: 671 - break; - } - - ++var5; // L: 667 - } - - if (var2 == null) { // L: 680 - return null; // L: 681 - } else { - Font var14 = (Font)this.fonts.get(var2); // L: 683 - if (var14 == null) { // L: 684 - return null; // L: 685 - } else { - int var15 = var14.lineCount(var1.name, 1000000); // L: 687 - String[] var7 = new String[var15]; // L: 688 - var14.breakLines(var1.name, (int[])null, var7); // L: 689 - int var8 = var7.length * var14.ascent / 2; // L: 690 - int var9 = 0; // L: 691 - String[] var10 = var7; // L: 693 - - for (int var11 = 0; var11 < var10.length; ++var11) { // L: 694 - String var12 = var10[var11]; // L: 695 - int var13 = var14.stringWidth(var12); // L: 697 - if (var13 > var9) { // L: 698 - var9 = var13; // L: 699 - } - } - - return new WorldMapLabel(var1.name, var9, var8, var2); // L: 704 + while (var4.hasNext()) { + AbstractWorldMapIcon var5 = (AbstractWorldMapIcon)var4.next(); + if (var5.hasValidElement()) { + WorldMapElement var6 = UserComparator10.WorldMapElement_get(var5.getElement()); + if (var6 != null && var1.contains(var6.getObjectId())) { + this.drawBackgroundCircle(var6, var5.screenX, var5.screenY, var2, var3); } } - } else { - return null; // L: 660 } + } @ObfuscatedName("ag") @ObfuscatedSignature( - descriptor = "(IIIIIB)Ljava/util/List;", - garbageValue = "-56" + descriptor = "(Liy;IIIII)V", + garbageValue = "1953515805" ) - List method609(int var1, int var2, int var3, int var4, int var5) { - LinkedList var6 = new LinkedList(); // L: 708 - if (var4 >= var1 && var5 >= var2) { // L: 709 - if (var4 < var3 + var1 && var5 < var3 + var2) { // L: 710 - Iterator var7 = this.iconMap.values().iterator(); // L: 711 + @Export("drawBackgroundCircle") + void drawBackgroundCircle(WorldMapElement var1, int var2, int var3, int var4, int var5) { + Sprite var6 = var1.getSpriteBool(false); + if (var6 != null) { + var6.drawTransBgAt(var2 - var6.subWidth / 2, var3 - var6.subHeight / 2); + if (var4 % var5 < var5 / 2) { + Rasterizer2D.Rasterizer2D_drawCircleAlpha(var2, var3, 15, 16776960, 128); + Rasterizer2D.Rasterizer2D_drawCircleAlpha(var2, var3, 7, 16777215, 256); + } + + } + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(Lap;IIFI)V", + garbageValue = "66792937" + ) + void method493(AbstractWorldMapIcon var1, int var2, int var3, float var4) { + WorldMapElement var5 = UserComparator10.WorldMapElement_get(var1.getElement()); + this.method494(var5, var2, var3); + this.method580(var1, var5, var2, var3, var4); + } + + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "(Liy;IIB)V", + garbageValue = "0" + ) + void method494(WorldMapElement var1, int var2, int var3) { + Sprite var4 = var1.getSpriteBool(false); + if (var4 != null) { + int var5 = this.method497(var4, var1.horizontalAlignment); + int var6 = this.method498(var4, var1.verticalAlignment); + var4.drawTransBgAt(var5 + var2, var3 + var6); + } + + } + + @ObfuscatedName("ae") + @ObfuscatedSignature( + descriptor = "(Lap;Liy;IIFB)V", + garbageValue = "19" + ) + void method580(AbstractWorldMapIcon var1, WorldMapElement var2, int var3, int var4, float var5) { + WorldMapLabel var6 = var1.getLabel(); + if (var6 != null) { + if (var6.size.method254(var5)) { + Font var7 = (Font)this.fonts.get(var6.size); + var7.drawLines(var6.text, var3 - var6.width / 2, var4, var6.width, var6.height, -16777216 | var2.field3251, 0, 1, 0, var7.ascent / 2); + } + } + } + + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "(IILjava/util/HashSet;II)V", + garbageValue = "-907563765" + ) + @Export("drawMapLinks") + void drawMapLinks(int var1, int var2, HashSet var3, int var4) { + float var5 = (float)var4 / 64.0F; + Iterator var6 = this.icon0List.iterator(); + + while (var6.hasNext()) { + AbstractWorldMapIcon var7 = (AbstractWorldMapIcon)var6.next(); + if (var7.hasValidElement()) { + int var8 = var7.coord2.x % 64; + int var9 = var7.coord2.y % 64; + var7.screenX = (int)(var5 * (float)var8 + (float)var1); + var7.screenY = (int)(var5 * (float)(63 - var9) + (float)var2); + if (!var3.contains(var7.getElement())) { + this.method493(var7, var7.screenX, var7.screenY, var5); + } + } + } + + } + + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "(Llm;Ljt;I)I", + garbageValue = "-1268952607" + ) + int method497(Sprite var1, HorizontalAlignment var2) { + switch(var2.value) { + case 1: + return -var1.subWidth / 2; + case 2: + return 0; + default: + return -var1.subWidth; + } + } + + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "(Llm;Lit;S)I", + garbageValue = "-11626" + ) + int method498(Sprite var1, VerticalAlignment var2) { + switch(var2.value) { + case 1: + return 0; + case 2: + return -var1.subHeight / 2; + default: + return -var1.subHeight; + } + } + + @ObfuscatedName("aq") + @ObfuscatedSignature( + descriptor = "(II)Lah;", + garbageValue = "-951001387" + ) + WorldMapLabel method474(int var1) { + WorldMapElement var2 = UserComparator10.WorldMapElement_get(var1); + return this.createMapLabel(var2); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Liy;I)Lah;", + garbageValue = "-1657578860" + ) + @Export("createMapLabel") + WorldMapLabel createMapLabel(WorldMapElement var1) { + if (var1.name != null && this.fonts != null && this.fonts.get(WorldMapLabelSize.WorldMapLabelSize_small) != null) { + int var3 = var1.textSize; + WorldMapLabelSize[] var4 = new WorldMapLabelSize[]{WorldMapLabelSize.WorldMapLabelSize_medium, WorldMapLabelSize.WorldMapLabelSize_large, WorldMapLabelSize.WorldMapLabelSize_small}; + WorldMapLabelSize[] var5 = var4; + int var6 = 0; + + WorldMapLabelSize var2; + while (true) { + if (var6 >= var5.length) { + var2 = null; + break; + } + + WorldMapLabelSize var7 = var5[var6]; + if (var3 == var7.field133) { + var2 = var7; + break; + } + + ++var6; + } + + if (var2 == null) { + return null; + } else { + Font var14 = (Font)this.fonts.get(var2); + if (var14 == null) { + return null; + } else { + var6 = var14.lineCount(var1.name, 1000000); + String[] var15 = new String[var6]; + var14.breakLines(var1.name, (int[])null, var15); + int var8 = var15.length * var14.ascent / 2; + int var9 = 0; + String[] var10 = var15; + + for (int var11 = 0; var11 < var10.length; ++var11) { + String var12 = var10[var11]; + int var13 = var14.stringWidth(var12); + if (var13 > var9) { + var9 = var13; + } + } + + return new WorldMapLabel(var1.name, var9, var8, var2); + } + } + } else { + return null; + } + } + + @ObfuscatedName("am") + @ObfuscatedSignature( + descriptor = "(IIIIII)Ljava/util/List;", + garbageValue = "-1578345699" + ) + List method501(int var1, int var2, int var3, int var4, int var5) { + LinkedList var6 = new LinkedList(); + if (var4 >= var1 && var5 >= var2) { + if (var4 < var3 + var1 && var5 < var3 + var2) { + Iterator var7 = this.iconMap.values().iterator(); AbstractWorldMapIcon var8; while (var7.hasNext()) { - var8 = (AbstractWorldMapIcon)var7.next(); // L: 712 - if (var8.hasValidElement() && var8.fitsScreen(var4, var5)) { // L: 714 - var6.add(var8); // L: 715 + var8 = (AbstractWorldMapIcon)var7.next(); + if (var8.hasValidElement() && var8.fitsScreen(var4, var5)) { + var6.add(var8); } } - var7 = this.icon0List.iterator(); // L: 719 + var7 = this.icon0List.iterator(); while (var7.hasNext()) { - var8 = (AbstractWorldMapIcon)var7.next(); // L: 720 - if (var8.hasValidElement() && var8.fitsScreen(var4, var5)) { // L: 722 - var6.add(var8); // L: 723 + var8 = (AbstractWorldMapIcon)var7.next(); + if (var8.hasValidElement() && var8.fitsScreen(var4, var5)) { + var6.add(var8); } } - return var6; // L: 727 + return var6; } else { - return var6; // L: 718 + return var6; } } else { return var6; } } - @ObfuscatedName("aq") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(B)Ljava/util/List;", - garbageValue = "89" + descriptor = "(I)Ljava/util/List;", + garbageValue = "1048345279" ) @Export("icons") List icons() { - LinkedList var1 = new LinkedList(); // L: 731 - var1.addAll(this.icon0List); // L: 732 - var1.addAll(this.iconMap.values()); // L: 733 - return var1; // L: 734 + LinkedList var1 = new LinkedList(); + var1.addAll(this.icon0List); + var1.addAll(this.iconMap.values()); + return var1; } - @ObfuscatedName("aw") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(IIIII)V", - garbageValue = "-1518831838" + garbageValue = "-660950240" ) - void method554(int var1, int var2, int var3, int var4) { - var3 %= 4; // L: 738 - if (var3 == 0) { // L: 739 + void method503(int var1, int var2, int var3, int var4) { + var3 %= 4; + if (var3 == 0) { Rasterizer2D.Rasterizer2D_drawVerticalLine(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, var4); } - if (var3 == 1) { // L: 740 + if (var3 == 1) { Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, var4); } - if (var3 == 2) { // L: 741 - Rasterizer2D.Rasterizer2D_drawVerticalLine(this.pixelsPerTile * var1 + this.pixelsPerTile - 1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, var4); + if (var3 == 2) { + Rasterizer2D.Rasterizer2D_drawVerticalLine(this.pixelsPerTile + this.pixelsPerTile * var1 - 1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, var4); } if (var3 == 3) { - Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2) + this.pixelsPerTile - 1, this.pixelsPerTile, var4); // L: 742 + Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2) + this.pixelsPerTile - 1, this.pixelsPerTile, var4); } - } // L: 743 + } - @ObfuscatedName("ik") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "([Lht;IIIIIIIII)V", - garbageValue = "-1261994565" + descriptor = "(Ljava/lang/String;Ljava/lang/String;ZI)Lmy;", + garbageValue = "-1411778137" ) - @Export("drawInterface") - static final void drawInterface(Widget[] var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); // L: 9339 - Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D(); // L: 9340 + @Export("getPreferencesFile") + public static AccessFile getPreferencesFile(String var0, String var1, boolean var2) { + File var3 = new File(JagexCache.cacheDir, "preferences" + var0 + ".dat"); + if (var3.exists()) { + try { + AccessFile var10 = new AccessFile(var3, "rw", 10000L); + return var10; + } catch (IOException var9) { + } + } - for (int var9 = 0; var9 < var0.length; ++var9) { // L: 9341 - Widget var10 = var0[var9]; // L: 9342 - if (var10 != null && (var10.parentId == var1 || var1 == -1412584499 && var10 == Client.clickedWidget)) { // L: 9343 9344 - int var11; - if (var8 == -1) { // L: 9346 - Client.rootWidgetXs[Client.rootWidgetCount] = var10.x + var6; // L: 9347 - Client.rootWidgetYs[Client.rootWidgetCount] = var7 + var10.y; // L: 9348 - Client.rootWidgetWidths[Client.rootWidgetCount] = var10.width; // L: 9349 - Client.rootWidgetHeights[Client.rootWidgetCount] = var10.height; // L: 9350 - var11 = ++Client.rootWidgetCount - 1; // L: 9351 - } else { - var11 = var8; // L: 9353 - } + String var4 = ""; + if (JagexCache.cacheGamebuild == 33) { + var4 = "_rc"; + } else if (JagexCache.cacheGamebuild == 34) { + var4 = "_wip"; + } - var10.rootIndex = var11; // L: 9354 - var10.cycle = Client.cycle; // L: 9355 - if (!var10.isIf3 || !VertexNormal.isComponentHidden(var10)) { // L: 9356 - if (var10.contentType > 0) { // L: 9357 - WorldMapID.method664(var10); + File var5 = new File(TileItemPile.userHomeDirectory, "jagex_" + var1 + "_preferences" + var0 + var4 + ".dat"); + AccessFile var6; + if (!var2 && var5.exists()) { + try { + var6 = new AccessFile(var5, "rw", 10000L); + return var6; + } catch (IOException var8) { + } + } + + try { + var6 = new AccessFile(var3, "rw", 10000L); + return var6; + } catch (IOException var7) { + throw new RuntimeException(); + } + } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1183681872" + ) + public static void method588() { + class206.midiPcmStream.clear(); + class206.musicPlayerStatus = 1; + Varps.musicTrackArchive = null; + } + + @ObfuscatedName("ir") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;Ljava/lang/String;IIIII)V", + garbageValue = "-1426103660" + ) + @Export("insertMenuItemNoShift") + public static final void insertMenuItemNoShift(String var0, String var1, int var2, int var3, int var4, int var5) { + WorldMapID.insertMenuItem(var0, var1, var2, var3, var4, var5, false); + } + + @ObfuscatedName("jg") + @ObfuscatedSignature( + descriptor = "(Lhe;IIB)V", + garbageValue = "54" + ) + @Export("Widget_addToMenu") + static final void Widget_addToMenu(Widget var0, int var1, int var2) { + if (var0.buttonType == 1) { + insertMenuItemNoShift(var0.buttonText, "", 24, 0, 0, var0.id); + } + + String var3; + if (var0.buttonType == 2 && !Client.isSpellSelected) { + var3 = StudioGame.Widget_getSpellActionName(var0); + if (var3 != null) { + insertMenuItemNoShift(var3, class23.colorStartTag(65280) + var0.spellName, 25, 0, -1, var0.id); + } + } + + if (var0.buttonType == 3) { + insertMenuItemNoShift("Close", "", 26, 0, 0, var0.id); + } + + if (var0.buttonType == 4) { + insertMenuItemNoShift(var0.buttonText, "", 28, 0, 0, var0.id); + } + + if (var0.buttonType == 5) { + insertMenuItemNoShift(var0.buttonText, "", 29, 0, 0, var0.id); + } + + if (var0.buttonType == 6 && Client.meslayerContinueWidget == null) { + insertMenuItemNoShift(var0.buttonText, "", 30, 0, -1, var0.id); + } + + int var4; + int var5; + int var6; + int var7; + int var15; + if (var0.type == 2) { + var15 = 0; + + for (var4 = 0; var4 < var0.height; ++var4) { + for (var5 = 0; var5 < var0.width; ++var5) { + var6 = (var0.paddingX + 32) * var5; + var7 = (var0.paddingY + 32) * var4; + if (var15 < 20) { + var6 += var0.inventoryXOffsets[var15]; + var7 += var0.inventoryYOffsets[var15]; } - int var12 = var10.x + var6; // L: 9358 - int var13 = var7 + var10.y; // L: 9359 - int var14 = var10.transparencyTop; // L: 9360 - int var15; - int var16; - if (var10 == Client.clickedWidget) { // L: 9361 - if (var1 != -1412584499 && !var10.isScrollBar) { // L: 9362 - ItemContainer.field572 = var0; // L: 9363 - WorldMapSprite.field256 = var6; // L: 9364 - GrandExchangeOffer.field87 = var7; // L: 9365 - continue; // L: 9366 - } - - if (Client.isDraggingWidget && Client.field859) { // L: 9368 - var15 = MouseHandler.MouseHandler_x; // L: 9369 - var16 = MouseHandler.MouseHandler_y; // L: 9370 - var15 -= Client.widgetClickX; // L: 9371 - var16 -= Client.widgetClickY; // L: 9372 - if (var15 < Client.field860) { // L: 9373 - var15 = Client.field860; - } - - if (var15 + var10.width > Client.field860 + Client.clickedWidgetParent.width) { // L: 9374 - var15 = Client.field860 + Client.clickedWidgetParent.width - var10.width; - } - - if (var16 < Client.field861) { // L: 9375 - var16 = Client.field861; - } - - if (var16 + var10.height > Client.field861 + Client.clickedWidgetParent.height) { // L: 9376 - var16 = Client.field861 + Client.clickedWidgetParent.height - var10.height; - } - - var12 = var15; // L: 9377 - var13 = var16; // L: 9378 - } - - if (!var10.isScrollBar) { // L: 9380 - var14 = 128; - } - } - - int var17; - int var18; - int var19; - int var20; - int var21; - int var22; - if (var10.type == 2) { // L: 9386 - var15 = var2; // L: 9387 - var16 = var3; // L: 9388 - var17 = var4; // L: 9389 - var18 = var5; // L: 9390 - } else if (var10.type == 9) { // L: 9392 - var19 = var12; // L: 9393 - var20 = var13; // L: 9394 - var21 = var12 + var10.width; // L: 9395 - var22 = var13 + var10.height; // L: 9396 - if (var21 < var12) { // L: 9397 - var19 = var21; // L: 9399 - var21 = var12; // L: 9400 - } - - if (var22 < var13) { // L: 9402 - var20 = var22; // L: 9404 - var22 = var13; // L: 9405 - } - - ++var21; // L: 9407 - ++var22; // L: 9408 - var15 = var19 > var2 ? var19 : var2; // L: 9409 - var16 = var20 > var3 ? var20 : var3; // L: 9410 - var17 = var21 < var4 ? var21 : var4; // L: 9411 - var18 = var22 < var5 ? var22 : var5; // L: 9412 - } else { - var19 = var12 + var10.width; // L: 9415 - var20 = var13 + var10.height; // L: 9416 - var15 = var12 > var2 ? var12 : var2; // L: 9417 - var16 = var13 > var3 ? var13 : var3; // L: 9418 - var17 = var19 < var4 ? var19 : var4; // L: 9419 - var18 = var20 < var5 ? var20 : var5; // L: 9420 - } - - if (!var10.isIf3 || var15 < var17 && var16 < var18) { // L: 9422 - if (var10.contentType != 0) { // L: 9423 - if (var10.contentType == 1336) { // L: 9424 - if (Client.displayFps) { // L: 9425 - var13 += 15; // L: 9426 - WorldMapCacheName.fontPlain12.drawRightAligned("Fps:" + GameShell.fps, var12 + var10.width, var13, 16776960, -1); // L: 9427 - var13 += 15; // L: 9428 - Runtime var42 = Runtime.getRuntime(); // L: 9429 - var20 = (int)((var42.totalMemory() - var42.freeMemory()) / 1024L); // L: 9430 - var21 = 16776960; // L: 9431 - if (var20 > 327680 && !Client.isLowDetail) { // L: 9432 - var21 = 16711680; - } - - WorldMapCacheName.fontPlain12.drawRightAligned("Mem:" + var20 + "k", var12 + var10.width, var13, var21, -1); // L: 9433 - var13 += 15; // L: 9434 + if (var1 >= var6 && var2 >= var7 && var1 < var6 + 32 && var2 < var7 + 32) { + Client.dragItemSlotDestination = var15; + Occluder.hoveredItemContainer = var0; + if (var0.itemIds[var15] > 0) { + ItemDefinition var8 = SecureRandomCallable.ItemDefinition_get(var0.itemIds[var15] - 1); + if (Client.isItemSelected == 1 && class52.method844(FaceNormal.getWidgetFlags(var0))) { + if (var0.id != WorldMapLabelSize.selectedItemWidget || var15 != ChatChannel.selectedItemSlot) { + insertMenuItemNoShift("Use", Client.selectedItemName + " " + "->" + " " + class23.colorStartTag(16748608) + var8.name, 31, var8.id, var15, var0.id); } - continue; - } - - if (var10.contentType == 1337) { // L: 9438 - Client.viewportX = var12; // L: 9439 - Client.viewportY = var13; // L: 9440 - ItemContainer.drawEntities(var12, var13, var10.width, var10.height); // L: 9441 - Client.field834[var10.rootIndex] = true; // L: 9442 - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); // L: 9443 - continue; // L: 9444 - } - - if (var10.contentType == 1338) { // L: 9446 - UserComparator10.drawMinimap(var10, var12, var13, var11); // L: 9447 - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); // L: 9448 - continue; // L: 9449 - } - - if (var10.contentType == 1339) { // L: 9451 - WorldMapSectionType.drawCompass(var10, var12, var13, var11); // L: 9452 - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); // L: 9453 - continue; // L: 9454 - } - - if (var10.contentType == 1400) { // L: 9456 - KeyHandler.worldMap.draw(var12, var13, var10.width, var10.height, Client.cycle); // L: 9457 - } - - if (var10.contentType == 1401) { // L: 9459 - KeyHandler.worldMap.drawOverview(var12, var13, var10.width, var10.height); // L: 9460 - } - - if (var10.contentType == 1402) { // L: 9462 - Login.loginScreenRunesAnimation.draw(var12, Client.cycle); // L: 9463 - } - } - - if (var10.type == 0) { // L: 9466 - if (!var10.isIf3 && VertexNormal.isComponentHidden(var10) && var10 != GrandExchangeEvent.mousedOverWidgetIf1) { // L: 9467 - continue; - } - - if (!var10.isIf3) { // L: 9468 - if (var10.scrollY > var10.scrollHeight - var10.height) { // L: 9469 - var10.scrollY = var10.scrollHeight - var10.height; + } else if (Client.isSpellSelected && class52.method844(FaceNormal.getWidgetFlags(var0))) { + if ((Player.selectedSpellFlags & 16) == 16) { + insertMenuItemNoShift(Client.selectedSpellActionName, Client.selectedSpellName + " " + "->" + " " + class23.colorStartTag(16748608) + var8.name, 32, var8.id, var15, var0.id); + } + } else { + String[] var9 = var8.inventoryActions; + int var10 = -1; + if (Client.shiftClickDrop && class169.method3529()) { + var10 = var8.getShiftClickIndex(); } - if (var10.scrollY < 0) { // L: 9470 - var10.scrollY = 0; - } - } - - drawInterface(var0, var10.id, var15, var16, var17, var18, var12 - var10.scrollX, var13 - var10.scrollY, var11); // L: 9472 - if (var10.children != null) { // L: 9473 - drawInterface(var10.children, var10.id, var15, var16, var17, var18, var12 - var10.scrollX, var13 - var10.scrollY, var11); - } - - InterfaceParent var30 = (InterfaceParent)Client.interfaceParents.get((long)var10.id); // L: 9474 - if (var30 != null) { // L: 9475 - ClanChat.drawWidgets(var30.group, var15, var16, var17, var18, var12, var13, var11); // L: 9476 - } - - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); // L: 9478 - Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D(); // L: 9479 - } - - if (Client.isResizable || Client.field745[var11] || Client.gameDrawingMode > 1) { // L: 9481 - if (var10.type == 0 && !var10.isIf3 && var10.scrollHeight > var10.height) { // L: 9482 9483 - WorldMapData_0.drawScrollBar(var12 + var10.width, var13, var10.scrollY, var10.height, var10.scrollHeight); - } - - if (var10.type != 1) { // L: 9485 - int var23; - int var24; - int var25; - int var26; - if (var10.type == 2) { // L: 9488 - var19 = 0; // L: 9489 - - for (var20 = 0; var20 < var10.rawHeight; ++var20) { // L: 9490 - for (var21 = 0; var21 < var10.rawWidth; ++var21) { // L: 9491 - var22 = var12 + var21 * (var10.paddingX + 32); // L: 9492 - var23 = var13 + var20 * (var10.paddingY + 32); // L: 9493 - if (var19 < 20) { // L: 9494 - var22 += var10.inventoryXOffsets[var19]; // L: 9495 - var23 += var10.inventoryYOffsets[var19]; // L: 9496 - } - - if (var10.itemIds[var19] <= 0) { // L: 9498 - if (var10.inventorySprites != null && var19 < 20) { // L: 9543 - Sprite var46 = var10.getInventorySprite(var19); // L: 9544 - if (var46 != null) { // L: 9545 - var46.drawTransBgAt(var22, var23); - } else if (Widget.field2677) { // L: 9546 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var10); - } - } - } else { - boolean var37 = false; // L: 9499 - boolean var38 = false; // L: 9500 - var26 = var10.itemIds[var19] - 1; // L: 9501 - if (var22 + 32 > var2 && var22 < var4 && var23 + 32 > var3 && var23 < var5 || var10 == GameBuild.dragInventoryWidget && var19 == Client.dragItemSlotSource) { // L: 9502 - Sprite var35; - if (Client.isItemSelected == 1 && var19 == InvDefinition.selectedItemSlot && var10.id == SpotAnimationDefinition.selectedItemWidget) { // L: 9504 - var35 = TilePaint.getItemSprite(var26, var10.itemQuantities[var19], 2, 0, 2, false); - } else { - var35 = TilePaint.getItemSprite(var26, var10.itemQuantities[var19], 1, 3153952, 2, false); // L: 9505 - } - - if (var35 != null) { // L: 9506 - if (var10 == GameBuild.dragInventoryWidget && var19 == Client.dragItemSlotSource) { // L: 9507 - var24 = MouseHandler.MouseHandler_x - Client.draggedWidgetX; // L: 9508 - var25 = MouseHandler.MouseHandler_y - Client.draggedWidgetY; // L: 9509 - if (var24 < 5 && var24 > -5) { // L: 9510 - var24 = 0; - } - - if (var25 < 5 && var25 > -5) { // L: 9511 - var25 = 0; - } - - if (Client.itemDragDuration < 5) { // L: 9512 - var24 = 0; // L: 9513 - var25 = 0; // L: 9514 - } - - var35.drawTransAt(var22 + var24, var25 + var23, 128); // L: 9516 - if (var1 != -1) { // L: 9517 - Widget var28 = var0[var1 & 65535]; // L: 9518 - int var29; - if (var23 + var25 < Rasterizer2D.Rasterizer2D_yClipStart && var28.scrollY > 0) { // L: 9519 - var29 = (Rasterizer2D.Rasterizer2D_yClipStart - var23 - var25) * Client.field743 / 3; // L: 9520 - if (var29 > Client.field743 * 10) { // L: 9521 - var29 = Client.field743 * 10; - } - - if (var29 > var28.scrollY) { // L: 9522 - var29 = var28.scrollY; - } - - var28.scrollY -= var29; // L: 9523 - Client.draggedWidgetY += var29; // L: 9524 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var28); // L: 9525 - } - - if (var23 + var25 + 32 > Rasterizer2D.Rasterizer2D_yClipEnd && var28.scrollY < var28.scrollHeight - var28.height) { // L: 9527 - var29 = (var25 + var23 + 32 - Rasterizer2D.Rasterizer2D_yClipEnd) * Client.field743 / 3; // L: 9528 - if (var29 > Client.field743 * 10) { // L: 9529 - var29 = Client.field743 * 10; - } - - if (var29 > var28.scrollHeight - var28.height - var28.scrollY) { // L: 9530 - var29 = var28.scrollHeight - var28.height - var28.scrollY; - } - - var28.scrollY += var29; // L: 9531 - Client.draggedWidgetY -= var29; // L: 9532 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var28); // L: 9533 - } - } - } else if (var10 == MouseHandler.field525 && var19 == Client.field788) { // L: 9537 - var35.drawTransAt(var22, var23, 128); - } else { - var35.drawTransBgAt(var22, var23); // L: 9538 - } - } else { - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var10); // L: 9540 - } - } - } - - ++var19; // L: 9548 - } - } - } else if (var10.type == 3) { // L: 9553 - if (BufferedNetSocket.runCs1(var10)) { // L: 9555 - var19 = var10.color2; // L: 9556 - if (var10 == GrandExchangeEvent.mousedOverWidgetIf1 && var10.mouseOverColor2 != 0) { // L: 9557 - var19 = var10.mouseOverColor2; - } - } else { - var19 = var10.color; // L: 9560 - if (var10 == GrandExchangeEvent.mousedOverWidgetIf1 && var10.mouseOverColor != 0) { // L: 9561 - var19 = var10.mouseOverColor; - } - } - - if (var10.fill) { // L: 9563 - switch(var10.fillMode.id) { // L: 9564 - case 1: - Rasterizer2D.Rasterizer2D_fillRectangleGradient(var12, var13, var10.width, var10.height, var10.color, var10.color2); // L: 9573 - break; // L: 9574 - case 2: - Rasterizer2D.Rasterizer2D_fillRectangleGradientAlpha(var12, var13, var10.width, var10.height, var10.color, var10.color2, 255 - (var10.transparencyTop & 255), 255 - (var10.transparencyBot & 255)); // L: 9570 - break; // L: 9571 - default: - if (var14 == 0) { // L: 9566 - Rasterizer2D.Rasterizer2D_fillRectangle(var12, var13, var10.width, var10.height, var19); - } else { - Rasterizer2D.Rasterizer2D_fillRectangleAlpha(var12, var13, var10.width, var10.height, var19, 256 - (var14 & 255)); // L: 9567 - } - } - } else if (var14 == 0) { // L: 9578 - Rasterizer2D.Rasterizer2D_drawRectangle(var12, var13, var10.width, var10.height, var19); - } else { - Rasterizer2D.Rasterizer2D_drawRectangleAlpha(var12, var13, var10.width, var10.height, var19, 256 - (var14 & 255)); // L: 9579 - } - } else { - Font var39; - if (var10.type == 4) { // L: 9583 - var39 = var10.getFont(); // L: 9584 - if (var39 == null) { // L: 9585 - if (Widget.field2677) { // L: 9586 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var10); - } - } else { - String var44 = var10.text; // L: 9590 - if (BufferedNetSocket.runCs1(var10)) { // L: 9591 - var20 = var10.color2; // L: 9592 - if (var10 == GrandExchangeEvent.mousedOverWidgetIf1 && var10.mouseOverColor2 != 0) { // L: 9593 - var20 = var10.mouseOverColor2; - } - - if (var10.text2.length() > 0) { // L: 9594 - var44 = var10.text2; - } - } else { - var20 = var10.color; // L: 9597 - if (var10 == GrandExchangeEvent.mousedOverWidgetIf1 && var10.mouseOverColor != 0) { // L: 9598 - var20 = var10.mouseOverColor; - } - } - - if (var10.isIf3 && var10.itemId != -1) { // L: 9600 - ItemDefinition var45 = AbstractWorldMapData.ItemDefinition_get(var10.itemId); // L: 9601 - var44 = var45.name; // L: 9602 - if (var44 == null) { // L: 9603 - var44 = "null"; - } - - if ((var45.isStackable == 1 || var10.itemQuantity != 1) && var10.itemQuantity != -1) { // L: 9604 - var44 = Client.colorStartTag(16748608) + var44 + "" + " " + 'x' + InterfaceParent.formatItemStacks(var10.itemQuantity); - } - } - - if (var10 == Client.meslayerContinueWidget) { // L: 9606 - var44 = "Please wait..."; // L: 9607 - var20 = var10.color; // L: 9608 - } - - if (!var10.isIf3) { // L: 9610 - var44 = class2.method39(var44, var10); - } - - var39.drawLines(var44, var12, var13, var10.width, var10.height, var20, var10.textShadowed ? 0 : -1, var10.textXAlignment, var10.textYAlignment, var10.textLineHeight); // L: 9611 - } - } else if (var10.type == 5) { // L: 9614 - Sprite var40; - if (!var10.isIf3) { // L: 9615 - var40 = var10.getSprite(BufferedNetSocket.runCs1(var10)); // L: 9616 - if (var40 != null) { // L: 9617 - var40.drawTransBgAt(var12, var13); - } else if (Widget.field2677) { // L: 9618 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var10); - } - } else { - if (var10.itemId != -1) { // L: 9622 - var40 = TilePaint.getItemSprite(var10.itemId, var10.itemQuantity, var10.outline, var10.spriteShadow, var10.itemQuantityMode, false); - } else { - var40 = var10.getSprite(false); // L: 9623 - } - - if (var40 == null) { // L: 9624 - if (Widget.field2677) { // L: 9648 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var10); - } - } else { - var20 = var40.width; // L: 9625 - var21 = var40.height; // L: 9626 - if (!var10.spriteTiling) { // L: 9627 - var22 = var10.width * 4096 / var20; // L: 9641 - if (var10.spriteAngle != 0) { // L: 9642 - var40.method6299(var10.width / 2 + var12, var10.height / 2 + var13, var10.spriteAngle, var22); - } else if (var14 != 0) { // L: 9643 - var40.drawTransScaledAt(var12, var13, var10.width, var10.height, 256 - (var14 & 255)); - } else if (var20 == var10.width && var21 == var10.height) { // L: 9644 - var40.drawTransBgAt(var12, var13); // L: 9645 - } else { - var40.drawScaledAt(var12, var13, var10.width, var10.height); - } - } else { - Rasterizer2D.Rasterizer2D_expandClip(var12, var13, var12 + var10.width, var13 + var10.height); // L: 9628 - var22 = (var20 - 1 + var10.width) / var20; // L: 9629 - var23 = (var21 - 1 + var10.height) / var21; // L: 9630 - - for (var24 = 0; var24 < var22; ++var24) { // L: 9631 - for (var25 = 0; var25 < var23; ++var25) { // L: 9632 - if (var10.spriteAngle != 0) { // L: 9633 - var40.method6299(var20 / 2 + var12 + var20 * var24, var21 / 2 + var13 + var25 * var21, var10.spriteAngle, 4096); - } else if (var14 != 0) { // L: 9634 - var40.drawTransAt(var12 + var20 * var24, var13 + var25 * var21, 256 - (var14 & 255)); - } else { - var40.drawTransBgAt(var12 + var20 * var24, var13 + var21 * var25); // L: 9635 - } - } - } - - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); // L: 9638 - } - } - } - } else { - ItemDefinition var33; - if (var10.type == 6) { // L: 9652 - boolean var36 = BufferedNetSocket.runCs1(var10); // L: 9653 - if (var36) { // L: 9655 - var20 = var10.sequenceId2; - } else { - var20 = var10.sequenceId; // L: 9656 - } - - Model var41 = null; // L: 9657 - var22 = 0; // L: 9658 - if (var10.itemId != -1) { // L: 9659 - var33 = AbstractWorldMapData.ItemDefinition_get(var10.itemId); // L: 9660 - if (var33 != null) { // L: 9661 - var33 = var33.getCountObj(var10.itemQuantity); // L: 9662 - var41 = var33.getModel(1); // L: 9663 - if (var41 != null) { // L: 9664 - var41.calculateBoundsCylinder(); // L: 9665 - var22 = var41.height / 2; // L: 9666 - } else { - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var10); // L: 9668 - } - } - } else if (var10.modelType == 5) { // L: 9671 - if (var10.modelId == 0) { // L: 9672 - var41 = Client.playerAppearance.getModel((SequenceDefinition)null, -1, (SequenceDefinition)null, -1); - } else { - var41 = PlayerType.localPlayer.getModel(); // L: 9673 - } - } else if (var20 == -1) { // L: 9675 - var41 = var10.getModel((SequenceDefinition)null, -1, var36, PlayerType.localPlayer.appearance); // L: 9676 - if (var41 == null && Widget.field2677) { // L: 9677 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var10); - } - } else { - SequenceDefinition var47 = class105.SequenceDefinition_get(var20); // L: 9680 - var41 = var10.getModel(var47, var10.modelFrame, var36, PlayerType.localPlayer.appearance); // L: 9681 - if (var41 == null && Widget.field2677) { // L: 9682 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var10); - } - } - - Rasterizer3D.method3174(var10.width / 2 + var12, var10.height / 2 + var13); // L: 9684 - var23 = Rasterizer3D.Rasterizer3D_sine[var10.modelAngleX] * var10.modelZoom >> 16; // L: 9685 - var24 = Rasterizer3D.Rasterizer3D_cosine[var10.modelAngleX] * var10.modelZoom >> 16; // L: 9686 - if (var41 != null) { // L: 9687 - if (!var10.isIf3) { // L: 9688 - var41.method3064(0, var10.modelAngleY, 0, var10.modelAngleX, 0, var23, var24); - } else { - var41.calculateBoundsCylinder(); // L: 9690 - if (var10.modelOrthog) { // L: 9691 - var41.method3025(0, var10.modelAngleY, var10.modelAngleZ, var10.modelAngleX, var10.modelOffsetX, var22 + var23 + var10.modelOffsetY, var24 + var10.modelOffsetY, var10.modelZoom); - } else { - var41.method3064(0, var10.modelAngleY, var10.modelAngleZ, var10.modelAngleX, var10.modelOffsetX, var22 + var23 + var10.modelOffsetY, var24 + var10.modelOffsetY); // L: 9692 - } - } - } - - Rasterizer3D.Rasterizer3D_method3(); // L: 9695 - } else { - if (var10.type == 7) { // L: 9698 - var39 = var10.getFont(); // L: 9699 - if (var39 == null) { // L: 9700 - if (Widget.field2677) { // L: 9701 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var10); - } - continue; - } - - var20 = 0; // L: 9704 - - for (var21 = 0; var21 < var10.rawHeight; ++var21) { // L: 9705 - for (var22 = 0; var22 < var10.rawWidth; ++var22) { // L: 9706 - if (var10.itemIds[var20] > 0) { // L: 9707 - var33 = AbstractWorldMapData.ItemDefinition_get(var10.itemIds[var20] - 1); // L: 9708 - String var34; - if (var33.isStackable != 1 && var10.itemQuantities[var20] == 1) { // L: 9710 - var34 = Client.colorStartTag(16748608) + var33.name + ""; - } else { - var34 = Client.colorStartTag(16748608) + var33.name + "" + " " + 'x' + InterfaceParent.formatItemStacks(var10.itemQuantities[var20]); // L: 9711 - } - - var25 = var12 + var22 * (var10.paddingX + 115); // L: 9712 - var26 = var21 * (var10.paddingY + 12) + var13; // L: 9713 - if (var10.textXAlignment == 0) { // L: 9714 - var39.draw(var34, var25, var26, var10.color, var10.textShadowed ? 0 : -1); - } else if (var10.textXAlignment == 1) { // L: 9715 - var39.drawCentered(var34, var10.width / 2 + var25, var26, var10.color, var10.textShadowed ? 0 : -1); - } else { - var39.drawRightAligned(var34, var25 + var10.width - 1, var26, var10.color, var10.textShadowed ? 0 : -1); // L: 9716 - } - } - - ++var20; // L: 9718 - } - } - } - - if (var10.type == 8 && var10 == GrandExchangeOfferOwnWorldComparator.field677 && Client.field833 == Client.field832) { // L: 9722 9723 - var19 = 0; // L: 9724 - var20 = 0; // L: 9725 - Font var31 = WorldMapCacheName.fontPlain12; // L: 9726 - String var32 = var10.text; // L: 9727 - - String var43; - for (var32 = class2.method39(var32, var10); var32.length() > 0; var20 = var20 + var31.ascent + 1) { // L: 9729 9730 9742 - var24 = var32.indexOf("
"); // L: 9731 - if (var24 != -1) { // L: 9732 - var43 = var32.substring(0, var24); // L: 9733 - var32 = var32.substring(var24 + 4); // L: 9734 - } else { - var43 = var32; // L: 9737 - var32 = ""; // L: 9738 - } - - var25 = var31.stringWidth(var43); // L: 9740 - if (var25 > var19) { // L: 9741 - var19 = var25; - } - } - - var19 += 6; // L: 9744 - var20 += 7; // L: 9745 - var24 = var12 + var10.width - 5 - var19; // L: 9746 - var25 = var13 + var10.height + 5; // L: 9747 - if (var24 < var12 + 5) { // L: 9748 - var24 = var12 + 5; - } - - if (var24 + var19 > var4) { // L: 9749 - var24 = var4 - var19; - } - - if (var25 + var20 > var5) { // L: 9750 - var25 = var5 - var20; - } - - Rasterizer2D.Rasterizer2D_fillRectangle(var24, var25, var19, var20, 16777120); // L: 9751 - Rasterizer2D.Rasterizer2D_drawRectangle(var24, var25, var19, var20, 0); // L: 9752 - var32 = var10.text; // L: 9753 - var26 = var25 + var31.ascent + 2; // L: 9754 - - for (var32 = class2.method39(var32, var10); var32.length() > 0; var26 = var26 + var31.ascent + 1) { // L: 9755 9756 9767 - int var27 = var32.indexOf("
"); // L: 9757 - if (var27 != -1) { // L: 9758 - var43 = var32.substring(0, var27); // L: 9759 - var32 = var32.substring(var27 + 4); // L: 9760 - } else { - var43 = var32; // L: 9763 - var32 = ""; // L: 9764 - } - - var31.draw(var43, var24 + 3, var26, 0, -1); // L: 9766 - } - } - - if (var10.type == 9) { // L: 9771 - if (var10.field2627) { // L: 9776 - var19 = var12; // L: 9777 - var20 = var13 + var10.height; // L: 9778 - var21 = var12 + var10.width; // L: 9779 - var22 = var13; // L: 9780 - } else { - var19 = var12; // L: 9783 - var20 = var13; // L: 9784 - var21 = var12 + var10.width; // L: 9785 - var22 = var13 + var10.height; // L: 9786 - } - - if (var10.lineWid == 1) { // L: 9788 - Rasterizer2D.Rasterizer2D_drawLine(var19, var20, var21, var22, var10.color); // L: 9789 - } else { - class300.method5419(var19, var20, var21, var22, var10.color, var10.lineWid); // L: 9792 - } - } + if (class52.method844(FaceNormal.getWidgetFlags(var0))) { + for (int var11 = 4; var11 >= 3; --var11) { + if (var11 != var10) { + class7.addWidgetItemMenuItem(var0, var8, var15, var11, false); } } } + + int var12 = FaceNormal.getWidgetFlags(var0); + boolean var22 = (var12 >> 31 & 1) != 0; + if (var22) { + insertMenuItemNoShift("Use", class23.colorStartTag(16748608) + var8.name, 38, var8.id, var15, var0.id); + } + + Object var10000 = null; + int var13; + if (class52.method844(FaceNormal.getWidgetFlags(var0))) { + for (var13 = 2; var13 >= 0; --var13) { + if (var10 != var13) { + class7.addWidgetItemMenuItem(var0, var8, var15, var13, false); + } + } + + if (var10 >= 0) { + class7.addWidgetItemMenuItem(var0, var8, var15, var10, true); + } + } + + var9 = var0.itemActions; + if (var9 != null) { + for (var13 = 4; var13 >= 0; --var13) { + if (var9[var13] != null) { + byte var14 = 0; + if (var13 == 0) { + var14 = 39; + } + + if (var13 == 1) { + var14 = 40; + } + + if (var13 == 2) { + var14 = 41; + } + + if (var13 == 3) { + var14 = 42; + } + + if (var13 == 4) { + var14 = 43; + } + + insertMenuItemNoShift(var9[var13], class23.colorStartTag(16748608) + var8.name, var14, var8.id, var15, var0.id); + } + } + } + + insertMenuItemNoShift("Examine", class23.colorStartTag(16748608) + var8.name, 1005, var8.id, var15, var0.id); } } } + + ++var15; } } } - } // L: 9797 + if (var0.isIf3) { + if (Client.isSpellSelected) { + if (Decimator.method2598(FaceNormal.getWidgetFlags(var0)) && (Player.selectedSpellFlags & 32) == 32) { + insertMenuItemNoShift(Client.selectedSpellActionName, Client.selectedSpellName + " " + "->" + " " + var0.dataText, 58, 0, var0.childIndex, var0.id); + } + } else { + for (var15 = 9; var15 >= 5; --var15) { + var6 = FaceNormal.getWidgetFlags(var0); + boolean var20 = (var6 >> var15 + 1 & 1) != 0; + String var18; + if (!var20 && var0.onOp == null) { + var18 = null; + } else if (var0.actions != null && var0.actions.length > var15 && var0.actions[var15] != null && var0.actions[var15].trim().length() != 0) { + var18 = var0.actions[var15]; + } else { + var18 = null; + } + + if (var18 != null) { + insertMenuItemNoShift(var18, var0.dataText, 1007, var15 + 1, var0.childIndex, var0.id); + } + } + + var3 = StudioGame.Widget_getSpellActionName(var0); + if (var3 != null) { + insertMenuItemNoShift(var3, var0.dataText, 25, 0, var0.childIndex, var0.id); + } + + for (var4 = 4; var4 >= 0; --var4) { + var7 = FaceNormal.getWidgetFlags(var0); + boolean var21 = (var7 >> var4 + 1 & 1) != 0; + String var16; + if (!var21 && var0.onOp == null) { + var16 = null; + } else if (var0.actions != null && var0.actions.length > var4 && var0.actions[var4] != null && var0.actions[var4].trim().length() != 0) { + var16 = var0.actions[var4]; + } else { + var16 = null; + } + + if (var16 != null) { + WorldMapID.insertMenuItem(var16, var0.dataText, 57, var4 + 1, var0.childIndex, var0.id, var0.prioritizeMenuEntry); + } + } + + var5 = FaceNormal.getWidgetFlags(var0); + boolean var19 = (var5 & 1) != 0; + if (var19) { + insertMenuItemNoShift("Continue", "", 30, 0, var0.childIndex, var0.id); + } + } + } + + } + + @ObfuscatedName("lf") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-1135522977" + ) + static void method589(int var0) { + for (IntegerNode var1 = (IntegerNode)Client.widgetFlags.first(); var1 != null; var1 = (IntegerNode)Client.widgetFlags.next()) { + if ((var1.key >> 48 & 65535L) == (long)var0) { + var1.remove(); + } + } + + } } diff --git a/runescape-client/src/main/java/WorldMapScaleHandler.java b/runescape-client/src/main/java/WorldMapScaleHandler.java index 489549d5c1..dbf03d6491 100644 --- a/runescape-client/src/main/java/WorldMapScaleHandler.java +++ b/runescape-client/src/main/java/WorldMapScaleHandler.java @@ -4,642 +4,643 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("al") +@ObfuscatedName("ar") @Implements("WorldMapScaleHandler") public class WorldMapScaleHandler { - @ObfuscatedName("f") + @ObfuscatedName("p") + public static short[][] field366; + @ObfuscatedName("g") + public static String field365; + @ObfuscatedName("bm") + @ObfuscatedSignature( + descriptor = "Lgi;" + ) + @Export("clientLanguage") + static Language clientLanguage; + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 1152059267 + intValue = -1069332757 ) @Export("pixelsPerTile") int pixelsPerTile; - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("tileTemplates") byte[][][] tileTemplates; WorldMapScaleHandler(int var1) { - this.pixelsPerTile = var1; // L: 10 - } // L: 11 + this.pixelsPerTile = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(IIIIIIIIS)V", - garbageValue = "22724" + descriptor = "(IIIIIIIIB)V", + garbageValue = "15" ) - void method826(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { - if (var7 != 0 && this.pixelsPerTile != 0 && this.tileTemplates != null) { // L: 14 - var8 = this.method830(var8, var7); // L: 15 - var7 = this.method856(var7); // L: 16 - Rasterizer2D.Rasterizer2D_drawGradientPixels(var1, var2, var5, var6, var3, var4, this.tileTemplates[var7 - 1][var8], this.pixelsPerTile); // L: 17 + void method780(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { + if (var7 != 0 && this.pixelsPerTile != 0 && this.tileTemplates != null) { + var8 = this.method804(var8, var7); + var7 = this.method770(var7); + Rasterizer2D.Rasterizer2D_drawGradientPixels(var1, var2, var5, var6, var3, var4, this.tileTemplates[var7 - 1][var8], this.pixelsPerTile); } - } // L: 18 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(III)I", - garbageValue = "-1831249934" + garbageValue = "1815256421" ) - int method830(int var1, int var2) { - if (var2 == 9) { // L: 21 + int method804(int var1, int var2) { + if (var2 == 9) { var1 = var1 + 1 & 3; } - if (var2 == 10) { // L: 22 + if (var2 == 10) { var1 = var1 + 3 & 3; } if (var2 == 11) { - var1 = var1 + 3 & 3; // L: 23 + var1 = var1 + 3 & 3; } - return var1; // L: 24 + return var1; + } + + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "(IB)I", + garbageValue = "77" + ) + int method770(int var1) { + if (var1 != 9 && var1 != 10) { + return var1 == 11 ? 8 : var1; + } else { + return 1; + } + } + + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-717419640" + ) + @Export("init") + void init() { + if (this.tileTemplates == null) { + this.tileTemplates = new byte[8][4][]; + this.init0(); + this.init1(); + this.init2(); + this.init3(); + this.init4(); + this.init5(); + this.init6(); + this.init7(); + } + } + + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1025982121" + ) + @Export("init0") + void init0() { + byte[] var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + int var2 = 0; + + int var3; + int var4; + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 <= var3) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[0][0] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var2 = 0; + + for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 <= var3) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[0][1] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var2 = 0; + + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 >= var3) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[0][2] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var2 = 0; + + for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 >= var3) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[0][3] = var1; + } + + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-259199833" + ) + @Export("init1") + void init1() { + byte[] var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + int var2 = 0; + + int var3; + int var4; + for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 <= var3 >> 1) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[1][0] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var2 = 0; + + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var2 >= 0 && var2 < var1.length) { + if (var4 >= var3 << 1) { + var1[var2] = -1; + } + + ++var2; + } else { + ++var2; + } + } + } + + this.tileTemplates[1][1] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var2 = 0; + + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { + if (var4 <= var3 >> 1) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[1][2] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var2 = 0; + + for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { + for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { + if (var4 >= var3 << 1) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[1][3] = var1; + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1200992206" + ) + @Export("init2") + void init2() { + byte[] var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + int var2 = 0; + + int var3; + int var4; + for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { + for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { + if (var4 <= var3 >> 1) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[2][0] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var2 = 0; + + for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 >= var3 << 1) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[2][1] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var2 = 0; + + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 <= var3 >> 1) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[2][2] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var2 = 0; + + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { + if (var4 >= var3 << 1) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[2][3] = var1; + } + + @ObfuscatedName("p") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-482599020" + ) + @Export("init3") + void init3() { + byte[] var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + int var2 = 0; + + int var3; + int var4; + for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 >= var3 >> 1) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[3][0] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var2 = 0; + + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 <= var3 << 1) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[3][1] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var2 = 0; + + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { + if (var4 >= var3 >> 1) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[3][2] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var2 = 0; + + for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { + for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { + if (var4 <= var3 << 1) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[3][3] = var1; } @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "-688083607" - ) - int method856(int var1) { - if (var1 != 9 && var1 != 10) { // L: 28 - return var1 == 11 ? 8 : var1; // L: 29 - } else { - return 1; // L: 30 - } - } - - @ObfuscatedName("m") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1144178166" + garbageValue = "1069813935" ) - @Export("init") - void init() { - if (this.tileTemplates == null) { // L: 34 - this.tileTemplates = new byte[8][4][]; // L: 37 - this.init0(); // L: 38 - this.init1(); // L: 39 - this.init2(); // L: 40 - this.init3(); // L: 41 - this.init4(); // L: 42 - this.init5(); // L: 43 - this.init6(); // L: 44 - this.init7(); // L: 45 + @Export("init4") + void init4() { + byte[] var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + int var2 = 0; + + int var3; + int var4; + for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { + for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { + if (var4 >= var3 >> 1) { + var1[var2] = -1; + } + + ++var2; + } } - } // L: 35 46 + + this.tileTemplates[4][0] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var2 = 0; + + for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 <= var3 << 1) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[4][1] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var2 = 0; + + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 >= var3 >> 1) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[4][2] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var2 = 0; + + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { + if (var4 <= var3 << 1) { + var1[var2] = -1; + } + + ++var2; + } + } + + this.tileTemplates[4][3] = var1; + } @ObfuscatedName("z") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1214625649" + garbageValue = "2128445044" ) - @Export("init0") - void init0() { - byte[] var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 49 - int var2 = 0; // L: 50 + @Export("init5") + void init5() { + byte[] var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + boolean var2 = false; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + int var5 = 0; int var3; int var4; - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 51 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 52 - if (var4 <= var3) { // L: 53 - var1[var2] = -1; + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 <= this.pixelsPerTile / 2) { + var1[var5] = -1; } - ++var2; // L: 54 + ++var5; } } - this.tileTemplates[0][0] = var1; // L: 57 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 58 - var2 = 0; // L: 59 + this.tileTemplates[5][0] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var5 = 0; - for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { // L: 60 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 61 - if (var4 <= var3) { - var1[var2] = -1; // L: 62 + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var3 <= this.pixelsPerTile / 2) { + var1[var5] = -1; } - ++var2; // L: 63 + ++var5; } } - this.tileTemplates[0][1] = var1; // L: 66 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 67 - var2 = 0; // L: 68 + this.tileTemplates[5][1] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var5 = 0; - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 69 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 70 - if (var4 >= var3) { // L: 71 - var1[var2] = -1; + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 >= this.pixelsPerTile / 2) { + var1[var5] = -1; } - ++var2; // L: 72 + ++var5; } } - this.tileTemplates[0][2] = var1; // L: 75 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 76 - var2 = 0; // L: 77 + this.tileTemplates[5][2] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var5 = 0; - for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { // L: 78 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 79 - if (var4 >= var3) { // L: 80 - var1[var2] = -1; + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var3 >= this.pixelsPerTile / 2) { + var1[var5] = -1; } - ++var2; // L: 81 + ++var5; } } - this.tileTemplates[0][3] = var1; // L: 84 - } // L: 85 - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-111" - ) - @Export("init1") - void init1() { - byte[] var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 88 - int var2 = 0; // L: 89 - - int var3; - int var4; - for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { // L: 90 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 91 - if (var4 <= var3 >> 1) { // L: 92 - var1[var2] = -1; - } - - ++var2; // L: 93 - } - } - - this.tileTemplates[1][0] = var1; // L: 96 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 97 - var2 = 0; // L: 98 - - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 99 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 100 - if (var2 >= 0 && var2 < var1.length) { // L: 101 - if (var4 >= var3 << 1) { // L: 105 - var1[var2] = -1; - } - - ++var2; // L: 106 - } else { - ++var2; // L: 102 - } - } - } - - this.tileTemplates[1][1] = var1; // L: 109 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 110 - var2 = 0; // L: 111 - - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 112 - for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { // L: 113 - if (var4 <= var3 >> 1) { // L: 114 - var1[var2] = -1; - } - - ++var2; // L: 115 - } - } - - this.tileTemplates[1][2] = var1; // L: 118 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 119 - var2 = 0; // L: 120 - - for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { // L: 121 - for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { // L: 122 - if (var4 >= var3 << 1) { // L: 123 - var1[var2] = -1; - } - - ++var2; // L: 124 - } - } - - this.tileTemplates[1][3] = var1; // L: 127 - } // L: 128 - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "30" - ) - @Export("init2") - void init2() { - byte[] var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 131 - int var2 = 0; // L: 132 - - int var3; - int var4; - for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { // L: 133 - for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { // L: 134 - if (var4 <= var3 >> 1) { // L: 135 - var1[var2] = -1; - } - - ++var2; // L: 136 - } - } - - this.tileTemplates[2][0] = var1; // L: 139 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 140 - var2 = 0; // L: 141 - - for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { // L: 142 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 143 - if (var4 >= var3 << 1) { // L: 144 - var1[var2] = -1; - } - - ++var2; // L: 145 - } - } - - this.tileTemplates[2][1] = var1; // L: 148 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 149 - var2 = 0; // L: 150 - - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 151 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 152 - if (var4 <= var3 >> 1) { // L: 153 - var1[var2] = -1; - } - - ++var2; // L: 154 - } - } - - this.tileTemplates[2][2] = var1; // L: 157 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 158 - var2 = 0; // L: 159 - - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 160 - for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { // L: 161 - if (var4 >= var3 << 1) { // L: 162 - var1[var2] = -1; - } - - ++var2; // L: 163 - } - } - - this.tileTemplates[2][3] = var1; // L: 166 - } // L: 167 - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1097342155" - ) - @Export("init3") - void init3() { - byte[] var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 170 - int var2 = 0; // L: 171 - - int var3; - int var4; - for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { // L: 172 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 173 - if (var4 >= var3 >> 1) { // L: 174 - var1[var2] = -1; - } - - ++var2; // L: 175 - } - } - - this.tileTemplates[3][0] = var1; // L: 178 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 179 - var2 = 0; // L: 180 - - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 181 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 182 - if (var4 <= var3 << 1) { // L: 183 - var1[var2] = -1; - } - - ++var2; // L: 184 - } - } - - this.tileTemplates[3][1] = var1; // L: 187 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 188 - var2 = 0; // L: 189 - - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 190 - for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { // L: 191 - if (var4 >= var3 >> 1) { // L: 192 - var1[var2] = -1; - } - - ++var2; // L: 193 - } - } - - this.tileTemplates[3][2] = var1; // L: 196 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 197 - var2 = 0; // L: 198 - - for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { // L: 199 - for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { // L: 200 - if (var4 <= var3 << 1) { // L: 201 - var1[var2] = -1; - } - - ++var2; // L: 202 - } - } - - this.tileTemplates[3][3] = var1; // L: 205 - } // L: 206 + this.tileTemplates[5][3] = var1; + } @ObfuscatedName("u") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1974243838" + garbageValue = "-1547237879" ) - @Export("init4") - void init4() { - byte[] var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 209 - int var2 = 0; // L: 210 + @Export("init6") + void init6() { + byte[] var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + boolean var2 = false; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + int var5 = 0; int var3; int var4; - for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { // L: 211 - for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { // L: 212 - if (var4 >= var3 >> 1) { // L: 213 - var1[var2] = -1; - } - - ++var2; // L: 214 - } - } - - this.tileTemplates[4][0] = var1; // L: 217 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 218 - var2 = 0; // L: 219 - - for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { // L: 220 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 221 - if (var4 <= var3 << 1) { - var1[var2] = -1; // L: 222 - } - - ++var2; // L: 223 - } - } - - this.tileTemplates[4][1] = var1; // L: 226 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 227 - var2 = 0; // L: 228 - - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 229 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 230 - if (var4 >= var3 >> 1) { // L: 231 - var1[var2] = -1; - } - - ++var2; // L: 232 - } - } - - this.tileTemplates[4][2] = var1; // L: 235 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 236 - var2 = 0; // L: 237 - - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 238 - for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { // L: 239 - if (var4 <= var3 << 1) { // L: 240 - var1[var2] = -1; - } - - ++var2; // L: 241 - } - } - - this.tileTemplates[4][3] = var1; // L: 244 - } // L: 245 - - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "76" - ) - @Export("init5") - void init5() { - byte[] var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 248 - boolean var2 = false; // L: 249 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 250 - int var5 = 0; // L: 251 - - int var3; - int var4; - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 252 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 253 - if (var4 <= this.pixelsPerTile / 2) { // L: 254 + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 <= var3 - this.pixelsPerTile / 2) { var1[var5] = -1; } - ++var5; // L: 255 + ++var5; } } - this.tileTemplates[5][0] = var1; // L: 258 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 259 - var5 = 0; // L: 260 + this.tileTemplates[6][0] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var5 = 0; - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 261 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 262 - if (var3 <= this.pixelsPerTile / 2) { // L: 263 + for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 <= var3 - this.pixelsPerTile / 2) { var1[var5] = -1; } - ++var5; // L: 264 + ++var5; } } - this.tileTemplates[5][1] = var1; // L: 267 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 268 - var5 = 0; // L: 269 + this.tileTemplates[6][1] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var5 = 0; - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 270 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 271 - if (var4 >= this.pixelsPerTile / 2) { // L: 272 + for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { + for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { + if (var4 <= var3 - this.pixelsPerTile / 2) { var1[var5] = -1; } - ++var5; // L: 273 + ++var5; } } - this.tileTemplates[5][2] = var1; // L: 276 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 277 - var5 = 0; // L: 278 + this.tileTemplates[6][2] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var5 = 0; - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 279 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 280 - if (var3 >= this.pixelsPerTile / 2) { // L: 281 + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { + if (var4 <= var3 - this.pixelsPerTile / 2) { var1[var5] = -1; } - ++var5; // L: 282 + ++var5; } } - this.tileTemplates[5][3] = var1; // L: 285 - } // L: 286 + this.tileTemplates[6][3] = var1; + } @ObfuscatedName("e") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1292699212" - ) - @Export("init6") - void init6() { - byte[] var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 289 - boolean var2 = false; // L: 290 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 291 - int var5 = 0; // L: 292 - - int var3; - int var4; - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 293 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 294 - if (var4 <= var3 - this.pixelsPerTile / 2) { // L: 295 - var1[var5] = -1; - } - - ++var5; // L: 296 - } - } - - this.tileTemplates[6][0] = var1; // L: 299 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 300 - var5 = 0; // L: 301 - - for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { // L: 302 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 303 - if (var4 <= var3 - this.pixelsPerTile / 2) { // L: 304 - var1[var5] = -1; - } - - ++var5; // L: 305 - } - } - - this.tileTemplates[6][1] = var1; // L: 308 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 309 - var5 = 0; // L: 310 - - for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { // L: 311 - for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { // L: 312 - if (var4 <= var3 - this.pixelsPerTile / 2) { // L: 313 - var1[var5] = -1; - } - - ++var5; // L: 314 - } - } - - this.tileTemplates[6][2] = var1; // L: 317 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 318 - var5 = 0; // L: 319 - - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 320 - for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { // L: 321 - if (var4 <= var3 - this.pixelsPerTile / 2) { // L: 322 - var1[var5] = -1; - } - - ++var5; // L: 323 - } - } - - this.tileTemplates[6][3] = var1; // L: 326 - } // L: 327 - - @ObfuscatedName("o") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1073112729" + garbageValue = "-299127223" ) @Export("init7") void init7() { - byte[] var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 330 - boolean var2 = false; // L: 331 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 332 - int var5 = 0; // L: 333 + byte[] var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + boolean var2 = false; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + int var5 = 0; int var3; int var4; - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 334 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 335 - if (var4 >= var3 - this.pixelsPerTile / 2) { // L: 336 + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 >= var3 - this.pixelsPerTile / 2) { var1[var5] = -1; } - ++var5; // L: 337 + ++var5; } } - this.tileTemplates[7][0] = var1; // L: 340 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 341 - var5 = 0; // L: 342 + this.tileTemplates[7][0] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var5 = 0; - for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { // L: 343 - for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { // L: 344 - if (var4 >= var3 - this.pixelsPerTile / 2) { // L: 345 + for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { + for (var4 = 0; var4 < this.pixelsPerTile; ++var4) { + if (var4 >= var3 - this.pixelsPerTile / 2) { var1[var5] = -1; } - ++var5; // L: 346 + ++var5; } } - this.tileTemplates[7][1] = var1; // L: 349 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 350 - var5 = 0; // L: 351 + this.tileTemplates[7][1] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var5 = 0; - for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { // L: 352 - for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { // L: 353 - if (var4 >= var3 - this.pixelsPerTile / 2) { // L: 354 + for (var3 = this.pixelsPerTile - 1; var3 >= 0; --var3) { + for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { + if (var4 >= var3 - this.pixelsPerTile / 2) { var1[var5] = -1; } - ++var5; // L: 355 + ++var5; } } - this.tileTemplates[7][2] = var1; // L: 358 - var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; // L: 359 - var5 = 0; // L: 360 + this.tileTemplates[7][2] = var1; + var1 = new byte[this.pixelsPerTile * this.pixelsPerTile]; + var5 = 0; - for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { // L: 361 - for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { // L: 362 - if (var4 >= var3 - this.pixelsPerTile / 2) { // L: 363 + for (var3 = 0; var3 < this.pixelsPerTile; ++var3) { + for (var4 = this.pixelsPerTile - 1; var4 >= 0; --var4) { + if (var4 >= var3 - this.pixelsPerTile / 2) { var1[var5] = -1; } - ++var5; // L: 364 + ++var5; } } - this.tileTemplates[7][3] = var1; // L: 367 - } // L: 368 - - @ObfuscatedName("gy") - @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "1780999289" - ) - static final void method864(int var0, int var1, int var2, int var3) { - KeyHandler.method931(); // L: 5389 - } // L: 5390 + this.tileTemplates[7][3] = var1; + } } diff --git a/runescape-client/src/main/java/WorldMapSection.java b/runescape-client/src/main/java/WorldMapSection.java index caf5f84f10..819e9a68e4 100644 --- a/runescape-client/src/main/java/WorldMapSection.java +++ b/runescape-client/src/main/java/WorldMapSection.java @@ -3,53 +3,53 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("as") +@ObfuscatedName("al") @Implements("WorldMapSection") public interface WorldMapSection { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lak;I)V", - garbageValue = "-1645245778" + descriptor = "(Lav;S)V", + garbageValue = "19050" ) @Export("expandBounds") void expandBounds(WorldMapArea var1); - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IIIB)Z", - garbageValue = "51" + descriptor = "(IIII)Z", + garbageValue = "241939554" ) @Export("containsCoord") boolean containsCoord(int var1, int var2, int var3); - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "10" + descriptor = "(III)Z", + garbageValue = "639074408" ) @Export("containsPosition") boolean containsPosition(int var1, int var2); - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(IIIB)[I", - garbageValue = "-25" + descriptor = "(IIII)[I", + garbageValue = "1868308301" ) @Export("getBorderTileLengths") int[] getBorderTileLengths(int var1, int var2, int var3); - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(IIB)Lhw;", - garbageValue = "1" + descriptor = "(IIB)Lhs;", + garbageValue = "0" ) @Export("coord") Coord coord(int var1, int var2); - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-222098123" + descriptor = "(Lkj;B)V", + garbageValue = "125" ) @Export("read") void read(Buffer var1); diff --git a/runescape-client/src/main/java/WorldMapSection0.java b/runescape-client/src/main/java/WorldMapSection0.java index 41c8e4c235..27da4d8dc4 100644 --- a/runescape-client/src/main/java/WorldMapSection0.java +++ b/runescape-client/src/main/java/WorldMapSection0.java @@ -1,117 +1,109 @@ +import java.awt.image.BufferedImage; +import java.awt.image.PixelGrabber; +import java.io.ByteArrayInputStream; import java.io.IOException; +import javax.imageio.ImageIO; 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("ao") +@ObfuscatedName("ax") @Implements("WorldMapSection0") public class WorldMapSection0 implements WorldMapSection { - @ObfuscatedName("y") - @ObfuscatedSignature( - descriptor = "Lap;" - ) - @Export("worldMapEvent") - static WorldMapEvent worldMapEvent; - @ObfuscatedName("hb") - @ObfuscatedSignature( - descriptor = "[Lle;" - ) - @Export("scrollBarSprites") - static IndexedSprite[] scrollBarSprites; - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 1900849309 + intValue = -1775426037 ) @Export("oldZ") int oldZ; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -1837492707 + intValue = 1417422949 ) @Export("newZ") int newZ; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 1798651577 + intValue = 1514356361 ) @Export("oldX") int oldX; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 921187823 + intValue = 1086537607 ) @Export("oldY") int oldY; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -131099529 + intValue = -817500625 ) @Export("newX") int newX; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = 2025421843 + intValue = -2065957163 ) @Export("newY") int newY; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -1814738027 + intValue = 442203897 ) @Export("oldChunkXLow") int oldChunkXLow; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 1792733085 + intValue = -999047197 ) @Export("oldChunkYLow") int oldChunkYLow; - @ObfuscatedName("u") + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = -1592563299 + intValue = -755644285 ) @Export("oldChunkXHigh") int oldChunkXHigh; - @ObfuscatedName("t") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = -1478309445 + intValue = -692612685 ) @Export("oldChunkYHigh") int oldChunkYHigh; - @ObfuscatedName("e") + @ObfuscatedName("u") @ObfuscatedGetter( - intValue = 908411651 + intValue = 992317231 ) @Export("newChunkXLow") int newChunkXLow; - @ObfuscatedName("o") + @ObfuscatedName("e") @ObfuscatedGetter( - intValue = 1036645465 + intValue = 841901679 ) @Export("newChunkYLow") int newChunkYLow; - @ObfuscatedName("n") + @ObfuscatedName("m") @ObfuscatedGetter( - intValue = 1518275853 + intValue = -1830115023 ) @Export("newChunkXHigh") int newChunkXHigh; - @ObfuscatedName("x") + @ObfuscatedName("c") @ObfuscatedGetter( - intValue = -246372361 + intValue = 600167231 ) @Export("newChunkYHigh") int newChunkYHigh; WorldMapSection0() { - } // L: 22 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lak;I)V", - garbageValue = "-1645245778" + descriptor = "(Lav;S)V", + garbageValue = "19050" ) @Export("expandBounds") public void expandBounds(WorldMapArea var1) { @@ -133,190 +125,231 @@ public class WorldMapSection0 implements WorldMapSection { } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IIIB)Z", - garbageValue = "51" + descriptor = "(IIII)Z", + garbageValue = "241939554" ) @Export("containsCoord") public boolean containsCoord(int var1, int var2, int var3) { - if (var1 >= this.oldZ && var1 < this.oldZ + this.newZ) { + if (var1 >= this.oldZ && var1 < this.newZ + this.oldZ) { return var2 >= (this.oldX << 6) + (this.oldChunkXLow << 3) && var2 <= (this.oldX << 6) + (this.oldChunkXHigh << 3) + 7 && var3 >= (this.oldY << 6) + (this.oldChunkYLow << 3) && var3 <= (this.oldY << 6) + (this.oldChunkYHigh << 3) + 7; } else { return false; } } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "10" + descriptor = "(III)Z", + garbageValue = "639074408" ) @Export("containsPosition") public boolean containsPosition(int var1, int var2) { - return var1 >= (this.newX << 6) + (this.newChunkXLow << 3) && var1 <= (this.newX << 6) + (this.newChunkXHigh << 3) + 7 && var2 >= (this.newY << 6) + (this.newChunkYLow << 3) && var2 <= (this.newY << 6) + (this.newChunkYHigh << 3) + 7; // L: 39 + return var1 >= (this.newX << 6) + (this.newChunkXLow << 3) && var1 <= (this.newX << 6) + (this.newChunkXHigh << 3) + 7 && var2 >= (this.newY << 6) + (this.newChunkYLow << 3) && var2 <= (this.newY << 6) + (this.newChunkYHigh << 3) + 7; } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(IIIB)[I", - garbageValue = "-25" + descriptor = "(IIII)[I", + garbageValue = "1868308301" ) @Export("getBorderTileLengths") public int[] getBorderTileLengths(int var1, int var2, int var3) { - if (!this.containsCoord(var1, var2, var3)) { // L: 43 - return null; // L: 44 + if (!this.containsCoord(var1, var2, var3)) { + return null; } else { - int[] var4 = new int[]{var2 + (this.newX * 64 - this.oldX * 64) + (this.newChunkXLow * 8 - this.oldChunkXLow * 8), var3 + (this.newY * 64 - this.oldY * 64) + (this.newChunkYLow * 8 - this.oldChunkYLow * 8)}; // L: 46 47 48 - return var4; // L: 49 + int[] var4 = new int[]{this.newX * 64 - this.oldX * 64 + var2 + (this.newChunkXLow * 8 - this.oldChunkXLow * 8), var3 + (this.newY * 64 - this.oldY * 64) + (this.newChunkYLow * 8 - this.oldChunkYLow * 8)}; + return var4; } } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(IIB)Lhw;", - garbageValue = "1" + descriptor = "(IIB)Lhs;", + garbageValue = "0" ) @Export("coord") public Coord coord(int var1, int var2) { - if (!this.containsPosition(var1, var2)) { // L: 53 - return null; // L: 54 + if (!this.containsPosition(var1, var2)) { + return null; } else { - int var3 = this.oldX * 64 - this.newX * 64 + (this.oldChunkXLow * 8 - this.newChunkXLow * 8) + var1; // L: 56 - int var4 = var2 + (this.oldY * 64 - this.newY * 64) + (this.oldChunkYLow * 8 - this.newChunkYLow * 8); // L: 57 - return new Coord(this.oldZ, var3, var4); // L: 58 + int var3 = this.oldX * 64 - this.newX * 64 + (this.oldChunkXLow * 8 - this.newChunkXLow * 8) + var1; + int var4 = this.oldY * 64 - this.newY * 64 + var2 + (this.oldChunkYLow * 8 - this.newChunkYLow * 8); + return new Coord(this.oldZ, var3, var4); } } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-222098123" + descriptor = "(Lkj;B)V", + garbageValue = "125" ) @Export("read") public void read(Buffer var1) { - this.oldZ = var1.readUnsignedByte(); // L: 62 - this.newZ = var1.readUnsignedByte(); // L: 63 - this.oldX = var1.readUnsignedShort(); // L: 64 - this.oldChunkXLow = var1.readUnsignedByte(); // L: 65 - this.oldChunkXHigh = var1.readUnsignedByte(); // L: 66 - this.oldY = var1.readUnsignedShort(); // L: 67 - this.oldChunkYLow = var1.readUnsignedByte(); // L: 68 - this.oldChunkYHigh = var1.readUnsignedByte(); // L: 69 - this.newX = var1.readUnsignedShort(); // L: 70 - this.newChunkXLow = var1.readUnsignedByte(); // L: 71 - this.newChunkXHigh = var1.readUnsignedByte(); // L: 72 - this.newY = var1.readUnsignedShort(); // L: 73 - this.newChunkYLow = var1.readUnsignedByte(); // L: 74 - this.newChunkYHigh = var1.readUnsignedByte(); // L: 75 - this.postRead(); // L: 76 - } // L: 77 + this.oldZ = var1.readUnsignedByte(); + this.newZ = var1.readUnsignedByte(); + this.oldX = var1.readUnsignedShort(); + this.oldChunkXLow = var1.readUnsignedByte(); + this.oldChunkXHigh = var1.readUnsignedByte(); + this.oldY = var1.readUnsignedShort(); + this.oldChunkYLow = var1.readUnsignedByte(); + this.oldChunkYHigh = var1.readUnsignedByte(); + this.newX = var1.readUnsignedShort(); + this.newChunkXLow = var1.readUnsignedByte(); + this.newChunkXHigh = var1.readUnsignedByte(); + this.newY = var1.readUnsignedShort(); + this.newChunkYLow = var1.readUnsignedByte(); + this.newChunkYHigh = var1.readUnsignedByte(); + this.postRead(); + } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-2087257379" + garbageValue = "-2143649574" ) @Export("postRead") void postRead() { - } // L: 79 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(II)Lco;", - garbageValue = "717728742" - ) - @Export("getScript") - static Script getScript(int var0) { - Script var1 = (Script)Script.Script_cached.get((long)var0); // L: 25 - if (var1 != null) { // L: 26 - return var1; - } else { - byte[] var2 = ViewportMouse.archive12.takeFile(var0, 0); // L: 27 - if (var2 == null) { // L: 28 - return null; // L: 29 - } else { - var1 = ClientPacket.newScript(var2); // L: 31 - Script.Script_cached.put(var1, (long)var0); // L: 32 - return var1; - } - } } - @ObfuscatedName("b") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lll;ILjava/lang/String;B)Ljava/lang/String;", - garbageValue = "-111" + descriptor = "([BI)Llm;", + garbageValue = "1856556337" ) - static String method307(IterableNodeHashTable var0, int var1, String var2) { - if (var0 == null) { // L: 33 - return var2; - } else { - ObjectNode var3 = (ObjectNode)var0.get((long)var1); // L: 34 - return var3 == null ? var2 : (String)var3.obj; // L: 35 36 + @Export("convertJpgToSprite") + public static final Sprite convertJpgToSprite(byte[] var0) { + BufferedImage var1 = null; + + try { + var1 = ImageIO.read(new ByteArrayInputStream(var0)); + int var2 = var1.getWidth(); + int var3 = var1.getHeight(); + int[] var4 = new int[var2 * var3]; + PixelGrabber var5 = new PixelGrabber(var1, 0, 0, var2, var3, var4, 0, var2); + var5.grabPixels(); + return new Sprite(var4, var2, var3); + } catch (IOException var7) { + } catch (InterruptedException var8) { } + + return new Sprite(0, 0); } - @ObfuscatedName("b") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "1132603315" + descriptor = "(Lky;II)Z", + garbageValue = "92498700" ) - public static void method323(boolean var0) { - if (NetCache.NetCache_socket != null) { // L: 193 - try { - Buffer var1 = new Buffer(4); // L: 195 - var1.writeByte(var0 ? 2 : 3); // L: 196 - var1.writeMedium(0); // L: 197 - NetCache.NetCache_socket.write(var1.array, 0, 4); // L: 198 - } catch (IOException var4) { - try { - NetCache.NetCache_socket.close(); // L: 202 - } catch (Exception var3) { // L: 204 - } - - ++NetCache.NetCache_ioExceptions; // L: 205 - NetCache.NetCache_socket = null; // L: 206 + @Export("updateExternalPlayer") + static boolean updateExternalPlayer(PacketBuffer var0, int var1) { + int var2 = var0.readBits(2); + int var3; + int var4; + int var7; + int var8; + int var9; + int var10; + if (var2 == 0) { + if (var0.readBits(1) != 0) { + updateExternalPlayer(var0, var1); } - } - } // L: 208 - - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)Ljava/lang/String;", - garbageValue = "3" - ) - public static String method328(String var0) { - int var1 = var0.length(); // L: 155 - char[] var2 = new char[var1]; // L: 156 - byte var3 = 2; // L: 157 - - for (int var4 = 0; var4 < var1; ++var4) { // L: 158 - char var5 = var0.charAt(var4); // L: 159 - if (var3 == 0) { // L: 160 - var5 = Character.toLowerCase(var5); - } else if (var3 == 2 || Character.isUpperCase(var5)) { // L: 161 - var5 = WorldMapSection2.method426(var5); + var3 = var0.readBits(13); + var4 = var0.readBits(13); + boolean var12 = var0.readBits(1) == 1; + if (var12) { + Players.Players_pendingUpdateIndices[++Players.Players_pendingUpdateCount - 1] = var1; } - if (Character.isLetter(var5)) { // L: 162 - var3 = 0; - } else if (var5 != '.' && var5 != '?' && var5 != '!') { // L: 163 - if (Character.isSpaceChar(var5)) { // L: 164 - if (var3 != 2) { // L: 165 - var3 = 1; - } - } else { - var3 = 1; // L: 167 - } + if (Client.players[var1] != null) { + throw new RuntimeException(); } else { - var3 = 2; + Player var11 = Client.players[var1] = new Player(); + var11.index = var1; + if (Players.field1254[var1] != null) { + var11.read(Players.field1254[var1]); + } + + var11.orientation = Players.Players_orientations[var1]; + var11.targetIndex = Players.Players_targetIndices[var1]; + var7 = Players.Players_regions[var1]; + var8 = var7 >> 28; + var9 = var7 >> 14 & 255; + var10 = var7 & 255; + var11.pathTraversed[0] = Players.field1253[var1]; + var11.plane = (byte)var8; + var11.resetPath((var9 << 13) + var3 - NetFileRequest.baseX * 64, (var10 << 13) + var4 - class41.baseY * 64); + var11.field631 = false; + return true; } + } else if (var2 == 1) { + var3 = var0.readBits(2); + var4 = Players.Players_regions[var1]; + Players.Players_regions[var1] = (var4 & 268435455) + (((var4 >> 28) + var3 & 3) << 28); + return false; + } else { + int var5; + int var6; + if (var2 == 2) { + var3 = var0.readBits(5); + var4 = var3 >> 3; + var5 = var3 & 7; + var6 = Players.Players_regions[var1]; + var7 = (var6 >> 28) + var4 & 3; + var8 = var6 >> 14 & 255; + var9 = var6 & 255; + if (var5 == 0) { + --var8; + --var9; + } - var2[var4] = var5; // L: 168 + if (var5 == 1) { + --var9; + } + + if (var5 == 2) { + ++var8; + --var9; + } + + if (var5 == 3) { + --var8; + } + + if (var5 == 4) { + ++var8; + } + + if (var5 == 5) { + --var8; + ++var9; + } + + if (var5 == 6) { + ++var9; + } + + if (var5 == 7) { + ++var8; + ++var9; + } + + Players.Players_regions[var1] = (var8 << 14) + var9 + (var7 << 28); + return false; + } else { + var3 = var0.readBits(18); + var4 = var3 >> 16; + var5 = var3 >> 8 & 255; + var6 = var3 & 255; + var7 = Players.Players_regions[var1]; + var8 = (var7 >> 28) + var4 & 3; + var9 = var5 + (var7 >> 14) & 255; + var10 = var7 + var6 & 255; + Players.Players_regions[var1] = (var9 << 14) + var10 + (var8 << 28); + return false; + } } - - return new String(var2); // L: 170 } } diff --git a/runescape-client/src/main/java/WorldMapSection1.java b/runescape-client/src/main/java/WorldMapSection1.java index 353ca615a7..3b56d8a7bc 100644 --- a/runescape-client/src/main/java/WorldMapSection1.java +++ b/runescape-client/src/main/java/WorldMapSection1.java @@ -4,175 +4,254 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("an") +@ObfuscatedName("aw") @Implements("WorldMapSection1") public class WorldMapSection1 implements WorldMapSection { - @ObfuscatedName("f") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = 1213941935 + intValue = -2133335865 + ) + @Export("pcmSampleLength") + static int pcmSampleLength; + @ObfuscatedName("at") + @ObfuscatedGetter( + intValue = 2029810381 + ) + static int field313; + @ObfuscatedName("bd") + static String field317; + @ObfuscatedName("lm") + @ObfuscatedSignature( + descriptor = "Lcq;" + ) + @Export("tempMenuAction") + static MenuAction tempMenuAction; + @ObfuscatedName("h") + @ObfuscatedGetter( + intValue = 1765160595 ) @Export("minPlane") int minPlane; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 1306866299 + intValue = 526004841 ) @Export("planes") int planes; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 1337019749 + intValue = 1672936937 ) @Export("regionStartX") int regionStartX; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 741739179 + intValue = -73066687 ) @Export("regionStartY") int regionStartY; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -1313402053 + intValue = 1072528651 ) @Export("regionEndX") int regionEndX; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -1227163429 + intValue = 1416924829 ) @Export("regionEndY") int regionEndY; WorldMapSection1() { - } // L: 14 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lak;I)V", - garbageValue = "-1645245778" + descriptor = "(Lav;S)V", + garbageValue = "19050" ) @Export("expandBounds") public void expandBounds(WorldMapArea var1) { - if (var1.regionLowX > this.regionEndX) { // L: 17 + if (var1.regionLowX > this.regionEndX) { var1.regionLowX = this.regionEndX; } if (var1.regionHighX < this.regionEndX) { - var1.regionHighX = this.regionEndX; // L: 18 + var1.regionHighX = this.regionEndX; } - if (var1.regionLowY > this.regionEndY) { // L: 19 + if (var1.regionLowY > this.regionEndY) { var1.regionLowY = this.regionEndY; } - if (var1.regionHighY < this.regionEndY) { // L: 20 + if (var1.regionHighY < this.regionEndY) { var1.regionHighY = this.regionEndY; } } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IIIB)Z", - garbageValue = "51" + descriptor = "(IIII)Z", + garbageValue = "241939554" ) @Export("containsCoord") public boolean containsCoord(int var1, int var2, int var3) { if (var1 >= this.minPlane && var1 < this.planes + this.minPlane) { - return var2 >> 6 == this.regionStartX && var3 >> 6 == this.regionStartY; // L: 27 + return var2 >> 6 == this.regionStartX && var3 >> 6 == this.regionStartY; } else { - return false; // L: 25 + return false; } } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "10" + descriptor = "(III)Z", + garbageValue = "639074408" ) @Export("containsPosition") public boolean containsPosition(int var1, int var2) { - return var1 >> 6 == this.regionEndX && var2 >> 6 == this.regionEndY; // L: 31 + return var1 >> 6 == this.regionEndX && var2 >> 6 == this.regionEndY; } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(IIIB)[I", - garbageValue = "-25" + descriptor = "(IIII)[I", + garbageValue = "1868308301" ) @Export("getBorderTileLengths") public int[] getBorderTileLengths(int var1, int var2, int var3) { - if (!this.containsCoord(var1, var2, var3)) { // L: 35 - return null; // L: 36 + if (!this.containsCoord(var1, var2, var3)) { + return null; } else { - int[] var4 = new int[]{var2 + (this.regionEndX * 64 - this.regionStartX * 64), var3 + (this.regionEndY * 64 - this.regionStartY * 64)}; // L: 38 39 40 - return var4; // L: 41 + int[] var4 = new int[]{this.regionEndX * 64 - this.regionStartX * 64 + var2, var3 + (this.regionEndY * 64 - this.regionStartY * 64)}; + return var4; } } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(IIB)Lhw;", - garbageValue = "1" + descriptor = "(IIB)Lhs;", + garbageValue = "0" ) @Export("coord") public Coord coord(int var1, int var2) { - if (!this.containsPosition(var1, var2)) { // L: 45 - return null; // L: 46 + if (!this.containsPosition(var1, var2)) { + return null; } else { - int var3 = this.regionStartX * 64 - this.regionEndX * 64 + var1; // L: 48 - int var4 = var2 + (this.regionStartY * 64 - this.regionEndY * 64); // L: 49 - return new Coord(this.minPlane, var3, var4); // L: 50 + int var3 = this.regionStartX * 64 - this.regionEndX * 64 + var1; + int var4 = this.regionStartY * 64 - this.regionEndY * 64 + var2; + return new Coord(this.minPlane, var3, var4); } } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-222098123" + descriptor = "(Lkj;B)V", + garbageValue = "125" ) @Export("read") public void read(Buffer var1) { - this.minPlane = var1.readUnsignedByte(); // L: 54 - this.planes = var1.readUnsignedByte(); // L: 55 - this.regionStartX = var1.readUnsignedShort(); // L: 56 - this.regionStartY = var1.readUnsignedShort(); // L: 57 - this.regionEndX = var1.readUnsignedShort(); // L: 58 - this.regionEndY = var1.readUnsignedShort(); // L: 59 - this.postRead(); // L: 60 - } // L: 61 + this.minPlane = var1.readUnsignedByte(); + this.planes = var1.readUnsignedByte(); + this.regionStartX = var1.readUnsignedShort(); + this.regionStartY = var1.readUnsignedShort(); + this.regionEndX = var1.readUnsignedShort(); + this.regionEndY = var1.readUnsignedShort(); + this.postRead(); + } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-72" + descriptor = "(I)V", + garbageValue = "-154945566" ) @Export("postRead") void postRead() { - } // L: 63 - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "2108026740" - ) - @Export("ItemContainer_getCount") - static int ItemContainer_getCount(int var0, int var1) { - ItemContainer var2 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); // L: 21 - if (var2 == null) { // L: 22 - return 0; - } else { - return var1 >= 0 && var1 < var2.quantities.length ? var2.quantities[var1] : 0; // L: 23 24 - } } - @ObfuscatedName("gw") + @ObfuscatedName("fi") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-692815675" + descriptor = "(II)V", + garbageValue = "-1319638735" ) - static boolean method681() { - return (Client.drawPlayerNames & 4) != 0; // L: 4914 + @Export("forceDisconnect") + static final void forceDisconnect(int var0) { + WorldMapRectangle.logOut(); + switch(var0) { + case 1: + Login.loginIndex = 24; + GameShell.setLoginResponseString("", "You were disconnected from the server.", ""); + break; + case 2: + Messages.method2285(); + } + + } + + @ObfuscatedName("ie") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "-546925347" + ) + static boolean method624(int var0) { + return var0 == 57 || var0 == 58 || var0 == 1007 || var0 == 25 || var0 == 30; + } + + @ObfuscatedName("kp") + static final void method626(double var0) { + Rasterizer3D.Rasterizer3D_setBrightness(var0); + ((TextureProvider)Rasterizer3D.Rasterizer3D_textureLoader).setBrightness(var0); + ItemDefinition.ItemDefinition_cachedSprites.clear(); + Timer.clientPreferences.field1057 = var0; + GrandExchangeOffer.savePreferences(); + } + + @ObfuscatedName("lz") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;ZB)V", + garbageValue = "71" + ) + @Export("findItemDefinitions") + static void findItemDefinitions(String var0, boolean var1) { + var0 = var0.toLowerCase(); + short[] var2 = new short[16]; + int var3 = 0; + + for (int var4 = 0; var4 < Varcs.ItemDefinition_fileCount; ++var4) { + ItemDefinition var9 = SecureRandomCallable.ItemDefinition_get(var4); + if ((!var1 || var9.isTradable) && var9.noteTemplate == -1 && var9.name.toLowerCase().indexOf(var0) != -1) { + if (var3 >= 250) { + PacketBufferNode.foundItemIdCount = -1; + UrlRequest.foundItemIds = null; + return; + } + + if (var3 >= var2.length) { + short[] var6 = new short[var2.length * 2]; + + for (int var7 = 0; var7 < var3; ++var7) { + var6[var7] = var2[var7]; + } + + var2 = var6; + } + + var2[var3++] = (short)var4; + } + } + + UrlRequest.foundItemIds = var2; + NetCache.foundItemIndex = 0; + PacketBufferNode.foundItemIdCount = var3; + String[] var8 = new String[PacketBufferNode.foundItemIdCount]; + + for (int var5 = 0; var5 < PacketBufferNode.foundItemIdCount; ++var5) { + var8[var5] = SecureRandomCallable.ItemDefinition_get(var2[var5]).name; + } + + short[] var10 = UrlRequest.foundItemIds; + class89.sortItemsByName(var8, var10, 0, var8.length - 1); } } diff --git a/runescape-client/src/main/java/WorldMapSection2.java b/runescape-client/src/main/java/WorldMapSection2.java index b85f69e1f9..ceba3fd352 100644 --- a/runescape-client/src/main/java/WorldMapSection2.java +++ b/runescape-client/src/main/java/WorldMapSection2.java @@ -1,220 +1,212 @@ -import java.lang.management.GarbageCollectorMXBean; +import java.io.IOException; 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("ah") +@ObfuscatedName("ac") @Implements("WorldMapSection2") public class WorldMapSection2 implements WorldMapSection { - @ObfuscatedName("rv") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = 1167994355 - ) - static int field225; - @ObfuscatedName("as") - @Export("garbageCollector") - static GarbageCollectorMXBean garbageCollector; - @ObfuscatedName("f") - @ObfuscatedGetter( - intValue = -432633541 + intValue = -1820791637 ) @Export("minPlane") int minPlane; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = -1968130081 + intValue = -565326093 ) @Export("planes") int planes; - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -741529837 + intValue = 2013680833 ) @Export("regionStartX") int regionStartX; - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 1317553213 + intValue = -1086976489 ) @Export("regionStartY") int regionStartY; - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -1484434025 + intValue = -793324497 ) @Export("regionEndX") int regionEndX; - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = 2055867539 + intValue = 948306725 ) @Export("regionEndY") int regionEndY; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = -38953615 + intValue = -903229511 ) - int field222; - @ObfuscatedName("c") + int field209; + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 458609745 + intValue = 92163463 ) - int field223; - @ObfuscatedName("u") + int field213; + @ObfuscatedName("l") @ObfuscatedGetter( - intValue = 562473149 + intValue = 1623221685 ) - int field224; - @ObfuscatedName("t") + int field216; + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = -2130603605 + intValue = 2079890503 ) - int field226; + int field218; WorldMapSection2() { - } // L: 18 + } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lak;I)V", - garbageValue = "-1645245778" + descriptor = "(Lav;S)V", + garbageValue = "19050" ) @Export("expandBounds") public void expandBounds(WorldMapArea var1) { - if (var1.regionLowX > this.field222) { // L: 21 - var1.regionLowX = this.field222; + if (var1.regionLowX > this.field209) { + var1.regionLowX = this.field209; } - if (var1.regionHighX < this.field224) { - var1.regionHighX = this.field224; // L: 22 + if (var1.regionHighX < this.field216) { + var1.regionHighX = this.field216; } - if (var1.regionLowY > this.field223) { // L: 23 - var1.regionLowY = this.field223; + if (var1.regionLowY > this.field213) { + var1.regionLowY = this.field213; } - if (var1.regionHighY < this.field226) { // L: 24 - var1.regionHighY = this.field226; + if (var1.regionHighY < this.field218) { + var1.regionHighY = this.field218; } - } // L: 25 + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(IIIB)Z", - garbageValue = "51" + descriptor = "(IIII)Z", + garbageValue = "241939554" ) @Export("containsCoord") public boolean containsCoord(int var1, int var2, int var3) { - if (var1 >= this.minPlane && var1 < this.minPlane + this.planes) { // L: 28 - return var2 >> 6 >= this.regionStartX && var2 >> 6 <= this.regionEndX && var3 >> 6 >= this.regionStartY && var3 >> 6 <= this.regionEndY; // L: 31 + if (var1 >= this.minPlane && var1 < this.planes + this.minPlane) { + return var2 >> 6 >= this.regionStartX && var2 >> 6 <= this.regionEndX && var3 >> 6 >= this.regionStartY && var3 >> 6 <= this.regionEndY; } else { - return false; // L: 29 + return false; } } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "10" + descriptor = "(III)Z", + garbageValue = "639074408" ) @Export("containsPosition") public boolean containsPosition(int var1, int var2) { - return var1 >> 6 >= this.field222 && var1 >> 6 <= this.field224 && var2 >> 6 >= this.field223 && var2 >> 6 <= this.field226; // L: 35 + return var1 >> 6 >= this.field209 && var1 >> 6 <= this.field216 && var2 >> 6 >= this.field213 && var2 >> 6 <= this.field218; } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(IIIB)[I", - garbageValue = "-25" + descriptor = "(IIII)[I", + garbageValue = "1868308301" ) @Export("getBorderTileLengths") public int[] getBorderTileLengths(int var1, int var2, int var3) { - if (!this.containsCoord(var1, var2, var3)) { // L: 39 - return null; // L: 40 + if (!this.containsCoord(var1, var2, var3)) { + return null; } else { - int[] var4 = new int[]{var2 + (this.field222 * 64 - this.regionStartX * 64), var3 + (this.field223 * 64 - this.regionStartY * 64)}; // L: 42 43 44 - return var4; // L: 45 + int[] var4 = new int[]{this.field209 * 64 - this.regionStartX * 64 + var2, var3 + (this.field213 * 64 - this.regionStartY * 64)}; + return var4; } } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(IIB)Lhw;", - garbageValue = "1" + descriptor = "(IIB)Lhs;", + garbageValue = "0" ) @Export("coord") public Coord coord(int var1, int var2) { - if (!this.containsPosition(var1, var2)) { // L: 49 - return null; // L: 50 + if (!this.containsPosition(var1, var2)) { + return null; } else { - int var3 = this.regionStartX * 64 - this.field222 * 64 + var1; // L: 52 - int var4 = var2 + (this.regionStartY * 64 - this.field223 * 64); // L: 53 - return new Coord(this.minPlane, var3, var4); // L: 54 + int var3 = this.regionStartX * 64 - this.field209 * 64 + var1; + int var4 = this.regionStartY * 64 - this.field213 * 64 + var2; + return new Coord(this.minPlane, var3, var4); } } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-222098123" + descriptor = "(Lkj;B)V", + garbageValue = "125" ) @Export("read") public void read(Buffer var1) { - this.minPlane = var1.readUnsignedByte(); // L: 58 - this.planes = var1.readUnsignedByte(); // L: 59 - this.regionStartX = var1.readUnsignedShort(); // L: 60 - this.regionStartY = var1.readUnsignedShort(); // L: 61 - this.regionEndX = var1.readUnsignedShort(); // L: 62 + this.minPlane = var1.readUnsignedByte(); + this.planes = var1.readUnsignedByte(); + this.regionStartX = var1.readUnsignedShort(); + this.regionStartY = var1.readUnsignedShort(); + this.regionEndX = var1.readUnsignedShort(); this.regionEndY = var1.readUnsignedShort(); - this.field222 = var1.readUnsignedShort(); - this.field223 = var1.readUnsignedShort(); // L: 65 - this.field224 = var1.readUnsignedShort(); // L: 66 - this.field226 = var1.readUnsignedShort(); // L: 67 - this.postRead(); // L: 68 - } // L: 69 + this.field209 = var1.readUnsignedShort(); + this.field213 = var1.readUnsignedShort(); + this.field216 = var1.readUnsignedShort(); + this.field218 = var1.readUnsignedShort(); + this.postRead(); + } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "335411255" + descriptor = "(B)V", + garbageValue = "-44" ) @Export("postRead") void postRead() { - } // L: 71 - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(CB)C", - garbageValue = "0" - ) - static char method426(char var0) { - return var0 != 181 && var0 != 402 ? Character.toTitleCase(var0) : var0; // L: 63 64 } - @ObfuscatedName("e") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "166784628" + descriptor = "(II)Z", + garbageValue = "-695771514" ) - static final boolean method425() { - return ViewportMouse.ViewportMouse_isInViewport; // L: 87 + public static boolean method378(int var0) { + return (var0 >> 28 & 1) != 0; } - @ObfuscatedName("hp") + @ObfuscatedName("hf") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-26" + descriptor = "(ZI)V", + garbageValue = "240691072" ) - @Export("addCancelMenuEntry") - static void addCancelMenuEntry() { - AbstractWorldMapData.method375(); // L: 7734 - Client.menuActions[0] = "Cancel"; // L: 7735 - Client.menuTargets[0] = ""; // L: 7736 - Client.menuOpcodes[0] = 1006; // L: 7737 - Client.menuShiftClick[0] = false; // L: 7738 - Client.menuOptionsCount = 1; // L: 7739 - } // L: 7740 + static final void method377(boolean var0) { + FontName.playPcmPlayers(); + ++Client.packetWriter.pendingWrites; + if (Client.packetWriter.pendingWrites >= 50 || var0) { + Client.packetWriter.pendingWrites = 0; + if (!Client.field696 && Client.packetWriter.getSocket() != null) { + PacketBufferNode var1 = ItemContainer.getPacketBufferNode(ClientPacket.field2322, Client.packetWriter.isaacCipher); + Client.packetWriter.addNode(var1); + + try { + Client.packetWriter.flush(); + } catch (IOException var3) { + Client.field696 = true; + } + } + + } + } } diff --git a/runescape-client/src/main/java/WorldMapSection3.java b/runescape-client/src/main/java/WorldMapSection3.java deleted file mode 100644 index ca82f726ee..0000000000 --- a/runescape-client/src/main/java/WorldMapSection3.java +++ /dev/null @@ -1,204 +0,0 @@ -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("ad") -@Implements("WorldMapSection3") -public class WorldMapSection3 implements WorldMapSection { - @ObfuscatedName("dc") - @ObfuscatedSignature( - descriptor = "Lid;" - ) - @Export("archive2") - static Archive archive2; - @ObfuscatedName("f") - @ObfuscatedGetter( - intValue = 375073711 - ) - int field381; - @ObfuscatedName("b") - @ObfuscatedGetter( - intValue = -670342777 - ) - int field387; - @ObfuscatedName("l") - @ObfuscatedGetter( - intValue = -831871381 - ) - int field382; - @ObfuscatedName("m") - @ObfuscatedGetter( - intValue = -1970843519 - ) - int field383; - @ObfuscatedName("z") - @ObfuscatedGetter( - intValue = -1989869311 - ) - int field384; - @ObfuscatedName("q") - @ObfuscatedGetter( - intValue = 1016940673 - ) - int field385; - @ObfuscatedName("k") - @ObfuscatedGetter( - intValue = -597741031 - ) - int field386; - @ObfuscatedName("c") - @ObfuscatedGetter( - intValue = -664935547 - ) - int field389; - @ObfuscatedName("u") - @ObfuscatedGetter( - intValue = 266959941 - ) - int field388; - @ObfuscatedName("t") - @ObfuscatedGetter( - intValue = -486540041 - ) - int field391; - - WorldMapSection3() { - } // L: 18 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(Lak;I)V", - garbageValue = "-1645245778" - ) - @Export("expandBounds") - public void expandBounds(WorldMapArea var1) { - if (var1.regionLowX > this.field384) { // L: 21 - var1.regionLowX = this.field384; - } - - if (var1.regionHighX < this.field384) { - var1.regionHighX = this.field384; // L: 22 - } - - if (var1.regionLowY > this.field385) { // L: 23 - var1.regionLowY = this.field385; - } - - if (var1.regionHighY < this.field385) { // L: 24 - var1.regionHighY = this.field385; - } - - } // L: 25 - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(IIIB)Z", - garbageValue = "51" - ) - @Export("containsCoord") - public boolean containsCoord(int var1, int var2, int var3) { - if (var1 >= this.field381 && var1 < this.field381 + this.field387) { // L: 28 - return var2 >= (this.field382 << 6) + (this.field386 << 3) && var2 <= (this.field382 << 6) + (this.field386 << 3) + 7 && var3 >= (this.field383 << 6) + (this.field389 << 3) && var3 <= (this.field383 << 6) + (this.field389 << 3) + 7; // L: 31 - } else { - return false; // L: 29 - } - } - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "10" - ) - @Export("containsPosition") - public boolean containsPosition(int var1, int var2) { - return var1 >= (this.field384 << 6) + (this.field388 << 3) && var1 <= (this.field384 << 6) + (this.field388 << 3) + 7 && var2 >= (this.field385 << 6) + (this.field391 << 3) && var2 <= (this.field385 << 6) + (this.field391 << 3) + 7; // L: 35 - } - - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "(IIIB)[I", - garbageValue = "-25" - ) - @Export("getBorderTileLengths") - public int[] getBorderTileLengths(int var1, int var2, int var3) { - if (!this.containsCoord(var1, var2, var3)) { // L: 39 - return null; // L: 40 - } else { - int[] var4 = new int[]{var2 + (this.field384 * 64 - this.field382 * 64) + (this.field388 * 8 - this.field386 * 8), var3 + (this.field385 * 64 - this.field383 * 64) + (this.field391 * 8 - this.field389 * 8)}; // L: 42 43 44 - return var4; // L: 45 - } - } - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(IIB)Lhw;", - garbageValue = "1" - ) - @Export("coord") - public Coord coord(int var1, int var2) { - if (!this.containsPosition(var1, var2)) { // L: 49 - return null; // L: 50 - } else { - int var3 = this.field382 * 64 - this.field384 * 64 + (this.field386 * 8 - this.field388 * 8) + var1; // L: 52 - int var4 = var2 + (this.field383 * 64 - this.field385 * 64) + (this.field389 * 8 - this.field391 * 8); // L: 53 - return new Coord(this.field381, var3, var4); // L: 54 - } - } - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(Lkb;I)V", - garbageValue = "-222098123" - ) - @Export("read") - public void read(Buffer var1) { - this.field381 = var1.readUnsignedByte(); // L: 58 - this.field387 = var1.readUnsignedByte(); // L: 59 - this.field382 = var1.readUnsignedShort(); // L: 60 - this.field386 = var1.readUnsignedByte(); // L: 61 - this.field383 = var1.readUnsignedShort(); // L: 62 - this.field389 = var1.readUnsignedByte(); // L: 63 - this.field384 = var1.readUnsignedShort(); // L: 64 - this.field388 = var1.readUnsignedByte(); // L: 65 - this.field385 = var1.readUnsignedShort(); // L: 66 - this.field391 = var1.readUnsignedByte(); // L: 67 - this.method874(); // L: 68 - } // L: 69 - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-115" - ) - void method874() { - } // L: 71 - - @ObfuscatedName("f") - @Export("sleepExact") - public static final void sleepExact(long var0) { - if (var0 > 0L) { // L: 9 - if (0L == var0 % 10L) { // L: 10 - VertexNormal.method3135(var0 - 1L); // L: 11 - VertexNormal.method3135(1L); // L: 12 - } else { - VertexNormal.method3135(var0); // L: 14 - } - - } - } // L: 15 - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "606509160" - ) - static void method870(int var0, int var1) { - long var2 = (long)((var0 << 16) + var1); // L: 258 - NetFileRequest var4 = (NetFileRequest)NetCache.NetCache_pendingWrites.get(var2); // L: 259 - if (var4 != null) { // L: 260 - NetCache.NetCache_pendingWritesQueue.addLast(var4); // L: 261 - } - } // L: 262 -} diff --git a/runescape-client/src/main/java/WorldMapSectionType.java b/runescape-client/src/main/java/WorldMapSectionType.java index 14edd76ffe..5c3a5c40f9 100644 --- a/runescape-client/src/main/java/WorldMapSectionType.java +++ b/runescape-client/src/main/java/WorldMapSectionType.java @@ -4,118 +4,82 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("af") +@ObfuscatedName("ag") @Implements("WorldMapSectionType") public enum WorldMapSectionType implements Enumerated { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Laf;" + descriptor = "Lag;" ) @Export("WORLDMAPSECTIONTYPE0") - WORLDMAPSECTIONTYPE0(2, (byte)0), - @ObfuscatedName("b") + WORLDMAPSECTIONTYPE0(1, (byte)0), + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Laf;" + descriptor = "Lag;" ) @Export("WORLDMAPSECTIONTYPE1") - WORLDMAPSECTIONTYPE1(3, (byte)1), - @ObfuscatedName("l") + WORLDMAPSECTIONTYPE1(0, (byte)1), + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Laf;" + descriptor = "Lag;" ) @Export("WORLDMAPSECTIONTYPE2") - WORLDMAPSECTIONTYPE2(1, (byte)2), - @ObfuscatedName("m") + WORLDMAPSECTIONTYPE2(3, (byte)2), + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Laf;" + descriptor = "Lag;" ) @Export("WORLDMAPSECTIONTYPE3") - WORLDMAPSECTIONTYPE3(0, (byte)3); + WORLDMAPSECTIONTYPE3(2, (byte)3); - @ObfuscatedName("z") + @ObfuscatedName("bn") + @ObfuscatedSignature( + descriptor = "[Llo;" + ) + @Export("worldSelectArrows") + static IndexedSprite[] worldSelectArrows; + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 1960357597 + intValue = -297259605 ) @Export("type") final int type; - @ObfuscatedName("q") + @ObfuscatedName("j") @Export("id") final byte id; WorldMapSectionType(int var3, byte var4) { - this.type = var3; // L: 17 - this.id = var4; // L: 18 - } // L: 19 + this.type = var3; + this.id = var4; + } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "23" + descriptor = "(I)I", + garbageValue = "-275768542" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.id; // L: 22 + return this.id; } - @ObfuscatedName("m") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "([BI)V", - garbageValue = "1810910487" + descriptor = "(B)[Lag;", + garbageValue = "116" ) - @Export("ByteArrayPool_release") - public static synchronized void ByteArrayPool_release(byte[] var0) { - if (var0.length == 100 && ByteArrayPool.ByteArrayPool_smallCount < 1000) { // L: 76 - ByteArrayPool.ByteArrayPool_small[++ByteArrayPool.ByteArrayPool_smallCount - 1] = var0; // L: 77 - } else if (var0.length == 5000 && ByteArrayPool.ByteArrayPool_mediumCount < 250) { // L: 80 - ByteArrayPool.ByteArrayPool_medium[++ByteArrayPool.ByteArrayPool_mediumCount - 1] = var0; // L: 81 - } else if (var0.length == 30000 && ByteArrayPool.ByteArrayPool_largeCount < 50) { // L: 84 - ByteArrayPool.ByteArrayPool_large[++ByteArrayPool.ByteArrayPool_largeCount - 1] = var0; // L: 85 - } else { - if (ByteArrayPool.ByteArrayPool_arrays != null) { // L: 88 - for (int var1 = 0; var1 < Coord.ByteArrayPool_alternativeSizes.length; ++var1) { // L: 89 - if (var0.length == Coord.ByteArrayPool_alternativeSizes[var1] && FloorDecoration.ByteArrayPool_altSizeArrayCounts[var1] < ByteArrayPool.ByteArrayPool_arrays[var1].length) { // L: 90 - ByteArrayPool.ByteArrayPool_arrays[var1][FloorDecoration.ByteArrayPool_altSizeArrayCounts[var1]++] = var0; // L: 91 - return; // L: 92 - } - } - } - - } - } // L: 78 82 86 96 - - @ObfuscatedName("hr") - @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "1" - ) - static final boolean method336(int var0) { - if (var0 < 0) { // L: 7925 - return false; - } else { - int var1 = Client.menuOpcodes[var0]; // L: 7926 - if (var1 >= 2000) { // L: 7927 - var1 -= 2000; - } - - return var1 == 1007; // L: 7928 - } + static WorldMapSectionType[] method295() { + return new WorldMapSectionType[]{WORLDMAPSECTIONTYPE3, WORLDMAPSECTIONTYPE1, WORLDMAPSECTIONTYPE0, WORLDMAPSECTIONTYPE2}; } - @ObfuscatedName("jl") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(Lht;IIIB)V", - garbageValue = "-90" + descriptor = "(ILib;Ljava/lang/String;Ljava/lang/String;IZI)V", + garbageValue = "-519940907" ) - @Export("drawCompass") - static final void drawCompass(Widget var0, int var1, int var2, int var3) { - SpriteMask var4 = var0.getSpriteMask(false); // L: 11444 - if (var4 != null) { // L: 11445 - if (Client.minimapState < 3) { // L: 11446 - UserComparator5.compass.drawRotatedMaskedCenteredAround(var1, var2, var4.width, var4.height, 25, 25, Client.camAngleY, 256, var4.xStarts, var4.xWidths); - } else { - Rasterizer2D.Rasterizer2D_fillMaskedRectangle(var1, var2, 0, var4.xStarts, var4.xWidths); // L: 11447 - } - - } - } // L: 11448 + public static void method300(int var0, AbstractArchive var1, String var2, String var3, int var4, boolean var5) { + int var6 = var1.getGroupId(var2); + int var7 = var1.getFileId(var6, var3); + SecureRandomCallable.method1221(var0, var1, var6, var7, var4, var5); + } } diff --git a/runescape-client/src/main/java/WorldMapSprite.java b/runescape-client/src/main/java/WorldMapSprite.java index 69f98628d4..2f62c203b7 100644 --- a/runescape-client/src/main/java/WorldMapSprite.java +++ b/runescape-client/src/main/java/WorldMapSprite.java @@ -1,362 +1,83 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; -import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("au") +@ObfuscatedName("aq") @Implements("WorldMapSprite") public final class WorldMapSprite { - @ObfuscatedName("nm") - @ObfuscatedGetter( - intValue = -1577465281 + @ObfuscatedName("ds") + @ObfuscatedSignature( + descriptor = "Lil;" ) - static int field256; - @ObfuscatedName("b") + @Export("archive1") + static Archive archive1; + @ObfuscatedName("et") + @Export("worldHost") + static String worldHost; + @ObfuscatedName("v") @Export("tileColors") final int[] tileColors; WorldMapSprite() { - this.tileColors = new int[4096]; // L: 11 - } // L: 12 + this.tileColors = new int[4096]; + } WorldMapSprite(int[] var1) { - this.tileColors = var1; // L: 15 - } // L: 16 + this.tileColors = var1; + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(III)I", - garbageValue = "38290774" + garbageValue = "-323058581" ) @Export("getTileColor") final int getTileColor(int var1, int var2) { - return this.tileColors[var1 + var2 * 64]; // L: 24 + return this.tileColors[var1 + var2 * 64]; } - @ObfuscatedName("k") + @ObfuscatedName("e") @ObfuscatedSignature( - descriptor = "(Lcf;Lcf;IZI)I", - garbageValue = "-1899610512" + descriptor = "(III)I", + garbageValue = "-327345288" ) - @Export("compareWorlds") - static int compareWorlds(World var0, World var1, int var2, boolean var3) { - if (var2 == 1) { // L: 211 - int var4 = var0.population; // L: 212 - int var5 = var1.population; // L: 213 - if (!var3) { // L: 214 - if (var4 == -1) { // L: 215 - var4 = 2001; - } - - if (var5 == -1) { // L: 216 - var5 = 2001; - } - } - - return var4 - var5; // L: 218 - } else if (var2 == 2) { // L: 220 - return var0.location - var1.location; - } else if (var2 == 3) { // L: 221 - if (var0.activity.equals("-")) { // L: 222 - if (var1.activity.equals("-")) { // L: 223 - return 0; - } else { - return var3 ? -1 : 1; // L: 224 - } - } else if (var1.activity.equals("-")) { // L: 226 - return var3 ? 1 : -1; - } else { - return var0.activity.compareTo(var1.activity); // L: 227 - } - } else if (var2 == 4) { // L: 229 - return var0.method1888() ? (var1.method1888() ? 0 : 1) : (var1.method1888() ? -1 : 0); - } else if (var2 == 5) { // L: 230 - return var0.method1901() ? (var1.method1901() ? 0 : 1) : (var1.method1901() ? -1 : 0); - } else if (var2 == 6) { // L: 231 - return var0.isPvp() ? (var1.isPvp() ? 0 : 1) : (var1.isPvp() ? -1 : 0); - } else if (var2 == 7) { // L: 232 - return var0.isMembersOnly() ? (var1.isMembersOnly() ? 0 : 1) : (var1.isMembersOnly() ? -1 : 0); - } else { - return var0.id - var1.id; // L: 233 - } + static final int method468(int var0, int var1) { + int var2 = GrandExchangeOffer.method190(var0 - 1, var1 - 1) + GrandExchangeOffer.method190(var0 + 1, var1 - 1) + GrandExchangeOffer.method190(var0 - 1, 1 + var1) + GrandExchangeOffer.method190(1 + var0, 1 + var1); + int var3 = GrandExchangeOffer.method190(var0 - 1, var1) + GrandExchangeOffer.method190(1 + var0, var1) + GrandExchangeOffer.method190(var0, var1 - 1) + GrandExchangeOffer.method190(var0, 1 + var1); + int var4 = GrandExchangeOffer.method190(var0, var1); + return var2 / 16 + var3 / 8 + var4 / 4; } - @ObfuscatedName("ah") + @ObfuscatedName("hi") @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "1481006152" + descriptor = "(I)V", + garbageValue = "-1287826553" ) - static int method518(int var0, Script var1, boolean var2) { - if (var0 == ScriptOpcodes.CHAT_GETFILTER_PUBLIC) { // L: 2822 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.publicChatMode; // L: 2823 - return 1; // L: 2824 - } else if (var0 == ScriptOpcodes.CHAT_SETFILTER) { // L: 2826 - MilliClock.Interpreter_intStackSize -= 3; // L: 2827 - Client.publicChatMode = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2828 - class39.privateChatMode = MouseRecorder.method1287(Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]); // L: 2829 - if (class39.privateChatMode == null) { // L: 2830 - class39.privateChatMode = PrivateChatMode.field3824; - } - - Client.tradeChatMode = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 2]; // L: 2831 - PacketBufferNode var18 = class4.getPacketBufferNode(ClientPacket.field2245, Client.packetWriter.isaacCipher); // L: 2833 - var18.packetBuffer.writeByte(Client.publicChatMode); // L: 2834 - var18.packetBuffer.writeByte(class39.privateChatMode.field3825); // L: 2835 - var18.packetBuffer.writeByte(Client.tradeChatMode); // L: 2836 - Client.packetWriter.addNode(var18); // L: 2837 - return 1; // L: 2838 - } else { - String var3; - int var11; - if (var0 == ScriptOpcodes.CHAT_SENDABUSEREPORT) { // L: 2840 - var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2841 - MilliClock.Interpreter_intStackSize -= 2; // L: 2842 - var11 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2843 - int var12 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2844 - PacketBufferNode var13 = class4.getPacketBufferNode(ClientPacket.field2279, Client.packetWriter.isaacCipher); // L: 2846 - var13.packetBuffer.writeByte(SpriteMask.stringCp1252NullTerminatedByteSize(var3) + 2); // L: 2847 - var13.packetBuffer.writeStringCp1252NullTerminated(var3); // L: 2848 - var13.packetBuffer.writeByte(var11 - 1); // L: 2849 - var13.packetBuffer.writeByte(var12); // L: 2850 - Client.packetWriter.addNode(var13); // L: 2851 - return 1; // L: 2852 - } else { - int var10; - if (var0 == ScriptOpcodes.CHAT_GETHISTORY_BYTYPEANDLINE) { // L: 2854 - MilliClock.Interpreter_intStackSize -= 2; // L: 2855 - var10 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 2856 - var11 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 2857 - Message var16 = class4.Messages_getByChannelAndID(var10, var11); // L: 2858 - if (var16 != null) { // L: 2859 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var16.count; // L: 2860 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var16.cycle; // L: 2861 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var16.sender != null ? var16.sender : ""; // L: 2862 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var16.prefix != null ? var16.prefix : ""; // L: 2863 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var16.text != null ? var16.text : ""; // L: 2864 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var16.isFromFriend() ? 1 : (var16.isFromIgnored() ? 2 : 0); // L: 2865 + static final void method467() { + for (GraphicsObject var0 = (GraphicsObject)Client.graphicsObjects.last(); var0 != null; var0 = (GraphicsObject)Client.graphicsObjects.previous()) { + if (var0.plane == GameObject.Client_plane && !var0.isFinished) { + if (Client.cycle >= var0.cycleStart) { + var0.advance(Client.field850); + if (var0.isFinished) { + var0.remove(); } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 2868 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 2869 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 2870 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 2871 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 2872 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 2873 + ArchiveLoader.scene.drawEntity(var0.plane, var0.x, var0.y, var0.height, 60, var0, 0, -1L, false); } - - return 1; // L: 2875 - } else if (var0 == ScriptOpcodes.CHAT_GETHISTORY_BYUID) { // L: 2877 - var10 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2878 - Message var14 = class89.Messages_getMessage(var10); // L: 2879 - if (var14 != null) { // L: 2880 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var14.type; // L: 2881 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var14.cycle; // L: 2882 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var14.sender != null ? var14.sender : ""; // L: 2883 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var14.prefix != null ? var14.prefix : ""; // L: 2884 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var14.text != null ? var14.text : ""; // L: 2885 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var14.isFromFriend() ? 1 : (var14.isFromIgnored() ? 2 : 0); // L: 2886 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 2889 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 2890 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 2891 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 2892 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = ""; // L: 2893 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 2894 - } - - return 1; // L: 2896 - } else if (var0 == ScriptOpcodes.CHAT_GETFILTER_PRIVATE) { // L: 2898 - if (class39.privateChatMode == null) { // L: 2899 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = class39.privateChatMode.field3825; // L: 2900 - } - - return 1; // L: 2901 - } else if (var0 == ScriptOpcodes.CHAT_SENDPUBLIC) { // L: 2903 - var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 2904 - var11 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2905 - String var15 = var3.toLowerCase(); // L: 2906 - byte var17 = 0; // L: 2907 - if (var15.startsWith("yellow:")) { // L: 2908 - var17 = 0; // L: 2909 - var3 = var3.substring("yellow:".length()); // L: 2910 - } else if (var15.startsWith("red:")) { // L: 2912 - var17 = 1; // L: 2913 - var3 = var3.substring("red:".length()); // L: 2914 - } else if (var15.startsWith("green:")) { // L: 2916 - var17 = 2; // L: 2917 - var3 = var3.substring("green:".length()); // L: 2918 - } else if (var15.startsWith("cyan:")) { // L: 2920 - var17 = 3; // L: 2921 - var3 = var3.substring("cyan:".length()); // L: 2922 - } else if (var15.startsWith("purple:")) { // L: 2924 - var17 = 4; // L: 2925 - var3 = var3.substring("purple:".length()); // L: 2926 - } else if (var15.startsWith("white:")) { // L: 2928 - var17 = 5; // L: 2929 - var3 = var3.substring("white:".length()); // L: 2930 - } else if (var15.startsWith("flash1:")) { // L: 2932 - var17 = 6; // L: 2933 - var3 = var3.substring("flash1:".length()); // L: 2934 - } else if (var15.startsWith("flash2:")) { // L: 2936 - var17 = 7; // L: 2937 - var3 = var3.substring("flash2:".length()); // L: 2938 - } else if (var15.startsWith("flash3:")) { // L: 2940 - var17 = 8; // L: 2941 - var3 = var3.substring("flash3:".length()); // L: 2942 - } else if (var15.startsWith("glow1:")) { // L: 2944 - var17 = 9; // L: 2945 - var3 = var3.substring("glow1:".length()); // L: 2946 - } else if (var15.startsWith("glow2:")) { // L: 2948 - var17 = 10; // L: 2949 - var3 = var3.substring("glow2:".length()); // L: 2950 - } else if (var15.startsWith("glow3:")) { // L: 2952 - var17 = 11; // L: 2953 - var3 = var3.substring("glow3:".length()); // L: 2954 - } else if (FontName.clientLanguage != Language.Language_EN) { // L: 2956 - if (var15.startsWith("yellow:")) { // L: 2957 - var17 = 0; // L: 2958 - var3 = var3.substring("yellow:".length()); // L: 2959 - } else if (var15.startsWith("red:")) { // L: 2961 - var17 = 1; // L: 2962 - var3 = var3.substring("red:".length()); // L: 2963 - } else if (var15.startsWith("green:")) { // L: 2965 - var17 = 2; // L: 2966 - var3 = var3.substring("green:".length()); // L: 2967 - } else if (var15.startsWith("cyan:")) { // L: 2969 - var17 = 3; // L: 2970 - var3 = var3.substring("cyan:".length()); // L: 2971 - } else if (var15.startsWith("purple:")) { // L: 2973 - var17 = 4; // L: 2974 - var3 = var3.substring("purple:".length()); // L: 2975 - } else if (var15.startsWith("white:")) { // L: 2977 - var17 = 5; // L: 2978 - var3 = var3.substring("white:".length()); // L: 2979 - } else if (var15.startsWith("flash1:")) { // L: 2981 - var17 = 6; // L: 2982 - var3 = var3.substring("flash1:".length()); // L: 2983 - } else if (var15.startsWith("flash2:")) { // L: 2985 - var17 = 7; // L: 2986 - var3 = var3.substring("flash2:".length()); // L: 2987 - } else if (var15.startsWith("flash3:")) { // L: 2989 - var17 = 8; // L: 2990 - var3 = var3.substring("flash3:".length()); // L: 2991 - } else if (var15.startsWith("glow1:")) { // L: 2993 - var17 = 9; // L: 2994 - var3 = var3.substring("glow1:".length()); // L: 2995 - } else if (var15.startsWith("glow2:")) { // L: 2997 - var17 = 10; // L: 2998 - var3 = var3.substring("glow2:".length()); // L: 2999 - } else if (var15.startsWith("glow3:")) { // L: 3001 - var17 = 11; // L: 3002 - var3 = var3.substring("glow3:".length()); // L: 3003 - } - } - - var15 = var3.toLowerCase(); // L: 3006 - byte var7 = 0; // L: 3007 - if (var15.startsWith("wave:")) { // L: 3008 - var7 = 1; // L: 3009 - var3 = var3.substring("wave:".length()); // L: 3010 - } else if (var15.startsWith("wave2:")) { // L: 3012 - var7 = 2; // L: 3013 - var3 = var3.substring("wave2:".length()); // L: 3014 - } else if (var15.startsWith("shake:")) { // L: 3016 - var7 = 3; // L: 3017 - var3 = var3.substring("shake:".length()); // L: 3018 - } else if (var15.startsWith("scroll:")) { // L: 3020 - var7 = 4; // L: 3021 - var3 = var3.substring("scroll:".length()); // L: 3022 - } else if (var15.startsWith("slide:")) { // L: 3024 - var7 = 5; // L: 3025 - var3 = var3.substring("slide:".length()); // L: 3026 - } else if (Language.Language_EN != FontName.clientLanguage) { // L: 3028 - if (var15.startsWith("wave:")) { // L: 3029 - var7 = 1; // L: 3030 - var3 = var3.substring("wave:".length()); // L: 3031 - } else if (var15.startsWith("wave2:")) { // L: 3033 - var7 = 2; // L: 3034 - var3 = var3.substring("wave2:".length()); // L: 3035 - } else if (var15.startsWith("shake:")) { // L: 3037 - var7 = 3; // L: 3038 - var3 = var3.substring("shake:".length()); // L: 3039 - } else if (var15.startsWith("scroll:")) { // L: 3041 - var7 = 4; // L: 3042 - var3 = var3.substring("scroll:".length()); // L: 3043 - } else if (var15.startsWith("slide:")) { // L: 3045 - var7 = 5; // L: 3046 - var3 = var3.substring("slide:".length()); // L: 3047 - } - } - - PacketBufferNode var8 = class4.getPacketBufferNode(ClientPacket.field2269, Client.packetWriter.isaacCipher); // L: 3051 - var8.packetBuffer.writeByte(0); // L: 3052 - int var9 = var8.packetBuffer.offset; // L: 3053 - var8.packetBuffer.writeByte(var11); // L: 3054 - var8.packetBuffer.writeByte(var17); // L: 3055 - var8.packetBuffer.writeByte(var7); // L: 3056 - WorldMapData_0.method269(var8.packetBuffer, var3); // L: 3057 - var8.packetBuffer.writeLengthByte(var8.packetBuffer.offset - var9); // L: 3058 - Client.packetWriter.addNode(var8); // L: 3059 - return 1; // L: 3060 - } else if (var0 == ScriptOpcodes.CHAT_SENDPRIVATE) { // L: 3062 - UrlRequester.Interpreter_stringStackSize -= 2; // L: 3063 - var3 = Interpreter.Interpreter_stringStack[UrlRequester.Interpreter_stringStackSize]; // L: 3064 - String var4 = Interpreter.Interpreter_stringStack[UrlRequester.Interpreter_stringStackSize + 1]; // L: 3065 - PacketBufferNode var5 = class4.getPacketBufferNode(ClientPacket.field2326, Client.packetWriter.isaacCipher); // L: 3067 - var5.packetBuffer.writeShort(0); // L: 3068 - int var6 = var5.packetBuffer.offset; // L: 3069 - var5.packetBuffer.writeStringCp1252NullTerminated(var3); // L: 3070 - WorldMapData_0.method269(var5.packetBuffer, var4); // L: 3071 - var5.packetBuffer.writeLengthShort(var5.packetBuffer.offset - var6); // L: 3072 - Client.packetWriter.addNode(var5); // L: 3073 - return 1; // L: 3074 - } else if (var0 != ScriptOpcodes.CHAT_PLAYERNAME) { // L: 3076 - if (var0 == ScriptOpcodes.CHAT_GETFILTER_TRADE) { // L: 3083 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.tradeChatMode; // L: 3084 - return 1; // L: 3085 - } else if (var0 == ScriptOpcodes.CHAT_GETHISTORYLENGTH) { // L: 3087 - var10 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3088 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = class2.Messages_getHistorySize(var10); // L: 3089 - return 1; // L: 3090 - } else if (var0 == ScriptOpcodes.CHAT_GETNEXTUID) { // L: 3092 - var10 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3093 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = SoundSystem.Messages_getNextChatID(var10); // L: 3094 - return 1; // L: 3095 - } else if (var0 == ScriptOpcodes.CHAT_GETPREVUID) { // L: 3097 - var10 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3098 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = class90.Messages_getLastChatID(var10); // L: 3099 - return 1; // L: 3100 - } else if (var0 == ScriptOpcodes.DOCHEAT) { // L: 3102 - var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 3103 - class308.doCheat(var3); // L: 3104 - return 1; // L: 3105 - } else if (var0 == ScriptOpcodes.CHAT_SETMESSAGEFILTER) { // L: 3107 - Client.field710 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize].toLowerCase().trim(); // L: 3108 - return 1; // L: 3109 - } else if (var0 == ScriptOpcodes.CHAT_GETMESSAGEFILTER) { // L: 3111 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = Client.field710; // L: 3112 - return 1; // L: 3113 - } else if (var0 == ScriptOpcodes.DEBUGMES) { // L: 3115 - var3 = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 3116 - System.out.println(var3); // L: 3117 - return 1; // L: 3118 - } else { - return 2; // L: 3120 - } - } else { - if (PlayerType.localPlayer != null && PlayerType.localPlayer.username != null) { // L: 3078 - var3 = PlayerType.localPlayer.username.getName(); - } else { - var3 = ""; // L: 3079 - } - - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3; // L: 3080 - return 1; // L: 3081 } + } else { + var0.remove(); } } + + } + + @ObfuscatedName("iw") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "646610765" + ) + static final int method463() { + return Client.menuOptionsCount - 1; } } diff --git a/runescape-client/src/main/java/Wrapper.java b/runescape-client/src/main/java/Wrapper.java index 4e24db81f4..b9f5907aa5 100644 --- a/runescape-client/src/main/java/Wrapper.java +++ b/runescape-client/src/main/java/Wrapper.java @@ -2,22 +2,22 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("fw") +@ObfuscatedName("ft") @Implements("Wrapper") public abstract class Wrapper extends DualNode { - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("size") final int size; Wrapper(int var1) { - this.size = var1; // L: 9 - } // L: 10 + this.size = var1; + } - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("get") abstract Object get(); - @ObfuscatedName("b") + @ObfuscatedName("v") @Export("isSoft") abstract boolean isSoft(); } diff --git a/runescape-client/src/main/java/class0.java b/runescape-client/src/main/java/class0.java index 5268db926f..2b83a91f04 100644 --- a/runescape-client/src/main/java/class0.java +++ b/runescape-client/src/main/java/class0.java @@ -1,19 +1,19 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("f") +@ObfuscatedName("h") public interface class0 { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ljava/lang/Object;Lkb;I)V", - garbageValue = "192866787" + descriptor = "(Ljava/lang/Object;Lkj;I)V", + garbageValue = "781194334" ) - void vmethod69(Object var1, Buffer var2); + void vmethod49(Object var1, Buffer var2); - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lkb;I)Ljava/lang/Object;", - garbageValue = "-1094020977" + descriptor = "(Lkj;B)Ljava/lang/Object;", + garbageValue = "12" ) - Object vmethod72(Buffer var1); + Object vmethod48(Buffer var1); } diff --git a/runescape-client/src/main/java/class1.java b/runescape-client/src/main/java/class1.java index 22c1cfe3bc..d4cac0395c 100644 --- a/runescape-client/src/main/java/class1.java +++ b/runescape-client/src/main/java/class1.java @@ -1,754 +1,211 @@ import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("b") +@ObfuscatedName("v") final class class1 implements class0 { - @ObfuscatedName("e") - @ObfuscatedGetter( - intValue = -115998375 - ) - static int field3; - @ObfuscatedName("x") - static int[] field1; - @ObfuscatedName("eq") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lid;" + descriptor = "Lib;" ) - @Export("archive15") - static Archive archive15; - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/Object;Lkb;I)V", - garbageValue = "192866787" - ) - public void vmethod69(Object var1, Buffer var2) { - this.method9((Integer)var1, var2); // L: 20 - } // L: 21 - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(Lkb;I)Ljava/lang/Object;", - garbageValue = "-1094020977" - ) - public Object vmethod72(Buffer var1) { - return var1.readInt(); // L: 16 - } - + @Export("VarpDefinition_archive") + public static AbstractArchive VarpDefinition_archive; @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "(Ljava/lang/Integer;Lkb;B)V", + descriptor = "Lib;" + ) + @Export("Widget_spritesArchive") + public static AbstractArchive Widget_spritesArchive; + @ObfuscatedName("i") + @ObfuscatedSignature( + descriptor = "Lca;" + ) + @Export("loginScreenRunesAnimation") + static LoginScreenAnimation loginScreenRunesAnimation; + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/Object;Lkj;I)V", + garbageValue = "781194334" + ) + public void vmethod49(Object var1, Buffer var2) { + this.method6((Integer)var1, var2); + } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(Lkj;B)Ljava/lang/Object;", + garbageValue = "12" + ) + public Object vmethod48(Buffer var1) { + return var1.readInt(); + } + + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/Integer;Lkj;I)V", + garbageValue = "-1179776664" + ) + void method6(Integer var1, Buffer var2) { + var2.writeInt(var1); + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(B)[Lio;", garbageValue = "0" ) - void method9(Integer var1, Buffer var2) { - var2.writeInt(var1); // L: 12 - } // L: 13 - - @ObfuscatedName("f") - static boolean method8(long var0) { - return KeyHandler.Entity_unpackSceneX(var0) == 2; // L: 44 + static GameBuild[] method11() { + return new GameBuild[]{GameBuild.BUILDLIVE, GameBuild.LIVE, GameBuild.WIP, GameBuild.RC}; } - @ObfuscatedName("z") + @ObfuscatedName("hl") @ObfuscatedSignature( - descriptor = "(IIIZIZI)V", - garbageValue = "1800966997" + descriptor = "(IIIIIB)V", + garbageValue = "3" ) - @Export("doWorldSorting") - static void doWorldSorting(int var0, int var1, int var2, boolean var3, int var4, boolean var5) { - if (var0 < var1) { // L: 177 - int var6 = (var0 + var1) / 2; // L: 178 - int var7 = var0; // L: 179 - World var8 = DefaultsGroup.World_worlds[var6]; // L: 180 - DefaultsGroup.World_worlds[var6] = DefaultsGroup.World_worlds[var1]; // L: 181 - DefaultsGroup.World_worlds[var1] = var8; // L: 182 - - for (int var9 = var0; var9 < var1; ++var9) { // L: 183 - if (WorldMapIcon_1.method395(DefaultsGroup.World_worlds[var9], var8, var2, var3, var4, var5) <= 0) { // L: 184 - World var10 = DefaultsGroup.World_worlds[var9]; // L: 185 - DefaultsGroup.World_worlds[var9] = DefaultsGroup.World_worlds[var7]; // L: 186 - DefaultsGroup.World_worlds[var7++] = var10; // L: 187 - } + @Export("drawObject") + static final void drawObject(int var0, int var1, int var2, int var3, int var4) { + long var5 = ArchiveLoader.scene.getBoundaryObjectTag(var0, var1, var2); + int var7; + int var8; + int var9; + int var10; + int var12; + int var13; + if (0L != var5) { + var7 = ArchiveLoader.scene.getObjectFlags(var0, var1, var2, var5); + var8 = var7 >> 6 & 3; + var9 = var7 & 31; + var10 = var3; + if (FriendSystem.method1943(var5)) { + var10 = var4; } - DefaultsGroup.World_worlds[var1] = DefaultsGroup.World_worlds[var7]; // L: 191 - DefaultsGroup.World_worlds[var7] = var8; // L: 192 - doWorldSorting(var0, var7 - 1, var2, var3, var4, var5); // L: 193 - doWorldSorting(var7 + 1, var1, var2, var3, var4, var5); // L: 194 - } - - } // L: 196 - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(CI)Z", - garbageValue = "-1463898709" - ) - @Export("isDigit") - public static boolean isDigit(char var0) { - return var0 >= '0' && var0 <= '9'; // L: 147 - } - - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "(IIB)I", - garbageValue = "6" - ) - static final int method20(int var0, int var1) { - if (var0 == -2) { // L: 477 - return 12345678; - } else if (var0 == -1) { // L: 478 - if (var1 < 2) { - var1 = 2; // L: 479 - } else if (var1 > 126) { // L: 480 - var1 = 126; - } - - return var1; // L: 481 - } else { - var1 = (var0 & 127) * var1 / 128; // L: 483 - if (var1 < 2) { // L: 484 - var1 = 2; - } else if (var1 > 126) { // L: 485 - var1 = 126; - } - - return (var0 & 65408) + var1; // L: 486 - } - } - - @ObfuscatedName("gr") - @ObfuscatedSignature( - descriptor = "(Lcs;IIIIII)V", - garbageValue = "-1076468107" - ) - @Export("drawActor2d") - static final void drawActor2d(Actor var0, int var1, int var2, int var3, int var4, int var5) { - if (var0 != null && var0.isVisible()) { // L: 4930 - if (var0 instanceof NPC) { // L: 4931 - NPCDefinition var6 = ((NPC)var0).definition; // L: 4932 - if (var6.transforms != null) { // L: 4933 - var6 = var6.transform(); - } - - if (var6 == null) { // L: 4934 - return; - } - } - - int var76 = Players.Players_count; // L: 4936 - int[] var7 = Players.Players_indices; // L: 4937 - byte var8 = 0; // L: 4938 - Player var10; - int var12; - if (var1 < var76 && var0.playerCycle == Client.cycle) { // L: 4939 - var10 = (Player)var0; // L: 4941 - boolean var9; - if (Client.drawPlayerNames == 0) { // L: 4943 - var9 = false; // L: 4944 - } else if (var10 == PlayerType.localPlayer) { // L: 4947 - var9 = WorldMapAreaData.method786(); // L: 4950 - } else { - var9 = WorldMapSection1.method681() || class2.method28() && var10.isFriend() || Widget.method4239() && var10.isClanMember(); // L: 4948 - } - - if (var9) { // L: 4952 - Player var11 = (Player)var0; // L: 4953 - if (var1 < var76) { // L: 4954 - var12 = var0.defaultHeight + 15; // L: 4955 - class13.worldToScreen(var0.x, var0.y, var12); // L: 4957 - AbstractFont var13 = (AbstractFont)Client.fontsMap.get(FontName.FontName_plain12); // L: 4959 - byte var14 = 9; // L: 4960 - var13.drawCentered(var11.username.getName(), var2 + Client.viewportTempX, var3 + Client.viewportTempY - var14, 16777215, 0); // L: 4961 - var8 = 18; // L: 4962 - } - } - } - - int var88 = -2; // L: 4966 - int var17; - int var23; - int var24; - int var77; - if (!var0.healthBars.method4990()) { // L: 4967 - var77 = var0.defaultHeight + 15; // L: 4968 - class13.worldToScreen(var0.x, var0.y, var77); // L: 4970 - - for (HealthBar var90 = (HealthBar)var0.healthBars.last(); var90 != null; var90 = (HealthBar)var0.healthBars.previous()) { // L: 4972 - HealthBarUpdate var80 = var90.get(Client.cycle); // L: 4973 - if (var80 == null) { // L: 4974 - if (var90.isEmpty()) { // L: 5032 - var90.remove(); - } - } else { - HealthBarDefinition var91 = var90.definition; // L: 4975 - Sprite var81 = var91.getBackSprite(); // L: 4976 - Sprite var82 = var91.getFrontSprite(); // L: 4977 - var17 = 0; // L: 4979 - int var83; - if (var81 != null && var82 != null) { // L: 4980 - if (var91.widthPadding * 2 < var82.subWidth) { // L: 4981 - var17 = var91.widthPadding; - } - - var83 = var82.subWidth - var17 * 2; // L: 4982 - } else { - var83 = var91.width; // L: 4984 - } - - int var18 = 255; // L: 4985 - boolean var84 = true; // L: 4986 - int var85 = Client.cycle - var80.cycle; // L: 4987 - int var86 = var83 * var80.health2 / var91.width; // L: 4988 - int var87; - int var95; - if (var80.cycleOffset > var85) { // L: 4989 - var87 = var91.field3314 == 0 ? 0 : var91.field3314 * (var85 / var91.field3314); // L: 4990 - var23 = var83 * var80.health / var91.width; // L: 4991 - var95 = var87 * (var86 - var23) / var80.cycleOffset + var23; // L: 4992 - } else { - var95 = var86; // L: 4995 - var87 = var91.int5 + var80.cycleOffset - var85; // L: 4996 - if (var91.int3 >= 0) { // L: 4997 - var18 = (var87 << 8) / (var91.int5 - var91.int3); - } - } - - if (var80.health2 > 0 && var95 < 1) { // L: 4999 - var95 = 1; - } - - if (var81 != null && var82 != null) { // L: 5000 - if (var83 == var95) { // L: 5001 - var95 += var17 * 2; - } else { - var95 += var17; // L: 5002 - } - - var87 = var81.subHeight; // L: 5003 - var88 += var87; // L: 5004 - var23 = var2 + Client.viewportTempX - (var83 >> 1); // L: 5005 - var24 = var3 + Client.viewportTempY - var88; // L: 5006 - var23 -= var17; // L: 5007 - if (var18 >= 0 && var18 < 255) { // L: 5008 - var81.drawTransAt(var23, var24, var18); // L: 5009 - Rasterizer2D.Rasterizer2D_expandClip(var23, var24, var23 + var95, var87 + var24); // L: 5010 - var82.drawTransAt(var23, var24, var18); // L: 5011 - } else { - var81.drawTransBgAt(var23, var24); // L: 5014 - Rasterizer2D.Rasterizer2D_expandClip(var23, var24, var23 + var95, var24 + var87); // L: 5015 - var82.drawTransBgAt(var23, var24); // L: 5016 - } - - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var2 + var4, var3 + var5); // L: 5018 - var88 += 2; // L: 5019 - } else { - var88 += 5; // L: 5022 - if (Client.viewportTempX > -1) { // L: 5023 - var87 = var2 + Client.viewportTempX - (var83 >> 1); // L: 5024 - var23 = var3 + Client.viewportTempY - var88; // L: 5025 - Rasterizer2D.Rasterizer2D_fillRectangle(var87, var23, var95, 5, 65280); // L: 5026 - Rasterizer2D.Rasterizer2D_fillRectangle(var87 + var95, var23, var83 - var95, 5, 16711680); // L: 5027 - } - - var88 += 2; // L: 5029 - } - } - } - } - - if (var88 == -2) { // L: 5035 - var88 += 7; - } - - var88 += var8; // L: 5036 - int var78; - if (var1 < var76) { // L: 5037 - var10 = (Player)var0; // L: 5038 - if (var10.isHidden) { // L: 5039 - return; - } - - if (var10.headIconPk != -1 || var10.headIconPrayer != -1) { // L: 5040 - var78 = var0.defaultHeight + 15; // L: 5041 - class13.worldToScreen(var0.x, var0.y, var78); // L: 5043 - if (Client.viewportTempX > -1) { // L: 5045 - if (var10.headIconPk != -1) { // L: 5046 - var88 += 25; // L: 5047 - World.headIconPkSprites[var10.headIconPk].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - var88); // L: 5048 - } - - if (var10.headIconPrayer != -1) { // L: 5050 - var88 += 25; // L: 5051 - TaskHandler.headIconPrayerSprites[var10.headIconPrayer].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - var88); // L: 5052 - } - } - } - - if (var1 >= 0 && Client.hintArrowType == 10 && var7[var1] == Client.hintArrowPlayerIndex) { // L: 5056 - var78 = var0.defaultHeight + 15; // L: 5057 - class13.worldToScreen(var0.x, var0.y, var78); // L: 5059 - if (Client.viewportTempX > -1) { // L: 5061 - var88 += class337.headIconHintSprites[1].subHeight; // L: 5062 - class337.headIconHintSprites[1].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - var88); // L: 5063 - } + int[] var11 = class25.sceneMinimapSprite.pixels; + var12 = var1 * 4 + (103 - var2) * 2048 + 24624; + var13 = Occluder.Entity_unpackID(var5); + ObjectDefinition var14 = WorldMapDecoration.getObjectDefinition(var13); + if (var14.mapSceneId != -1) { + IndexedSprite var15 = WorldMapRegion.mapSceneSprites[var14.mapSceneId]; + if (var15 != null) { + int var16 = (var14.sizeX * 4 - var15.subWidth) / 2; + int var17 = (var14.sizeY * 4 - var15.subHeight) / 2; + var15.drawAt(var1 * 4 + var16 + 48, (104 - var2 - var14.sizeY) * 4 + var17 + 48); } } else { - NPCDefinition var89 = ((NPC)var0).definition; // L: 5068 - if (var89.transforms != null) { // L: 5069 - var89 = var89.transform(); - } - - if (var89.headIconPrayer >= 0 && var89.headIconPrayer < TaskHandler.headIconPrayerSprites.length) { // L: 5070 - var78 = var0.defaultHeight + 15; // L: 5071 - class13.worldToScreen(var0.x, var0.y, var78); // L: 5073 - if (Client.viewportTempX > -1) { // L: 5075 - TaskHandler.headIconPrayerSprites[var89.headIconPrayer].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - 30); // L: 5076 + if (var9 == 0 || var9 == 2) { + if (var8 == 0) { + var11[var12] = var10; + var11[var12 + 512] = var10; + var11[var12 + 1024] = var10; + var11[var12 + 1536] = var10; + } else if (var8 == 1) { + var11[var12] = var10; + var11[var12 + 1] = var10; + var11[var12 + 2] = var10; + var11[var12 + 3] = var10; + } else if (var8 == 2) { + var11[var12 + 3] = var10; + var11[var12 + 512 + 3] = var10; + var11[var12 + 1024 + 3] = var10; + var11[var12 + 1536 + 3] = var10; + } else if (var8 == 3) { + var11[var12 + 1536] = var10; + var11[var12 + 1536 + 1] = var10; + var11[var12 + 1536 + 2] = var10; + var11[var12 + 1536 + 3] = var10; } } - if (Client.hintArrowType == 1 && Client.npcIndices[var1 - var76] == Client.hintArrowNpcIndex && Client.cycle % 20 < 10) { // L: 5079 - var78 = var0.defaultHeight + 15; // L: 5080 - class13.worldToScreen(var0.x, var0.y, var78); // L: 5082 - if (Client.viewportTempX > -1) { // L: 5084 - class337.headIconHintSprites[0].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - 28); + if (var9 == 3) { + if (var8 == 0) { + var11[var12] = var10; + } else if (var8 == 1) { + var11[var12 + 3] = var10; + } else if (var8 == 2) { + var11[var12 + 1536 + 3] = var10; + } else if (var8 == 3) { + var11[var12 + 1536] = var10; + } + } + + if (var9 == 2) { + if (var8 == 3) { + var11[var12] = var10; + var11[var12 + 512] = var10; + var11[var12 + 1024] = var10; + var11[var12 + 1536] = var10; + } else if (var8 == 0) { + var11[var12] = var10; + var11[var12 + 1] = var10; + var11[var12 + 2] = var10; + var11[var12 + 3] = var10; + } else if (var8 == 1) { + var11[var12 + 3] = var10; + var11[var12 + 512 + 3] = var10; + var11[var12 + 1024 + 3] = var10; + var11[var12 + 1536 + 3] = var10; + } else if (var8 == 2) { + var11[var12 + 1536] = var10; + var11[var12 + 1536 + 1] = var10; + var11[var12 + 1536 + 2] = var10; + var11[var12 + 1536 + 3] = var10; } } } - - if (var0.overheadText != null && (var1 >= var76 || !var0.field974 && (Client.publicChatMode == 4 || !var0.isAutoChatting && (Client.publicChatMode == 0 || Client.publicChatMode == 3 || Client.publicChatMode == 1 && ((Player)var0).isFriend())))) { // L: 5087 5088 - var77 = var0.defaultHeight; // L: 5089 - class13.worldToScreen(var0.x, var0.y, var77); // L: 5091 - if (Client.viewportTempX > -1 && Client.overheadTextCount < Client.overheadTextLimit) { // L: 5093 - Client.overheadTextXOffsets[Client.overheadTextCount] = ReflectionCheck.fontBold12.stringWidth(var0.overheadText) / 2; // L: 5094 - Client.overheadTextAscents[Client.overheadTextCount] = ReflectionCheck.fontBold12.ascent; // L: 5095 - Client.overheadTextXs[Client.overheadTextCount] = Client.viewportTempX; // L: 5096 - Client.overheadTextYs[Client.overheadTextCount] = Client.viewportTempY; // L: 5097 - Client.overheadTextColors[Client.overheadTextCount] = var0.overheadTextColor; // L: 5098 - Client.overheadTextEffects[Client.overheadTextCount] = var0.overheadTextEffect; // L: 5099 - Client.overheadTextCyclesRemaining[Client.overheadTextCount] = var0.overheadTextCyclesRemaining; // L: 5100 - Client.overheadText[Client.overheadTextCount] = var0.overheadText; // L: 5101 - ++Client.overheadTextCount; // L: 5102 - } - } - - for (var77 = 0; var77 < 4; ++var77) { // L: 5106 - var78 = var0.hitSplatCycles[var77]; // L: 5107 - var12 = var0.hitSplatTypes[var77]; // L: 5108 - HitSplatDefinition var92 = null; // L: 5109 - int var93 = 0; // L: 5110 - if (var12 >= 0) { // L: 5111 - if (var78 <= Client.cycle) { // L: 5112 - continue; - } - - var92 = class258.method4654(var0.hitSplatTypes[var77]); // L: 5113 - var93 = var92.field3370; // L: 5114 - if (var92 != null && var92.transforms != null) { // L: 5115 - var92 = var92.transform(); // L: 5116 - if (var92 == null) { // L: 5117 - var0.hitSplatCycles[var77] = -1; // L: 5118 - continue; // L: 5119 - } - } - } else if (var78 < 0) { // L: 5123 - continue; - } - - int var15 = var0.hitSplatTypes2[var77]; // L: 5124 - HitSplatDefinition var16 = null; // L: 5125 - if (var15 >= 0) { // L: 5126 - var16 = class258.method4654(var15); // L: 5127 - if (var16 != null && var16.transforms != null) { // L: 5128 - var16 = var16.transform(); - } - } - - if (var78 - var93 <= Client.cycle) { // L: 5130 - if (var92 == null) { // L: 5131 - var0.hitSplatCycles[var77] = -1; // L: 5132 - } else { - var17 = var0.defaultHeight / 2; // L: 5135 - class13.worldToScreen(var0.x, var0.y, var17); // L: 5137 - if (Client.viewportTempX > -1) { // L: 5139 - if (var77 == 1) { // L: 5141 - Client.viewportTempY -= 20; // L: 5142 - } - - if (var77 == 2) { // L: 5144 - Client.viewportTempX -= 15; // L: 5145 - Client.viewportTempY -= 10; // L: 5146 - } - - if (var77 == 3) { // L: 5148 - Client.viewportTempX += 15; // L: 5149 - Client.viewportTempY -= 10; // L: 5150 - } - - Sprite var19 = null; // L: 5152 - Sprite var20 = null; // L: 5153 - Sprite var21 = null; // L: 5154 - Sprite var22 = null; // L: 5155 - var23 = 0; // L: 5156 - var24 = 0; // L: 5157 - int var25 = 0; // L: 5158 - int var26 = 0; // L: 5159 - int var27 = 0; // L: 5160 - int var28 = 0; // L: 5161 - int var29 = 0; // L: 5162 - int var30 = 0; // L: 5163 - Sprite var31 = null; // L: 5164 - Sprite var32 = null; // L: 5165 - Sprite var33 = null; // L: 5166 - Sprite var34 = null; // L: 5167 - int var35 = 0; // L: 5168 - int var36 = 0; // L: 5169 - int var37 = 0; // L: 5170 - int var38 = 0; // L: 5171 - int var39 = 0; // L: 5172 - int var40 = 0; // L: 5173 - int var41 = 0; // L: 5174 - int var42 = 0; // L: 5175 - int var43 = 0; // L: 5176 - var19 = var92.method4748(); // L: 5177 - int var44; - if (var19 != null) { // L: 5178 - var23 = var19.subWidth; // L: 5179 - var44 = var19.subHeight; // L: 5180 - if (var44 > var43) { // L: 5181 - var43 = var44; - } - - var27 = var19.xOffset; // L: 5182 - } - - var20 = var92.method4733(); // L: 5184 - if (var20 != null) { // L: 5185 - var24 = var20.subWidth; // L: 5186 - var44 = var20.subHeight; // L: 5187 - if (var44 > var43) { // L: 5188 - var43 = var44; - } - - var28 = var20.xOffset; // L: 5189 - } - - var21 = var92.method4731(); // L: 5191 - if (var21 != null) { // L: 5192 - var25 = var21.subWidth; // L: 5193 - var44 = var21.subHeight; // L: 5194 - if (var44 > var43) { // L: 5195 - var43 = var44; - } - - var29 = var21.xOffset; // L: 5196 - } - - var22 = var92.method4727(); // L: 5198 - if (var22 != null) { // L: 5199 - var26 = var22.subWidth; // L: 5200 - var44 = var22.subHeight; // L: 5201 - if (var44 > var43) { // L: 5202 - var43 = var44; - } - - var30 = var22.xOffset; // L: 5203 - } - - if (var16 != null) { // L: 5205 - var31 = var16.method4748(); // L: 5206 - if (var31 != null) { // L: 5207 - var35 = var31.subWidth; // L: 5208 - var44 = var31.subHeight; // L: 5209 - if (var44 > var43) { // L: 5210 - var43 = var44; - } - - var39 = var31.xOffset; // L: 5211 - } - - var32 = var16.method4733(); // L: 5213 - if (var32 != null) { // L: 5214 - var36 = var32.subWidth; // L: 5215 - var44 = var32.subHeight; // L: 5216 - if (var44 > var43) { // L: 5217 - var43 = var44; - } - - var40 = var32.xOffset; // L: 5218 - } - - var33 = var16.method4731(); // L: 5220 - if (var33 != null) { // L: 5221 - var37 = var33.subWidth; // L: 5222 - var44 = var33.subHeight; // L: 5223 - if (var44 > var43) { // L: 5224 - var43 = var44; - } - - var41 = var33.xOffset; // L: 5225 - } - - var34 = var16.method4727(); // L: 5227 - if (var34 != null) { // L: 5228 - var38 = var34.subWidth; // L: 5229 - var44 = var34.subHeight; // L: 5230 - if (var44 > var43) { // L: 5231 - var43 = var44; - } - - var42 = var34.xOffset; // L: 5232 - } - } - - Font var79 = var92.getFont(); // L: 5237 - if (var79 == null) { // L: 5238 - var79 = DevicePcmPlayerProvider.fontPlain11; - } - - Font var45; - if (var16 != null) { // L: 5239 - var45 = var16.getFont(); // L: 5240 - if (var45 == null) { // L: 5241 - var45 = DevicePcmPlayerProvider.fontPlain11; - } - } else { - var45 = DevicePcmPlayerProvider.fontPlain11; // L: 5243 - } - - String var46 = null; // L: 5244 - String var47 = null; // L: 5245 - boolean var48 = false; // L: 5246 - int var49 = 0; // L: 5247 - var46 = var92.getString(var0.hitSplatValues[var77]); // L: 5248 - int var94 = var79.stringWidth(var46); // L: 5249 - if (var16 != null) { // L: 5250 - var47 = var16.getString(var0.hitSplatValues2[var77]); // L: 5251 - var49 = var45.stringWidth(var47); // L: 5252 - } - - int var50 = 0; // L: 5254 - int var51 = 0; // L: 5255 - if (var24 > 0) { // L: 5256 - if (var21 == null && var22 == null) { // L: 5257 - var50 = 1; // L: 5258 - } else { - var50 = var94 / var24 + 1; - } - } - - if (var16 != null && var36 > 0) { // L: 5260 5261 - if (var33 == null && var34 == null) { // L: 5262 - var51 = 1; // L: 5263 - } else { - var51 = var49 / var36 + 1; - } - } - - int var52 = 0; // L: 5266 - int var53 = var52; // L: 5267 - if (var23 > 0) { // L: 5268 - var52 += var23; - } - - var52 += 2; // L: 5269 - int var54 = var52; // L: 5270 - if (var25 > 0) { // L: 5271 - var52 += var25; - } - - int var55 = var52; // L: 5272 - int var56 = var52; // L: 5273 - int var57; - if (var24 > 0) { // L: 5274 - var57 = var24 * var50; // L: 5275 - var52 += var57; // L: 5276 - var56 += (var57 - var94) / 2; // L: 5277 - } else { - var52 += var94; // L: 5280 - } - - var57 = var52; // L: 5282 - if (var26 > 0) { // L: 5283 - var52 += var26; - } - - int var58 = 0; // L: 5284 - int var59 = 0; // L: 5285 - int var60 = 0; // L: 5286 - int var61 = 0; // L: 5287 - int var62 = 0; // L: 5288 - int var63; - if (var16 != null) { // L: 5289 - var52 += 2; // L: 5290 - var58 = var52; // L: 5291 - if (var35 > 0) { // L: 5292 - var52 += var35; - } - - var52 += 2; // L: 5293 - var59 = var52; // L: 5294 - if (var37 > 0) { // L: 5295 - var52 += var37; - } - - var60 = var52; // L: 5296 - var62 = var52; // L: 5297 - if (var36 > 0) { // L: 5298 - var63 = var36 * var51; // L: 5299 - var52 += var63; // L: 5300 - var62 += (var63 - var49) / 2; // L: 5301 - } else { - var52 += var49; // L: 5304 - } - - var61 = var52; // L: 5306 - if (var38 > 0) { // L: 5307 - var52 += var38; - } - } - - var63 = var0.hitSplatCycles[var77] - Client.cycle; // L: 5309 - int var64 = var92.field3364 - var63 * var92.field3364 / var92.field3370; // L: 5310 - int var65 = var63 * var92.field3365 / var92.field3370 + -var92.field3365; // L: 5311 - int var66 = var64 + (var2 + Client.viewportTempX - (var52 >> 1)); // L: 5312 - int var67 = var65 + (var3 + Client.viewportTempY - 12); // L: 5313 - int var68 = var67; // L: 5314 - int var69 = var43 + var67; // L: 5315 - int var70 = var67 + var92.field3351 + 15; // L: 5316 - int var71 = var70 - var79.maxAscent; // L: 5317 - int var72 = var70 + var79.maxDescent; // L: 5318 - if (var71 < var67) { // L: 5319 - var68 = var71; - } - - if (var72 > var69) { // L: 5320 - var69 = var72; - } - - int var73 = 0; // L: 5321 - int var74; - int var75; - if (var16 != null) { // L: 5322 - var73 = var67 + var16.field3351 + 15; // L: 5323 - var74 = var73 - var45.maxAscent; // L: 5324 - var75 = var73 + var45.maxDescent; // L: 5325 - if (var74 < var68) { // L: 5326 - ; - } - - if (var75 > var69) { // L: 5327 - ; - } - } - - var74 = 255; // L: 5329 - if (var92.field3366 >= 0) { // L: 5330 - var74 = (var63 << 8) / (var92.field3370 - var92.field3366); - } - - if (var74 >= 0 && var74 < 255) { // L: 5331 - if (var19 != null) { // L: 5332 - var19.drawTransAt(var66 + var53 - var27, var67, var74); - } - - if (var21 != null) { // L: 5333 - var21.drawTransAt(var54 + var66 - var29, var67, var74); - } - - if (var20 != null) { // L: 5334 - for (var75 = 0; var75 < var50; ++var75) { // L: 5335 - var20.drawTransAt(var24 * var75 + (var66 + var55 - var28), var67, var74); // L: 5336 - } - } - - if (var22 != null) { // L: 5339 - var22.drawTransAt(var66 + var57 - var30, var67, var74); - } - - var79.drawAlpha(var46, var66 + var56, var70, var92.textColor, 0, var74); // L: 5340 - if (var16 != null) { // L: 5341 - if (var31 != null) { // L: 5342 - var31.drawTransAt(var66 + var58 - var39, var67, var74); - } - - if (var33 != null) { // L: 5343 - var33.drawTransAt(var66 + var59 - var41, var67, var74); - } - - if (var32 != null) { // L: 5344 - for (var75 = 0; var75 < var51; ++var75) { // L: 5345 - var32.drawTransAt(var75 * var36 + (var60 + var66 - var40), var67, var74); // L: 5346 - } - } - - if (var34 != null) { // L: 5349 - var34.drawTransAt(var66 + var61 - var42, var67, var74); - } - - var45.drawAlpha(var47, var62 + var66, var73, var16.textColor, 0, var74); // L: 5350 - } - } else { - if (var19 != null) { // L: 5354 - var19.drawTransBgAt(var66 + var53 - var27, var67); - } - - if (var21 != null) { // L: 5355 - var21.drawTransBgAt(var66 + var54 - var29, var67); - } - - if (var20 != null) { // L: 5356 - for (var75 = 0; var75 < var50; ++var75) { // L: 5357 - var20.drawTransBgAt(var24 * var75 + (var66 + var55 - var28), var67); // L: 5358 - } - } - - if (var22 != null) { // L: 5361 - var22.drawTransBgAt(var57 + var66 - var30, var67); - } - - var79.draw(var46, var66 + var56, var70, var92.textColor | -16777216, 0); // L: 5362 - if (var16 != null) { // L: 5363 - if (var31 != null) { // L: 5364 - var31.drawTransBgAt(var58 + var66 - var39, var67); - } - - if (var33 != null) { // L: 5365 - var33.drawTransBgAt(var59 + var66 - var41, var67); - } - - if (var32 != null) { // L: 5366 - for (var75 = 0; var75 < var51; ++var75) { // L: 5367 - var32.drawTransBgAt(var75 * var36 + (var66 + var60 - var40), var67); // L: 5368 - } - } - - if (var34 != null) { // L: 5371 - var34.drawTransBgAt(var66 + var61 - var42, var67); - } - - var45.draw(var47, var66 + var62, var73, var16.textColor | -16777216, 0); // L: 5372 - } - } - } - } - } - } - } - } // L: 5377 - @ObfuscatedName("ku") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "2141272771" - ) - @Export("Clan_leaveChat") - static final void Clan_leaveChat() { - PacketBufferNode var0 = class4.getPacketBufferNode(ClientPacket.field2329, Client.packetWriter.isaacCipher); // L: 11512 - var0.packetBuffer.writeByte(0); // L: 11513 - Client.packetWriter.addNode(var0); // L: 11514 - } // L: 11515 + var5 = ArchiveLoader.scene.getGameObjectTag(var0, var1, var2); + if (0L != var5) { + var7 = ArchiveLoader.scene.getObjectFlags(var0, var1, var2, var5); + var8 = var7 >> 6 & 3; + var9 = var7 & 31; + var10 = Occluder.Entity_unpackID(var5); + ObjectDefinition var24 = WorldMapDecoration.getObjectDefinition(var10); + int var19; + if (var24.mapSceneId != -1) { + IndexedSprite var20 = WorldMapRegion.mapSceneSprites[var24.mapSceneId]; + if (var20 != null) { + var13 = (var24.sizeX * 4 - var20.subWidth) / 2; + var19 = (var24.sizeY * 4 - var20.subHeight) / 2; + var20.drawAt(var1 * 4 + var13 + 48, (104 - var2 - var24.sizeY) * 4 + var19 + 48); + } + } else if (var9 == 9) { + var12 = 15658734; + if (FriendSystem.method1943(var5)) { + var12 = 15597568; + } + + int[] var18 = class25.sceneMinimapSprite.pixels; + var19 = var1 * 4 + (103 - var2) * 2048 + 24624; + if (var8 != 0 && var8 != 2) { + var18[var19] = var12; + var18[var19 + 1 + 512] = var12; + var18[var19 + 1024 + 2] = var12; + var18[var19 + 1536 + 3] = var12; + } else { + var18[var19 + 1536] = var12; + var18[var19 + 1 + 1024] = var12; + var18[var19 + 512 + 2] = var12; + var18[var19 + 3] = var12; + } + } + } + + var5 = ArchiveLoader.scene.getFloorDecorationTag(var0, var1, var2); + if (0L != var5) { + var7 = Occluder.Entity_unpackID(var5); + ObjectDefinition var21 = WorldMapDecoration.getObjectDefinition(var7); + if (var21.mapSceneId != -1) { + IndexedSprite var22 = WorldMapRegion.mapSceneSprites[var21.mapSceneId]; + if (var22 != null) { + var10 = (var21.sizeX * 4 - var22.subWidth) / 2; + int var23 = (var21.sizeY * 4 - var22.subHeight) / 2; + var22.drawAt(var1 * 4 + var10 + 48, var23 + (104 - var2 - var21.sizeY) * 4 + 48); + } + } + } + + } } diff --git a/runescape-client/src/main/java/class10.java b/runescape-client/src/main/java/class10.java index 03d3470f69..28117560d9 100644 --- a/runescape-client/src/main/java/class10.java +++ b/runescape-client/src/main/java/class10.java @@ -1,35 +1,35 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("e") +@ObfuscatedName("u") public class class10 { - @ObfuscatedName("f") + @ObfuscatedName("h") + final int field47; + @ObfuscatedName("v") final int field48; - @ObfuscatedName("b") - final int field49; - @ObfuscatedName("l") - final String field50; + @ObfuscatedName("x") + final String field49; @ObfuscatedSignature( - descriptor = "(Lkb;)V" + descriptor = "(Lkj;)V" ) class10(Buffer var1) { - this(var1.readUnsignedByte(), var1.readUnsignedByte(), var1.readStringCp1252NullTerminated()); // L: 19 - } // L: 20 + this(var1.readUnsignedByte(), var1.readUnsignedByte(), var1.readStringCp1252NullTerminated()); + } class10(int var1, int var2, String var3) { - this.field48 = var1; // L: 13 - this.field49 = var2; // L: 14 - this.field50 = var3; // L: 15 - } // L: 16 - - @ObfuscatedName("f") - String method134() { - return Integer.toHexString(this.field48) + Integer.toHexString(this.field49) + this.field50; // L: 23 + this.field47 = var1; + this.field48 = var2; + this.field49 = var3; } - @ObfuscatedName("b") - int method135() { - return this.field49; // L: 27 + @ObfuscatedName("h") + String method121() { + return Integer.toHexString(this.field47) + Integer.toHexString(this.field48) + this.field49; + } + + @ObfuscatedName("v") + int method114() { + return this.field48; } } diff --git a/runescape-client/src/main/java/class105.java b/runescape-client/src/main/java/class105.java index 5a1437d71e..88cf4978c5 100644 --- a/runescape-client/src/main/java/class105.java +++ b/runescape-client/src/main/java/class105.java @@ -1,50 +1,17 @@ import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("db") +@ObfuscatedName("dl") public class class105 { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Ljs;" + descriptor = "Ljn;" ) @Export("reflectionChecks") public static IterableNodeDeque reflectionChecks; - @ObfuscatedName("z") - @Export("ArchiveDiskActionHandler_thread") - static Thread ArchiveDiskActionHandler_thread; - @ObfuscatedName("md") - @ObfuscatedGetter( - intValue = 998916811 - ) - @Export("selectedSpellFlags") - static int selectedSpellFlags; static { - reflectionChecks = new IterableNodeDeque(); // L: 17 - } - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(II)Ljg;", - garbageValue = "-595128316" - ) - @Export("SequenceDefinition_get") - public static SequenceDefinition SequenceDefinition_get(int var0) { - SequenceDefinition var1 = (SequenceDefinition)SequenceDefinition.SequenceDefinition_cached.get((long)var0); // L: 35 - if (var1 != null) { // L: 36 - return var1; - } else { - byte[] var2 = SequenceDefinition.SequenceDefinition_archive.takeFile(12, var0); // L: 37 - var1 = new SequenceDefinition(); // L: 38 - if (var2 != null) { // L: 39 - var1.decode(new Buffer(var2)); - } - - var1.postDecode(); // L: 40 - SequenceDefinition.SequenceDefinition_cached.put(var1, (long)var0); // L: 41 - return var1; // L: 42 - } + reflectionChecks = new IterableNodeDeque(); } } diff --git a/runescape-client/src/main/java/class11.java b/runescape-client/src/main/java/class11.java index b63c9cd4af..65abac5534 100644 --- a/runescape-client/src/main/java/class11.java +++ b/runescape-client/src/main/java/class11.java @@ -1,5 +1,5 @@ import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("o") +@ObfuscatedName("e") public interface class11 { } diff --git a/runescape-client/src/main/java/class12.java b/runescape-client/src/main/java/class12.java index 9c40914d30..eb90b3b9ef 100644 --- a/runescape-client/src/main/java/class12.java +++ b/runescape-client/src/main/java/class12.java @@ -1,11 +1,11 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("n") +@ObfuscatedName("m") public interface class12 { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkb;)Lkb;" + descriptor = "(Lkj;)Lkj;" ) - Buffer vmethod145(Buffer var1); + Buffer vmethod123(Buffer var1); } diff --git a/runescape-client/src/main/java/class13.java b/runescape-client/src/main/java/class13.java index d70c1c857f..fb84e853d7 100644 --- a/runescape-client/src/main/java/class13.java +++ b/runescape-client/src/main/java/class13.java @@ -1,389 +1,152 @@ -import java.util.concurrent.Executors; -import java.util.concurrent.TimeUnit; +import java.applet.Applet; +import java.net.URL; import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import netscape.javascript.JSObject; -@ObfuscatedName("x") +@ObfuscatedName("c") public final class class13 { - @ObfuscatedName("m") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lgv;" + descriptor = "(Lib;B)V", + garbageValue = "2" ) - @Export("midiPcmStream") - public static MidiPcmStream midiPcmStream; - @ObfuscatedName("u") - @Export("SpriteBuffer_pixels") - static byte[][] SpriteBuffer_pixels; + public static void method129(AbstractArchive var0) { + ParamDefinition.ParamDefinition_archive = var0; + } - @ObfuscatedName("u") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-53" + descriptor = "(Ljava/lang/String;ILjava/lang/String;B)Z", + garbageValue = "-107" ) - public static void method150() { - WorldMapElement.WorldMapElement_cachedSprites.clear(); // L: 177 - } // L: 178 + static boolean method131(String var0, int var1, String var2) { + if (var1 == 0) { + try { + if (!class60.field439.startsWith("win")) { + throw new Exception(); + } else if (!var0.startsWith("http://") && !var0.startsWith("https://")) { + throw new Exception(); + } else { + String var13 = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789?&=,.%+-_#:/*"; - @ObfuscatedName("y") - @ObfuscatedSignature( - descriptor = "(Lfl;III)Ldh;", - garbageValue = "474300455" - ) - public static final PcmPlayer method146(TaskHandler var0, int var1, int var2) { - if (PcmPlayer.field1442 == 0) { // L: 45 - throw new IllegalStateException(); - } else if (var1 >= 0 && var1 < 2) { // L: 46 - if (var2 < 256) { // L: 47 - var2 = 256; + for (int var4 = 0; var4 < var0.length(); ++var4) { + if (var13.indexOf(var0.charAt(var4)) == -1) { + throw new Exception(); + } + } + + Runtime.getRuntime().exec("cmd /c start \"j\" \"" + var0 + "\""); + return true; + } + } catch (Throwable var8) { + return false; + } + } else if (var1 == 1) { + try { + Applet var7 = class60.applet; + Object[] var5 = new Object[]{(new URL(class60.applet.getCodeBase(), var0)).toString()}; + Object var3 = null; + return var3 != null; + } catch (Throwable var9) { + return false; + } + } else if (var1 == 2) { + try { + class60.applet.getAppletContext().showDocument(new URL(class60.applet.getCodeBase(), var0), "_blank"); + return true; + } catch (Exception var10) { + return false; + } + } else if (var1 == 3) { + try { + class56.method901(class60.applet, "loggedout"); + } catch (Throwable var12) { } try { - PcmPlayer var3 = class69.pcmPlayerProvider.player(); // L: 49 - var3.samples = new int[(PcmPlayer.PcmPlayer_stereo ? 2 : 1) * 256]; // L: 50 - var3.field1441 = var2; // L: 51 - var3.init(); // L: 52 - var3.capacity = (var2 & -1024) + 1024; // L: 53 - if (var3.capacity > 16384) { // L: 54 - var3.capacity = 16384; - } - - var3.open(var3.capacity); // L: 55 - if (FontName.field3694 > 0 && WorldMapDecoration.soundSystem == null) { // L: 56 - WorldMapDecoration.soundSystem = new SoundSystem(); // L: 57 - RunException.soundSystemExecutor = Executors.newScheduledThreadPool(1); // L: 58 - RunException.soundSystemExecutor.scheduleAtFixedRate(WorldMapDecoration.soundSystem, 0L, 10L, TimeUnit.MILLISECONDS); // L: 59 - } - - if (WorldMapDecoration.soundSystem != null) { // L: 61 - if (WorldMapDecoration.soundSystem.players[var1] != null) { // L: 62 - throw new IllegalArgumentException(); - } - - WorldMapDecoration.soundSystem.players[var1] = var3; // L: 63 - } - - return var3; // L: 65 - } catch (Throwable var4) { // L: 67 - return new PcmPlayer(); // L: 68 + class60.applet.getAppletContext().showDocument(new URL(class60.applet.getCodeBase(), var0), "_top"); + return true; + } catch (Exception var11) { + return false; } } else { throw new IllegalArgumentException(); } } - @ObfuscatedName("fe") + @ObfuscatedName("fm") @ObfuscatedSignature( - descriptor = "(Lcs;IB)V", - garbageValue = "-27" + descriptor = "(I)I", + garbageValue = "2039505638" ) - @Export("updateActorSequence") - static final void updateActorSequence(Actor var0, int var1) { - SequenceDefinition var2; - int var11; - if (var0.field1009 >= Client.cycle) { // L: 3904 - class236.method4265(var0); - } else if (var0.field1024 >= Client.cycle) { // L: 3905 - WorldMapID.method666(var0); + static int method132() { + 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.field666; } else { - var0.movementSequence = var0.idleSequence; // L: 3907 - if (var0.pathLength == 0) { // L: 3908 - var0.field978 = 0; // L: 3909 - } else { - label398: { - if (var0.sequence != -1 && var0.sequenceDelay == 0) { // L: 3912 - var2 = class105.SequenceDefinition_get(var0.sequence); // L: 3913 - if (var0.field1034 > 0 && var2.field3549 == 0) { // L: 3914 - ++var0.field978; // L: 3915 - break label398; // L: 3916 - } + return 10000; + } + } - if (var0.field1034 <= 0 && var2.field3550 == 0) { // L: 3918 - ++var0.field978; // L: 3919 - break label398; // L: 3920 - } - } - - var11 = var0.x; // L: 3923 - int var3 = var0.y; // L: 3924 - int var4 = var0.field1011 * 64 + var0.pathX[var0.pathLength - 1] * 128; // L: 3925 - int var5 = var0.field1011 * 64 + var0.pathY[var0.pathLength - 1] * 128; // L: 3926 - if (var11 < var4) { // L: 3927 - if (var3 < var5) { // L: 3928 - var0.orientation = 1280; - } else if (var3 > var5) { // L: 3929 - var0.orientation = 1792; - } else { - var0.orientation = 1536; // L: 3930 - } - } else if (var11 > var4) { // L: 3932 - if (var3 < var5) { // L: 3933 - var0.orientation = 768; - } else if (var3 > var5) { // L: 3934 - var0.orientation = 256; - } else { - var0.orientation = 512; // L: 3935 - } - } else if (var3 < var5) { // L: 3937 - var0.orientation = 1024; - } else if (var3 > var5) { // L: 3938 - var0.orientation = 0; - } - - byte var6 = var0.pathTraversed[var0.pathLength - 1]; // L: 3939 - if (var4 - var11 <= 256 && var4 - var11 >= -256 && var5 - var3 <= 256 && var5 - var3 >= -256) { // L: 3940 - int var7 = var0.orientation - var0.rotation & 2047; // L: 3947 - if (var7 > 1024) { // L: 3948 - var7 -= 2048; - } - - int var8 = var0.walkBackSequence; // L: 3949 - if (var7 >= -256 && var7 <= 256) { // L: 3950 - var8 = var0.walkSequence; - } else if (var7 >= 256 && var7 < 768) { // L: 3951 - var8 = var0.walkRightSequence; - } else if (var7 >= -768 && var7 <= -256) { // L: 3952 - var8 = var0.walkLeftSequence; - } - - if (var8 == -1) { // L: 3953 - var8 = var0.walkSequence; - } - - var0.movementSequence = var8; // L: 3954 - int var9 = 4; // L: 3955 - boolean var10 = true; // L: 3956 - if (var0 instanceof NPC) { // L: 3957 - var10 = ((NPC)var0).definition.isClickable; - } - - if (var10) { // L: 3958 - if (var0.orientation != var0.rotation && var0.targetIndex == -1 && var0.field1028 != 0) { // L: 3959 - var9 = 2; - } - - if (var0.pathLength > 2) { // L: 3960 - var9 = 6; - } - - if (var0.pathLength > 3) { // L: 3961 - var9 = 8; - } - - if (var0.field978 > 0 && var0.pathLength > 1) { // L: 3962 - var9 = 8; // L: 3963 - --var0.field978; // L: 3964 - } - } else { - if (var0.pathLength > 1) { // L: 3968 - var9 = 6; - } - - if (var0.pathLength > 2) { // L: 3969 - var9 = 8; - } - - if (var0.field978 > 0 && var0.pathLength > 1) { // L: 3970 - var9 = 8; // L: 3971 - --var0.field978; // L: 3972 - } - } - - if (var6 == 2) { // L: 3975 - var9 <<= 1; - } - - if (var9 >= 8 && var0.movementSequence == var0.walkSequence && var0.runSequence != -1) { // L: 3976 - var0.movementSequence = var0.runSequence; - } - - if (var4 != var11 || var3 != var5) { // L: 3977 - if (var11 < var4) { // L: 3978 - var0.x += var9; // L: 3979 - if (var0.x > var4) { // L: 3980 - var0.x = var4; - } - } else if (var11 > var4) { // L: 3982 - var0.x -= var9; // L: 3983 - if (var0.x < var4) { // L: 3984 - var0.x = var4; - } - } - - if (var3 < var5) { // L: 3986 - var0.y += var9; // L: 3987 - if (var0.y > var5) { // L: 3988 - var0.y = var5; - } - } else if (var3 > var5) { // L: 3990 - var0.y -= var9; // L: 3991 - if (var0.y < var5) { // L: 3992 - var0.y = var5; - } - } - } - - if (var4 == var0.x && var5 == var0.y) { // L: 3995 - --var0.pathLength; // L: 3996 - if (var0.field1034 > 0) { // L: 3997 - --var0.field1034; - } - } - } else { - var0.x = var4; // L: 3941 - var0.y = var5; // L: 3942 - --var0.pathLength; // L: 3943 - if (var0.field1034 > 0) { // L: 3944 - --var0.field1034; - } - } - } - } + @ObfuscatedName("gi") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "37077922" + ) + @Export("setWindowedMode") + static void setWindowedMode(int var0) { + Client.field861 = 0L; + if (var0 >= 2) { + Client.isResizable = true; + } else { + Client.isResizable = false; } - if (var0.x < 128 || var0.y < 128 || var0.x >= 13184 || var0.y >= 13184) { // L: 4000 - var0.sequence = -1; // L: 4001 - var0.spotAnimation = -1; // L: 4002 - var0.field1009 = 0; // L: 4003 - var0.field1024 = 0; // L: 4004 - var0.x = var0.pathX[0] * 128 + var0.field1011 * 64; // L: 4005 - var0.y = var0.field1011 * 64 + var0.pathY[0] * 128; // L: 4006 - var0.method1845(); // L: 4007 + if (SoundSystem.getWindowedMode() == 1) { + WorldMapIcon_0.client.setMaxCanvasSize(765, 503); + } else { + WorldMapIcon_0.client.setMaxCanvasSize(7680, 2160); } - if (PlayerType.localPlayer == var0 && (var0.x < 1536 || var0.y < 1536 || var0.x >= 11776 || var0.y >= 11776)) { // L: 4009 4010 - var0.sequence = -1; // L: 4011 - var0.spotAnimation = -1; // L: 4012 - var0.field1009 = 0; // L: 4013 - var0.field1024 = 0; // L: 4014 - var0.x = var0.pathX[0] * 128 + var0.field1011 * 64; // L: 4015 - var0.y = var0.pathY[0] * 128 + var0.field1011 * 64; // L: 4016 - var0.method1845(); // L: 4017 - } - - GameObject.method3415(var0); // L: 4020 - var0.isWalking = false; // L: 4022 - if (var0.movementSequence != -1) { // L: 4023 - var2 = class105.SequenceDefinition_get(var0.movementSequence); // L: 4024 - if (var2 != null && var2.frameIds != null) { // L: 4025 - ++var0.movementFrameCycle; // L: 4026 - if (var0.movementFrame < var2.frameIds.length && var0.movementFrameCycle > var2.frameLengths[var0.movementFrame]) { // L: 4027 - var0.movementFrameCycle = 1; // L: 4028 - ++var0.movementFrame; // L: 4029 - UserComparator6.addSequenceSoundEffect(var2, var0.movementFrame, var0.x, var0.y); // L: 4030 - } - - if (var0.movementFrame >= var2.frameIds.length) { // L: 4032 - var0.movementFrameCycle = 0; // L: 4033 - var0.movementFrame = 0; // L: 4034 - UserComparator6.addSequenceSoundEffect(var2, var0.movementFrame, var0.x, var0.y); // L: 4035 - } - } else { - var0.movementSequence = -1; // L: 4038 - } - } - - if (var0.spotAnimation != -1 && Client.cycle >= var0.field1015) { // L: 4040 - if (var0.spotAnimationFrame < 0) { // L: 4041 - var0.spotAnimationFrame = 0; - } - - var11 = HealthBarUpdate.SpotAnimationDefinition_get(var0.spotAnimation).sequence; // L: 4042 - if (var11 != -1) { // L: 4043 - SequenceDefinition var12 = class105.SequenceDefinition_get(var11); // L: 4044 - if (var12 != null && var12.frameIds != null) { // L: 4045 - ++var0.spotAnimationFrameCycle; // L: 4046 - if (var0.spotAnimationFrame < var12.frameIds.length && var0.spotAnimationFrameCycle > var12.frameLengths[var0.spotAnimationFrame]) { // L: 4047 - var0.spotAnimationFrameCycle = 1; // L: 4048 - ++var0.spotAnimationFrame; // L: 4049 - UserComparator6.addSequenceSoundEffect(var12, var0.spotAnimationFrame, var0.x, var0.y); // L: 4050 - } - - if (var0.spotAnimationFrame >= var12.frameIds.length && (var0.spotAnimationFrame < 0 || var0.spotAnimationFrame >= var12.frameIds.length)) { // L: 4052 4053 - var0.spotAnimation = -1; - } - } else { - var0.spotAnimation = -1; // L: 4056 - } - } else { - var0.spotAnimation = -1; // L: 4058 - } - } - - if (var0.sequence != -1 && var0.sequenceDelay <= 1) { // L: 4060 - var2 = class105.SequenceDefinition_get(var0.sequence); // L: 4061 - if (var2.field3549 == 1 && var0.field1034 > 0 && var0.field1009 <= Client.cycle && var0.field1024 < Client.cycle) { // L: 4062 4063 - var0.sequenceDelay = 1; // L: 4064 - return; // L: 4091 - } - } - - if (var0.sequence != -1 && var0.sequenceDelay == 0) { // L: 4069 - var2 = class105.SequenceDefinition_get(var0.sequence); // L: 4070 - if (var2 != null && var2.frameIds != null) { // L: 4071 - ++var0.sequenceFrameCycle; // L: 4072 - if (var0.sequenceFrame < var2.frameIds.length && var0.sequenceFrameCycle > var2.frameLengths[var0.sequenceFrame]) { // L: 4073 - var0.sequenceFrameCycle = 1; // L: 4074 - ++var0.sequenceFrame; // L: 4075 - UserComparator6.addSequenceSoundEffect(var2, var0.sequenceFrame, var0.x, var0.y); // L: 4076 - } - - if (var0.sequenceFrame >= var2.frameIds.length) { // L: 4078 - var0.sequenceFrame -= var2.frameCount; // L: 4079 - ++var0.field1022; // L: 4080 - if (var0.field1022 >= var2.field3547) { // L: 4081 - var0.sequence = -1; - } else if (var0.sequenceFrame >= 0 && var0.sequenceFrame < var2.frameIds.length) { // L: 4082 - UserComparator6.addSequenceSoundEffect(var2, var0.sequenceFrame, var0.x, var0.y); // L: 4083 - } else { - var0.sequence = -1; - } - } - - var0.isWalking = var2.field3544; // L: 4085 - } else { - var0.sequence = -1; // L: 4087 - } - } - - if (var0.sequenceDelay > 0) { - --var0.sequenceDelay; // L: 4089 + if (Client.gameState >= 25) { + MouseRecorder.method1264(); } } - @ObfuscatedName("gu") + @ObfuscatedName("kz") @ObfuscatedSignature( - descriptor = "(IIII)V", - garbageValue = "966303255" + descriptor = "(Lhe;III)V", + garbageValue = "912859307" ) - @Export("worldToScreen") - static final void worldToScreen(int var0, int var1, int var2) { - if (var0 >= 128 && var1 >= 128 && var0 <= 13056 && var1 <= 13056) { // L: 5393 - int var3 = GrandExchangeOfferWorldComparator.getTileHeight(var0, var1, GrandExchangeOfferUnitPriceComparator.Client_plane) - var2; // L: 5398 - var0 -= ItemContainer.cameraX; // L: 5399 - var3 -= ChatChannel.cameraY; // L: 5400 - var1 -= WorldMapManager.cameraZ; // L: 5401 - int var4 = Rasterizer3D.Rasterizer3D_sine[World.cameraPitch]; // L: 5402 - int var5 = Rasterizer3D.Rasterizer3D_cosine[World.cameraPitch]; // L: 5403 - int var6 = Rasterizer3D.Rasterizer3D_sine[ViewportMouse.cameraYaw]; // L: 5404 - int var7 = Rasterizer3D.Rasterizer3D_cosine[ViewportMouse.cameraYaw]; // L: 5405 - int var8 = var0 * var7 + var6 * var1 >> 16; // L: 5406 - var1 = var7 * var1 - var0 * var6 >> 16; // L: 5407 - var0 = var8; // L: 5408 - var8 = var5 * var3 - var4 * var1 >> 16; // L: 5409 - var1 = var3 * var4 + var5 * var1 >> 16; // L: 5410 - if (var1 >= 50) { // L: 5412 - Client.viewportTempX = var0 * Client.viewportZoom / var1 + Client.viewportWidth / 2; // L: 5413 - Client.viewportTempY = var8 * Client.viewportZoom / var1 + Client.viewportHeight / 2; // L: 5414 - } else { - Client.viewportTempX = -1; // L: 5417 - Client.viewportTempY = -1; // L: 5418 - } + @Export("clickWidget") + static final void clickWidget(Widget var0, int var1, int var2) { + if (Client.clickedWidget == null && !Client.isMenuOpen) { + if (var0 != null && Player.method1351(var0) != null) { + Client.clickedWidget = var0; + Client.clickedWidgetParent = Player.method1351(var0); + Client.widgetClickX = var1; + Client.widgetClickY = var2; + ScriptFrame.widgetDragDuration = 0; + Client.isDraggingWidget = false; + int var3 = WorldMapSprite.method463(); + if (var3 != -1) { + WorldMapSection1.tempMenuAction = new MenuAction(); + WorldMapSection1.tempMenuAction.param0 = Client.menuArguments1[var3]; + WorldMapSection1.tempMenuAction.param1 = Client.menuArguments2[var3]; + WorldMapSection1.tempMenuAction.opcode = Client.menuOpcodes[var3]; + WorldMapSection1.tempMenuAction.identifier = Client.menuIdentifiers[var3]; + WorldMapSection1.tempMenuAction.action = Client.menuActions[var3]; + } - } else { - Client.viewportTempX = -1; // L: 5394 - Client.viewportTempY = -1; // L: 5395 + } } - } // L: 5396 5420 + } } diff --git a/runescape-client/src/main/java/class155.java b/runescape-client/src/main/java/class155.java index af980e7ccd..a4da1cdce8 100644 --- a/runescape-client/src/main/java/class155.java +++ b/runescape-client/src/main/java/class155.java @@ -1,7 +1,7 @@ import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("ee") +@ObfuscatedName("en") public interface class155 { - @ObfuscatedName("f") - void method3450(Object var1); + @ObfuscatedName("h") + void method3411(Object var1); } diff --git a/runescape-client/src/main/java/class169.java b/runescape-client/src/main/java/class169.java index f125071cac..edbc476349 100644 --- a/runescape-client/src/main/java/class169.java +++ b/runescape-client/src/main/java/class169.java @@ -2,132 +2,130 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("fz") +@ObfuscatedName("fq") public enum class169 implements Enumerated { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lfz;" + descriptor = "Lfq;" ) - field2033(2, 0), - @ObfuscatedName("b") + field2025(0, 0), + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lfz;" + descriptor = "Lfq;" ) - field2029(0, 1), - @ObfuscatedName("l") + field2019(3, 1), + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lfz;" + descriptor = "Lfq;" ) - field2028(1, 2), - @ObfuscatedName("m") + field2021(1, 2), + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Lfz;" + descriptor = "Lfq;" ) - field2034(3, 3); + field2020(2, 3); - @ObfuscatedName("ad") - @ObfuscatedGetter( - intValue = -1161977131 + @ObfuscatedName("ec") + @ObfuscatedSignature( + descriptor = "Lil;" ) - static int field2035; - @ObfuscatedName("z") + @Export("archive17") + static Archive archive17; + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 1105831857 + intValue = -53306941 ) - public final int field2032; - @ObfuscatedName("q") + public final int field2022; + @ObfuscatedName("j") @ObfuscatedGetter( - intValue = -1075265281 + intValue = -2018130907 ) @Export("id") final int id; class169(int var3, int var4) { - this.field2032 = var3; // L: 16 - this.id = var4; // L: 17 - } // L: 18 + this.field2022 = var3; + this.id = var4; + } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "23" + descriptor = "(I)I", + garbageValue = "-275768542" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.id; // L: 21 + return this.id; } - @ObfuscatedName("b") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "19136995" + descriptor = "(Lib;Lib;Ljava/lang/String;Ljava/lang/String;B)Lku;", + garbageValue = "35" ) - public static void method3571(int var0, int var1) { - VarbitDefinition var3 = (VarbitDefinition)VarbitDefinition.VarbitDefinition_cached.get((long)var0); // L: 48 - VarbitDefinition var2; - if (var3 != null) { // L: 49 - var2 = var3; // L: 50 - } else { - byte[] var4 = VarbitDefinition.VarbitDefinition_archive.takeFile(14, var0); // L: 53 - var3 = new VarbitDefinition(); // L: 54 - if (var4 != null) { // L: 55 - var3.decode(new Buffer(var4)); - } + public static Font method3534(AbstractArchive var0, AbstractArchive var1, String var2, String var3) { + int var4 = var0.getGroupId(var2); + int var5 = var0.getFileId(var4, var3); + return PrivateChatMode.method5934(var0, var1, var4, var5); + } - VarbitDefinition.VarbitDefinition_cached.put(var3, (long)var0); // L: 56 - var2 = var3; // L: 57 - } - - int var8 = var2.baseVar; // L: 60 - int var5 = var2.startBit; // L: 61 - int var6 = var2.endBit; // L: 62 - int var7 = Varps.Varps_masks[var6 - var5]; // L: 63 - if (var1 < 0 || var1 > var7) { // L: 64 - var1 = 0; - } - - var7 <<= var5; // L: 65 - Varps.Varps_main[var8] = Varps.Varps_main[var8] & ~var7 | var1 << var5 & var7; // L: 66 - } // L: 67 - - @ObfuscatedName("ak") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(ILco;ZB)I", - garbageValue = "-118" + descriptor = "([BIILeo;[Lfo;I)V", + garbageValue = "-1437204785" ) - static int method3572(int var0, Script var1, boolean var2) { - int var3; - if (var0 == ScriptOpcodes.CAM_FORCEANGLE) { // L: 3153 - MilliClock.Interpreter_intStackSize -= 2; // L: 3154 - var3 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 3155 - int var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 3156 - if (!Client.isCameraLocked) { // L: 3157 - Client.camAngleX = var3; // L: 3158 - Client.camAngleY = var4; // L: 3159 + static final void method3533(byte[] var0, int var1, int var2, Scene var3, CollisionMap[] var4) { + Buffer var5 = new Buffer(var0); + int var6 = -1; + + while (true) { + int var7 = var5.method5557(); + if (var7 == 0) { + return; } - return 1; // L: 3161 - } else if (var0 == ScriptOpcodes.CAM_GETANGLE_XA) { // L: 3163 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.camAngleX; // L: 3164 - return 1; // L: 3165 - } else if (var0 == ScriptOpcodes.CAM_GETANGLE_YA) { // L: 3167 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.camAngleY; // L: 3168 - return 1; // L: 3169 - } else if (var0 == ScriptOpcodes.CAM_SETFOLLOWHEIGHT) { // L: 3171 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 3172 - if (var3 < 0) { // L: 3173 - var3 = 0; - } + var6 += var7; + int var8 = 0; - Client.camFollowHeight = var3; // L: 3174 - return 1; // L: 3175 - } else if (var0 == ScriptOpcodes.CAM_GETFOLLOWHEIGHT) { // L: 3177 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.camFollowHeight; // L: 3178 - return 1; // L: 3179 - } else { - return 2; // L: 3181 + while (true) { + int var9 = var5.readUShortSmart(); + if (var9 == 0) { + break; + } + + var8 += var9 - 1; + int var10 = var8 & 63; + int var11 = var8 >> 6 & 63; + int var12 = var8 >> 12; + int var13 = var5.readUnsignedByte(); + int var14 = var13 >> 2; + int var15 = var13 & 3; + int var16 = var11 + var1; + int var17 = var10 + var2; + if (var16 > 0 && var17 > 0 && var16 < 103 && var17 < 103) { + int var18 = var12; + if ((Tiles.Tiles_renderFlags[1][var16][var17] & 2) == 2) { + var18 = var12 - 1; + } + + CollisionMap var19 = null; + if (var18 >= 0) { + var19 = var4[var18]; + } + + class7.method90(var12, var16, var17, var6, var15, var14, var3, var19); + } + } } } + + @ObfuscatedName("jz") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "725246299" + ) + static boolean method3529() { + return Client.tapToDrop || KeyHandler.KeyHandler_pressedKeys[81]; + } } diff --git a/runescape-client/src/main/java/class170.java b/runescape-client/src/main/java/class170.java index e3988116ff..22ae698ed4 100644 --- a/runescape-client/src/main/java/class170.java +++ b/runescape-client/src/main/java/class170.java @@ -1,5 +1,5 @@ import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("fd") +@ObfuscatedName("fh") public interface class170 { } diff --git a/runescape-client/src/main/java/class171.java b/runescape-client/src/main/java/class171.java index 5711ba3cc5..329445b918 100644 --- a/runescape-client/src/main/java/class171.java +++ b/runescape-client/src/main/java/class171.java @@ -2,18 +2,21 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fe") +@ObfuscatedName("fy") public class class171 implements class170 { - @ObfuscatedName("hd") + @ObfuscatedName("js") @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "-1877711272" + descriptor = "Lhe;" ) - @Export("resumePauseWidget") - static void resumePauseWidget(int var0, int var1) { - PacketBufferNode var2 = class4.getPacketBufferNode(ClientPacket.field2253, Client.packetWriter.isaacCipher); // L: 8822 - var2.packetBuffer.method5674(var1); // L: 8823 - var2.packetBuffer.method5684(var0); // L: 8824 - Client.packetWriter.addNode(var2); // L: 8825 - } // L: 8826 + @Export("dragInventoryWidget") + static Widget dragInventoryWidget; + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(III)Z", + garbageValue = "-1627436603" + ) + static boolean method3535(int var0, int var1) { + return var0 != 4 || var1 < 8; + } } diff --git a/runescape-client/src/main/java/class182.java b/runescape-client/src/main/java/class182.java index f6afebdf96..a49cf8cdcb 100644 --- a/runescape-client/src/main/java/class182.java +++ b/runescape-client/src/main/java/class182.java @@ -1,130 +1,47 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gs") +@ObfuscatedName("gc") public class class182 { - @ObfuscatedName("l") + @ObfuscatedName("x") @Export("directions") - static int[][] directions; - @ObfuscatedName("m") + public static int[][] directions; + @ObfuscatedName("w") @Export("distances") - static int[][] distances; - @ObfuscatedName("q") + public static int[][] distances; + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -1047012721 + intValue = -611809779 ) - static int field2122; - @ObfuscatedName("c") + public static int field2115; + @ObfuscatedName("j") + @ObfuscatedGetter( + intValue = -405492077 + ) + public static int field2121; + @ObfuscatedName("p") @Export("bufferX") - static int[] bufferX; - @ObfuscatedName("u") + public static int[] bufferX; + @ObfuscatedName("l") @Export("bufferY") - static int[] bufferY; + public static int[] bufferY; + @ObfuscatedName("gj") + @ObfuscatedGetter( + intValue = -1967646503 + ) + static int field2112; + @ObfuscatedName("lx") + @ObfuscatedGetter( + intValue = -652373903 + ) + @Export("menuHeight") + static int menuHeight; static { - directions = new int[128][128]; // L: 6 - distances = new int[128][128]; // L: 7 - bufferX = new int[4096]; // L: 11 - bufferY = new int[4096]; // L: 12 - } - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(Liw;Liw;S)V", - garbageValue = "19317" - ) - public static void method3716(AbstractArchive var0, AbstractArchive var1) { - SpotAnimationDefinition.SpotAnimationDefinition_archive = var0; // L: 32 - SpotAnimationDefinition.SpotAnimationDefinition_modelArchive = var1; // L: 33 - } // L: 34 - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(CLgb;I)C", - garbageValue = "1155060289" - ) - @Export("standardizeChar") - static char standardizeChar(char var0, Language var1) { - if (var0 >= 192 && var0 <= 255) { // L: 69 - if (var0 >= 192 && var0 <= 198) { // L: 70 - return 'A'; - } - - if (var0 == 199) { // L: 71 - return 'C'; - } - - if (var0 >= 200 && var0 <= 203) { // L: 72 - return 'E'; - } - - if (var0 >= 204 && var0 <= 207) { // L: 73 - return 'I'; - } - - if (var0 == 209 && var1 != Language.Language_ES) { // L: 74 - return 'N'; - } - - if (var0 >= 210 && var0 <= 214) { // L: 75 - return 'O'; - } - - if (var0 >= 217 && var0 <= 220) { // L: 76 - return 'U'; - } - - if (var0 == 221) { // L: 77 - return 'Y'; - } - - if (var0 == 223) { // L: 78 - return 's'; - } - - if (var0 >= 224 && var0 <= 230) { // L: 79 - return 'a'; - } - - if (var0 == 231) { // L: 80 - return 'c'; - } - - if (var0 >= 232 && var0 <= 235) { // L: 81 - return 'e'; - } - - if (var0 >= 236 && var0 <= 239) { // L: 82 - return 'i'; - } - - if (var0 == 241 && var1 != Language.Language_ES) { // L: 83 - return 'n'; - } - - if (var0 >= 242 && var0 <= 246) { // L: 84 - return 'o'; - } - - if (var0 >= 249 && var0 <= 252) { // L: 85 - return 'u'; - } - - if (var0 == 253 || var0 == 255) { // L: 86 - return 'y'; - } - } - - if (var0 == 338) { // L: 88 - return 'O'; - } else if (var0 == 339) { // L: 89 - return 'o'; - } else if (var0 == 376) { // L: 90 - return 'Y'; - } else { - return var0; // L: 91 - } + directions = new int[128][128]; + distances = new int[128][128]; + bufferX = new int[4096]; + bufferY = new int[4096]; } } diff --git a/runescape-client/src/main/java/class190.java b/runescape-client/src/main/java/class190.java index 69324ebce1..e3f3d73633 100644 --- a/runescape-client/src/main/java/class190.java +++ b/runescape-client/src/main/java/class190.java @@ -1,5 +1,5 @@ import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("gt") +@ObfuscatedName("go") public interface class190 { } diff --git a/runescape-client/src/main/java/class194.java b/runescape-client/src/main/java/class194.java index d8a2b90451..73e35cd580 100644 --- a/runescape-client/src/main/java/class194.java +++ b/runescape-client/src/main/java/class194.java @@ -2,70 +2,70 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gg") +@ObfuscatedName("gs") public class class194 { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lgg;" + descriptor = "Lgs;" ) - public static final class194 field2356; - @ObfuscatedName("b") + public static final class194 field2348; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lgg;" + descriptor = "Lgs;" + ) + public static final class194 field2342; + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "Lgs;" + ) + public static final class194 field2344; + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "Lgs;" + ) + public static final class194 field2350; + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "Lgs;" + ) + public static final class194 field2346; + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "Lgs;" + ) + public static final class194 field2345; + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "Lgs;" + ) + public static final class194 field2343; + @ObfuscatedName("p") + @ObfuscatedSignature( + descriptor = "Lgs;" ) public static final class194 field2349; @ObfuscatedName("l") @ObfuscatedSignature( - descriptor = "Lgg;" + descriptor = "Lgs;" ) - public static final class194 field2359; - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "Lgg;" - ) - public static final class194 field2348; + public static final class194 field2347; @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "Lgg;" - ) - public static final class194 field2352; - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "Lgg;" + descriptor = "Lgs;" ) public static final class194 field2351; - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "Lgg;" - ) - public static final class194 field2354; - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "Lgg;" - ) - public static final class194 field2353; - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "Lgg;" - ) - public static final class194 field2355; - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "Lgg;" - ) - public static final class194 field2357; static { - field2356 = new class194(3); // L: 5 - field2349 = new class194(6); // L: 6 - field2359 = new class194(2); // L: 7 - field2348 = new class194(4); // L: 8 - field2352 = new class194(15); // L: 9 - field2351 = new class194(5); // L: 10 - field2354 = new class194(4); // L: 11 - field2353 = new class194(5); // L: 12 - field2355 = new class194(14); // L: 13 - field2357 = new class194(7); // L: 14 + field2348 = new class194(3); + field2342 = new class194(5); + field2344 = new class194(14); + field2350 = new class194(7); + field2346 = new class194(15); + field2345 = new class194(5); + field2343 = new class194(4); + field2349 = new class194(6); + field2347 = new class194(2); + field2351 = new class194(4); } @ObfuscatedSignature( @@ -73,37 +73,39 @@ public class class194 { garbageValue = "3" ) class194(int var1) { - } // L: 20 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "-893482237" - ) - public static int method3753(int var0, int var1) { - int var2; - for (var2 = 1; var1 > 1; var1 >>= 1) { // L: 24 25 28 - if ((var1 & 1) != 0) { - var2 = var0 * var2; // L: 26 - } - - var0 *= var0; // L: 27 - } - - if (var1 == 1) { // L: 30 - return var0 * var2; - } else { - return var2; // L: 31 - } } - @ObfuscatedName("b") + @ObfuscatedName("iz") @ObfuscatedSignature( - descriptor = "(II)Lij;", - garbageValue = "1718964805" + descriptor = "(IIIII)V", + garbageValue = "1797863012" ) - @Export("WorldMapElement_get") - public static WorldMapElement WorldMapElement_get(int var0) { - return var0 >= 0 && var0 < WorldMapElement.WorldMapElement_cached.length && WorldMapElement.WorldMapElement_cached[var0] != null ? WorldMapElement.WorldMapElement_cached[var0] : new WorldMapElement(var0); // L: 62 63 + @Export("selectSpell") + static void selectSpell(int var0, int var1, int var2, int var3) { + Widget var4 = class92.getWidgetChild(var0, var1); + if (var4 != null && var4.onTargetEnter != null) { + ScriptEvent var5 = new ScriptEvent(); + var5.widget = var4; + var5.args = var4.onTargetEnter; + class22.runScriptEvent(var5); + } + + Client.field836 = var3; + Client.isSpellSelected = true; + MouseHandler.selectedSpellWidget = var0; + Client.selectedSpellChildIndex = var1; + Player.selectedSpellFlags = var2; + CollisionMap.invalidateWidget(var4); + } + + @ObfuscatedName("kg") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-1005104193" + ) + static final void method3676(int var0) { + var0 = Math.min(Math.max(var0, 0), 127); + Timer.clientPreferences.areaSoundEffectsVolume = var0; + GrandExchangeOffer.savePreferences(); } } diff --git a/runescape-client/src/main/java/class195.java b/runescape-client/src/main/java/class195.java index 9c81ca1acc..aca8b0f83d 100644 --- a/runescape-client/src/main/java/class195.java +++ b/runescape-client/src/main/java/class195.java @@ -1,121 +1,101 @@ -import java.security.SecureRandom; import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gr") +@ObfuscatedName("gk") public class class195 { - @ObfuscatedName("qx") + @ObfuscatedName("p") + @Export("Widget_loadedInterfaces") + public static boolean[] Widget_loadedInterfaces; + @ObfuscatedName("em") @ObfuscatedSignature( - descriptor = "Ldh;" + descriptor = "Lil;" ) - @Export("pcmPlayer0") - static PcmPlayer pcmPlayer0; - @ObfuscatedName("e") - @Export("musicTrackBoolean") - public static boolean musicTrackBoolean; - @ObfuscatedName("eg") - @Export("secureRandom") - static SecureRandom secureRandom; + @Export("archive19") + static Archive archive19; - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "([Lga;II)Lga;", - garbageValue = "2137068077" + descriptor = "(I)V", + garbageValue = "1214913884" ) - @Export("findEnumerated") - public static Enumerated findEnumerated(Enumerated[] var0, int var1) { - Enumerated[] var2 = var0; // L: 17 + static void method3680() { + class248.field3219 = new int[2000]; + int var0 = 0; + int var1 = 240; - for (int var3 = 0; var3 < var2.length; ++var3) { // L: 18 - Enumerated var4 = var2[var3]; // L: 19 - if (var1 == var4.rsOrdinal()) { - return var4; // L: 21 + int var3; + for (byte var2 = 12; var0 < 16; var1 -= var2) { + var3 = class2.method23((double)((float)var1 / 360.0F), 0.9998999834060669D, (double)(0.425F * (float)var0 / 16.0F + 0.075F)); + class248.field3219[var0] = var3; + ++var0; + } + + var1 = 48; + + for (int var5 = var1 / 6; var0 < class248.field3219.length; var1 -= var5) { + var3 = var0 * 2; + + for (int var4 = class2.method23((double)((float)var1 / 360.0F), 0.9998999834060669D, 0.5D); var0 < var3 && var0 < class248.field3219.length; ++var0) { + class248.field3219[var0] = var4; } } - return null; // L: 25 } - @ObfuscatedName("f") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "64" + descriptor = "(II)Lbg;", + garbageValue = "36521879" ) - @Export("Widget_hasContinueOption") - public static boolean Widget_hasContinueOption(int var0) { - return (var0 & 1) != 0; // L: 9 + @Export("Messages_getMessage") + static Message Messages_getMessage(int var0) { + return (Message)Messages.Messages_hashTable.get((long)var0); } - @ObfuscatedName("b") + @ObfuscatedName("m") @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;I)Z", - garbageValue = "461882503" + descriptor = "(IB)Ljava/lang/String;", + garbageValue = "1" ) - @Export("isNumber") - public static boolean isNumber(CharSequence var0) { - boolean var2 = false; // L: 37 - boolean var3 = false; // L: 38 - int var4 = 0; // L: 39 - int var5 = var0.length(); // L: 40 - int var6 = 0; + @Export("inventoryQuantityFormat") + static final String inventoryQuantityFormat(int var0) { + if (var0 < 100000) { + return "" + var0 + ""; + } else { + return var0 < 10000000 ? "" + var0 / 1000 + "K" + "" : "" + var0 / 1000000 + "M" + ""; + } + } - boolean var1; - while (true) { - if (var6 >= var5) { - var1 = var3; // L: 70 - break; - } + @ObfuscatedName("ko") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-4544721" + ) + static void method3681() { + for (InterfaceParent var0 = (InterfaceParent)Client.interfaceParents.first(); var0 != null; var0 = (InterfaceParent)Client.interfaceParents.next()) { + int var1 = var0.group; + if (class41.loadInterface(var1)) { + boolean var2 = true; + Widget[] var3 = class9.Widget_interfaceComponents[var1]; - label84: { - char var7 = var0.charAt(var6); // L: 42 - if (var6 == 0) { // L: 43 - if (var7 == '-') { // L: 44 - var2 = true; // L: 45 - break label84; - } - - if (var7 == '+') { // L: 48 - break label84; - } - } - - int var9; - if (var7 >= '0' && var7 <= '9') { // L: 50 - var9 = var7 - '0'; - } else if (var7 >= 'A' && var7 <= 'Z') { // L: 51 - var9 = var7 - '7'; - } else { - if (var7 < 'a' || var7 > 'z') { // L: 52 - var1 = false; // L: 54 + int var4; + for (var4 = 0; var4 < var3.length; ++var4) { + if (var3[var4] != null) { + var2 = var3[var4].isIf3; break; } - - var9 = var7 - 'W'; } - if (var9 >= 10) { // L: 57 - var1 = false; // L: 58 - break; // L: 59 + if (!var2) { + var4 = (int)var0.key; + Widget var5 = CollisionMap.getWidget(var4); + if (var5 != null) { + CollisionMap.invalidateWidget(var5); + } } - - if (var2) { // L: 61 - var9 = -var9; - } - - int var8 = var4 * 10 + var9; // L: 62 - if (var4 != var8 / 10) { // L: 63 - var1 = false; // L: 64 - break; // L: 65 - } - - var4 = var8; // L: 67 - var3 = true; // L: 68 } - - ++var6; // L: 41 } - return var1; // L: 72 } } diff --git a/runescape-client/src/main/java/class197.java b/runescape-client/src/main/java/class197.java index d7e5d6e83f..a881b4cd34 100644 --- a/runescape-client/src/main/java/class197.java +++ b/runescape-client/src/main/java/class197.java @@ -1,51 +1,20 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gy") +@ObfuscatedName("gx") public class class197 { - @ObfuscatedName("f") - static int[] field2373; + @ObfuscatedName("h") + static int[] field2369; static { new Object(); - field2373 = new int[33]; // L: 8 - field2373[0] = 0; // L: 11 - int var0 = 2; // L: 12 + field2369 = new int[33]; + field2369[0] = 0; + int var0 = 2; - for (int var1 = 1; var1 < 33; ++var1) { // L: 13 - field2373[var1] = var0 - 1; // L: 14 - var0 += var0; // L: 15 + for (int var1 = 1; var1 < 33; ++var1) { + field2369[var1] = var0 - 1; + var0 += var0; } - } // L: 17 - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(IZI)Ljava/lang/String;", - garbageValue = "657840099" - ) - @Export("intToString") - public static String intToString(int var0, boolean var1) { - return var1 && var0 >= 0 ? class258.method4655(var0, 10, var1) : Integer.toString(var0); // L: 110 111 } - - @ObfuscatedName("kq") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1748256399" - ) - static void method3783() { - if (ModelData0.field1895 != null) { // L: 11693 - Client.field950 = Client.cycle; // L: 11694 - ModelData0.field1895.method4466(); // L: 11695 - - for (int var0 = 0; var0 < Client.players.length; ++var0) { // L: 11696 - if (Client.players[var0] != null) { // L: 11697 - ModelData0.field1895.method4465((Client.players[var0].x >> 7) + FloorDecoration.baseX, (Client.players[var0].y >> 7) + WorldMapData_0.baseY); // L: 11698 - } - } - } - - } // L: 11702 } diff --git a/runescape-client/src/main/java/class198.java b/runescape-client/src/main/java/class198.java index 8ba0e8798e..8f49c66b4c 100644 --- a/runescape-client/src/main/java/class198.java +++ b/runescape-client/src/main/java/class198.java @@ -1,20 +1,26 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gu") +@ObfuscatedName("ga") public class class198 { - @ObfuscatedName("o") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(CII)Ljava/lang/String;", - garbageValue = "-2114436646" + descriptor = "(II)Lje;", + garbageValue = "1390109728" ) - static String method3786(char var0, int var1) { - char[] var2 = new char[var1]; // L: 174 + public static HitSplatDefinition method3697(int var0) { + HitSplatDefinition var1 = (HitSplatDefinition)HitSplatDefinition.HitSplatDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = HitSplatDefinition.HitSplatDefinition_archive.takeFile(32, var0); + var1 = new HitSplatDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); + } - for (int var3 = 0; var3 < var1; ++var3) { // L: 175 - var2[var3] = var0; + HitSplatDefinition.HitSplatDefinition_cached.put(var1, (long)var0); + return var1; } - - return new String(var2); // L: 176 } } diff --git a/runescape-client/src/main/java/class2.java b/runescape-client/src/main/java/class2.java index 793ba7aae0..2b7d4b89f4 100644 --- a/runescape-client/src/main/java/class2.java +++ b/runescape-client/src/main/java/class2.java @@ -1,317 +1,94 @@ -import java.io.InputStream; -import java.io.OutputStreamWriter; -import java.net.URL; -import java.net.URLConnection; -import java.util.Random; -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("l") +@ObfuscatedName("x") final class class2 implements class0 { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ljava/lang/Object;Lkb;I)V", - garbageValue = "192866787" + descriptor = "(Ljava/lang/Object;Lkj;I)V", + garbageValue = "781194334" ) - public void vmethod69(Object var1, Buffer var2) { - this.method25((Long)var1, var2); // L: 33 - } // L: 34 - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(Lkb;I)Ljava/lang/Object;", - garbageValue = "-1094020977" - ) - public Object vmethod72(Buffer var1) { - return var1.readLong(); // L: 29 + public void vmethod49(Object var1, Buffer var2) { + this.method21((Long)var1, var2); } - @ObfuscatedName("u") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Ljava/lang/Long;Lkb;B)V", - garbageValue = "3" + descriptor = "(Lkj;B)Ljava/lang/Object;", + garbageValue = "12" ) - void method25(Long var1, Buffer var2) { - var2.writeLong(var1); // L: 25 - } // L: 26 - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "929998205" - ) - @Export("Messages_getHistorySize") - static int Messages_getHistorySize(int var0) { - ChatChannel var1 = (ChatChannel)Messages.Messages_channels.get(var0); // L: 48 - return var1 == null ? 0 : var1.size(); // L: 49 50 + public Object vmethod48(Buffer var1) { + return var1.readLong(); } - @ObfuscatedName("t") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "0" + descriptor = "(Ljava/lang/Long;Lkj;I)V", + garbageValue = "-110177189" ) - static void method38() { - Login.Login_username = Login.Login_username.trim(); // L: 835 - if (Login.Login_username.length() == 0) { // L: 836 - GrandExchangeOfferNameComparator.setLoginResponseString("Please enter your username.", "If you created your account after November", "2010, this will be the creation email address."); // L: 837 - } else { - long var1; - try { - URL var3 = new URL(NPC.method2157("services", false) + "m=accountappeal/login.ws"); // L: 844 - URLConnection var4 = var3.openConnection(); // L: 845 - var4.setRequestProperty("connection", "close"); // L: 846 - var4.setDoInput(true); // L: 847 - var4.setDoOutput(true); // L: 848 - var4.setConnectTimeout(5000); // L: 849 - OutputStreamWriter var5 = new OutputStreamWriter(var4.getOutputStream()); // L: 850 - var5.write("data1=req"); // L: 851 - var5.flush(); // L: 852 - InputStream var6 = var4.getInputStream(); // L: 853 - Buffer var7 = new Buffer(new byte[1000]); // L: 854 + void method21(Long var1, Buffer var2) { + var2.writeLong(var1); + } - while (true) { - int var8 = var6.read(var7.array, var7.offset, 1000 - var7.offset); // L: 856 - if (var8 == -1) { // L: 857 - var7.offset = 0; // L: 864 - long var22 = var7.readLong(); // L: 865 - var1 = var22; // L: 866 - break; - } - - var7.offset += var8; // L: 858 - if (var7.offset >= 1000) { // L: 859 - var1 = 0L; // L: 860 - break; - } - } - } catch (Exception var30) { // L: 868 - var1 = 0L; // L: 869 - } - - byte var0; - if (var1 == 0L) { // L: 873 - var0 = 5; + @ObfuscatedName("h") + public static final int method23(double var0, double var2, double var4) { + double var6 = var4; + double var8 = var4; + double var10 = var4; + if (0.0D != var2) { + double var12; + if (var4 < 0.5D) { + var12 = var4 * (1.0D + var2); } else { - String var31 = Login.Login_username; // L: 876 - Random var32 = new Random(); // L: 878 - Buffer var26 = new Buffer(128); // L: 879 - Buffer var9 = new Buffer(128); // L: 880 - int[] var10 = new int[]{var32.nextInt(), var32.nextInt(), (int)(var1 >> 32), (int)var1}; // L: 881 882 883 884 885 - var26.writeByte(10); // L: 886 - - int var11; - for (var11 = 0; var11 < 4; ++var11) { // L: 887 - var26.writeInt(var32.nextInt()); // L: 888 - } - - var26.writeInt(var10[0]); // L: 890 - var26.writeInt(var10[1]); // L: 891 - var26.writeLong(var1); // L: 892 - var26.writeLong(0L); // L: 893 - - for (var11 = 0; var11 < 4; ++var11) { // L: 894 - var26.writeInt(var32.nextInt()); // L: 895 - } - - var26.encryptRsa(class89.field1166, class89.field1167); // L: 897 - var9.writeByte(10); // L: 898 - - for (var11 = 0; var11 < 3; ++var11) { // L: 899 - var9.writeInt(var32.nextInt()); // L: 900 - } - - var9.writeLong(var32.nextLong()); // L: 902 - var9.writeLongMedium(var32.nextLong()); // L: 903 - Language.method3801(var9); // L: 904 - var9.writeLong(var32.nextLong()); // L: 905 - var9.encryptRsa(class89.field1166, class89.field1167); // L: 906 - var11 = SpriteMask.stringCp1252NullTerminatedByteSize(var31); // L: 907 - if (var11 % 8 != 0) { // L: 908 - var11 += 8 - var11 % 8; - } - - Buffer var12 = new Buffer(var11); // L: 909 - var12.writeStringCp1252NullTerminated(var31); // L: 910 - var12.offset = var11; // L: 911 - var12.xteaEncryptAll(var10); // L: 912 - Buffer var13 = new Buffer(var12.offset + var26.offset + var9.offset + 5); // L: 913 - var13.writeByte(2); // L: 914 - var13.writeByte(var26.offset); // L: 915 - var13.writeBytes(var26.array, 0, var26.offset); // L: 916 - var13.writeByte(var9.offset); // L: 917 - var13.writeBytes(var9.array, 0, var9.offset); // L: 918 - var13.writeShort(var12.offset); // L: 919 - var13.writeBytes(var12.array, 0, var12.offset); // L: 920 - byte[] var15 = var13.array; // L: 922 - String var14 = class299.method5418(var15, 0, var15.length); // L: 924 - String var16 = var14; // L: 926 - - byte var27; - try { - URL var17 = new URL(NPC.method2157("services", false) + "m=accountappeal/login.ws"); // L: 928 - URLConnection var18 = var17.openConnection(); // L: 929 - var18.setDoInput(true); // L: 930 - var18.setDoOutput(true); // L: 931 - var18.setConnectTimeout(5000); // L: 932 - OutputStreamWriter var19 = new OutputStreamWriter(var18.getOutputStream()); // L: 933 - var19.write("data2=" + class204.method3829(var16) + "&dest=" + class204.method3829("passwordchoice.ws")); // L: 934 - var19.flush(); // L: 935 - InputStream var20 = var18.getInputStream(); // L: 936 - var13 = new Buffer(new byte[1000]); // L: 937 - - while (true) { - int var21 = var20.read(var13.array, var13.offset, 1000 - var13.offset); // L: 939 - if (var21 == -1) { // L: 940 - var19.close(); // L: 947 - var20.close(); // L: 948 - String var28 = new String(var13.array); // L: 949 - if (var28.startsWith("OFFLINE")) { // L: 950 - var27 = 4; // L: 951 - } else if (var28.startsWith("WRONG")) { // L: 954 - var27 = 7; // L: 955 - } else if (var28.startsWith("RELOAD")) { // L: 958 - var27 = 3; // L: 959 - } else if (var28.startsWith("Not permitted for social network accounts.")) { // L: 962 - var27 = 6; // L: 963 - } else { - var13.xteaDecryptAll(var10); // L: 966 - - while (var13.offset > 0 && var13.array[var13.offset - 1] == 0) { // L: 967 - --var13.offset; // L: 968 - } - - var28 = new String(var13.array, 0, var13.offset); // L: 970 - if (HealthBarUpdate.method1870(var28)) { // L: 971 - Skeleton.openURL(var28, true, false); // L: 972 - var27 = 2; // L: 973 - } else { - var27 = 5; // L: 975 - } - } - break; - } - - var13.offset += var21; // L: 941 - if (var13.offset >= 1000) { // L: 942 - var27 = 5; // L: 943 - break; - } - } - } catch (Throwable var29) { // L: 977 - var29.printStackTrace(); // L: 978 - var27 = 5; // L: 979 - } - - var0 = var27; // L: 982 + var12 = var4 + var2 - var2 * var4; } - switch(var0) { // L: 984 - case 2: - GrandExchangeOfferNameComparator.setLoginResponseString(Strings.field3054, Strings.field3055, Strings.field3056); // L: 1001 - Login.loginIndex = 6; // L: 1002 - break; - case 3: - GrandExchangeOfferNameComparator.setLoginResponseString("", "Error connecting to server.", ""); // L: 989 - break; // L: 990 - case 4: - GrandExchangeOfferNameComparator.setLoginResponseString("The part of the website you are trying", "to connect to is offline at the moment.", "Please try again later."); // L: 998 - break; // L: 999 - case 5: - GrandExchangeOfferNameComparator.setLoginResponseString("Sorry, there was an error trying to", "log you in to this part of the website.", "Please try again later."); // L: 995 - break; // L: 996 - case 6: - GrandExchangeOfferNameComparator.setLoginResponseString("", "Error connecting to server.", ""); // L: 986 - break; // L: 987 - case 7: - GrandExchangeOfferNameComparator.setLoginResponseString("You must enter a valid login to proceed. For accounts", "created after 24th November 2010, please use your", "email address. Otherwise please use your username."); // L: 992 + double var14 = var4 * 2.0D - var12; + double var16 = 0.3333333333333333D + var0; + if (var16 > 1.0D) { + --var16; } - } - } // L: 838 1005 - - @ObfuscatedName("fb") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1215217092" - ) - static final void method30() { - if (ClientPacket.ClanChat_inClanChat) { // L: 3612 - if (DevicePcmPlayerProvider.clanChat != null) { // L: 3613 - DevicePcmPlayerProvider.clanChat.sort(); // L: 3614 + double var20 = var0 - 0.3333333333333333D; + if (var20 < 0.0D) { + ++var20; } - for (int var0 = 0; var0 < Players.Players_count; ++var0) { // L: 3617 - Player var1 = Client.players[Players.Players_indices[var0]]; // L: 3618 - var1.clearIsInClanChat(); // L: 3619 + if (var16 * 6.0D < 1.0D) { + var6 = (var12 - var14) * 6.0D * var16 + var14; + } else if (2.0D * var16 < 1.0D) { + var6 = var12; + } else if (var16 * 3.0D < 2.0D) { + var6 = var14 + 6.0D * (var12 - var14) * (0.6666666666666666D - var16); + } else { + var6 = var14; } - ClientPacket.ClanChat_inClanChat = false; // L: 3622 - } + if (6.0D * var0 < 1.0D) { + var8 = 6.0D * (var12 - var14) * var0 + var14; + } else if (var0 * 2.0D < 1.0D) { + var8 = var12; + } else if (var0 * 3.0D < 2.0D) { + var8 = (var12 - var14) * (0.6666666666666666D - var0) * 6.0D + var14; + } else { + var8 = var14; + } - } // L: 3624 - - @ObfuscatedName("fd") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1276683355" - ) - static final void method41() { - int var0 = Players.Players_count; // L: 3893 - int[] var1 = Players.Players_indices; // L: 3894 - - for (int var2 = 0; var2 < var0; ++var2) { // L: 3895 - Player var3 = Client.players[var1[var2]]; // L: 3896 - if (var3 != null) { // L: 3897 - class13.updateActorSequence(var3, 1); // L: 3898 + if (6.0D * var20 < 1.0D) { + var10 = var20 * (var12 - var14) * 6.0D + var14; + } else if (2.0D * var20 < 1.0D) { + var10 = var12; + } else if (3.0D * var20 < 2.0D) { + var10 = 6.0D * (0.6666666666666666D - var20) * (var12 - var14) + var14; + } else { + var10 = var14; } } - } // L: 3901 - - @ObfuscatedName("gz") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-1946760208" - ) - static boolean method28() { - return (Client.drawPlayerNames & 1) != 0; // L: 4918 + int var22 = (int)(256.0D * var6); + int var13 = (int)(256.0D * var8); + int var23 = (int)(var10 * 256.0D); + int var15 = var23 + (var13 << 8) + (var22 << 16); + return var15; } - - @ObfuscatedName("iz") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Lht;I)Ljava/lang/String;", - garbageValue = "1452658207" - ) - static String method39(String var0, Widget var1) { - if (var0.indexOf("%") != -1) { // L: 9832 - for (int var2 = 1; var2 <= 5; ++var2) { // L: 9833 - while (true) { - int var3 = var0.indexOf("%" + var2); // L: 9835 - if (var3 == -1) { // L: 9836 - break; - } - - var0 = var0.substring(0, var3) + HorizontalAlignment.method4880(WorldMapID.method663(var1, var2 - 1)) + var0.substring(var3 + 2); // L: 9837 - } - } - } - - return var0; // L: 9841 - } - - @ObfuscatedName("kf") - @ObfuscatedSignature( - descriptor = "(IIIZB)V", - garbageValue = "-2" - ) - public static void method42(int var0, int var1, int var2, boolean var3) { - PacketBufferNode var4 = class4.getPacketBufferNode(ClientPacket.field2309, Client.packetWriter.isaacCipher); // L: 11647 - var4.packetBuffer.writeShort(var1); // L: 11648 - var4.packetBuffer.writeByte(var2); // L: 11649 - var4.packetBuffer.method5674(var0); // L: 11650 - var4.packetBuffer.method5684(var3 ? Client.field763 * -2027491329 * 1473843199 : 0); // L: 11651 - Client.packetWriter.addNode(var4); // L: 11652 - } // L: 11653 } diff --git a/runescape-client/src/main/java/class200.java b/runescape-client/src/main/java/class200.java index 3780e32ea2..5a77db05f3 100644 --- a/runescape-client/src/main/java/class200.java +++ b/runescape-client/src/main/java/class200.java @@ -1,53 +1,106 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("gj") +@ObfuscatedName("gp") public class class200 { - @ObfuscatedName("f") + @ObfuscatedName("nz") @ObfuscatedSignature( - descriptor = "Lgj;" + descriptor = "[Lhe;" ) - static final class200 field2391; - @ObfuscatedName("b") + static Widget[] field2390; + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lgj;" + descriptor = "Lgp;" ) - static final class200 field2390; - @ObfuscatedName("l") + static final class200 field2387; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lgj;" + descriptor = "Lgp;" ) - static final class200 field2392; + static final class200 field2388; + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "Lgp;" + ) + static final class200 field2389; static { - field2391 = new class200(); // L: 4 - field2390 = new class200(); // L: 5 - field2392 = new class200(); // L: 6 + field2387 = new class200(); + field2388 = new class200(); + field2389 = new class200(); } class200() { - } // L: 8 + } - @ObfuscatedName("d") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "96" + descriptor = "(Lib;B)V", + garbageValue = "101" ) - public static void method3803() { - ItemDefinition.ItemDefinition_cached.clear(); // L: 543 - ItemDefinition.ItemDefinition_cachedModels.clear(); // L: 544 - ItemDefinition.ItemDefinition_cachedSprites.clear(); // L: 545 - } // L: 546 + public static void method3712(AbstractArchive var0) { + VarbitDefinition.VarbitDefinition_archive = var0; + } - @ObfuscatedName("gp") + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1508888429" + descriptor = "(ILcs;ZS)I", + garbageValue = "768" ) - static void method3804() { - if (PlayerType.localPlayer.x >> 7 == Client.destinationX && PlayerType.localPlayer.y >> 7 == Client.destinationY) { // L: 4809 - Client.destinationX = 0; // L: 4810 + static int method3711(int var0, Script var1, boolean var2) { + int var3 = -1; + Widget var4; + if (var0 >= 2000) { + var0 -= 1000; + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var4 = CollisionMap.getWidget(var3); + } else { + var4 = var2 ? PlayerAppearance.field2561 : VarcInt.field3264; } - } // L: 4812 + if (var0 == ScriptOpcodes.CC_SETPOSITION) { + VarcInt.Interpreter_intStackSize -= 4; + var4.rawX = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4.rawY = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + var4.xAlignment = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 2]; + var4.yAlignment = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 3]; + CollisionMap.invalidateWidget(var4); + WorldMapIcon_0.client.alignWidget(var4); + if (var3 != -1 && var4.type == 0) { + PendingSpawn.revalidateWidgetScroll(class9.Widget_interfaceComponents[var3 >> 16], var4, false); + } + + return 1; + } else if (var0 == ScriptOpcodes.CC_SETSIZE) { + VarcInt.Interpreter_intStackSize -= 4; + var4.rawWidth = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4.rawHeight = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + var4.widthAlignment = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 2]; + var4.heightAlignment = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 3]; + CollisionMap.invalidateWidget(var4); + WorldMapIcon_0.client.alignWidget(var4); + if (var3 != -1 && var4.type == 0) { + PendingSpawn.revalidateWidgetScroll(class9.Widget_interfaceComponents[var3 >> 16], var4, false); + } + + return 1; + } else if (var0 == ScriptOpcodes.CC_SETHIDE) { + boolean var5 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + if (var5 != var4.isHidden) { + var4.isHidden = var5; + CollisionMap.invalidateWidget(var4); + } + + return 1; + } else if (var0 == ScriptOpcodes.CC_SETNOCLICKTHROUGH) { + var4.noClickThrough = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == ScriptOpcodes.CC_SETNOSCROLLTHROUGH) { + var4.noScrollThrough = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + return 1; + } else { + return 2; + } + } } diff --git a/runescape-client/src/main/java/class204.java b/runescape-client/src/main/java/class204.java index aa1020c1a3..b9a6c44499 100644 --- a/runescape-client/src/main/java/class204.java +++ b/runescape-client/src/main/java/class204.java @@ -1,57 +1,30 @@ import java.util.HashMap; -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("gl") public class class204 { - @ObfuscatedName("cu") + @ObfuscatedName("c") @ObfuscatedSignature( - descriptor = "Lbh;" + descriptor = "Llo;" ) - @Export("mouseRecorder") - static MouseRecorder mouseRecorder; + static IndexedSprite field2408; static { new HashMap(); - } // L: 9 + } - @ObfuscatedName("f") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;I)Ljava/lang/String;", - garbageValue = "-50568110" + descriptor = "(ILhs;ZB)V", + garbageValue = "78" ) - public static String method3829(CharSequence var0) { - int var1 = var0.length(); // L: 11 - StringBuilder var2 = new StringBuilder(var1); // L: 12 - - for (int var3 = 0; var3 < var1; ++var3) { // L: 13 - char var4 = var0.charAt(var3); // L: 14 - if ((var4 < 'a' || var4 > 'z') && (var4 < 'A' || var4 > 'Z') && (var4 < '0' || var4 > '9') && var4 != '.' && var4 != '-' && var4 != '*' && var4 != '_') { // L: 15 - if (var4 == ' ') { // L: 16 - var2.append('+'); - } else { - byte var5 = class219.charToByteCp1252(var4); // L: 18 - var2.append('%'); // L: 19 - int var6 = var5 >> 4 & 15; // L: 20 - if (var6 >= 10) { // L: 21 - var2.append((char)(var6 + 55)); - } else { - var2.append((char)(var6 + 48)); // L: 22 - } - - var6 = var5 & 15; // L: 23 - if (var6 >= 10) { // L: 24 - var2.append((char)(var6 + 55)); - } else { - var2.append((char)(var6 + 48)); // L: 25 - } - } - } else { - var2.append(var4); - } - } - - return var2.toString(); // L: 28 + static void method3721(int var0, Coord var1, boolean var2) { + WorldMapArea var3 = Actor.getWorldMap().getMapArea(var0); + int var4 = PlayerAppearance.localPlayer.plane; + int var5 = NetFileRequest.baseX * 64 + (PlayerAppearance.localPlayer.x >> 7); + int var6 = class41.baseY * 64 + (PlayerAppearance.localPlayer.y >> 7); + Coord var7 = new Coord(var4, var5, var6); + Actor.getWorldMap().method6485(var3, var7, var1, var2); } } diff --git a/runescape-client/src/main/java/class206.java b/runescape-client/src/main/java/class206.java index e435779364..e0a594845a 100644 --- a/runescape-client/src/main/java/class206.java +++ b/runescape-client/src/main/java/class206.java @@ -3,101 +3,58 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gx") +@ObfuscatedName("gq") public class class206 { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("musicPatchesArchive") - static AbstractArchive musicPatchesArchive; - @ObfuscatedName("b") + public static AbstractArchive musicPatchesArchive; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("musicSamplesArchive") - static AbstractArchive musicSamplesArchive; - @ObfuscatedName("l") + public static AbstractArchive musicSamplesArchive; + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Lib;" ) @Export("soundEffectsArchive") - static AbstractArchive soundEffectsArchive; - @ObfuscatedName("z") + public static AbstractArchive soundEffectsArchive; + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "Lgf;" + ) + @Export("midiPcmStream") + public static MidiPcmStream midiPcmStream; + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 60389351 + intValue = 1386216651 ) @Export("musicPlayerStatus") public static int musicPlayerStatus; - @ObfuscatedName("c") + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = 2127739397 + intValue = -1877060861 ) @Export("musicTrackFileId") - public static int musicTrackFileId; - @ObfuscatedName("u") - @ObfuscatedGetter( - intValue = -2078097639 + static int musicTrackFileId; + @ObfuscatedName("m") + @ObfuscatedSignature( + descriptor = "Lds;" ) - @Export("musicTrackVolume") - public static int musicTrackVolume; - - static { - musicPlayerStatus = 0; // L: 11 - } - + @Export("soundCache") + static SoundCache soundCache; @ObfuscatedName("f") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1369090733" + descriptor = "Lkj;" ) - public static boolean method3851() { - ReflectionCheck var0 = (ReflectionCheck)class105.reflectionChecks.last(); // L: 24 - return var0 != null; // L: 25 + @Export("NetCache_responseArchiveBuffer") + public static Buffer NetCache_responseArchiveBuffer; + + static { + musicPlayerStatus = 0; } - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(I)Lgk;", - garbageValue = "-1404653901" - ) - public static PacketBufferNode method3853() { - PacketBufferNode var0 = ChatChannel.method2363(); // L: 42 - var0.clientPacket = null; // L: 43 - var0.clientPacketLength = 0; // L: 44 - var0.packetBuffer = new PacketBuffer(5000); // L: 45 - return var0; // L: 46 - } - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "2122026664" - ) - public static void method3852(int var0) { - if (var0 != -1) { // L: 236 - if (Widget.Widget_loadedInterfaces[var0]) { // L: 237 - Decimator.Widget_archive.clearFilesGroup(var0); // L: 238 - if (Widget.Widget_interfaceComponents[var0] != null) { // L: 239 - boolean var1 = true; // L: 240 - - for (int var2 = 0; var2 < Widget.Widget_interfaceComponents[var0].length; ++var2) { // L: 241 - if (Widget.Widget_interfaceComponents[var0][var2] != null) { // L: 242 - if (Widget.Widget_interfaceComponents[var0][var2].type != 2) { // L: 243 - Widget.Widget_interfaceComponents[var0][var2] = null; - } else { - var1 = false; // L: 244 - } - } - } - - if (var1) { - Widget.Widget_interfaceComponents[var0] = null; // L: 247 - } - - Widget.Widget_loadedInterfaces[var0] = false; // L: 248 - } - } - } - } // L: 249 } diff --git a/runescape-client/src/main/java/class217.java b/runescape-client/src/main/java/class217.java index 89a8708850..684af224f0 100644 --- a/runescape-client/src/main/java/class217.java +++ b/runescape-client/src/main/java/class217.java @@ -1,250 +1,13 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("hq") +@ObfuscatedName("hm") public class class217 { - @ObfuscatedName("b") - @Export("localPlayerName") - public static String localPlayerName; - @ObfuscatedName("h") - @Export("BZip2Decompressor_block") - static int[] BZip2Decompressor_block; - @ObfuscatedName("jt") + @ObfuscatedName("dj") @ObfuscatedSignature( - descriptor = "Lht;" + descriptor = "Lil;" ) - @Export("hoveredItemContainer") - static Widget hoveredItemContainer; - - @ObfuscatedName("o") - @ObfuscatedSignature( - descriptor = "([BI)V", - garbageValue = "1671015223" - ) - @Export("SpriteBuffer_decode") - public static void SpriteBuffer_decode(byte[] var0) { - Buffer var1 = new Buffer(var0); // L: 260 - var1.offset = var0.length - 2; // L: 261 - class336.SpriteBuffer_spriteCount = var1.readUnsignedShort(); // L: 262 - class336.SpriteBuffer_xOffsets = new int[class336.SpriteBuffer_spriteCount]; // L: 263 - class225.SpriteBuffer_yOffsets = new int[class336.SpriteBuffer_spriteCount]; // L: 264 - class336.SpriteBuffer_spriteWidths = new int[class336.SpriteBuffer_spriteCount]; // L: 265 - class336.SpriteBuffer_spriteHeights = new int[class336.SpriteBuffer_spriteCount]; // L: 266 - class13.SpriteBuffer_pixels = new byte[class336.SpriteBuffer_spriteCount][]; // L: 267 - var1.offset = var0.length - 7 - class336.SpriteBuffer_spriteCount * 8; // L: 268 - class336.SpriteBuffer_spriteWidth = var1.readUnsignedShort(); // L: 269 - class336.SpriteBuffer_spriteHeight = var1.readUnsignedShort(); // L: 270 - int var2 = (var1.readUnsignedByte() & 255) + 1; // L: 271 - - int var3; - for (var3 = 0; var3 < class336.SpriteBuffer_spriteCount; ++var3) { // L: 272 - class336.SpriteBuffer_xOffsets[var3] = var1.readUnsignedShort(); - } - - for (var3 = 0; var3 < class336.SpriteBuffer_spriteCount; ++var3) { // L: 273 - class225.SpriteBuffer_yOffsets[var3] = var1.readUnsignedShort(); - } - - for (var3 = 0; var3 < class336.SpriteBuffer_spriteCount; ++var3) { // L: 274 - class336.SpriteBuffer_spriteWidths[var3] = var1.readUnsignedShort(); - } - - for (var3 = 0; var3 < class336.SpriteBuffer_spriteCount; ++var3) { // L: 275 - class336.SpriteBuffer_spriteHeights[var3] = var1.readUnsignedShort(); - } - - var1.offset = var0.length - 7 - class336.SpriteBuffer_spriteCount * 8 - (var2 - 1) * 3; // L: 276 - WorldMapID.SpriteBuffer_spritePalette = new int[var2]; // L: 277 - - for (var3 = 1; var3 < var2; ++var3) { // L: 278 - WorldMapID.SpriteBuffer_spritePalette[var3] = var1.readMedium(); // L: 279 - if (WorldMapID.SpriteBuffer_spritePalette[var3] == 0) { // L: 280 - WorldMapID.SpriteBuffer_spritePalette[var3] = 1; - } - } - - var1.offset = 0; // L: 282 - - for (var3 = 0; var3 < class336.SpriteBuffer_spriteCount; ++var3) { // L: 283 - int var4 = class336.SpriteBuffer_spriteWidths[var3]; // L: 284 - int var5 = class336.SpriteBuffer_spriteHeights[var3]; // L: 285 - int var6 = var5 * var4; // L: 286 - byte[] var7 = new byte[var6]; // L: 287 - class13.SpriteBuffer_pixels[var3] = var7; // L: 288 - int var8 = var1.readUnsignedByte(); // L: 289 - int var9; - if (var8 == 0) { // L: 290 - for (var9 = 0; var9 < var6; ++var9) { // L: 291 - var7[var9] = var1.readByte(); - } - } else if (var8 == 1) { // L: 293 - for (var9 = 0; var9 < var4; ++var9) { // L: 294 - for (int var10 = 0; var10 < var5; ++var10) { // L: 295 - var7[var9 + var10 * var4] = var1.readByte(); // L: 296 - } - } - } - } - - } // L: 301 - - @ObfuscatedName("p") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-1102921575" - ) - static final void method4098(String var0) { - StringBuilder var10000 = (new StringBuilder()).append(var0); - Object var10001 = null; - String var1 = var10000.append(" is already on your ignore list").toString(); // L: 188 - DevicePcmPlayerProvider.addGameMessage(30, "", var1); // L: 190 - } // L: 192 - - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "1928769933" - ) - static int method4099(int var0, Script var1, boolean var2) { - int var3; - if (var0 == ScriptOpcodes.STOCKMARKET_GETOFFERTYPE) { // L: 2269 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2270 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].type(); // L: 2271 - return 1; // L: 2272 - } else if (var0 == ScriptOpcodes.STOCKMARKET_GETOFFERITEM) { // L: 2274 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2275 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].id; // L: 2276 - return 1; // L: 2277 - } else if (var0 == ScriptOpcodes.STOCKMARKET_GETOFFERPRICE) { // L: 2279 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2280 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].unitPrice; // L: 2281 - return 1; // L: 2282 - } else if (var0 == ScriptOpcodes.STOCKMARKET_GETOFFERCOUNT) { // L: 2284 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2285 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].totalQuantity; // L: 2286 - return 1; // L: 2287 - } else if (var0 == ScriptOpcodes.STOCKMARKET_GETOFFERCOMPLETEDCOUNT) { // L: 2289 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2290 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].currentQuantity; // L: 2291 - return 1; // L: 2292 - } else if (var0 == ScriptOpcodes.STOCKMARKET_GETOFFERCOMPLETEDGOLD) { // L: 2294 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2295 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].currentPrice; // L: 2296 - return 1; // L: 2297 - } else { - int var13; - if (var0 == ScriptOpcodes.STOCKMARKET_ISOFFEREMPTY) { // L: 2299 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2300 - var13 = Client.grandExchangeOffers[var3].status(); // L: 2301 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var13 == 0 ? 1 : 0; // L: 2302 - return 1; // L: 2303 - } else if (var0 == ScriptOpcodes.STOCKMARKET_ISOFFERSTABLE) { // L: 2305 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2306 - var13 = Client.grandExchangeOffers[var3].status(); // L: 2307 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var13 == 2 ? 1 : 0; // L: 2308 - return 1; // L: 2309 - } else if (var0 == ScriptOpcodes.STOCKMARKET_ISOFFERFINISHED) { // L: 2311 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2312 - var13 = Client.grandExchangeOffers[var3].status(); // L: 2313 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var13 == 5 ? 1 : 0; // L: 2314 - return 1; // L: 2315 - } else if (var0 == ScriptOpcodes.STOCKMARKET_ISOFFERADDING) { // L: 2317 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2318 - var13 = Client.grandExchangeOffers[var3].status(); // L: 2319 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var13 == 1 ? 1 : 0; // L: 2320 - return 1; // L: 2321 - } else { - boolean var12; - if (var0 == ScriptOpcodes.TRADINGPOST_SORTBY_NAME) { // L: 2323 - var12 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2324 - if (WorldMapDecoration.grandExchangeEvents != null) { // L: 2325 - WorldMapDecoration.grandExchangeEvents.sort(GrandExchangeEvents.GrandExchangeEvents_nameComparator, var12); // L: 2326 - } - - return 1; // L: 2328 - } else if (var0 == ScriptOpcodes.TRADINGPOST_SORTBY_PRICE) { // L: 2330 - var12 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2331 - if (WorldMapDecoration.grandExchangeEvents != null) { // L: 2332 - WorldMapDecoration.grandExchangeEvents.sort(GrandExchangeEvents.GrandExchangeEvents_priceComparator, var12); // L: 2333 - } - - return 1; // L: 2335 - } else if (var0 == ScriptOpcodes.TRADINGPOST_SORTFILTERBY_WORLD) { // L: 2337 - MilliClock.Interpreter_intStackSize -= 2; // L: 2338 - var12 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize] == 1; // L: 2339 - boolean var11 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1] == 1; // L: 2340 - if (WorldMapDecoration.grandExchangeEvents != null) { // L: 2341 - Client.GrandExchangeEvents_worldComparator.filterWorlds = var11; // L: 2342 - WorldMapDecoration.grandExchangeEvents.sort(Client.GrandExchangeEvents_worldComparator, var12); // L: 2343 - } - - return 1; // L: 2345 - } else if (var0 == ScriptOpcodes.TRADINGPOST_SORTBY_AGE) { // L: 2347 - var12 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2348 - if (WorldMapDecoration.grandExchangeEvents != null) { // L: 2349 - WorldMapDecoration.grandExchangeEvents.sort(GrandExchangeEvents.GrandExchangeEvents_ageComparator, var12); // L: 2350 - } - - return 1; // L: 2352 - } else if (var0 == ScriptOpcodes.TRADINGPOST_SORTBY_COUNT) { // L: 2354 - var12 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize] == 1; // L: 2355 - if (WorldMapDecoration.grandExchangeEvents != null) { // L: 2356 - WorldMapDecoration.grandExchangeEvents.sort(GrandExchangeEvents.GrandExchangeEvents_quantityComparator, var12); // L: 2357 - } - - return 1; // L: 2359 - } else if (var0 == ScriptOpcodes.TRADINGPOST_GETTOTALOFFERS) { // L: 2361 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = WorldMapDecoration.grandExchangeEvents == null ? 0 : WorldMapDecoration.grandExchangeEvents.events.size(); // L: 2362 - return 1; // L: 2363 - } else { - GrandExchangeEvent var4; - if (var0 == ScriptOpcodes.TRADINGPOST_GETOFFERWORLD) { // L: 2365 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2366 - var4 = (GrandExchangeEvent)WorldMapDecoration.grandExchangeEvents.events.get(var3); // L: 2367 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var4.world; // L: 2368 - return 1; // L: 2369 - } else if (var0 == ScriptOpcodes.TRADINGPOST_GETOFFERNAME) { // L: 2371 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2372 - var4 = (GrandExchangeEvent)WorldMapDecoration.grandExchangeEvents.events.get(var3); // L: 2373 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var4.getOfferName(); // L: 2374 - return 1; // L: 2375 - } else if (var0 == ScriptOpcodes.TRADINGPOST_GETOFFERPREVIOUSNAME) { // L: 2377 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2378 - var4 = (GrandExchangeEvent)WorldMapDecoration.grandExchangeEvents.events.get(var3); // L: 2379 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var4.getPreviousOfferName(); // L: 2380 - return 1; // L: 2381 - } else if (var0 == ScriptOpcodes.TRADINGPOST_GETOFFERAGE) { // L: 2383 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2384 - var4 = (GrandExchangeEvent)WorldMapDecoration.grandExchangeEvents.events.get(var3); // L: 2385 - long var5 = User.currentTimeMillis() - class58.field444 - var4.age; // L: 2386 - int var7 = (int)(var5 / 3600000L); // L: 2387 - int var8 = (int)((var5 - (long)(var7 * 3600000)) / 60000L); // L: 2388 - int var9 = (int)((var5 - (long)(var7 * 3600000) - (long)(var8 * 60000)) / 1000L); // L: 2389 - String var10 = var7 + ":" + var8 / 10 + var8 % 10 + ":" + var9 / 10 + var9 % 10; // L: 2390 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var10; // L: 2391 - return 1; // L: 2392 - } else if (var0 == ScriptOpcodes.TRADINGPOST_GETOFFERCOUNT) { // L: 2394 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2395 - var4 = (GrandExchangeEvent)WorldMapDecoration.grandExchangeEvents.events.get(var3); // L: 2396 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var4.grandExchangeOffer.totalQuantity; // L: 2397 - return 1; // L: 2398 - } else if (var0 == ScriptOpcodes.TRADINGPOST_GETOFFERPRICE) { // L: 2400 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2401 - var4 = (GrandExchangeEvent)WorldMapDecoration.grandExchangeEvents.events.get(var3); // L: 2402 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var4.grandExchangeOffer.unitPrice; // L: 2403 - return 1; // L: 2404 - } else if (var0 == ScriptOpcodes.TRADINGPOST_GETOFFERITEM) { // L: 2406 - var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 2407 - var4 = (GrandExchangeEvent)WorldMapDecoration.grandExchangeEvents.events.get(var3); // L: 2408 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var4.grandExchangeOffer.id; // L: 2409 - return 1; // L: 2410 - } else { - return 2; // L: 2412 - } - } - } - } - } + @Export("archive6") + static Archive archive6; } diff --git a/runescape-client/src/main/java/class219.java b/runescape-client/src/main/java/class219.java index aa15f80de1..7d83921e71 100644 --- a/runescape-client/src/main/java/class219.java +++ b/runescape-client/src/main/java/class219.java @@ -1,90 +1,101 @@ +import java.io.IOException; +import java.net.Socket; import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hp") +@ObfuscatedName("hx") public class class219 { - @ObfuscatedName("f") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lhi;" + descriptor = "Lhu;" ) @Export("huffman") static Huffman huffman; - @ObfuscatedName("gi") - @ObfuscatedSignature( - descriptor = "Llc;" - ) - @Export("redHintArrowSprite") - static Sprite redHintArrowSprite; - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(CI)B", - garbageValue = "-1341366570" + descriptor = "(II)Lis;", + garbageValue = "1786599747" ) - @Export("charToByteCp1252") - public static byte charToByteCp1252(char var0) { - byte var1; - if (var0 > 0 && var0 < 128 || var0 >= 160 && var0 <= 255) { // L: 12 - var1 = (byte)var0; - } else if (var0 == 8364) { // L: 13 - var1 = -128; - } else if (var0 == 8218) { // L: 14 - var1 = -126; - } else if (var0 == 402) { // L: 15 - var1 = -125; - } else if (var0 == 8222) { // L: 16 - var1 = -124; - } else if (var0 == 8230) { // L: 17 - var1 = -123; - } else if (var0 == 8224) { // L: 18 - var1 = -122; - } else if (var0 == 8225) { // L: 19 - var1 = -121; - } else if (var0 == 710) { // L: 20 - var1 = -120; - } else if (var0 == 8240) { // L: 21 - var1 = -119; - } else if (var0 == 352) { // L: 22 - var1 = -118; - } else if (var0 == 8249) { // L: 23 - var1 = -117; - } else if (var0 == 338) { // L: 24 - var1 = -116; - } else if (var0 == 381) { // L: 25 - var1 = -114; - } else if (var0 == 8216) { // L: 26 - var1 = -111; - } else if (var0 == 8217) { // L: 27 - var1 = -110; - } else if (var0 == 8220) { // L: 28 - var1 = -109; - } else if (var0 == 8221) { // L: 29 - var1 = -108; - } else if (var0 == 8226) { // L: 30 - var1 = -107; - } else if (var0 == 8211) { // L: 31 - var1 = -106; - } else if (var0 == 8212) { // L: 32 - var1 = -105; - } else if (var0 == 732) { // L: 33 - var1 = -104; - } else if (var0 == 8482) { // L: 34 - var1 = -103; - } else if (var0 == 353) { // L: 35 - var1 = -102; - } else if (var0 == 8250) { // L: 36 - var1 = -101; - } else if (var0 == 339) { // L: 37 - var1 = -100; - } else if (var0 == 382) { // L: 38 - var1 = -98; - } else if (var0 == 376) { // L: 39 - var1 = -97; + @Export("VarpDefinition_get") + public static VarpDefinition VarpDefinition_get(int var0) { + VarpDefinition var1 = (VarpDefinition)VarpDefinition.VarpDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; } else { - var1 = 63; // L: 40 - } + byte[] var2 = class1.VarpDefinition_archive.takeFile(16, var0); + var1 = new VarpDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); + } - return var1; // L: 41 + VarpDefinition.VarpDefinition_cached.put(var1, (long)var0); + return var1; + } + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Lib;Lib;I)Z", + garbageValue = "1703173158" + ) + public static boolean method4010(AbstractArchive var0, AbstractArchive var1) { + WorldMapElement.WorldMapElement_archive = var1; + if (!var0.isFullyLoaded()) { + return false; + } else { + WorldMapElement.WorldMapElement_count = var0.getGroupFileCount(35); + WorldMapElement.WorldMapElement_cached = new WorldMapElement[WorldMapElement.WorldMapElement_count]; + + for (int var2 = 0; var2 < WorldMapElement.WorldMapElement_count; ++var2) { + byte[] var3 = var0.takeFile(35, var2); + WorldMapElement.WorldMapElement_cached[var2] = new WorldMapElement(var2); + if (var3 != null) { + WorldMapElement.WorldMapElement_cached[var2].decode(new Buffer(var3)); + WorldMapElement.WorldMapElement_cached[var2].method4391(); + } + } + + return true; + } + } + + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-2069010716" + ) + static void method4009() { + if (Login.Login_username == null || Login.Login_username.length() <= 0) { + if (Timer.clientPreferences.rememberedUsername != null) { + Login.Login_username = Timer.clientPreferences.rememberedUsername; + Client.Login_isUsernameRemembered = true; + } else { + Client.Login_isUsernameRemembered = false; + } + + } + } + + @ObfuscatedName("z") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;I)V", + garbageValue = "-317727770" + ) + static final void method4003(String var0) { + StringBuilder var10000 = (new StringBuilder()).append(var0); + Object var10001 = null; + String var1 = var10000.append(" is already on your friend list").toString(); + class234.addGameMessage(30, "", var1); + } + + @ObfuscatedName("an") + @ObfuscatedSignature( + descriptor = "(Ljava/net/Socket;IIB)Llr;", + garbageValue = "1" + ) + public static AbstractSocket method4011(Socket var0, int var1, int var2) throws IOException { + return new BufferedNetSocket(var0, var1, var2); } } diff --git a/runescape-client/src/main/java/class22.java b/runescape-client/src/main/java/class22.java index 49947b6655..500944277b 100644 --- a/runescape-client/src/main/java/class22.java +++ b/runescape-client/src/main/java/class22.java @@ -3,170 +3,67 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("a") +@ObfuscatedName("s") public class class22 { - @ObfuscatedName("aq") + @ObfuscatedName("ac") + static String field107; + + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lly;" + descriptor = "(Lbb;I)V", + garbageValue = "-1301160950" ) - @Export("rasterProvider") - public static AbstractRasterProvider rasterProvider; - @ObfuscatedName("gz") - @Export("regionMapArchiveIds") - static int[] regionMapArchiveIds; + @Export("runScriptEvent") + public static void runScriptEvent(ScriptEvent var0) { + AttackOption.runScript(var0, 500000); + } - @ObfuscatedName("ag") + @ObfuscatedName("r") @ObfuscatedSignature( - descriptor = "(ILco;ZB)I", - garbageValue = "-46" + descriptor = "(ILcs;ZI)I", + garbageValue = "-1990395743" ) - static int method244(int var0, Script var1, boolean var2) { - if (var0 == ScriptOpcodes.VIEWPORT_SETFOV) { // L: 3201 - MilliClock.Interpreter_intStackSize -= 2; // L: 3202 - Client.field873 = (short)FontName.method5455(Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]); // L: 3203 - if (Client.field873 <= 0) { // L: 3204 - Client.field873 = 256; - } - - Client.field932 = (short)FontName.method5455(Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]); // L: 3205 - if (Client.field932 <= 0) { // L: 3206 - Client.field932 = 256; - } - - return 1; // L: 3207 - } else if (var0 == ScriptOpcodes.VIEWPORT_SETZOOM) { // L: 3209 - MilliClock.Interpreter_intStackSize -= 2; // L: 3210 - Client.zoomHeight = (short)Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 3211 - if (Client.zoomHeight <= 0) { // L: 3212 - Client.zoomHeight = 256; - } - - Client.zoomWidth = (short)Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 3213 - if (Client.zoomWidth <= 0) { // L: 3214 - Client.zoomWidth = 320; - } - - return 1; // L: 3215 - } else if (var0 == ScriptOpcodes.VIEWPORT_CLAMPFOV) { // L: 3217 - MilliClock.Interpreter_intStackSize -= 4; // L: 3218 - Client.field865 = (short)Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 3219 - if (Client.field865 <= 0) { // L: 3220 - Client.field865 = 1; - } - - Client.field753 = (short)Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 3221 - if (Client.field753 <= 0) { // L: 3222 - Client.field753 = 32767; - } else if (Client.field753 < Client.field865) { // L: 3223 - Client.field753 = Client.field865; - } - - Client.field937 = (short)Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 2]; // L: 3224 - if (Client.field937 <= 0) { // L: 3225 - Client.field937 = 1; - } - - Client.field935 = (short)Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 3]; // L: 3226 - if (Client.field935 <= 0) { // L: 3227 - Client.field935 = 32767; - } else if (Client.field935 < Client.field937) { // L: 3228 - Client.field935 = Client.field937; - } - - return 1; // L: 3229 - } else if (var0 == ScriptOpcodes.VIEWPORT_GETEFFECTIVESIZE) { // L: 3231 - if (Client.viewportWidget != null) { // L: 3232 - Coord.setViewportShape(0, 0, Client.viewportWidget.width, Client.viewportWidget.height, false); // L: 3233 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.viewportWidth; // L: 3234 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.viewportHeight; // L: 3235 - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3238 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = -1; // L: 3239 - } - - return 1; // L: 3241 - } else if (var0 == ScriptOpcodes.VIEWPORT_GETZOOM) { // L: 3243 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.zoomHeight; // L: 3244 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.zoomWidth; // L: 3245 - return 1; // L: 3246 - } else if (var0 == ScriptOpcodes.VIEWPORT_GETFOV) { // L: 3248 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = InterfaceParent.method1271(Client.field873); // L: 3249 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = InterfaceParent.method1271(Client.field932); // L: 3250 - return 1; // L: 3251 - } else if (var0 == 6220) { // L: 3253 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3254 - return 1; // L: 3255 - } else if (var0 == 6221) { // L: 3257 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 3258 - return 1; // L: 3259 - } else if (var0 == 6222) { // L: 3261 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = ItemContainer.canvasWidth; // L: 3262 - return 1; // L: 3263 - } else if (var0 == 6223) { // L: 3265 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = HealthBar.canvasHeight; // L: 3266 - return 1; // L: 3267 + static int method221(int var0, Script var1, boolean var2) { + Widget var3 = CollisionMap.getWidget(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + if (var0 == ScriptOpcodes.IF_GETX) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.x; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETY) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.y; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETWIDTH) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.width; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETHEIGHT) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.height; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETHIDE) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.isHidden ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.IF_GETLAYER) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.parentId; + return 1; } else { - return 2; // L: 3269 + return 2; } } - @ObfuscatedName("ki") + @ObfuscatedName("ly") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;ZI)V", - garbageValue = "-649676839" + descriptor = "(Ljava/lang/String;I)Ljava/lang/String;", + garbageValue = "-1865855416" ) - @Export("findItemDefinitions") - static void findItemDefinitions(String var0, boolean var1) { - var0 = var0.toLowerCase(); // L: 11591 - short[] var2 = new short[16]; // L: 11592 - int var3 = 0; // L: 11593 + static String method220(String var0) { + PlayerType[] var1 = class234.PlayerType_values(); - for (int var4 = 0; var4 < HealthBar.ItemDefinition_fileCount; ++var4) { // L: 11594 - ItemDefinition var9 = AbstractWorldMapData.ItemDefinition_get(var4); // L: 11595 - if ((!var1 || var9.isTradable) && var9.noteTemplate == -1 && var9.name.toLowerCase().indexOf(var0) != -1) { // L: 11596 11597 11598 - if (var3 >= 250) { // L: 11599 - PendingSpawn.foundItemIdCount = -1; // L: 11600 - Message.foundItemIds = null; // L: 11601 - return; // L: 11602 - } - - if (var3 >= var2.length) { // L: 11604 - short[] var6 = new short[var2.length * 2]; // L: 11605 - - for (int var7 = 0; var7 < var3; ++var7) { // L: 11606 - var6[var7] = var2[var7]; - } - - var2 = var6; // L: 11607 - } - - var2[var3++] = (short)var4; // L: 11609 + for (int var2 = 0; var2 < var1.length; ++var2) { + PlayerType var3 = var1[var2]; + if (var3.modIcon != -1 && var0.startsWith(class25.method248(var3.modIcon))) { + var0 = var0.substring(6 + Integer.toString(var3.modIcon).length()); + break; } } - Message.foundItemIds = var2; // L: 11611 - AbstractWorldMapIcon.foundItemIndex = 0; // L: 11612 - PendingSpawn.foundItemIdCount = var3; // L: 11613 - String[] var8 = new String[PendingSpawn.foundItemIdCount]; // L: 11614 - - for (int var5 = 0; var5 < PendingSpawn.foundItemIdCount; ++var5) { // L: 11615 - var8[var5] = AbstractWorldMapData.ItemDefinition_get(var2[var5]).name; - } - - short[] var10 = Message.foundItemIds; // L: 11616 - Projectile.sortItemsByName(var8, var10, 0, var8.length - 1); // L: 11618 - } // L: 11620 - - @ObfuscatedName("kv") - @ObfuscatedSignature( - descriptor = "([BII)V", - garbageValue = "594289847" - ) - static void method246(byte[] var0, int var1) { - if (Client.randomDatData == null) { // L: 11623 - Client.randomDatData = new byte[24]; - } - - class311.writeRandomDat(var0, var1, Client.randomDatData, 0, 24); // L: 11624 - } // L: 11625 + return var0; + } } diff --git a/runescape-client/src/main/java/class224.java b/runescape-client/src/main/java/class224.java index 7ecc790210..a9a1abfaa8 100644 --- a/runescape-client/src/main/java/class224.java +++ b/runescape-client/src/main/java/class224.java @@ -1,20 +1,34 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hx") +@ObfuscatedName("hf") public class class224 { - @ObfuscatedName("f") - public static final short[] field2570; - @ObfuscatedName("b") - public static final short[][] field2573; + @ObfuscatedName("h") + public static final short[] field2569; + @ObfuscatedName("v") + public static final short[][] field2565; + @ObfuscatedName("x") + public static final short[] field2566; + @ObfuscatedName("w") + public static final short[][] field2567; + @ObfuscatedName("p") + @ObfuscatedSignature( + descriptor = "Llm;" + ) + @Export("rightTitleSprite") + static Sprite rightTitleSprite; @ObfuscatedName("l") - public static final short[] field2571; - @ObfuscatedName("m") - public static final short[][] field2572; + @ObfuscatedSignature( + descriptor = "Llo;" + ) + @Export("logoSprite") + static IndexedSprite logoSprite; static { - field2570 = new short[]{6798, 8741, 25238, 4626, 4550}; // L: 4 - field2573 = new short[][]{{6798, 107, 10283, 16, 4797, 7744, 5799, 4634, -31839, 22433, 2983, -11343, 8, 5281, 10438, 3650, -27322, -21845, 200, 571, 908, 21830, 28946, -15701, -14010}, {8741, 12, -1506, -22374, 7735, 8404, 1701, -27106, 24094, 10153, -8915, 4783, 1341, 16578, -30533, 25239, 8, 5281, 10438, 3650, -27322, -21845, 200, 571, 908, 21830, 28946, -15701, -14010}, {25238, 8742, 12, -1506, -22374, 7735, 8404, 1701, -27106, 24094, 10153, -8915, 4783, 1341, 16578, -30533, 8, 5281, 10438, 3650, -27322, -21845, 200, 571, 908, 21830, 28946, -15701, -14010}, {4626, 11146, 6439, 12, 4758, 10270}, {4550, 4537, 5681, 5673, 5790, 6806, 8076, 4574, 17050, 0, 127, -31821, -17991}}; // L: 5 - field2571 = new short[]{-10304, 9104, -1, -1, -1}; // L: 12 - field2572 = new short[][]{{6554, 115, 10304, 28, 5702, 7756, 5681, 4510, -31835, 22437, 2859, -11339, 16, 5157, 10446, 3658, -27314, -21965, 472, 580, 784, 21966, 28950, -15697, -14002}, {9104, 10275, 7595, 3610, 7975, 8526, 918, -26734, 24466, 10145, -6882, 5027, 1457, 16565, -30545, 25486, 24, 5392, 10429, 3673, -27335, -21957, 192, 687, 412, 21821, 28835, -15460, -14019}, new short[0], new short[0], new short[0]}; // L: 13 + field2569 = new short[]{6798, 8741, 25238, 4626, 4550}; + field2565 = new short[][]{{6798, 107, 10283, 16, 4797, 7744, 5799, 4634, -31839, 22433, 2983, -11343, 8, 5281, 10438, 3650, -27322, -21845, 200, 571, 908, 21830, 28946, -15701, -14010}, {8741, 12, -1506, -22374, 7735, 8404, 1701, -27106, 24094, 10153, -8915, 4783, 1341, 16578, -30533, 25239, 8, 5281, 10438, 3650, -27322, -21845, 200, 571, 908, 21830, 28946, -15701, -14010}, {25238, 8742, 12, -1506, -22374, 7735, 8404, 1701, -27106, 24094, 10153, -8915, 4783, 1341, 16578, -30533, 8, 5281, 10438, 3650, -27322, -21845, 200, 571, 908, 21830, 28946, -15701, -14010}, {4626, 11146, 6439, 12, 4758, 10270}, {4550, 4537, 5681, 5673, 5790, 6806, 8076, 4574, 17050, 0, 127, -31821, -17991}}; + field2566 = new short[]{-10304, 9104, -1, -1, -1}; + field2567 = new short[][]{{6554, 115, 10304, 28, 5702, 7756, 5681, 4510, -31835, 22437, 2859, -11339, 16, 5157, 10446, 3658, -27314, -21965, 472, 580, 784, 21966, 28950, -15697, -14002}, {9104, 10275, 7595, 3610, 7975, 8526, 918, -26734, 24466, 10145, -6882, 5027, 1457, 16565, -30545, 25486, 24, 5392, 10429, 3673, -27335, -21957, 192, 687, 412, 21821, 28835, -15460, -14019}, new short[0], new short[0], new short[0]}; } } diff --git a/runescape-client/src/main/java/class225.java b/runescape-client/src/main/java/class225.java index f931d78912..2b3ac05982 100644 --- a/runescape-client/src/main/java/class225.java +++ b/runescape-client/src/main/java/class225.java @@ -1,15 +1,45 @@ import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hr") +@ObfuscatedName("hl") public class class225 { - @ObfuscatedName("z") - @Export("SpriteBuffer_yOffsets") - static int[] SpriteBuffer_yOffsets; - @ObfuscatedName("aj") - @ObfuscatedGetter( - intValue = -1708302407 + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "Lib;" ) - static int field2576; + @Export("HealthBarDefinition_archive") + static AbstractArchive HealthBarDefinition_archive; + @ObfuscatedName("m") + @ObfuscatedSignature( + descriptor = "Lfl;" + ) + @Export("clock") + protected static Clock clock; + + @ObfuscatedName("gz") + @ObfuscatedSignature( + descriptor = "(Ljy;IIIB)V", + garbageValue = "26" + ) + static void method4075(SequenceDefinition var0, int var1, int var2, int var3) { + if (Client.soundEffectCount < 50 && Timer.clientPreferences.areaSoundEffectsVolume != 0) { + if (var0.soundEffects != null && var1 < var0.soundEffects.length) { + int var4 = var0.soundEffects[var1]; + if (var4 != 0) { + int var5 = var4 >> 8; + int var6 = var4 >> 4 & 7; + int var7 = var4 & 15; + Client.soundEffectIds[Client.soundEffectCount] = var5; + Client.queuedSoundEffectLoops[Client.soundEffectCount] = var6; + Client.queuedSoundEffectDelays[Client.soundEffectCount] = 0; + Client.soundEffects[Client.soundEffectCount] = null; + int var8 = (var2 - 64) / 128; + int var9 = (var3 - 64) / 128; + Client.soundLocations[Client.soundEffectCount] = var7 + (var9 << 8) + (var8 << 16); + ++Client.soundEffectCount; + } + } + } + } } diff --git a/runescape-client/src/main/java/class227.java b/runescape-client/src/main/java/class227.java new file mode 100644 index 0000000000..a6bb4d4bc9 --- /dev/null +++ b/runescape-client/src/main/java/class227.java @@ -0,0 +1,22 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("hz") +public class class227 { + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "Lib;" + ) + @Export("KitDefinition_modelsArchive") + public static AbstractArchive KitDefinition_modelsArchive; + @ObfuscatedName("dy") + @ObfuscatedSignature( + descriptor = "Lil;" + ) + @Export("archive4") + static Archive archive4; + @ObfuscatedName("gs") + @Export("xteaKeys") + static int[][] xteaKeys; +} diff --git a/runescape-client/src/main/java/class228.java b/runescape-client/src/main/java/class228.java deleted file mode 100644 index 5e4b33086b..0000000000 --- a/runescape-client/src/main/java/class228.java +++ /dev/null @@ -1,105 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("hc") -public class class228 { - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1970011251" - ) - public static void method4246(int var0) { - MouseHandler.MouseHandler_idleCycles = var0; // L: 51 - } // L: 52 - - @ObfuscatedName("jy") - @ObfuscatedSignature( - descriptor = "(Lht;III)V", - garbageValue = "-615693889" - ) - @Export("clickWidget") - static final void clickWidget(Widget var0, int var1, int var2) { - if (Client.clickedWidget == null && !Client.isMenuOpen) { // L: 10844 - if (var0 != null) { // L: 10846 - Widget var5 = var0; // L: 10850 - int var7 = WorldMapData_0.getWidgetFlags(var0); // L: 10853 - int var6 = var7 >> 17 & 7; // L: 10855 - int var8 = var6; // L: 10857 - Widget var4; - int var9; - if (var6 == 0) { // L: 10858 - var4 = null; // L: 10859 - } else { - var9 = 0; - - while (true) { - if (var9 >= var8) { - var4 = var5; // L: 10869 - break; - } - - var5 = UserComparator4.getWidget(var5.parentId); // L: 10863 - if (var5 == null) { // L: 10864 - var4 = null; // L: 10865 - break; // L: 10866 - } - - ++var9; // L: 10862 - } - } - - Widget var10 = var4; // L: 10871 - if (var4 == null) { // L: 10872 - var10 = var0.parent; - } - - if (var10 != null) { // L: 10875 - Client.clickedWidget = var0; // L: 10879 - var5 = var0; // L: 10883 - var7 = WorldMapData_0.getWidgetFlags(var0); // L: 10886 - var6 = var7 >> 17 & 7; // L: 10888 - var8 = var6; // L: 10890 - if (var6 == 0) { // L: 10891 - var4 = null; // L: 10892 - } else { - var9 = 0; - - while (true) { - if (var9 >= var8) { - var4 = var5; // L: 10902 - break; - } - - var5 = UserComparator4.getWidget(var5.parentId); // L: 10896 - if (var5 == null) { // L: 10897 - var4 = null; // L: 10898 - break; // L: 10899 - } - - ++var9; // L: 10895 - } - } - - var10 = var4; // L: 10904 - if (var4 == null) { // L: 10905 - var10 = var0.parent; - } - - Client.clickedWidgetParent = var10; // L: 10908 - Client.widgetClickX = var1; // L: 10909 - Client.widgetClickY = var2; // L: 10910 - GrandExchangeEvent.widgetDragDuration = 0; // L: 10911 - Client.isDraggingWidget = false; // L: 10912 - int var11 = FileSystem.method3638(); // L: 10913 - if (var11 != -1) { // L: 10914 - AbstractByteArrayCopier.method4087(var11); - } - - return; // L: 10915 - } - } - - } - } // L: 10877 -} diff --git a/runescape-client/src/main/java/class23.java b/runescape-client/src/main/java/class23.java index c48529f410..279b878805 100644 --- a/runescape-client/src/main/java/class23.java +++ b/runescape-client/src/main/java/class23.java @@ -1,256 +1,30 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("g") +@ObfuscatedName("o") public class class23 { - @ObfuscatedName("qi") - @ObfuscatedSignature( - descriptor = "Ldh;" - ) - @Export("pcmPlayer1") - static PcmPlayer pcmPlayer1; - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "Liw;" - ) - @Export("musicTrackArchive") - public static AbstractArchive musicTrackArchive; - @ObfuscatedName("eo") - @ObfuscatedSignature( - descriptor = "Lid;" - ) - @Export("archive17") - static Archive archive17; + @ObfuscatedName("l") + @Export("ByteArrayPool_arrays") + public static byte[][][] ByteArrayPool_arrays; - @ObfuscatedName("k") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(CI)Z", - garbageValue = "2075504300" + descriptor = "(I)Z", + garbageValue = "-1191377295" ) - static boolean method251(char var0) { - for (int var1 = 0; var1 < "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"£$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".length(); ++var1) { // L: 807 - if (var0 == "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"£$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".charAt(var1)) { // L: 808 - return true; - } - } - - return false; // L: 810 + public static boolean method225() { + ReflectionCheck var0 = (ReflectionCheck)class105.reflectionChecks.last(); + return var0 != null; } - @ObfuscatedName("u") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "38" + descriptor = "(IB)Ljava/lang/String;", + garbageValue = "8" ) - public static final void method252() { - ViewportMouse.ViewportMouse_isInViewport = false; // L: 78 - ViewportMouse.ViewportMouse_entityCount = 0; // L: 79 - } // L: 80 - - @ObfuscatedName("d") - @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "-504519930" - ) - static int method249(int var0, Script var1, boolean var2) { - Widget var5; - if (var0 == ScriptOpcodes.IF_GETINVOBJECT) { // L: 1259 - var5 = UserComparator4.getWidget(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 1260 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var5.itemId; // L: 1261 - return 1; // L: 1262 - } else if (var0 == ScriptOpcodes.IF_GETINVCOUNT) { // L: 1264 - var5 = UserComparator4.getWidget(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 1265 - if (var5.itemId != -1) { // L: 1266 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var5.itemQuantity; - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1267 - } - - return 1; // L: 1268 - } else if (var0 == ScriptOpcodes.IF_HASSUB) { // L: 1270 - int var3 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 1271 - InterfaceParent var4 = (InterfaceParent)Client.interfaceParents.get((long)var3); // L: 1272 - if (var4 != null) { // L: 1273 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 1; - } else { - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = 0; // L: 1274 - } - - return 1; // L: 1275 - } else if (var0 == ScriptOpcodes.IF_GETTOP) { // L: 1277 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Client.rootInterface; // L: 1278 - return 1; // L: 1279 - } else { - return 2; // L: 1281 - } + @Export("colorStartTag") + static String colorStartTag(int var0) { + return ""; } - - @ObfuscatedName("jj") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "1423787338" - ) - @Export("changeGameOptions") - static final void changeGameOptions(int var0) { - ItemDefinition.method4874(); // L: 11119 - - for (ObjectSound var1 = (ObjectSound)ObjectSound.objectSounds.last(); var1 != null; var1 = (ObjectSound)ObjectSound.objectSounds.previous()) { // L: 11121 - if (var1.obj != null) { // L: 11122 - var1.set(); - } - } - - int var4 = PendingSpawn.VarpDefinition_get(var0).type; // L: 11125 - if (var4 != 0) { // L: 11126 - int var2 = Varps.Varps_main[var0]; // L: 11127 - if (var4 == 1) { // L: 11128 - if (var2 == 1) { // L: 11129 - Rasterizer3D.Rasterizer3D_setBrightness(0.9D); // L: 11130 - ((TextureProvider)Rasterizer3D.Rasterizer3D_textureLoader).setBrightness(0.9D); // L: 11131 - } - - if (var2 == 2) { // L: 11133 - Rasterizer3D.Rasterizer3D_setBrightness(0.8D); // L: 11134 - ((TextureProvider)Rasterizer3D.Rasterizer3D_textureLoader).setBrightness(0.8D); // L: 11135 - } - - if (var2 == 3) { // L: 11137 - Rasterizer3D.Rasterizer3D_setBrightness(0.7D); // L: 11138 - ((TextureProvider)Rasterizer3D.Rasterizer3D_textureLoader).setBrightness(0.7D); // L: 11139 - } - - if (var2 == 4) { // L: 11141 - Rasterizer3D.Rasterizer3D_setBrightness(0.6D); // L: 11142 - ((TextureProvider)Rasterizer3D.Rasterizer3D_textureLoader).setBrightness(0.6D); // L: 11143 - } - - ItemDefinition.ItemDefinition_cachedSprites.clear(); // L: 11146 - } - - if (var4 == 3) { // L: 11149 - short var3 = 0; // L: 11150 - if (var2 == 0) { // L: 11151 - var3 = 255; - } - - if (var2 == 1) { // L: 11152 - var3 = 192; - } - - if (var2 == 2) { // L: 11153 - var3 = 128; - } - - if (var2 == 3) { // L: 11154 - var3 = 64; - } - - if (var2 == 4) { // L: 11155 - var3 = 0; - } - - if (var3 != Client.musicVolume) { // L: 11156 - if (Client.musicVolume == 0 && Client.currentTrackGroupId != -1) { // L: 11157 - Canvas.method952(ApproximateRouteStrategy.archive6, Client.currentTrackGroupId, 0, var3, false); // L: 11158 - Client.field916 = false; // L: 11159 - } else if (var3 == 0) { // L: 11161 - class13.midiPcmStream.clear(); // L: 11163 - class206.musicPlayerStatus = 1; // L: 11164 - musicTrackArchive = null; // L: 11165 - Client.field916 = false; // L: 11167 - } else { - FontName.method5459(var3); // L: 11169 - } - - Client.musicVolume = var3; // L: 11170 - } - } - - if (var4 == 4) { // L: 11173 - if (var2 == 0) { // L: 11174 - Client.soundEffectVolume = 127; - } - - if (var2 == 1) { // L: 11175 - Client.soundEffectVolume = 96; - } - - if (var2 == 2) { // L: 11176 - Client.soundEffectVolume = 64; - } - - if (var2 == 3) { // L: 11177 - Client.soundEffectVolume = 32; - } - - if (var2 == 4) { // L: 11178 - Client.soundEffectVolume = 0; - } - } - - if (var4 == 5) { // L: 11180 - Client.leftClickOpensMenu = var2; - } - - if (var4 == 6) { // L: 11181 - Client.chatEffects = var2; - } - - if (var4 == 9) { // L: 11182 - Client.field846 = var2; - } - - if (var4 == 10) { // L: 11183 - if (var2 == 0) { // L: 11184 - Client.areaSoundEffectVolume = 127; - } - - if (var2 == 1) { // L: 11185 - Client.areaSoundEffectVolume = 96; - } - - if (var2 == 2) { // L: 11186 - Client.areaSoundEffectVolume = 64; - } - - if (var2 == 3) { // L: 11187 - Client.areaSoundEffectVolume = 32; - } - - if (var2 == 4) { // L: 11188 - Client.areaSoundEffectVolume = 0; - } - } - - if (var4 == 17) { // L: 11190 - Client.followerIndex = var2 & 65535; // L: 11191 - } - - if (var4 == 18) { // L: 11193 - Client.playerAttackOption = (AttackOption)class195.findEnumerated(SoundSystem.method2631(), var2); // L: 11194 - if (Client.playerAttackOption == null) { // L: 11195 - Client.playerAttackOption = AttackOption.AttackOption_dependsOnCombatLevels; - } - } - - if (var4 == 19) { // L: 11197 - if (var2 == -1) { // L: 11198 - Client.combatTargetPlayerIndex = -1; - } else { - Client.combatTargetPlayerIndex = var2 & 2047; // L: 11199 - } - } - - if (var4 == 22) { // L: 11201 - AttackOption[] var5 = new AttackOption[]{AttackOption.AttackOption_leftClickWhereAvailable, AttackOption.AttackOption_dependsOnCombatLevels, AttackOption.AttackOption_hidden, AttackOption.AttackOption_alwaysRightClick}; // L: 11204 - Client.npcAttackOption = (AttackOption)class195.findEnumerated(var5, var2); // L: 11206 - if (Client.npcAttackOption == null) { // L: 11207 - Client.npcAttackOption = AttackOption.AttackOption_dependsOnCombatLevels; - } - } - - } - } // L: 11209 } diff --git a/runescape-client/src/main/java/class231.java b/runescape-client/src/main/java/class231.java index 15a113e800..0a6c55d292 100644 --- a/runescape-client/src/main/java/class231.java +++ b/runescape-client/src/main/java/class231.java @@ -1,8 +1,243 @@ -import java.awt.Image; +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("hd") +@ObfuscatedName("hb") public class class231 { - @ObfuscatedName("az") - static Image field2779; + @ObfuscatedName("u") + @Export("musicTrackBoolean") + static boolean musicTrackBoolean; + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(IILgz;Lfo;S)Z", + garbageValue = "-4762" + ) + public static final boolean method4152(int var0, int var1, RouteStrategy var2, CollisionMap var3) { + int var4 = var0; + int var5 = var1; + byte var6 = 64; + byte var7 = 64; + int var8 = var0 - var6; + int var9 = var1 - var7; + class182.directions[var6][var7] = 99; + class182.distances[var6][var7] = 0; + byte var10 = 0; + int var11 = 0; + class182.bufferX[var10] = var0; + byte var10001 = var10; + int var18 = var10 + 1; + class182.bufferY[var10001] = var1; + int[][] var12 = var3.flags; + + while (var11 != var18) { + var4 = class182.bufferX[var11]; + var5 = class182.bufferY[var11]; + var11 = var11 + 1 & 4095; + int var16 = var4 - var8; + int var17 = var5 - var9; + int var13 = var4 - var3.xInset; + int var14 = var5 - var3.yInset; + if (var2.hasArrived(2, var4, var5, var3)) { + class182.field2115 = var4; + class182.field2121 = var5; + return true; + } + + int var15 = class182.distances[var16][var17] + 1; + if (var16 > 0 && class182.directions[var16 - 1][var17] == 0 && (var12[var13 - 1][var14] & 19136782) == 0 && (var12[var13 - 1][var14 + 1] & 19136824) == 0) { + class182.bufferX[var18] = var4 - 1; + class182.bufferY[var18] = var5; + var18 = var18 + 1 & 4095; + class182.directions[var16 - 1][var17] = 2; + class182.distances[var16 - 1][var17] = var15; + } + + if (var16 < 126 && class182.directions[var16 + 1][var17] == 0 && (var12[var13 + 2][var14] & 19136899) == 0 && (var12[var13 + 2][var14 + 1] & 19136992) == 0) { + class182.bufferX[var18] = var4 + 1; + class182.bufferY[var18] = var5; + var18 = var18 + 1 & 4095; + class182.directions[var16 + 1][var17] = 8; + class182.distances[var16 + 1][var17] = var15; + } + + if (var17 > 0 && class182.directions[var16][var17 - 1] == 0 && (var12[var13][var14 - 1] & 19136782) == 0 && (var12[var13 + 1][var14 - 1] & 19136899) == 0) { + class182.bufferX[var18] = var4; + class182.bufferY[var18] = var5 - 1; + var18 = var18 + 1 & 4095; + class182.directions[var16][var17 - 1] = 1; + class182.distances[var16][var17 - 1] = var15; + } + + if (var17 < 126 && class182.directions[var16][var17 + 1] == 0 && (var12[var13][var14 + 2] & 19136824) == 0 && (var12[var13 + 1][var14 + 2] & 19136992) == 0) { + class182.bufferX[var18] = var4; + class182.bufferY[var18] = var5 + 1; + var18 = var18 + 1 & 4095; + class182.directions[var16][var17 + 1] = 4; + class182.distances[var16][var17 + 1] = var15; + } + + if (var16 > 0 && var17 > 0 && class182.directions[var16 - 1][var17 - 1] == 0 && (var12[var13 - 1][var14] & 19136830) == 0 && (var12[var13 - 1][var14 - 1] & 19136782) == 0 && (var12[var13][var14 - 1] & 19136911) == 0) { + class182.bufferX[var18] = var4 - 1; + class182.bufferY[var18] = var5 - 1; + var18 = var18 + 1 & 4095; + class182.directions[var16 - 1][var17 - 1] = 3; + class182.distances[var16 - 1][var17 - 1] = var15; + } + + if (var16 < 126 && var17 > 0 && class182.directions[var16 + 1][var17 - 1] == 0 && (var12[var13 + 1][var14 - 1] & 19136911) == 0 && (var12[var13 + 2][var14 - 1] & 19136899) == 0 && (var12[var13 + 2][var14] & 19136995) == 0) { + class182.bufferX[var18] = var4 + 1; + class182.bufferY[var18] = var5 - 1; + var18 = var18 + 1 & 4095; + class182.directions[var16 + 1][var17 - 1] = 9; + class182.distances[var16 + 1][var17 - 1] = var15; + } + + if (var16 > 0 && var17 < 126 && class182.directions[var16 - 1][var17 + 1] == 0 && (var12[var13 - 1][var14 + 1] & 19136830) == 0 && (var12[var13 - 1][var14 + 2] & 19136824) == 0 && (var12[var13][var14 + 2] & 19137016) == 0) { + class182.bufferX[var18] = var4 - 1; + class182.bufferY[var18] = var5 + 1; + var18 = var18 + 1 & 4095; + class182.directions[var16 - 1][var17 + 1] = 6; + class182.distances[var16 - 1][var17 + 1] = var15; + } + + if (var16 < 126 && var17 < 126 && class182.directions[var16 + 1][var17 + 1] == 0 && (var12[var13 + 1][var14 + 2] & 19137016) == 0 && (var12[var13 + 2][var14 + 2] & 19136992) == 0 && (var12[var13 + 2][var14 + 1] & 19136995) == 0) { + class182.bufferX[var18] = var4 + 1; + class182.bufferY[var18] = var5 + 1; + var18 = var18 + 1 & 4095; + class182.directions[var16 + 1][var17 + 1] = 12; + class182.distances[var16 + 1][var17 + 1] = var15; + } + } + + class182.field2115 = var4; + class182.field2121 = var5; + return false; + } + + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "(ILcs;ZI)I", + garbageValue = "1687618726" + ) + static int method4154(int var0, Script var1, boolean var2) { + int var4; + int var9; + if (var0 == ScriptOpcodes.CC_CREATE) { + VarcInt.Interpreter_intStackSize -= 3; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + int var11 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 2]; + if (var4 == 0) { + throw new RuntimeException(); + } else { + Widget var6 = CollisionMap.getWidget(var9); + if (var6.children == null) { + var6.children = new Widget[var11 + 1]; + } + + if (var6.children.length <= var11) { + Widget[] var7 = new Widget[var11 + 1]; + + for (int var8 = 0; var8 < var6.children.length; ++var8) { + var7[var8] = var6.children[var8]; + } + + var6.children = var7; + } + + if (var11 > 0 && var6.children[var11 - 1] == null) { + throw new RuntimeException("" + (var11 - 1)); + } else { + Widget var12 = new Widget(); + var12.type = var4; + var12.parentId = var12.id = var6.id; + var12.childIndex = var11; + var12.isIf3 = true; + var6.children[var11] = var12; + if (var2) { + PlayerAppearance.field2561 = var12; + } else { + VarcInt.field3264 = var12; + } + + CollisionMap.invalidateWidget(var6); + return 1; + } + } + } else { + Widget var3; + if (var0 == ScriptOpcodes.CC_DELETE) { + var3 = var2 ? PlayerAppearance.field2561 : VarcInt.field3264; + Widget var10 = CollisionMap.getWidget(var3.id); + var10.children[var3.childIndex] = null; + CollisionMap.invalidateWidget(var10); + return 1; + } else if (var0 == ScriptOpcodes.CC_DELETEALL) { + var3 = CollisionMap.getWidget(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + var3.children = null; + CollisionMap.invalidateWidget(var3); + return 1; + } else if (var0 != ScriptOpcodes.CC_FIND) { + if (var0 == ScriptOpcodes.IF_FIND) { + var3 = CollisionMap.getWidget(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + if (var3 != null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 1; + if (var2) { + PlayerAppearance.field2561 = var3; + } else { + VarcInt.field3264 = var3; + } + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else { + return 2; + } + } else { + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Widget var5 = class92.getWidgetChild(var9, var4); + if (var5 != null && var4 != -1) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 1; + if (var2) { + PlayerAppearance.field2561 = var5; + } else { + VarcInt.field3264 = var5; + } + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } + } + } + + @ObfuscatedName("hm") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1604724512" + ) + static final void method4153() { + Client.field762 = 0; + int var0 = NetFileRequest.baseX * 64 + (PlayerAppearance.localPlayer.x >> 7); + int var1 = class41.baseY * 64 + (PlayerAppearance.localPlayer.y >> 7); + if (var0 >= 3053 && var0 <= 3156 && var1 >= 3056 && var1 <= 3136) { + Client.field762 = 1; + } + + if (var0 >= 3072 && var0 <= 3118 && var1 >= 9492 && var1 <= 9535) { + Client.field762 = 1; + } + + if (Client.field762 == 1 && var0 >= 3139 && var0 <= 3199 && var1 >= 3008 && var1 <= 3062) { + Client.field762 = 0; + } + + } } diff --git a/runescape-client/src/main/java/class232.java b/runescape-client/src/main/java/class232.java index a26f5f3a78..f44761b17f 100644 --- a/runescape-client/src/main/java/class232.java +++ b/runescape-client/src/main/java/class232.java @@ -1,29 +1,121 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hg") +@ObfuscatedName("hd") public class class232 { - @ObfuscatedName("ae") + @ObfuscatedName("z") @ObfuscatedGetter( - intValue = -11600427 + intValue = -769848499 ) - static int field2780; + static int field2778; static { - int var0 = 0; // L: 9 - int var1 = 0; // L: 10 - class238[] var2 = class8.method116(); // L: 12 + int var0 = 0; + int var1 = 0; + class238[] var2 = Occluder.method3377(); - for (int var3 = 0; var3 < var2.length; ++var3) { // L: 13 - class238 var4 = var2[var3]; // L: 14 - if (var4.field3112 > var0) { - var0 = var4.field3112; // L: 16 + for (int var3 = 0; var3 < var2.length; ++var3) { + class238 var4 = var2[var3]; + if (var4.field3113 > var0) { + var0 = var4.field3113; } - if (var4.field3117 > var1) { // L: 17 + if (var4.field3117 > var1) { var1 = var4.field3117; } } - } // L: 21 + } + + @ObfuscatedName("e") + @ObfuscatedSignature( + descriptor = "([BI)V", + garbageValue = "359325372" + ) + @Export("SpriteBuffer_decode") + static void SpriteBuffer_decode(byte[] var0) { + Buffer var1 = new Buffer(var0); + var1.offset = var0.length - 2; + class336.SpriteBuffer_spriteCount = var1.readUnsignedShort(); + class336.SpriteBuffer_xOffsets = new int[class336.SpriteBuffer_spriteCount]; + class336.SpriteBuffer_yOffsets = new int[class336.SpriteBuffer_spriteCount]; + class336.SpriteBuffer_spriteWidths = new int[class336.SpriteBuffer_spriteCount]; + class336.SpriteBuffer_spriteHeights = new int[class336.SpriteBuffer_spriteCount]; + GrandExchangeEvents.SpriteBuffer_pixels = new byte[class336.SpriteBuffer_spriteCount][]; + var1.offset = var0.length - 7 - class336.SpriteBuffer_spriteCount * 8; + DirectByteArrayCopier.SpriteBuffer_spriteWidth = var1.readUnsignedShort(); + class336.SpriteBuffer_spriteHeight = var1.readUnsignedShort(); + int var2 = (var1.readUnsignedByte() & 255) + 1; + + int var3; + for (var3 = 0; var3 < class336.SpriteBuffer_spriteCount; ++var3) { + class336.SpriteBuffer_xOffsets[var3] = var1.readUnsignedShort(); + } + + for (var3 = 0; var3 < class336.SpriteBuffer_spriteCount; ++var3) { + class336.SpriteBuffer_yOffsets[var3] = var1.readUnsignedShort(); + } + + for (var3 = 0; var3 < class336.SpriteBuffer_spriteCount; ++var3) { + class336.SpriteBuffer_spriteWidths[var3] = var1.readUnsignedShort(); + } + + for (var3 = 0; var3 < class336.SpriteBuffer_spriteCount; ++var3) { + class336.SpriteBuffer_spriteHeights[var3] = var1.readUnsignedShort(); + } + + var1.offset = var0.length - 7 - class336.SpriteBuffer_spriteCount * 8 - (var2 - 1) * 3; + class336.SpriteBuffer_spritePalette = new int[var2]; + + for (var3 = 1; var3 < var2; ++var3) { + class336.SpriteBuffer_spritePalette[var3] = var1.readMedium(); + if (class336.SpriteBuffer_spritePalette[var3] == 0) { + class336.SpriteBuffer_spritePalette[var3] = 1; + } + } + + var1.offset = 0; + + for (var3 = 0; var3 < class336.SpriteBuffer_spriteCount; ++var3) { + int var4 = class336.SpriteBuffer_spriteWidths[var3]; + int var5 = class336.SpriteBuffer_spriteHeights[var3]; + int var6 = var5 * var4; + byte[] var7 = new byte[var6]; + GrandExchangeEvents.SpriteBuffer_pixels[var3] = var7; + int var8 = var1.readUnsignedByte(); + int var9; + if (var8 == 0) { + for (var9 = 0; var9 < var6; ++var9) { + var7[var9] = var1.readByte(); + } + } else if (var8 == 1) { + for (var9 = 0; var9 < var4; ++var9) { + for (int var10 = 0; var10 < var5; ++var10) { + var7[var9 + var10 * var4] = var1.readByte(); + } + } + } + } + + } + + @ObfuscatedName("gj") + @ObfuscatedSignature( + descriptor = "(IIII)V", + garbageValue = "269523083" + ) + @Export("queueSoundEffect") + static void queueSoundEffect(int var0, int var1, int var2) { + if (Timer.clientPreferences.soundEffectsVolume != 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/class234.java b/runescape-client/src/main/java/class234.java index 2d480455cf..0a700d608e 100644 --- a/runescape-client/src/main/java/class234.java +++ b/runescape-client/src/main/java/class234.java @@ -1,53 +1,66 @@ -import java.util.Iterator; +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("is") +@ObfuscatedName("iq") public class class234 { - @ObfuscatedName("b") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(IS)Lia;", - garbageValue = "-3621" + descriptor = "(B)[Lin;", + garbageValue = "34" ) - public static FloorUnderlayDefinition method4260(int var0) { - FloorUnderlayDefinition var1 = (FloorUnderlayDefinition)FloorUnderlayDefinition.FloorUnderlayDefinition_cached.get((long)var0); // L: 25 - if (var1 != null) { // L: 26 - return var1; - } else { - byte[] var2 = FloorUnderlayDefinition.FloorUnderlayDefinition_archive.takeFile(1, var0); // L: 27 - var1 = new FloorUnderlayDefinition(); // L: 28 - if (var2 != null) { // L: 29 - var1.decode(new Buffer(var2), var0); - } - - var1.postDecode(); // L: 30 - FloorUnderlayDefinition.FloorUnderlayDefinition_cached.put(var1, (long)var0); // L: 31 - return var1; // L: 32 - } + @Export("PlayerType_values") + public static PlayerType[] PlayerType_values() { + return new PlayerType[]{PlayerType.field3124, PlayerType.PlayerType_ultimateIronman, PlayerType.PlayerType_ironman, PlayerType.PlayerType_jagexModerator, PlayerType.PlayerType_playerModerator, PlayerType.PlayerType_hardcoreIronman, PlayerType.PlayerType_normal}; } - @ObfuscatedName("l") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "4" + descriptor = "(ILjava/lang/String;Ljava/lang/String;B)V", + garbageValue = "-30" ) - public static void method4261() { - VarbitDefinition.VarbitDefinition_cached.clear(); // L: 34 - } // L: 35 + @Export("addGameMessage") + static void addGameMessage(int var0, String var1, String var2) { + UserComparator10.addChatMessage(var0, var1, var2, (String)null); + } - @ObfuscatedName("e") + @ObfuscatedName("y") @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "969326800" + descriptor = "(III)Z", + garbageValue = "1847408099" ) - static String method4262() { - String var0 = ""; // L: 84 - - Message var2; - for (Iterator var1 = Messages.Messages_hashTable.iterator(); var1.hasNext(); var0 = var0 + var2.sender + ':' + var2.text + '\n') { // L: 85 88 - var2 = (Message)var1.next(); // L: 86 + static final boolean method4159(int var0, int var1) { + ObjectDefinition var2 = WorldMapDecoration.getObjectDefinition(var0); + if (var1 == 11) { + var1 = 10; } - return var0; // L: 91 + if (var1 >= 5 && var1 <= 8) { + var1 = 4; + } + + return var2.method4614(var1); + } + + @ObfuscatedName("jq") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;Lhe;I)Ljava/lang/String;", + garbageValue = "-1574592106" + ) + static String method4160(String var0, Widget var1) { + if (var0.indexOf("%") != -1) { + for (int var2 = 1; var2 <= 5; ++var2) { + while (true) { + int var3 = var0.indexOf("%" + var2); + if (var3 == -1) { + break; + } + + var0 = var0.substring(0, var3) + ModelData0.method3329(HealthBarDefinition.method4512(var1, var2 - 1)) + var0.substring(var3 + 2); + } + } + } + + return var0; } } diff --git a/runescape-client/src/main/java/class236.java b/runescape-client/src/main/java/class236.java index c30faa6cea..90d8a2e350 100644 --- a/runescape-client/src/main/java/class236.java +++ b/runescape-client/src/main/java/class236.java @@ -2,53 +2,61 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ip") +@ObfuscatedName("ii") public final class class236 { - @ObfuscatedName("dt") - @ObfuscatedSignature( - descriptor = "Lid;" - ) - @Export("archive7") - static Archive archive7; + @ObfuscatedName("h") + @Export("sleepExact") + public static final void sleepExact(long var0) { + if (var0 > 0L) { + if (0L == var0 % 10L) { + long var2 = var0 - 1L; + + try { + Thread.sleep(var2); + } catch (InterruptedException var8) { + } + + try { + Thread.sleep(1L); + } catch (InterruptedException var7) { + } + } else { + try { + Thread.sleep(var0); + } catch (InterruptedException var6) { + } + } - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(Lid;II)V", - garbageValue = "-237601579" - ) - static void method4263(Archive var0, int var1) { - if (class90.NetCache_reference != null) { // L: 211 - class90.NetCache_reference.offset = var1 * 8 + 5; // L: 212 - int var2 = class90.NetCache_reference.readInt(); // L: 213 - int var3 = class90.NetCache_reference.readInt(); // L: 214 - var0.loadIndex(var2, var3); // L: 215 - } else { - VarcInt.requestNetFile((Archive)null, 255, 255, 0, (byte)0, true); // L: 218 - NetCache.NetCache_archives[var1] = var0; // L: 219 } - } // L: 216 220 - - @ObfuscatedName("z") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1381808682" - ) - public static int method4264() { - return KeyHandler.KeyHandler_idleCycles; // L: 193 } - @ObfuscatedName("fx") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lcs;B)V", - garbageValue = "-118" + descriptor = "(I)Lgv;", + garbageValue = "1686839438" ) - static final void method4265(Actor var0) { - int var1 = Math.max(1, var0.field1009 - Client.cycle); // L: 4094 - int var2 = var0.field1011 * 64 + var0.field1017 * 128; // L: 4095 - int var3 = var0.field1011 * 64 + var0.field1019 * 128; // L: 4096 - var0.x += (var2 - var0.x) / var1; // L: 4097 - var0.y += (var3 - var0.y) / var1; // L: 4098 - var0.field978 = 0; // L: 4099 - var0.orientation = var0.field1023; // L: 4100 - } // L: 4101 + public static PacketBufferNode method4163() { + PacketBufferNode var0; + if (PacketBufferNode.PacketBufferNode_packetBufferNodeCount == 0) { + var0 = new PacketBufferNode(); + } else { + var0 = PacketBufferNode.PacketBufferNode_packetBufferNodes[--PacketBufferNode.PacketBufferNode_packetBufferNodeCount]; + } + + var0.clientPacket = null; + var0.clientPacketLength = 0; + var0.packetBuffer = new PacketBuffer(5000); + return var0; + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "(I)Lcj;", + garbageValue = "-2109446409" + ) + @Export("worldListStart") + static World worldListStart() { + World.World_listCount = 0; + return GrandExchangeEvents.getNextWorldListWorld(); + } } diff --git a/runescape-client/src/main/java/class237.java b/runescape-client/src/main/java/class237.java index d79f316025..736196e116 100644 --- a/runescape-client/src/main/java/class237.java +++ b/runescape-client/src/main/java/class237.java @@ -1,8 +1,8 @@ import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("im") +@ObfuscatedName("id") public class class237 { static { - Math.sqrt(8192.0D); // L: 9 - } // L: 10 + Math.sqrt(8192.0D); + } } diff --git a/runescape-client/src/main/java/class238.java b/runescape-client/src/main/java/class238.java index 489bc18237..7287d2db47 100644 --- a/runescape-client/src/main/java/class238.java +++ b/runescape-client/src/main/java/class238.java @@ -1,343 +1,51 @@ -import java.lang.management.GarbageCollectorMXBean; -import java.lang.management.ManagementFactory; -import java.util.Iterator; -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ih") +@ObfuscatedName("ig") public class class238 { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lih;" + descriptor = "Lig;" ) - static final class238 field3116; - @ObfuscatedName("b") + static final class238 field3111; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lih;" + descriptor = "Lig;" ) - static final class238 field3113; - @ObfuscatedName("e") - @Export("Tiles_saturation") - static int[] Tiles_saturation; - @ObfuscatedName("l") + static final class238 field3114; + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -537874473 + intValue = -455059837 ) - final int field3112; - @ObfuscatedName("m") + final int field3113; + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 397493923 + intValue = -423561667 ) final int field3117; static { - field3116 = new class238(51, 27, 800, 0, 16, 16); // L: 29 - field3113 = new class238(25, 28, 800, 656, 40, 40); // L: 30 + field3111 = new class238(51, 27, 800, 0, 16, 16); + field3114 = new class238(25, 28, 800, 656, 40, 40); } class238(int var1, int var2, int var3, int var4, int var5, int var6) { - this.field3112 = var5; // L: 39 - this.field3117 = var6; // L: 40 - } // L: 41 - - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1821590309" - ) - static final void method4271() { - if (!ViewportMouse.ViewportMouse_false0) { // L: 95 - int var0 = Scene.Scene_cameraPitchSine; // L: 96 - int var1 = Scene.Scene_cameraPitchCosine; // L: 97 - int var2 = Scene.Scene_cameraYawSine; // L: 98 - int var3 = Scene.Scene_cameraYawCosine; // L: 99 - byte var4 = 50; // L: 100 - short var5 = 3500; // L: 101 - int var6 = (ViewportMouse.ViewportMouse_x - Rasterizer3D.Rasterizer3D_clipMidX) * var4 / Rasterizer3D.Rasterizer3D_zoom; // L: 102 - int var7 = (ViewportMouse.ViewportMouse_y - Rasterizer3D.Rasterizer3D_clipMidY) * var4 / Rasterizer3D.Rasterizer3D_zoom; // L: 103 - int var8 = (ViewportMouse.ViewportMouse_x - Rasterizer3D.Rasterizer3D_clipMidX) * var5 / Rasterizer3D.Rasterizer3D_zoom; // L: 104 - int var9 = (ViewportMouse.ViewportMouse_y - Rasterizer3D.Rasterizer3D_clipMidY) * var5 / Rasterizer3D.Rasterizer3D_zoom; // L: 105 - int var10 = Rasterizer3D.method3196(var7, var4, var1, var0); // L: 107 - int var11 = Rasterizer3D.method3161(var7, var4, var1, var0); // L: 108 - var7 = var10; // L: 109 - var10 = Rasterizer3D.method3196(var9, var5, var1, var0); // L: 110 - int var12 = Rasterizer3D.method3161(var9, var5, var1, var0); // L: 111 - var9 = var10; // L: 112 - var10 = Rasterizer3D.method3158(var6, var11, var3, var2); // L: 113 - var11 = Rasterizer3D.method3159(var6, var11, var3, var2); // L: 114 - var6 = var10; // L: 115 - var10 = Rasterizer3D.method3158(var8, var12, var3, var2); // L: 116 - var12 = Rasterizer3D.method3159(var8, var12, var3, var2); // L: 117 - ViewportMouse.field1770 = (var6 + var10) / 2; // L: 119 - WorldMapEvent.field377 = (var9 + var7) / 2; // L: 120 - ViewportMouse.field1768 = (var12 + var11) / 2; // L: 121 - ViewportMouse.field1771 = (var10 - var6) / 2; // L: 122 - GrandExchangeOfferTotalQuantityComparator.field81 = (var9 - var7) / 2; // L: 123 - SecureRandomCallable.field553 = (var12 - var11) / 2; // L: 124 - class1.field3 = Math.abs(ViewportMouse.field1771); // L: 125 - ItemContainer.field570 = Math.abs(GrandExchangeOfferTotalQuantityComparator.field81); // L: 126 - ViewportMouse.field1772 = Math.abs(SecureRandomCallable.field553); // L: 127 - } - } // L: 128 - - @ObfuscatedName("am") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1256117842" - ) - @Export("getGcDuration") - protected static int getGcDuration() { - int var0 = 0; // L: 550 - if (WorldMapSection2.garbageCollector == null || !WorldMapSection2.garbageCollector.isValid()) { // L: 551 - try { - Iterator var1 = ManagementFactory.getGarbageCollectorMXBeans().iterator(); // L: 553 - - while (var1.hasNext()) { - GarbageCollectorMXBean var2 = (GarbageCollectorMXBean)var1.next(); // L: 554 - if (var2.isValid()) { // L: 556 - WorldMapSection2.garbageCollector = var2; // L: 557 - GameShell.garbageCollectorLastCheckTimeMs = -1L; // L: 558 - GameShell.garbageCollectorLastCollectionTime = -1L; // L: 559 - } - } - } catch (Throwable var11) { // L: 564 - } - } - - if (WorldMapSection2.garbageCollector != null) { // L: 566 - long var9 = User.currentTimeMillis(); // L: 567 - long var3 = WorldMapSection2.garbageCollector.getCollectionTime(); // L: 568 - if (-1L != GameShell.garbageCollectorLastCollectionTime) { // L: 569 - long var5 = var3 - GameShell.garbageCollectorLastCollectionTime; // L: 570 - long var7 = var9 - GameShell.garbageCollectorLastCheckTimeMs; // L: 571 - if (0L != var7) { // L: 572 - var0 = (int)(var5 * 100L / var7); - } - } - - GameShell.garbageCollectorLastCollectionTime = var3; // L: 574 - GameShell.garbageCollectorLastCheckTimeMs = var9; // L: 575 - } - - return var0; // L: 577 + this.field3113 = var5; + this.field3117 = var6; } - @ObfuscatedName("iu") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lht;IIB)V", - garbageValue = "-13" + descriptor = "(Ljava/lang/CharSequence;I)Ljava/lang/String;", + garbageValue = "1585982662" ) - @Export("Widget_addToMenu") - static final void Widget_addToMenu(Widget var0, int var1, int var2) { - if (var0.buttonType == 1) { // L: 10117 - ModelData0.insertMenuItemNoShift(var0.buttonText, "", 24, 0, 0, var0.id); // L: 10118 + public static String method4166(CharSequence var0) { + String var1 = ParamDefinition.base37DecodeLong(Entity.method3340(var0)); + if (var1 == null) { + var1 = ""; } - String var3; - if (var0.buttonType == 2 && !Client.isSpellSelected) { // L: 10121 - var3 = PendingSpawn.Widget_getSpellActionName(var0); // L: 10122 - if (var3 != null) { // L: 10123 - ModelData0.insertMenuItemNoShift(var3, Client.colorStartTag(65280) + var0.spellName, 25, 0, -1, var0.id); // L: 10124 - } - } - - if (var0.buttonType == 3) { // L: 10128 - ModelData0.insertMenuItemNoShift("Close", "", 26, 0, 0, var0.id); // L: 10129 - } - - if (var0.buttonType == 4) { // L: 10132 - ModelData0.insertMenuItemNoShift(var0.buttonText, "", 28, 0, 0, var0.id); // L: 10133 - } - - if (var0.buttonType == 5) { // L: 10136 - ModelData0.insertMenuItemNoShift(var0.buttonText, "", 29, 0, 0, var0.id); // L: 10137 - } - - if (var0.buttonType == 6 && Client.meslayerContinueWidget == null) { // L: 10140 - ModelData0.insertMenuItemNoShift(var0.buttonText, "", 30, 0, -1, var0.id); // L: 10141 - } - - int var4; - int var6; - int var7; - int var19; - if (var0.type == 2) { // L: 10144 - var19 = 0; // L: 10145 - - for (var4 = 0; var4 < var0.height; ++var4) { // L: 10146 - for (int var21 = 0; var21 < var0.width; ++var21) { // L: 10147 - var6 = (var0.paddingX + 32) * var21; // L: 10148 - var7 = (var0.paddingY + 32) * var4; // L: 10149 - if (var19 < 20) { // L: 10150 - var6 += var0.inventoryXOffsets[var19]; // L: 10151 - var7 += var0.inventoryYOffsets[var19]; // L: 10152 - } - - if (var1 >= var6 && var2 >= var7 && var1 < var6 + 32 && var2 < var7 + 32) { // L: 10154 - Client.dragItemSlotDestination = var19; // L: 10155 - class217.hoveredItemContainer = var0; // L: 10156 - if (var0.itemIds[var19] > 0) { // L: 10157 - label386: { - ItemDefinition var8 = AbstractWorldMapData.ItemDefinition_get(var0.itemIds[var19] - 1); // L: 10158 - boolean var9; - int var10; - if (Client.isItemSelected == 1) { // L: 10160 - var10 = WorldMapData_0.getWidgetFlags(var0); // L: 10162 - var9 = (var10 >> 30 & 1) != 0; // L: 10164 - if (var9) { // L: 10166 - if (var0.id != SpotAnimationDefinition.selectedItemWidget || var19 != InvDefinition.selectedItemSlot) { // L: 10167 - ModelData0.insertMenuItemNoShift("Use", Client.selectedItemName + " " + "->" + " " + Client.colorStartTag(16748608) + var8.name, 31, var8.id, var19, var0.id); // L: 10168 - } - break label386; - } - } - - if (Client.isSpellSelected) { // L: 10175 - var10 = WorldMapData_0.getWidgetFlags(var0); // L: 10177 - var9 = (var10 >> 30 & 1) != 0; // L: 10179 - if (var9) { // L: 10181 - if ((class105.selectedSpellFlags & 16) == 16) { // L: 10182 - ModelData0.insertMenuItemNoShift(Client.selectedSpellActionName, Client.selectedSpellName + " " + "->" + " " + Client.colorStartTag(16748608) + var8.name, 32, var8.id, var19, var0.id); // L: 10183 - } - break label386; - } - } - - String[] var23 = var8.inventoryActions; // L: 10189 - var10 = -1; // L: 10190 - boolean var11; - if (Client.shiftClickDrop) { // L: 10191 - var11 = Client.tapToDrop || KeyHandler.KeyHandler_pressedKeys[81]; // L: 10194 - if (var11) { // L: 10196 - var10 = var8.getShiftClickIndex(); // L: 10197 - } - } - - int var12 = WorldMapData_0.getWidgetFlags(var0); // L: 10201 - var11 = (var12 >> 30 & 1) != 0; // L: 10203 - if (var11) { // L: 10205 - for (int var13 = 4; var13 >= 3; --var13) { // L: 10206 - if (var13 != var10) { // L: 10207 - SecureRandomCallable.addWidgetItemMenuItem(var0, var8, var19, var13, false); // L: 10208 - } - } - } - - int var14 = WorldMapData_0.getWidgetFlags(var0); // L: 10212 - boolean var25 = (var14 >> 31 & 1) != 0; // L: 10214 - if (var25) { // L: 10216 - ModelData0.insertMenuItemNoShift("Use", Client.colorStartTag(16748608) + var8.name, 38, var8.id, var19, var0.id); // L: 10217 - } - - int var16 = WorldMapData_0.getWidgetFlags(var0); // L: 10221 - boolean var15 = (var16 >> 30 & 1) != 0; // L: 10223 - int var17; - if (var15) { // L: 10225 - for (var17 = 2; var17 >= 0; --var17) { // L: 10226 - if (var10 != var17) { // L: 10227 - SecureRandomCallable.addWidgetItemMenuItem(var0, var8, var19, var17, false); // L: 10228 - } - } - - if (var10 >= 0) { // L: 10230 - SecureRandomCallable.addWidgetItemMenuItem(var0, var8, var19, var10, true); // L: 10231 - } - } - - var23 = var0.itemActions; // L: 10234 - if (var23 != null) { // L: 10235 - for (var17 = 4; var17 >= 0; --var17) { // L: 10236 - if (var23[var17] != null) { // L: 10237 - byte var18 = 0; // L: 10238 - if (var17 == 0) { // L: 10239 - var18 = 39; - } - - if (var17 == 1) { // L: 10240 - var18 = 40; - } - - if (var17 == 2) { // L: 10241 - var18 = 41; - } - - if (var17 == 3) { // L: 10242 - var18 = 42; - } - - if (var17 == 4) { // L: 10243 - var18 = 43; - } - - ModelData0.insertMenuItemNoShift(var23[var17], Client.colorStartTag(16748608) + var8.name, var18, var8.id, var19, var0.id); // L: 10244 - } - } - } - - ModelData0.insertMenuItemNoShift("Examine", Client.colorStartTag(16748608) + var8.name, 1005, var8.id, var19, var0.id); // L: 10249 - } - } - } - - ++var19; // L: 10255 - } - } - } - - if (var0.isIf3) { // L: 10259 - if (Client.isSpellSelected) { // L: 10260 - var4 = WorldMapData_0.getWidgetFlags(var0); // L: 10262 - boolean var26 = (var4 >> 21 & 1) != 0; // L: 10264 - if (var26 && (class105.selectedSpellFlags & 32) == 32) { // L: 10266 - ModelData0.insertMenuItemNoShift(Client.selectedSpellActionName, Client.selectedSpellName + " " + "->" + " " + var0.dataText, 58, 0, var0.childIndex, var0.id); // L: 10267 - } - } else { - for (var19 = 9; var19 >= 5; --var19) { // L: 10272 - var6 = WorldMapData_0.getWidgetFlags(var0); // L: 10276 - boolean var27 = (var6 >> var19 + 1 & 1) != 0; // L: 10278 - String var22; - if (!var27 && var0.onOp == null) { // L: 10280 - var22 = null; // L: 10281 - } else if (var0.actions != null && var0.actions.length > var19 && var0.actions[var19] != null && var0.actions[var19].trim().length() != 0) { // L: 10284 - var22 = var0.actions[var19]; // L: 10288 - } else { - var22 = null; // L: 10285 - } - - if (var22 != null) { // L: 10291 - ModelData0.insertMenuItemNoShift(var22, var0.dataText, 1007, var19 + 1, var0.childIndex, var0.id); // L: 10292 - } - } - - var3 = PendingSpawn.Widget_getSpellActionName(var0); // L: 10296 - if (var3 != null) { // L: 10297 - ModelData0.insertMenuItemNoShift(var3, var0.dataText, 25, 0, var0.childIndex, var0.id); // L: 10298 - } - - for (var4 = 4; var4 >= 0; --var4) { // L: 10301 - var7 = WorldMapData_0.getWidgetFlags(var0); // L: 10305 - boolean var24 = (var7 >> var4 + 1 & 1) != 0; // L: 10307 - String var5; - if (!var24 && var0.onOp == null) { // L: 10309 - var5 = null; // L: 10310 - } else if (var0.actions != null && var0.actions.length > var4 && var0.actions[var4] != null && var0.actions[var4].trim().length() != 0) { // L: 10313 - var5 = var0.actions[var4]; // L: 10317 - } else { - var5 = null; // L: 10314 - } - - if (var5 != null) { // L: 10320 - KeyHandler.insertMenuItem(var5, var0.dataText, 57, var4 + 1, var0.childIndex, var0.id, var0.prioritizeMenuEntry); // L: 10321 - } - } - - if (class195.Widget_hasContinueOption(WorldMapData_0.getWidgetFlags(var0))) { // L: 10325 - ModelData0.insertMenuItemNoShift("Continue", "", 30, 0, var0.childIndex, var0.id); // L: 10326 - } - } - } - - } // L: 10331 + return var1; + } } diff --git a/runescape-client/src/main/java/class248.java b/runescape-client/src/main/java/class248.java index 43975f0ae5..4716d60a34 100644 --- a/runescape-client/src/main/java/class248.java +++ b/runescape-client/src/main/java/class248.java @@ -4,189 +4,185 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("iq") +@ObfuscatedName("iz") public class class248 { - @ObfuscatedName("u") - static int[] field3216; - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "Leg;" + @ObfuscatedName("l") + static int[] field3219; + @ObfuscatedName("gn") + @ObfuscatedGetter( + intValue = -259199833 ) - @Export("World_request") - static UrlRequest World_request; - @ObfuscatedName("n") - @Export("Tiles_hueMultiplier") - static int[] Tiles_hueMultiplier; - @ObfuscatedName("f") + static int field3222; + @ObfuscatedName("h") @Export("spriteMap") final HashMap spriteMap; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llc;" ) @Export("bounds") Bounds bounds; - @ObfuscatedName("l") - int[] field3210; - @ObfuscatedName("m") - int[] field3212; - @ObfuscatedName("z") + @ObfuscatedName("x") + int[] field3218; + @ObfuscatedName("w") + int[] field3216; + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = 1614329319 + intValue = -1743285891 ) - int field3214; + int field3220; public class248() { - this.spriteMap = new HashMap(); // L: 10 - this.bounds = new Bounds(0, 0); // L: 11 - this.field3210 = new int[2048]; // L: 12 - this.field3212 = new int[2048]; // L: 13 - this.field3214 = 0; // L: 14 - PacketBufferNode.method3768(); // L: 21 - } // L: 22 + this.spriteMap = new HashMap(); + this.bounds = new Bounds(0, 0); + this.field3218 = new int[2048]; + this.field3216 = new int[2048]; + this.field3220 = 0; + class195.method3680(); + } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-960390847" + garbageValue = "105508707" ) - void method4472(int var1) { - int var2 = var1 * 2 + 1; // L: 46 - double[] var3 = Archive.method4445(0.0D, (double)((float)var1 / 3.0F), var1); // L: 47 - double var4 = var3[var1] * var3[var1]; // L: 48 - int[] var6 = new int[var2 * var2]; // L: 49 - boolean var7 = false; // L: 50 + void method4342(int var1) { + int var2 = var1 * 2 + 1; + double[] var3 = ArchiveDiskActionHandler.method4294(0.0D, (double)((float)var1 / 3.0F), var1); + double var4 = var3[var1] * var3[var1]; + int[] var6 = new int[var2 * var2]; + boolean var7 = false; - for (int var8 = 0; var8 < var2; ++var8) { // L: 51 - for (int var9 = 0; var9 < var2; ++var9) { // L: 52 - int var10 = var6[var9 + var8 * var2] = (int)(256.0D * (var3[var8] * var3[var9] / var4)); // L: 53 - if (!var7 && var10 > 0) { // L: 54 - var7 = true; // L: 55 + for (int var8 = 0; var8 < var2; ++var8) { + for (int var9 = 0; var9 < var2; ++var9) { + int var10 = var6[var9 + var2 * var8] = (int)(256.0D * (var3[var9] * var3[var8] / var4)); + if (!var7 && var10 > 0) { + var7 = true; } } } - Sprite var11 = new Sprite(var6, var2, var2); // L: 59 - this.spriteMap.put(var1, var11); // L: 60 - } // L: 61 - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(II)Llc;", - garbageValue = "1266385077" - ) - Sprite method4462(int var1) { - if (!this.spriteMap.containsKey(var1)) { // L: 64 - this.method4472(var1); // L: 65 - } - - return (Sprite)this.spriteMap.get(var1); // L: 67 + Sprite var11 = new Sprite(var6, var2, var2); + this.spriteMap.put(var1, var11); } - @ObfuscatedName("m") + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "(II)Llm;", + garbageValue = "-2015707218" + ) + Sprite method4343(int var1) { + if (!this.spriteMap.containsKey(var1)) { + this.method4342(var1); + } + + return (Sprite)this.spriteMap.get(var1); + } + + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "-1246145688" + garbageValue = "2038204538" ) - public final void method4465(int var1, int var2) { - if (this.field3214 < this.field3210.length) { // L: 71 - this.field3210[this.field3214] = var1; // L: 72 - this.field3212[this.field3214] = var2; // L: 73 - ++this.field3214; // L: 74 + public final void method4344(int var1, int var2) { + if (this.field3220 < this.field3218.length) { + this.field3218[this.field3220] = var1; + this.field3216[this.field3220] = var2; + ++this.field3220; } - } // L: 75 + } - @ObfuscatedName("z") + @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-996206995" + garbageValue = "542816734" ) - public final void method4466() { - this.field3214 = 0; // L: 78 - } // L: 79 + public final void method4345() { + this.field3220 = 0; + } - @ObfuscatedName("q") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(IILlc;FB)V", - garbageValue = "-60" + descriptor = "(IILlm;FB)V", + garbageValue = "-62" ) - public final void method4475(int var1, int var2, Sprite var3, float var4) { - int var5 = (int)(18.0F * var4); // L: 82 - Sprite var6 = this.method4462(var5); // L: 83 - int var7 = var5 * 2 + 1; // L: 84 - Bounds var8 = new Bounds(0, 0, var3.subWidth, var3.subHeight); // L: 85 - Bounds var9 = new Bounds(0, 0); // L: 86 - this.bounds.setHigh(var7, var7); // L: 87 - System.nanoTime(); // L: 88 + public final void method4346(int var1, int var2, Sprite var3, float var4) { + int var5 = (int)(var4 * 18.0F); + Sprite var6 = this.method4343(var5); + int var7 = var5 * 2 + 1; + Bounds var8 = new Bounds(0, 0, var3.subWidth, var3.subHeight); + Bounds var9 = new Bounds(0, 0); + this.bounds.setHigh(var7, var7); + System.nanoTime(); int var10; int var11; int var12; - for (var10 = 0; var10 < this.field3214; ++var10) { // L: 89 - var11 = this.field3210[var10]; // L: 90 - var12 = this.field3212[var10]; // L: 91 - int var13 = (int)((float)(var11 - var1) * var4) - var5; // L: 92 - int var14 = (int)((float)var3.subHeight - (float)(var12 - var2) * var4) - var5; // L: 93 - this.bounds.setLow(var13, var14); // L: 94 - this.bounds.method6129(var8, var9); // L: 95 - this.method4468(var6, var3, var9); // L: 96 + for (var10 = 0; var10 < this.field3220; ++var10) { + var11 = this.field3218[var10]; + var12 = this.field3216[var10]; + int var13 = (int)((float)(var11 - var1) * var4) - var5; + int var14 = (int)((float)var3.subHeight - (float)(var12 - var2) * var4) - var5; + this.bounds.setLow(var13, var14); + this.bounds.method6014(var8, var9); + this.method4347(var6, var3, var9); } - System.nanoTime(); // L: 98 - System.nanoTime(); // L: 99 + System.nanoTime(); + System.nanoTime(); - for (var10 = 0; var10 < var3.pixels.length; ++var10) { // L: 100 - if (var3.pixels[var10] == 0) { // L: 101 - var3.pixels[var10] = -16777216; // L: 102 + for (var10 = 0; var10 < var3.pixels.length; ++var10) { + if (var3.pixels[var10] == 0) { + var3.pixels[var10] = -16777216; } else { - var11 = (var3.pixels[var10] + 64 - 1) / 256; // L: 105 - if (var11 <= 0) { // L: 106 - var3.pixels[var10] = -16777216; // L: 107 + var11 = (var3.pixels[var10] + 64 - 1) / 256; + if (var11 <= 0) { + var3.pixels[var10] = -16777216; } else { - if (var11 > field3216.length) { // L: 110 - var11 = field3216.length; + if (var11 > field3219.length) { + var11 = field3219.length; } - var12 = field3216[var11 - 1]; // L: 111 - var3.pixels[var10] = -16777216 | var12; // L: 112 + var12 = field3219[var11 - 1]; + var3.pixels[var10] = -16777216 | var12; } } } - System.nanoTime(); // L: 114 - } // L: 115 + System.nanoTime(); + } - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(Llc;Llc;Llw;I)V", - garbageValue = "258819118" + descriptor = "(Llm;Llm;Llc;B)V", + garbageValue = "36" ) - void method4468(Sprite var1, Sprite var2, Bounds var3) { - if (var3.highX != 0 && var3.highY != 0) { // L: 118 - int var4 = 0; // L: 119 - int var5 = 0; // L: 120 - if (var3.lowX == 0) { // L: 121 + void method4347(Sprite var1, Sprite var2, Bounds var3) { + if (var3.highX != 0 && var3.highY != 0) { + int var4 = 0; + int var5 = 0; + if (var3.lowX == 0) { var4 = var1.subWidth - var3.highX; } - if (var3.lowY == 0) { // L: 122 + if (var3.lowY == 0) { var5 = var1.subHeight - var3.highY; } - int var6 = var4 + var5 * var1.subWidth; // L: 123 - int var7 = var3.lowX + var2.subWidth * var3.lowY; // L: 124 + int var6 = var4 + var5 * var1.subWidth; + int var7 = var2.subWidth * var3.lowY + var3.lowX; - for (int var8 = 0; var8 < var3.highY; ++var8) { // L: 125 - for (int var9 = 0; var9 < var3.highX; ++var9) { // L: 126 - int[] var10000 = var2.pixels; // L: 127 + for (int var8 = 0; var8 < var3.highY; ++var8) { + for (int var9 = 0; var9 < var3.highX; ++var9) { + int[] var10000 = var2.pixels; int var10001 = var7++; var10000[var10001] += var1.pixels[var6++]; } - var6 += var1.subWidth - var3.highX; // L: 129 - var7 += var2.subWidth - var3.highX; // L: 130 + var6 += var1.subWidth - var3.highX; + var7 += var2.subWidth - var3.highX; } } - } // L: 132 + } } diff --git a/runescape-client/src/main/java/class25.java b/runescape-client/src/main/java/class25.java index 889a2a3bf4..0c50374050 100644 --- a/runescape-client/src/main/java/class25.java +++ b/runescape-client/src/main/java/class25.java @@ -1,195 +1,212 @@ +import java.lang.management.GarbageCollectorMXBean; import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("i") +@ObfuscatedName("d") public class class25 { - @ObfuscatedName("f") + @ObfuscatedName("qw") @ObfuscatedSignature( - descriptor = "Liw;" + descriptor = "Llm;" ) - @Export("VarpDefinition_archive") - static AbstractArchive VarpDefinition_archive; - - @ObfuscatedName("ih") + @Export("sceneMinimapSprite") + static Sprite sceneMinimapSprite; + @ObfuscatedName("rf") + @ObfuscatedGetter( + intValue = 487407289 + ) + static int field128; + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "(Ljn;IIII)V", - garbageValue = "456036327" + descriptor = "Llm;" ) - @Export("addNpcToMenu") - static final void addNpcToMenu(NPCDefinition var0, int var1, int var2, int var3) { - if (Client.menuOptionsCount < 400) { // L: 9127 - if (var0.transforms != null) { // L: 9128 - var0 = var0.transform(); - } + @Export("leftTitleSprite") + static Sprite leftTitleSprite; + @ObfuscatedName("al") + @Export("garbageCollector") + static GarbageCollectorMXBean garbageCollector; + @ObfuscatedName("bs") + @ObfuscatedSignature( + descriptor = "Lio;" + ) + static GameBuild field125; - if (var0 != null) { // L: 9129 - if (var0.isInteractable) { // L: 9130 - if (!var0.isFollower || Client.followerIndex == var1) { // L: 9131 - String var4 = var0.name; // L: 9132 - int var7; - int var8; - if (var0.combatLevel != 0) { // L: 9133 - var7 = var0.combatLevel; // L: 9136 - var8 = PlayerType.localPlayer.combatLevel; // L: 9137 - int var9 = var8 - var7; // L: 9139 - String var6; - if (var9 < -9) { // L: 9140 - var6 = Client.colorStartTag(16711680); // L: 9141 - } else if (var9 < -6) { // L: 9144 - var6 = Client.colorStartTag(16723968); // L: 9145 - } else if (var9 < -3) { // L: 9148 - var6 = Client.colorStartTag(16740352); // L: 9149 - } else if (var9 < 0) { // L: 9152 - var6 = Client.colorStartTag(16756736); // L: 9153 - } else if (var9 > 9) { // L: 9156 - var6 = Client.colorStartTag(65280); // L: 9157 - } else if (var9 > 6) { // L: 9160 - var6 = Client.colorStartTag(4259584); // L: 9161 - } else if (var9 > 3) { // L: 9164 - var6 = Client.colorStartTag(8453888); // L: 9165 - } else if (var9 > 0) { // L: 9168 - var6 = Client.colorStartTag(12648192); // L: 9169 - } else { - var6 = Client.colorStartTag(16776960); // L: 9172 - } + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(II)Ljava/lang/String;", + garbageValue = "-842045049" + ) + static String method248(int var0) { + return ""; + } - var4 = var4 + var6 + " " + " (" + "level-" + var0.combatLevel + ")"; // L: 9174 - } + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(II)[B", + garbageValue = "123621684" + ) + @Export("ByteArrayPool_getArray") + public static synchronized byte[] ByteArrayPool_getArray(int var0) { + return ByteArrayPool.ByteArrayPool_getArrayBool(var0, false); + } - if (var0.isFollower && Client.followerOpsLowPriority) { // L: 9176 - ModelData0.insertMenuItemNoShift("Examine", Client.colorStartTag(16776960) + var4, 1003, var1, var2, var3); // L: 9177 - } - - if (Client.isItemSelected == 1) { // L: 9180 - ModelData0.insertMenuItemNoShift("Use", Client.selectedItemName + " " + "->" + " " + Client.colorStartTag(16776960) + var4, 7, var1, var2, var3); // L: 9181 - } else if (Client.isSpellSelected) { // L: 9184 - if ((class105.selectedSpellFlags & 2) == 2) { // L: 9185 - ModelData0.insertMenuItemNoShift(Client.selectedSpellActionName, Client.selectedSpellName + " " + "->" + " " + Client.colorStartTag(16776960) + var4, 8, var1, var2, var3); // L: 9186 - } - } else { - int var10 = var0.isFollower && Client.followerOpsLowPriority ? 2000 : 0; // L: 9191 - String[] var11 = var0.actions; // L: 9192 - if (var11 != null) { // L: 9193 - for (var7 = 4; var7 >= 0; --var7) { // L: 9194 - if (var11[var7] != null && !var11[var7].equalsIgnoreCase("Attack")) { // L: 9195 - var8 = 0; // L: 9196 - if (var7 == 0) { // L: 9197 - var8 = var10 + 9; - } - - if (var7 == 1) { // L: 9198 - var8 = var10 + 10; - } - - if (var7 == 2) { // L: 9199 - var8 = var10 + 11; - } - - if (var7 == 3) { // L: 9200 - var8 = var10 + 12; - } - - if (var7 == 4) { // L: 9201 - var8 = var10 + 13; - } - - ModelData0.insertMenuItemNoShift(var11[var7], Client.colorStartTag(16776960) + var4, var8, var1, var2, var3); // L: 9202 - } - } - } - - if (var11 != null) { // L: 9207 - for (var7 = 4; var7 >= 0; --var7) { // L: 9208 - if (var11[var7] != null && var11[var7].equalsIgnoreCase("Attack")) { // L: 9209 - short var12 = 0; // L: 9210 - if (AttackOption.AttackOption_hidden != Client.npcAttackOption) { // L: 9211 - if (AttackOption.AttackOption_alwaysRightClick == Client.npcAttackOption || Client.npcAttackOption == AttackOption.AttackOption_dependsOnCombatLevels && var0.combatLevel > PlayerType.localPlayer.combatLevel) { // L: 9212 - var12 = 2000; // L: 9213 - } - - var8 = 0; // L: 9215 - if (var7 == 0) { // L: 9216 - var8 = var12 + 9; - } - - if (var7 == 1) { // L: 9217 - var8 = var12 + 10; - } - - if (var7 == 2) { // L: 9218 - var8 = var12 + 11; - } - - if (var7 == 3) { // L: 9219 - var8 = var12 + 12; - } - - if (var7 == 4) { // L: 9220 - var8 = var12 + 13; - } - - ModelData0.insertMenuItemNoShift(var11[var7], Client.colorStartTag(16776960) + var4, var8, var1, var2, var3); // L: 9221 - } - } - } - } - - if (!var0.isFollower || !Client.followerOpsLowPriority) { // L: 9226 - ModelData0.insertMenuItemNoShift("Examine", Client.colorStartTag(16776960) + var4, 1003, var1, var2, var3); // L: 9227 - } - } + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "(IIIZIZI)V", + garbageValue = "-1262042728" + ) + @Export("doWorldSorting") + static void doWorldSorting(int var0, int var1, int var2, boolean var3, int var4, boolean var5) { + if (var0 < var1) { + int var6 = (var0 + var1) / 2; + int var7 = var0; + World var8 = World.World_worlds[var6]; + World.World_worlds[var6] = World.World_worlds[var1]; + World.World_worlds[var1] = var8; + for (int var9 = var0; var9 < var1; ++var9) { + World var11 = World.World_worlds[var9]; + int var12 = MouseRecorder.compareWorlds(var11, var8, var2, var3); + int var10; + if (var12 != 0) { + if (var3) { + var10 = -var12; + } else { + var10 = var12; + } + } else if (var4 == -1) { + var10 = 0; + } else { + int var13 = MouseRecorder.compareWorlds(var11, var8, var4, var5); + if (var5) { + var10 = -var13; + } else { + var10 = var13; } } + + if (var10 <= 0) { + World var14 = World.World_worlds[var9]; + World.World_worlds[var9] = World.World_worlds[var7]; + World.World_worlds[var7++] = var14; + } + } + + World.World_worlds[var1] = World.World_worlds[var7]; + World.World_worlds[var7] = var8; + doWorldSorting(var0, var7 - 1, var2, var3, var4, var5); + doWorldSorting(var7 + 1, var1, var2, var3, var4, var5); + } + + } + + @ObfuscatedName("gy") + @ObfuscatedSignature( + descriptor = "(IIIIZI)V", + garbageValue = "473576557" + ) + @Export("setViewportShape") + static final void setViewportShape(int var0, int var1, int var2, int var3, boolean var4) { + if (var2 < 1) { + var2 = 1; + } + + if (var3 < 1) { + var3 = 1; + } + + int var5 = var3 - 334; + int var6; + if (var5 < 0) { + var6 = Client.field896; + } else if (var5 >= 100) { + var6 = Client.field897; + } else { + var6 = (Client.field897 - Client.field896) * var5 / 100 + Client.field896; + } + + int var7 = var3 * var6 * 512 / (var2 * 334); + int var8; + int var9; + short var10; + if (var7 < Client.field828) { + var10 = Client.field828; + var6 = var10 * var2 * 334 / (var3 * 512); + if (var6 > Client.field731) { + var6 = Client.field731; + var8 = var3 * var6 * 512 / (var10 * 334); + var9 = (var2 - var8) / 2; + if (var4) { + Rasterizer2D.Rasterizer2D_resetClip(); + Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var9, var3, -16777216); + Rasterizer2D.Rasterizer2D_fillRectangle(var0 + var2 - var9, var1, var9, var3, -16777216); + } + + var0 += var9; + var2 -= var9 * 2; + } + } else if (var7 > Client.field903) { + var10 = Client.field903; + var6 = var10 * var2 * 334 / (var3 * 512); + if (var6 < Client.field900) { + var6 = Client.field900; + var8 = var10 * var2 * 334 / (var6 * 512); + var9 = (var3 - var8) / 2; + if (var4) { + Rasterizer2D.Rasterizer2D_resetClip(); + Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var2, var9, -16777216); + Rasterizer2D.Rasterizer2D_fillRectangle(var0, var3 + var1 - var9, var2, var9, -16777216); + } + + var1 += var9; + var3 -= var9 * 2; } } - } // L: 9231 + + Client.viewportZoom = var3 * var6 / 334; + if (var2 != Client.viewportWidth || var3 != Client.viewportHeight) { + class39.method593(var2, var3); + } + + Client.viewportOffsetX = var0; + Client.viewportOffsetY = var1; + Client.viewportWidth = var2; + Client.viewportHeight = var3; + } @ObfuscatedName("jk") @ObfuscatedSignature( - descriptor = "([Lht;IB)V", - garbageValue = "-44" + descriptor = "(ZB)V", + garbageValue = "-67" ) - @Export("runComponentCloseListeners") - static final void runComponentCloseListeners(Widget[] var0, int var1) { - for (int var2 = 0; var2 < var0.length; ++var2) { // L: 10814 - Widget var3 = var0[var2]; // L: 10815 - if (var3 != null) { // L: 10816 - if (var3.type == 0) { // L: 10817 - if (var3.children != null) { // L: 10818 - runComponentCloseListeners(var3.children, var1); - } + @Export("setTapToDrop") + static void setTapToDrop(boolean var0) { + Client.tapToDrop = var0; + } - InterfaceParent var4 = (InterfaceParent)Client.interfaceParents.get((long)var3.id); // L: 10819 - if (var4 != null) { // L: 10820 - WorldMapAreaData.runIntfCloseListeners(var4.group, var1); - } + @ObfuscatedName("kj") + @ObfuscatedSignature( + descriptor = "(IIIILlm;Lho;I)V", + garbageValue = "-1541467427" + ) + @Export("drawSpriteOnMinimap") + static final void drawSpriteOnMinimap(int var0, int var1, int var2, int var3, Sprite var4, SpriteMask var5) { + if (var4 != null) { + int var6 = Client.camAngleY & 2047; + int var7 = var3 * var3 + var2 * var2; + if (var7 <= 6400) { + int var8 = Rasterizer3D.Rasterizer3D_sine[var6]; + int var9 = Rasterizer3D.Rasterizer3D_cosine[var6]; + int var10 = var3 * var8 + var9 * var2 >> 16; + int var11 = var3 * var9 - var8 * var2 >> 16; + if (var7 > 2500) { + var4.method6236(var10 + var5.width / 2 - var4.width / 2, var5.height / 2 - var11 - var4.height / 2, var0, var1, var5.width, var5.height, var5.xStarts, var5.xWidths); + } else { + var4.drawTransBgAt(var0 + var10 + var5.width / 2 - var4.width / 2, var5.height / 2 + var1 - var11 - var4.height / 2); } - ScriptEvent var5; - if (var1 == 0 && var3.onDialogAbort != null) { // L: 10822 - var5 = new ScriptEvent(); // L: 10823 - var5.widget = var3; // L: 10824 - var5.args = var3.onDialogAbort; // L: 10825 - Entity.runScriptEvent(var5); // L: 10826 - } - - if (var1 == 1 && var3.onSubChange != null) { // L: 10828 - if (var3.childIndex >= 0) { // L: 10829 - Widget var6 = UserComparator4.getWidget(var3.id); // L: 10830 - if (var6 == null || var6.children == null || var3.childIndex >= var6.children.length || var3 != var6.children[var3.childIndex]) { // L: 10831 - continue; - } - } - - var5 = new ScriptEvent(); // L: 10835 - var5.widget = var3; // L: 10836 - var5.args = var3.onSubChange; // L: 10837 - Entity.runScriptEvent(var5); // L: 10838 - } } } - - } // L: 10841 + } } diff --git a/runescape-client/src/main/java/class258.java b/runescape-client/src/main/java/class258.java index 810d817188..e9e7c0701c 100644 --- a/runescape-client/src/main/java/class258.java +++ b/runescape-client/src/main/java/class258.java @@ -1,63 +1,283 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; @ObfuscatedName("iu") public class class258 { - @ObfuscatedName("f") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(II)Ljx;", - garbageValue = "1729073016" + descriptor = "(ILcs;ZI)I", + garbageValue = "-756933524" ) - public static HitSplatDefinition method4654(int var0) { - HitSplatDefinition var1 = (HitSplatDefinition)HitSplatDefinition.HitSplatDefinition_cached.get((long)var0); // L: 46 - if (var1 != null) { // L: 47 - return var1; - } else { - byte[] var2 = HitSplatDefinition.HitSplatDefinition_archive.takeFile(32, var0); // L: 48 - var1 = new HitSplatDefinition(); // L: 49 - if (var2 != null) { // L: 50 - var1.decode(new Buffer(var2)); + static int method4516(int var0, Script var1, boolean var2) { + if (var0 == ScriptOpcodes.CHAT_GETFILTER_PUBLIC) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.publicChatMode; + return 1; + } else if (var0 == ScriptOpcodes.CHAT_SETFILTER) { + VarcInt.Interpreter_intStackSize -= 3; + Client.publicChatMode = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + Client.privateChatMode = class52.method840(Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]); + if (Client.privateChatMode == null) { + Client.privateChatMode = PrivateChatMode.field3832; } - HitSplatDefinition.HitSplatDefinition_cached.put(var1, (long)var0); // L: 51 - return var1; // L: 52 - } - } - - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "(IIZB)Ljava/lang/String;", - garbageValue = "72" - ) - static String method4655(int var0, int var1, boolean var2) { - if (var1 >= 2 && var1 <= 36) { // L: 115 - if (var2 && var0 >= 0) { // L: 116 - int var3 = 2; // L: 117 - - for (int var4 = var0 / var1; var4 != 0; ++var3) { // L: 118 119 121 - var4 /= var1; // L: 120 - } - - char[] var5 = new char[var3]; // L: 123 - var5[0] = '+'; // L: 124 - - for (int var6 = var3 - 1; var6 > 0; --var6) { // L: 125 - int var7 = var0; // L: 126 - var0 /= var1; // L: 127 - int var8 = var7 - var0 * var1; // L: 128 - if (var8 >= 10) { // L: 129 - var5[var6] = (char)(var8 + 87); - } else { - var5[var6] = (char)(var8 + 48); // L: 130 - } - } - - return new String(var5); // L: 132 + Client.tradeChatMode = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 2]; + PacketBufferNode var18 = ItemContainer.getPacketBufferNode(ClientPacket.field2308, Client.packetWriter.isaacCipher); + var18.packetBuffer.writeByte(Client.publicChatMode); + var18.packetBuffer.writeByte(Client.privateChatMode.field3835); + var18.packetBuffer.writeByte(Client.tradeChatMode); + Client.packetWriter.addNode(var18); + return 1; + } else { + String var3; + int var11; + if (var0 == ScriptOpcodes.CHAT_SENDABUSEREPORT) { + var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + VarcInt.Interpreter_intStackSize -= 2; + var11 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + int var12 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + PacketBufferNode var13 = ItemContainer.getPacketBufferNode(ClientPacket.field2301, Client.packetWriter.isaacCipher); + var13.packetBuffer.writeByte(FloorDecoration.stringCp1252NullTerminatedByteSize(var3) + 2); + var13.packetBuffer.writeStringCp1252NullTerminated(var3); + var13.packetBuffer.writeByte(var11 - 1); + var13.packetBuffer.writeByte(var12); + Client.packetWriter.addNode(var13); + return 1; } else { - return Integer.toString(var0, var1); + int var10; + if (var0 == ScriptOpcodes.CHAT_GETHISTORY_BYTYPEANDLINE) { + VarcInt.Interpreter_intStackSize -= 2; + var10 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var11 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Message var16 = WallDecoration.Messages_getByChannelAndID(var10, var11); + if (var16 != null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var16.count; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var16.cycle; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var16.sender != null ? var16.sender : ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var16.prefix != null ? var16.prefix : ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var16.text != null ? var16.text : ""; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var16.isFromFriend() ? 1 : (var16.isFromIgnored() ? 2 : 0); + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == ScriptOpcodes.CHAT_GETHISTORY_BYUID) { + var10 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Message var14 = class195.Messages_getMessage(var10); + if (var14 != null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var14.type; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var14.cycle; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var14.sender != null ? var14.sender : ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var14.prefix != null ? var14.prefix : ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var14.text != null ? var14.text : ""; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var14.isFromFriend() ? 1 : (var14.isFromIgnored() ? 2 : 0); + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == ScriptOpcodes.CHAT_GETFILTER_PRIVATE) { + if (Client.privateChatMode == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.privateChatMode.field3835; + } + + return 1; + } else if (var0 == ScriptOpcodes.CHAT_SENDPUBLIC) { + var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + var11 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + String var15 = var3.toLowerCase(); + byte var17 = 0; + if (var15.startsWith("yellow:")) { + var17 = 0; + var3 = var3.substring("yellow:".length()); + } else if (var15.startsWith("red:")) { + var17 = 1; + var3 = var3.substring("red:".length()); + } else if (var15.startsWith("green:")) { + var17 = 2; + var3 = var3.substring("green:".length()); + } else if (var15.startsWith("cyan:")) { + var17 = 3; + var3 = var3.substring("cyan:".length()); + } else if (var15.startsWith("purple:")) { + var17 = 4; + var3 = var3.substring("purple:".length()); + } else if (var15.startsWith("white:")) { + var17 = 5; + var3 = var3.substring("white:".length()); + } else if (var15.startsWith("flash1:")) { + var17 = 6; + var3 = var3.substring("flash1:".length()); + } else if (var15.startsWith("flash2:")) { + var17 = 7; + var3 = var3.substring("flash2:".length()); + } else if (var15.startsWith("flash3:")) { + var17 = 8; + var3 = var3.substring("flash3:".length()); + } else if (var15.startsWith("glow1:")) { + var17 = 9; + var3 = var3.substring("glow1:".length()); + } else if (var15.startsWith("glow2:")) { + var17 = 10; + var3 = var3.substring("glow2:".length()); + } else if (var15.startsWith("glow3:")) { + var17 = 11; + var3 = var3.substring("glow3:".length()); + } else if (WorldMapScaleHandler.clientLanguage != Language.Language_EN) { + if (var15.startsWith("yellow:")) { + var17 = 0; + var3 = var3.substring("yellow:".length()); + } else if (var15.startsWith("red:")) { + var17 = 1; + var3 = var3.substring("red:".length()); + } else if (var15.startsWith("green:")) { + var17 = 2; + var3 = var3.substring("green:".length()); + } else if (var15.startsWith("cyan:")) { + var17 = 3; + var3 = var3.substring("cyan:".length()); + } else if (var15.startsWith("purple:")) { + var17 = 4; + var3 = var3.substring("purple:".length()); + } else if (var15.startsWith("white:")) { + var17 = 5; + var3 = var3.substring("white:".length()); + } else if (var15.startsWith("flash1:")) { + var17 = 6; + var3 = var3.substring("flash1:".length()); + } else if (var15.startsWith("flash2:")) { + var17 = 7; + var3 = var3.substring("flash2:".length()); + } else if (var15.startsWith("flash3:")) { + var17 = 8; + var3 = var3.substring("flash3:".length()); + } else if (var15.startsWith("glow1:")) { + var17 = 9; + var3 = var3.substring("glow1:".length()); + } else if (var15.startsWith("glow2:")) { + var17 = 10; + var3 = var3.substring("glow2:".length()); + } else if (var15.startsWith("glow3:")) { + var17 = 11; + var3 = var3.substring("glow3:".length()); + } + } + + var15 = var3.toLowerCase(); + byte var7 = 0; + if (var15.startsWith("wave:")) { + var7 = 1; + var3 = var3.substring("wave:".length()); + } else if (var15.startsWith("wave2:")) { + var7 = 2; + var3 = var3.substring("wave2:".length()); + } else if (var15.startsWith("shake:")) { + var7 = 3; + var3 = var3.substring("shake:".length()); + } else if (var15.startsWith("scroll:")) { + var7 = 4; + var3 = var3.substring("scroll:".length()); + } else if (var15.startsWith("slide:")) { + var7 = 5; + var3 = var3.substring("slide:".length()); + } else if (Language.Language_EN != WorldMapScaleHandler.clientLanguage) { + if (var15.startsWith("wave:")) { + var7 = 1; + var3 = var3.substring("wave:".length()); + } else if (var15.startsWith("wave2:")) { + var7 = 2; + var3 = var3.substring("wave2:".length()); + } else if (var15.startsWith("shake:")) { + var7 = 3; + var3 = var3.substring("shake:".length()); + } else if (var15.startsWith("scroll:")) { + var7 = 4; + var3 = var3.substring("scroll:".length()); + } else if (var15.startsWith("slide:")) { + var7 = 5; + var3 = var3.substring("slide:".length()); + } + } + + PacketBufferNode var8 = ItemContainer.getPacketBufferNode(ClientPacket.field2304, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeByte(0); + int var9 = var8.packetBuffer.offset; + var8.packetBuffer.writeByte(var11); + var8.packetBuffer.writeByte(var17); + var8.packetBuffer.writeByte(var7); + UrlRequester.method3383(var8.packetBuffer, var3); + var8.packetBuffer.writeLengthByte(var8.packetBuffer.offset - var9); + Client.packetWriter.addNode(var8); + return 1; + } else if (var0 == ScriptOpcodes.CHAT_SENDPRIVATE) { + Interpreter.Interpreter_stringStackSize -= 2; + var3 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize]; + String var4 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize + 1]; + PacketBufferNode var5 = ItemContainer.getPacketBufferNode(ClientPacket.field2230, Client.packetWriter.isaacCipher); + var5.packetBuffer.writeShort(0); + int var6 = var5.packetBuffer.offset; + var5.packetBuffer.writeStringCp1252NullTerminated(var3); + UrlRequester.method3383(var5.packetBuffer, var4); + var5.packetBuffer.writeLengthShort(var5.packetBuffer.offset - var6); + Client.packetWriter.addNode(var5); + return 1; + } else if (var0 != ScriptOpcodes.CHAT_PLAYERNAME) { + if (var0 == ScriptOpcodes.CHAT_GETFILTER_TRADE) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.tradeChatMode; + return 1; + } else if (var0 == ScriptOpcodes.CHAT_GETHISTORYLENGTH) { + var10 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Canvas.Messages_getHistorySize(var10); + return 1; + } else if (var0 == ScriptOpcodes.CHAT_GETNEXTUID) { + var10 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Calendar.Messages_getNextChatID(var10); + return 1; + } else if (var0 == ScriptOpcodes.CHAT_GETPREVUID) { + var10 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = class39.Messages_getLastChatID(var10); + return 1; + } else if (var0 == ScriptOpcodes.DOCHEAT) { + var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + SecureRandomCallable.doCheat(var3); + return 1; + } else if (var0 == ScriptOpcodes.CHAT_SETMESSAGEFILTER) { + Client.field871 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize].toLowerCase().trim(); + return 1; + } else if (var0 == ScriptOpcodes.CHAT_GETMESSAGEFILTER) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = Client.field871; + return 1; + } else if (var0 == ScriptOpcodes.DEBUGMES) { + var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; + System.out.println(var3); + return 1; + } else { + return 2; + } + } else { + if (PlayerAppearance.localPlayer != null && PlayerAppearance.localPlayer.username != null) { + var3 = PlayerAppearance.localPlayer.username.getName(); + } else { + var3 = ""; + } + + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3; + return 1; + } } - } else { - throw new IllegalArgumentException("" + var1); } } } diff --git a/runescape-client/src/main/java/class277.java b/runescape-client/src/main/java/class277.java index 752c5f589b..2390c70164 100644 --- a/runescape-client/src/main/java/class277.java +++ b/runescape-client/src/main/java/class277.java @@ -1,37 +1,32 @@ -import java.io.File; -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("ji") +@ObfuscatedName("jh") public class class277 { - @ObfuscatedName("m") - @Export("JagexCache_locationFile") - static File JagexCache_locationFile; - - @ObfuscatedName("fq") + @ObfuscatedName("i") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1799040781" + descriptor = "(ILcs;ZI)I", + garbageValue = "-1829984749" ) - @Export("setWindowedMode") - static void setWindowedMode(int var0) { - Client.field879 = 0L; // L: 4204 - if (var0 >= 2) { // L: 4205 - Client.isResizable = true; + static int method5005(int var0, Script var1, boolean var2) { + Widget var3 = var2 ? PlayerAppearance.field2561 : VarcInt.field3264; + if (var0 == ScriptOpcodes.CC_GETINVOBJECT) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.itemId; + return 1; + } else if (var0 == ScriptOpcodes.CC_GETINVCOUNT) { + if (var3.itemId != -1) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.itemQuantity; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == ScriptOpcodes.CC_GETID) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var3.childIndex; + return 1; } else { - Client.isResizable = false; // L: 4206 + return 2; } - - if (UrlRequester.getWindowedMode() == 1) { // L: 4207 - ByteArrayPool.client.setMaxCanvasSize(765, 503); // L: 4208 - } else { - ByteArrayPool.client.setMaxCanvasSize(7680, 2160); // L: 4211 - } - - if (Client.gameState >= 25) { // L: 4213 - Actor.method1855(); - } - - } // L: 4214 + } } diff --git a/runescape-client/src/main/java/class278.java b/runescape-client/src/main/java/class278.java index c22d58eeb5..babd1df9eb 100644 --- a/runescape-client/src/main/java/class278.java +++ b/runescape-client/src/main/java/class278.java @@ -1,19 +1,13 @@ import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jq") +@ObfuscatedName("jo") public class class278 { - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "[Lle;" + @ObfuscatedName("er") + @ObfuscatedGetter( + intValue = 1418794593 ) - @Export("runesSprite") - static IndexedSprite[] runesSprite; - @ObfuscatedName("jh") - @ObfuscatedSignature( - descriptor = "Ldu;" - ) - @Export("textureProvider") - static TextureProvider textureProvider; + @Export("port1") + static int port1; } diff --git a/runescape-client/src/main/java/class279.java b/runescape-client/src/main/java/class279.java new file mode 100644 index 0000000000..4d42ea7dd4 --- /dev/null +++ b/runescape-client/src/main/java/class279.java @@ -0,0 +1,60 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("ja") +public class class279 { + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/CharSequence;B)I", + garbageValue = "7" + ) + @Export("parseInt") + public static int parseInt(CharSequence var0) { + return World.parseIntCustomRadix(var0, 10, true); + } + + @ObfuscatedName("kr") + @ObfuscatedSignature( + descriptor = "(Lhe;I)V", + garbageValue = "-625858082" + ) + static final void method5006(Widget var0) { + int var1 = var0.contentType; + if (var1 == 324) { + if (Client.field813 == -1) { + Client.field813 = var0.spriteId2; + Client.field911 = var0.spriteId; + } + + if (Client.playerAppearance.isFemale) { + var0.spriteId2 = Client.field813; + } else { + var0.spriteId2 = Client.field911; + } + + } else if (var1 == 325) { + if (Client.field813 == -1) { + Client.field813 = var0.spriteId2; + Client.field911 = var0.spriteId; + } + + if (Client.playerAppearance.isFemale) { + var0.spriteId2 = Client.field911; + } else { + var0.spriteId2 = Client.field813; + } + + } else if (var1 == 327) { + var0.modelAngleX = 150; + var0.modelAngleY = (int)(Math.sin((double)Client.cycle / 40.0D) * 256.0D) & 2047; + var0.modelType = 5; + var0.modelId = 0; + } else if (var1 == 328) { + var0.modelAngleX = 150; + var0.modelAngleY = (int)(Math.sin((double)Client.cycle / 40.0D) * 256.0D) & 2047; + var0.modelType = 5; + var0.modelId = 1; + } + } +} diff --git a/runescape-client/src/main/java/class280.java b/runescape-client/src/main/java/class280.java index 550ba90c02..feab91b797 100644 --- a/runescape-client/src/main/java/class280.java +++ b/runescape-client/src/main/java/class280.java @@ -1,13 +1,16 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jl") +@ObfuscatedName("jg") public class class280 { - @ObfuscatedName("bm") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "(Lib;Ljava/lang/String;Ljava/lang/String;B)[Llm;", + garbageValue = "0" ) - @Export("worldSelectRightSprite") - static IndexedSprite worldSelectRightSprite; + public static Sprite[] method5008(AbstractArchive var0, String var1, String var2) { + int var3 = var0.getGroupId(var1); + int var4 = var0.getFileId(var3, var2); + return ClientPreferences.method1918(var0, var3, var4); + } } diff --git a/runescape-client/src/main/java/class281.java b/runescape-client/src/main/java/class281.java deleted file mode 100644 index 7382ca1a1c..0000000000 --- a/runescape-client/src/main/java/class281.java +++ /dev/null @@ -1,71 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("jw") -public class class281 { - @ObfuscatedName("dk") - @ObfuscatedSignature( - descriptor = "Lid;" - ) - @Export("archive10") - static Archive archive10; - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(I)Llc;", - garbageValue = "1924580283" - ) - static Sprite method5132() { - Sprite var0 = new Sprite(); // L: 216 - var0.width = class336.SpriteBuffer_spriteWidth; // L: 217 - var0.height = class336.SpriteBuffer_spriteHeight; // L: 218 - var0.xOffset = class336.SpriteBuffer_xOffsets[0]; // L: 219 - var0.yOffset = class225.SpriteBuffer_yOffsets[0]; // L: 220 - var0.subWidth = class336.SpriteBuffer_spriteWidths[0]; // L: 221 - var0.subHeight = class336.SpriteBuffer_spriteHeights[0]; // L: 222 - int var1 = var0.subHeight * var0.subWidth; // L: 223 - byte[] var2 = class13.SpriteBuffer_pixels[0]; // L: 224 - var0.pixels = new int[var1]; // L: 225 - - for (int var3 = 0; var3 < var1; ++var3) { // L: 226 - var0.pixels[var3] = WorldMapID.SpriteBuffer_spritePalette[var2[var3] & 255]; - } - - class336.SpriteBuffer_xOffsets = null; // L: 228 - class225.SpriteBuffer_yOffsets = null; // L: 229 - class336.SpriteBuffer_spriteWidths = null; // L: 230 - class336.SpriteBuffer_spriteHeights = null; // L: 231 - WorldMapID.SpriteBuffer_spritePalette = null; // L: 232 - class13.SpriteBuffer_pixels = null; // L: 233 - return var0; // L: 235 - } - - @ObfuscatedName("hq") - @ObfuscatedSignature( - descriptor = "(Lbi;IIBB)V", - garbageValue = "1" - ) - static final void method5133(Player var0, int var1, int var2, byte var3) { - int var4 = var0.pathX[0]; // L: 7707 - int var5 = var0.pathY[0]; // L: 7708 - int var6 = var0.transformedSize(); // L: 7709 - if (var4 >= var6 && var4 < 104 - var6 && var5 >= var6 && var5 < 104 - var6) { // L: 7710 - if (var1 >= var6 && var1 < 104 - var6 && var2 >= var6 && var2 < 104 - var6) { // L: 7711 - int var9 = var0.transformedSize(); // L: 7714 - Client.field877.approxDestinationX = var1; // L: 7717 - Client.field877.approxDestinationY = var2; // L: 7718 - Client.field877.approxDestinationSizeX = 1; // L: 7719 - Client.field877.approxDestinationSizeY = 1; // L: 7720 - ApproximateRouteStrategy var10 = Client.field877; // L: 7721 - int var11 = ApproximateRouteStrategy.method1321(var4, var5, var9, var10, Client.collisionMaps[var0.plane], true, Client.field695, Client.field956); // L: 7723 - if (var11 >= 1) { // L: 7724 - for (int var12 = 0; var12 < var11 - 1; ++var12) { // L: 7725 - var0.method1337(Client.field695[var12], Client.field956[var12], var3); - } - - } - } - } - } // L: 7726 -} diff --git a/runescape-client/src/main/java/class297.java b/runescape-client/src/main/java/class297.java index 81c7e37f2a..164fc0212a 100644 --- a/runescape-client/src/main/java/class297.java +++ b/runescape-client/src/main/java/class297.java @@ -1,13 +1,13 @@ import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kx") +@ObfuscatedName("kp") public class class297 { - @ObfuscatedName("q") - @ObfuscatedGetter( - intValue = -278592989 + @ObfuscatedName("fu") + @ObfuscatedSignature( + descriptor = "Lku;" ) - @Export("idxCount") - static int idxCount; + @Export("fontPlain11") + static Font fontPlain11; } diff --git a/runescape-client/src/main/java/class298.java b/runescape-client/src/main/java/class298.java index ef28bc5150..29a4e5d03a 100644 --- a/runescape-client/src/main/java/class298.java +++ b/runescape-client/src/main/java/class298.java @@ -2,41 +2,29 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kg") +@ObfuscatedName("kq") public class class298 { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("cp1252AsciiExtension") public static final char[] cp1252AsciiExtension; static { - cp1252AsciiExtension = new char[]{'€', '\u0000', '‚', 'ƒ', '„', '…', '†', '‡', 'ˆ', '‰', 'Š', '‹', 'Œ', '\u0000', 'Ž', '\u0000', '\u0000', '‘', '’', '“', '”', '•', '–', '—', '˜', '™', 'š', '›', 'œ', '\u0000', 'ž', 'Ÿ'}; // L: 4 + cp1252AsciiExtension = new char[]{'€', '\u0000', '‚', 'ƒ', '„', '…', '†', '‡', 'ˆ', '‰', 'Š', '‹', 'Œ', '\u0000', 'Ž', '\u0000', '\u0000', '‘', '’', '“', '”', '•', '–', '—', '˜', '™', 'š', '›', 'œ', '\u0000', 'ž', 'Ÿ'}; } - @ObfuscatedName("c") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Liw;II)Lle;", - garbageValue = "852535134" + descriptor = "(I)J", + garbageValue = "255749540" ) - public static IndexedSprite method5411(AbstractArchive var0, int var1) { - if (!WorldMapAreaData.method787(var0, var1)) { // L: 190 - return null; - } else { - IndexedSprite var3 = new IndexedSprite(); // L: 193 - var3.width = class336.SpriteBuffer_spriteWidth; // L: 194 - var3.height = class336.SpriteBuffer_spriteHeight; // L: 195 - var3.xOffset = class336.SpriteBuffer_xOffsets[0]; // L: 196 - var3.yOffset = class225.SpriteBuffer_yOffsets[0]; // L: 197 - var3.subWidth = class336.SpriteBuffer_spriteWidths[0]; // L: 198 - var3.subHeight = class336.SpriteBuffer_spriteHeights[0]; // L: 199 - var3.palette = WorldMapID.SpriteBuffer_spritePalette; // L: 200 - var3.pixels = class13.SpriteBuffer_pixels[0]; // L: 201 - class336.SpriteBuffer_xOffsets = null; // L: 203 - class225.SpriteBuffer_yOffsets = null; // L: 204 - class336.SpriteBuffer_spriteWidths = null; // L: 205 - class336.SpriteBuffer_spriteHeights = null; // L: 206 - WorldMapID.SpriteBuffer_spritePalette = null; // L: 207 - class13.SpriteBuffer_pixels = null; // L: 208 - return var3; // L: 212 + @Export("currentTimeMillis") + public static final synchronized long currentTimeMillis() { + long var0 = System.currentTimeMillis(); + if (var0 < class307.field3744) { + class307.field3743 += class307.field3744 - var0; } + + class307.field3744 = var0; + return var0 + class307.field3743; } } diff --git a/runescape-client/src/main/java/class299.java b/runescape-client/src/main/java/class299.java index 447e99dcce..19ad123dbb 100644 --- a/runescape-client/src/main/java/class299.java +++ b/runescape-client/src/main/java/class299.java @@ -1,52 +1,21 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kf") +@ObfuscatedName("kk") public final class class299 { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("base37Table") - public static final char[] base37Table; - @ObfuscatedName("b") - static long[] field3678; - @ObfuscatedName("c") - static byte[][][] field3679; + static final char[] base37Table; + @ObfuscatedName("v") + static long[] field3690; static { - base37Table = new char[]{'_', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'}; // L: 4 - field3678 = new long[12]; // L: 5 + base37Table = new char[]{'_', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'}; + field3690 = new long[12]; - for (int var0 = 0; var0 < field3678.length; ++var0) { // L: 8 - field3678[var0] = (long)Math.pow(37.0D, (double)var0); + for (int var0 = 0; var0 < field3690.length; ++var0) { + field3690[var0] = (long)Math.pow(37.0D, (double)var0); } - } // L: 9 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "([BIII)Ljava/lang/String;", - garbageValue = "1354932272" - ) - public static String method5418(byte[] var0, int var1, int var2) { - StringBuilder var3 = new StringBuilder(); // L: 58 - - for (int var4 = var1; var4 < var2 + var1; var4 += 3) { // L: 59 - int var5 = var0[var4] & 255; // L: 60 - var3.append(class300.field3686[var5 >>> 2]); // L: 61 - if (var4 < var2 - 1) { // L: 62 - int var6 = var0[var4 + 1] & 255; // L: 63 - var3.append(class300.field3686[(var5 & 3) << 4 | var6 >>> 4]); // L: 64 - if (var4 < var2 - 2) { // L: 65 - int var7 = var0[var4 + 2] & 255; // L: 66 - var3.append(class300.field3686[(var6 & 15) << 2 | var7 >>> 6]).append(class300.field3686[var7 & 63]); // L: 67 - } else { - var3.append(class300.field3686[(var6 & 15) << 2]).append("="); // L: 69 - } - } else { - var3.append(class300.field3686[(var5 & 3) << 4]).append("=="); // L: 71 - } - } - - return var3.toString(); // L: 73 } } diff --git a/runescape-client/src/main/java/class3.java b/runescape-client/src/main/java/class3.java index 8e62861e45..eadbb65ae8 100644 --- a/runescape-client/src/main/java/class3.java +++ b/runescape-client/src/main/java/class3.java @@ -1,195 +1,305 @@ +import java.util.Date; import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("m") +@ObfuscatedName("w") public class class3 implements Enumerated { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lm;" + descriptor = "Lw;" ) - static final class3 field11; - @ObfuscatedName("b") + public static final class3 field12; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lm;" + descriptor = "Lw;" ) - static final class3 field9; - @ObfuscatedName("l") + public static final class3 field13; + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Lm;" + descriptor = "Lw;" ) - static final class3 field10; - @ObfuscatedName("m") + public static final class3 field8; + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 914942415 + intValue = -393546789 ) - final int field14; - @ObfuscatedName("z") + final int field9; + @ObfuscatedName("t") @ObfuscatedGetter( - intValue = -1840148541 + intValue = 1940834259 ) - public final int field12; - @ObfuscatedName("q") - public final Class field13; - @ObfuscatedName("k") + public final int field10; + @ObfuscatedName("j") + public final Class field6; + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Lf;" + descriptor = "Lh;" ) - final class0 field16; + final class0 field14; static { - field11 = new class3(0, 0, Integer.class, new class1()); // L: 10 - field9 = new class3(1, 1, Long.class, new class2()); // L: 23 - field10 = new class3(2, 2, String.class, new class4()); + field12 = new class3(0, 0, Integer.class, new class1()); + field13 = new class3(1, 1, Long.class, new class2()); + field8 = new class3(2, 2, String.class, new class4()); } @ObfuscatedSignature( - descriptor = "(IILjava/lang/Class;Lf;)V" + descriptor = "(IILjava/lang/Class;Lh;)V" ) class3(int var1, int var2, Class var3, class0 var4) { - this.field14 = var1; // L: 59 - this.field12 = var2; // L: 60 - this.field13 = var3; // L: 61 - this.field16 = var4; // L: 62 + this.field9 = var1; + this.field10 = var2; + this.field6 = var3; + this.field14 = var4; } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "23" + descriptor = "(I)I", + garbageValue = "-275768542" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.field12; // L: 93 + return this.field10; } - @ObfuscatedName("z") + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "(Lkb;I)Ljava/lang/Object;", - garbageValue = "-1763369505" + descriptor = "(Lkj;I)Ljava/lang/Object;", + garbageValue = "1456492535" ) - public Object method47(Buffer var1) { - return this.field16.vmethod72(var1); // L: 97 + public Object method28(Buffer var1) { + return this.field14.vmethod48(var1); } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(B)[Lm;", - garbageValue = "-100" + descriptor = "(I)V", + garbageValue = "72391209" ) - public static class3[] method43() { - return new class3[]{field10, field11, field9}; // L: 55 - } - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/Object;Lkb;I)V", - garbageValue = "1153774479" - ) - public static void method57(Object var0, Buffer var1) { - class0 var2 = method45(var0.getClass()); - var2.vmethod69(var0, var1); - } // L: 68 - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V", - garbageValue = "-2079467882" - ) - @Export("addChatMessage") - static void addChatMessage(int var0, String var1, String var2, String var3) { - ChatChannel var4 = (ChatChannel)Messages.Messages_channels.get(var0); // L: 27 - if (var4 == null) { // L: 28 - var4 = new ChatChannel(); // L: 29 - Messages.Messages_channels.put(var0, var4); // L: 30 + public static void method43() { + if (MouseHandler.MouseHandler_instance != null) { + synchronized(MouseHandler.MouseHandler_instance) { + MouseHandler.MouseHandler_instance = null; + } } - Message var5 = var4.addMessage(var0, var1, var2, var3); // L: 32 - Messages.Messages_hashTable.put(var5, (long)var5.count); // L: 33 - Messages.Messages_queue.add(var5); // L: 34 - Client.chatCycle = Client.cycleCntr; // L: 35 - } // L: 36 + } - @ObfuscatedName("l") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ljava/lang/Class;I)Lf;", - garbageValue = "-1368179689" + descriptor = "(Ljava/lang/Object;Lkj;I)V", + garbageValue = "-1494098506" ) - static class0 method45(Class var0) { - class3[] var2 = method43(); // L: 74 - int var3 = 0; + public static void method25(Object var0, Buffer var1) { + class0 var2 = method37(var0.getClass()); + var2.vmethod49(var0, var1); + } + + @ObfuscatedName("h") + public static String method40(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("v") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/Class;I)Lh;", + garbageValue = "1667520167" + ) + static class0 method37(Class var0) { + class3[] var2 = new class3[]{field13, field12, field8}; + class3[] var3 = var2; + int var4 = 0; class3 var1; while (true) { - if (var3 >= var2.length) { - var1 = null; // L: 85 + if (var4 >= var3.length) { + var1 = null; break; } - class3 var4 = var2[var3]; // L: 76 - if (var4.field13 == var0) { // L: 78 - var1 = var4; // L: 79 + class3 var5 = var3[var4]; + if (var5.field6 == var0) { + var1 = var5; break; } - ++var3; // L: 75 + ++var4; } - if (var1 == null) { // L: 88 + if (var1 == null) { throw new IllegalArgumentException(); } else { - return var1.field16; // L: 89 + return var1.field14; } } @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-268310381" + descriptor = "(III)V", + garbageValue = "-1239840122" ) - @Export("clearItemContainer") - static void clearItemContainer(int var0) { - ItemContainer var1 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); // L: 63 - if (var1 != null) { // L: 64 - for (int var2 = 0; var2 < var1.ids.length; ++var2) { // L: 65 - var1.ids[var2] = -1; // L: 66 - var1.quantities[var2] = 0; // L: 67 - } - - } - } // L: 69 - - @ObfuscatedName("t") - @ObfuscatedSignature( - descriptor = "(CI)Z", - garbageValue = "1886603944" - ) - @Export("isAlphaNumeric") - public static boolean isAlphaNumeric(char var0) { - return var0 >= '0' && var0 <= '9' || var0 >= 'A' && var0 <= 'Z' || var0 >= 'a' && var0 <= 'z'; // L: 151 + public static final void method41(int var0, int var1) { + ViewportMouse.ViewportMouse_x = var0; + ViewportMouse.ViewportMouse_y = var1; + ViewportMouse.ViewportMouse_isInViewport = true; + ViewportMouse.ViewportMouse_entityCount = 0; + ViewportMouse.ViewportMouse_false0 = false; } - @ObfuscatedName("ha") + @ObfuscatedName("hv") @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "2004525575" + descriptor = "(Lbq;B)Z", + garbageValue = "0" ) - @Export("selectSpell") - static void selectSpell(int var0, int var1, int var2, int var3) { - Widget var4 = ItemContainer.getWidgetChild(var0, var1); // L: 8792 - if (var4 != null && var4.onTargetEnter != null) { // L: 8793 - ScriptEvent var5 = new ScriptEvent(); // L: 8794 - var5.widget = var4; // L: 8795 - var5.args = var4.onTargetEnter; // L: 8796 - Entity.runScriptEvent(var5); // L: 8797 - } + static boolean method42(Player var0) { + if (Client.drawPlayerNames == 0) { + return false; + } else if (PlayerAppearance.localPlayer != var0) { + boolean var1 = (Client.drawPlayerNames & 4) != 0; + boolean var2 = var1; + if (!var1) { + boolean var3 = (Client.drawPlayerNames & 1) != 0; + var2 = var3 && var0.isFriend(); + } - Client.field838 = var3; // L: 8799 - Client.isSpellSelected = true; // L: 8800 - class307.selectedSpellWidget = var0; // L: 8801 - Client.selectedSpellChildIndex = var1; // L: 8802 - class105.selectedSpellFlags = var2; // L: 8803 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var4); // L: 8804 - } // L: 8805 + return var2 || RouteStrategy.method3649() && var0.isClanMember(); + } else { + return MouseHandler.method1150(); + } + } + + @ObfuscatedName("is") + @ObfuscatedSignature( + descriptor = "(IIIILjava/lang/String;I)V", + garbageValue = "2076133641" + ) + @Export("widgetDefaultMenuAction") + static void widgetDefaultMenuAction(int var0, int var1, int var2, int var3, String var4) { + Widget var5 = class92.getWidgetChild(var1, var2); + if (var5 != null) { + if (var5.onOp != null) { + ScriptEvent var6 = new ScriptEvent(); + var6.widget = var5; + var6.opIndex = var0; + var6.targetName = var4; + var6.args = var5.onOp; + class22.runScriptEvent(var6); + } + + boolean var11 = true; + if (var5.contentType > 0) { + var11 = HealthBarUpdate.method1825(var5); + } + + if (var11) { + int var8 = FaceNormal.getWidgetFlags(var5); + int var9 = var0 - 1; + boolean var7 = (var8 >> var9 + 1 & 1) != 0; + if (var7) { + PacketBufferNode var10; + if (var0 == 1) { + var10 = ItemContainer.getPacketBufferNode(ClientPacket.field2240, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeInt(var1); + var10.packetBuffer.writeShort(var2); + var10.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var10); + } + + if (var0 == 2) { + var10 = ItemContainer.getPacketBufferNode(ClientPacket.field2286, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeInt(var1); + var10.packetBuffer.writeShort(var2); + var10.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var10); + } + + if (var0 == 3) { + var10 = ItemContainer.getPacketBufferNode(ClientPacket.field2249, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeInt(var1); + var10.packetBuffer.writeShort(var2); + var10.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var10); + } + + if (var0 == 4) { + var10 = ItemContainer.getPacketBufferNode(ClientPacket.field2320, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeInt(var1); + var10.packetBuffer.writeShort(var2); + var10.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var10); + } + + if (var0 == 5) { + var10 = ItemContainer.getPacketBufferNode(ClientPacket.field2247, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeInt(var1); + var10.packetBuffer.writeShort(var2); + var10.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var10); + } + + if (var0 == 6) { + var10 = ItemContainer.getPacketBufferNode(ClientPacket.field2289, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeInt(var1); + var10.packetBuffer.writeShort(var2); + var10.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var10); + } + + if (var0 == 7) { + var10 = ItemContainer.getPacketBufferNode(ClientPacket.field2316, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeInt(var1); + var10.packetBuffer.writeShort(var2); + var10.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var10); + } + + if (var0 == 8) { + var10 = ItemContainer.getPacketBufferNode(ClientPacket.field2252, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeInt(var1); + var10.packetBuffer.writeShort(var2); + var10.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var10); + } + + if (var0 == 9) { + var10 = ItemContainer.getPacketBufferNode(ClientPacket.field2307, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeInt(var1); + var10.packetBuffer.writeShort(var2); + var10.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var10); + } + + if (var0 == 10) { + var10 = ItemContainer.getPacketBufferNode(ClientPacket.field2231, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeInt(var1); + var10.packetBuffer.writeShort(var2); + var10.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var10); + } + + } + } + } + } + + @ObfuscatedName("jc") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "-1332893941" + ) + @Export("getTapToDrop") + static boolean getTapToDrop() { + return Client.tapToDrop; + } } diff --git a/runescape-client/src/main/java/class300.java b/runescape-client/src/main/java/class300.java index b2594dea1b..903b706e3f 100644 --- a/runescape-client/src/main/java/class300.java +++ b/runescape-client/src/main/java/class300.java @@ -1,135 +1,89 @@ import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kw") +@ObfuscatedName("kg") public class class300 { - @ObfuscatedName("f") - static char[] field3686; - @ObfuscatedName("b") - static char[] field3682; - @ObfuscatedName("l") - static char[] field3684; - @ObfuscatedName("m") - static int[] field3685; + @ObfuscatedName("h") + static char[] field3695; + @ObfuscatedName("v") + static char[] field3693; + @ObfuscatedName("x") + static char[] field3694; + @ObfuscatedName("w") + static int[] field3692; static { - field3686 = new char[64]; // L: 7 + field3695 = new char[64]; int var0; - for (var0 = 0; var0 < 26; ++var0) { // L: 8 - field3686[var0] = (char)(var0 + 65); + for (var0 = 0; var0 < 26; ++var0) { + field3695[var0] = (char)(var0 + 65); } - for (var0 = 26; var0 < 52; ++var0) { // L: 9 - field3686[var0] = (char)(var0 + 97 - 26); + for (var0 = 26; var0 < 52; ++var0) { + field3695[var0] = (char)(var0 + 97 - 26); } - for (var0 = 52; var0 < 62; ++var0) { // L: 10 - field3686[var0] = (char)(var0 + 48 - 52); + for (var0 = 52; var0 < 62; ++var0) { + field3695[var0] = (char)(var0 + 48 - 52); } - field3686[62] = '+'; // L: 11 - field3686[63] = '/'; // L: 12 - field3682 = new char[64]; // L: 18 + field3695[62] = '+'; + field3695[63] = '/'; + field3693 = new char[64]; - for (var0 = 0; var0 < 26; ++var0) { // L: 19 - field3682[var0] = (char)(var0 + 65); + for (var0 = 0; var0 < 26; ++var0) { + field3693[var0] = (char)(var0 + 65); } - for (var0 = 26; var0 < 52; ++var0) { // L: 20 - field3682[var0] = (char)(var0 + 97 - 26); + for (var0 = 26; var0 < 52; ++var0) { + field3693[var0] = (char)(var0 + 97 - 26); } - for (var0 = 52; var0 < 62; ++var0) { // L: 21 - field3682[var0] = (char)(var0 + 48 - 52); + for (var0 = 52; var0 < 62; ++var0) { + field3693[var0] = (char)(var0 + 48 - 52); } - field3682[62] = '*'; // L: 22 - field3682[63] = '-'; // L: 23 - field3684 = new char[64]; // L: 29 + field3693[62] = '*'; + field3693[63] = '-'; + field3694 = new char[64]; - for (var0 = 0; var0 < 26; ++var0) { // L: 30 - field3684[var0] = (char)(var0 + 65); + for (var0 = 0; var0 < 26; ++var0) { + field3694[var0] = (char)(var0 + 65); } - for (var0 = 26; var0 < 52; ++var0) { // L: 31 - field3684[var0] = (char)(var0 + 97 - 26); + for (var0 = 26; var0 < 52; ++var0) { + field3694[var0] = (char)(var0 + 97 - 26); } - for (var0 = 52; var0 < 62; ++var0) { // L: 32 - field3684[var0] = (char)(var0 + 48 - 52); + for (var0 = 52; var0 < 62; ++var0) { + field3694[var0] = (char)(var0 + 48 - 52); } - field3684[62] = '-'; // L: 33 - field3684[63] = '_'; // L: 34 - field3685 = new int[128]; // L: 40 + field3694[62] = '-'; + field3694[63] = '_'; + field3692 = new int[128]; - for (var0 = 0; var0 < field3685.length; ++var0) { // L: 41 - field3685[var0] = -1; + for (var0 = 0; var0 < field3692.length; ++var0) { + field3692[var0] = -1; } - for (var0 = 65; var0 <= 90; ++var0) { // L: 42 - field3685[var0] = var0 - 65; + for (var0 = 65; var0 <= 90; ++var0) { + field3692[var0] = var0 - 65; } - for (var0 = 97; var0 <= 122; ++var0) { // L: 43 - field3685[var0] = var0 - 97 + 26; + for (var0 = 97; var0 <= 122; ++var0) { + field3692[var0] = var0 - 97 + 26; } - for (var0 = 48; var0 <= 57; ++var0) { // L: 44 - field3685[var0] = var0 - 48 + 52; + for (var0 = 48; var0 <= 57; ++var0) { + field3692[var0] = var0 - 48 + 52; } - int[] var2 = field3685; // L: 45 - field3685[43] = 62; // L: 46 - var2[42] = 62; // L: 47 - int[] var1 = field3685; // L: 48 - field3685[47] = 63; // L: 49 - var1[45] = 63; // L: 50 - } // L: 51 - - @ObfuscatedName("iv") - @ObfuscatedSignature( - descriptor = "(IIIIIII)V", - garbageValue = "-364565462" - ) - static final void method5419(int var0, int var1, int var2, int var3, int var4, int var5) { - int var6 = var2 - var0; // L: 9800 - int var7 = var3 - var1; // L: 9801 - int var8 = var6 >= 0 ? var6 : -var6; // L: 9802 - int var9 = var7 >= 0 ? var7 : -var7; // L: 9803 - int var10 = var8; // L: 9804 - if (var8 < var9) { // L: 9805 - var10 = var9; - } - - if (var10 != 0) { // L: 9806 - int var11 = (var6 << 16) / var10; // L: 9807 - int var12 = (var7 << 16) / var10; // L: 9808 - if (var12 <= var11) { // L: 9809 - var11 = -var11; - } else { - var12 = -var12; // L: 9810 - } - - int var13 = var5 * var12 >> 17; // L: 9811 - int var14 = var5 * var12 + 1 >> 17; // L: 9812 - int var15 = var5 * var11 >> 17; // L: 9813 - int var16 = var5 * var11 + 1 >> 17; // L: 9814 - var0 -= Rasterizer2D.Rasterizer2D_xClipStart; // L: 9815 - var1 -= Rasterizer2D.Rasterizer2D_yClipStart; // L: 9816 - int var17 = var0 + var13; // L: 9817 - int var18 = var0 - var14; // L: 9818 - int var19 = var0 + var6 - var14; // L: 9819 - int var20 = var0 + var13 + var6; // L: 9820 - int var21 = var15 + var1; // L: 9821 - int var22 = var1 - var16; // L: 9822 - int var23 = var7 + var1 - var16; // L: 9823 - int var24 = var7 + var15 + var1; // L: 9824 - Rasterizer3D.method3137(var17, var18, var19); // L: 9825 - Rasterizer3D.method3149(var21, var22, var23, var17, var18, var19, var4); // L: 9826 - Rasterizer3D.method3137(var17, var19, var20); // L: 9827 - Rasterizer3D.method3149(var21, var23, var24, var17, var19, var20, var4); // L: 9828 - } - } // L: 9829 + int[] var2 = field3692; + field3692[43] = 62; + var2[42] = 62; + int[] var1 = field3692; + field3692[47] = 63; + var1[45] = 63; + } } diff --git a/runescape-client/src/main/java/class301.java b/runescape-client/src/main/java/class301.java index 8810c2c941..6ba71b697c 100644 --- a/runescape-client/src/main/java/class301.java +++ b/runescape-client/src/main/java/class301.java @@ -2,12 +2,12 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kr") +@ObfuscatedName("kl") public final class class301 { - @ObfuscatedName("be") + @ObfuscatedName("bz") @ObfuscatedSignature( - descriptor = "[Lle;" + descriptor = "[Llm;" ) - @Export("worldSelectArrows") - static IndexedSprite[] worldSelectArrows; + @Export("worldSelectBackSprites") + static Sprite[] worldSelectBackSprites; } diff --git a/runescape-client/src/main/java/class304.java b/runescape-client/src/main/java/class304.java new file mode 100644 index 0000000000..9fe479e1ab --- /dev/null +++ b/runescape-client/src/main/java/class304.java @@ -0,0 +1,42 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("kw") +public class class304 { + @ObfuscatedName("u") + @ObfuscatedSignature( + descriptor = "(Lib;III)Z", + garbageValue = "975575420" + ) + public static boolean method5363(AbstractArchive var0, int var1, int var2) { + byte[] var3 = var0.takeFile(var1, var2); + if (var3 == null) { + return false; + } else { + class232.SpriteBuffer_decode(var3); + return true; + } + } + + @ObfuscatedName("kx") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-969839782" + ) + @Export("Widget_resetModelFrames") + static final void Widget_resetModelFrames(int var0) { + if (class41.loadInterface(var0)) { + Widget[] var1 = class9.Widget_interfaceComponents[var0]; + + for (int var2 = 0; var2 < var1.length; ++var2) { + Widget var3 = var1[var2]; + if (var3 != null) { + var3.modelFrame = 0; + var3.modelFrameCycle = 0; + } + } + + } + } +} diff --git a/runescape-client/src/main/java/class307.java b/runescape-client/src/main/java/class307.java index 7a2453b896..82fb8563dd 100644 --- a/runescape-client/src/main/java/class307.java +++ b/runescape-client/src/main/java/class307.java @@ -1,18 +1,70 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kp") +@ObfuscatedName("kh") public final class class307 { - @ObfuscatedName("b") + @ObfuscatedName("h") @ObfuscatedGetter( - longValue = -7604974747731258625L + longValue = 121846517821844607L ) - static long field3731; - @ObfuscatedName("mi") + static long field3744; + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 542480531 + longValue = -4671105179371596943L ) - @Export("selectedSpellWidget") - static int selectedSpellWidget; + static long field3743; + @ObfuscatedName("ju") + @ObfuscatedSignature( + descriptor = "Ldk;" + ) + @Export("textureProvider") + static TextureProvider textureProvider; + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Lky;I)V", + garbageValue = "-206079776" + ) + @Export("updatePlayer") + static final void updatePlayer(PacketBuffer var0) { + var0.importIndex(); + int var1 = Client.localPlayerIndex; + Player var2 = PlayerAppearance.localPlayer = Client.players[var1] = new Player(); + var2.index = var1; + int var3 = var0.readBits(30); + byte var4 = (byte)(var3 >> 28); + int var5 = var3 >> 14 & 16383; + int var6 = var3 & 16383; + var2.pathX[0] = var5 - NetFileRequest.baseX * 64; + var2.x = (var2.pathX[0] << 7) + (var2.transformedSize() << 6); + var2.pathY[0] = var6 - class41.baseY * 64; + var2.y = (var2.pathY[0] << 7) + (var2.transformedSize() << 6); + GameObject.Client_plane = var2.plane = var4; + if (Players.field1254[var1] != null) { + var2.read(Players.field1254[var1]); + } + + Players.Players_count = 0; + Players.Players_indices[++Players.Players_count - 1] = var1; + Players.field1252[var1] = 0; + Players.Players_emptyIdxCount = 0; + + for (int var7 = 1; var7 < 2048; ++var7) { + if (var1 != var7) { + int var8 = var0.readBits(18); + int var9 = var8 >> 16; + int var10 = var8 >> 8 & 597; + int var11 = var8 & 597; + Players.Players_regions[var7] = (var10 << 14) + var11 + (var9 << 28); + Players.Players_orientations[var7] = 0; + Players.Players_targetIndices[var7] = -1; + Players.Players_emptyIndices[++Players.Players_emptyIdxCount - 1] = var7; + Players.field1252[var7] = 0; + } + } + + var0.exportIndex(); + } } diff --git a/runescape-client/src/main/java/class308.java b/runescape-client/src/main/java/class308.java index b0cba3189e..2c18e21b21 100644 --- a/runescape-client/src/main/java/class308.java +++ b/runescape-client/src/main/java/class308.java @@ -1,67 +1,25 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kj") +@ObfuscatedName("km") public class class308 { - @ObfuscatedName("fm") + @ObfuscatedName("z") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)V", - garbageValue = "-119" + descriptor = "([BI)Lku;", + garbageValue = "-1217906561" ) - @Export("doCheat") - static final void doCheat(String var0) { - if (var0.equalsIgnoreCase("toggleroof")) { // L: 3686 - GrandExchangeOfferAgeComparator.clientPreferences.roofsHidden = !GrandExchangeOfferAgeComparator.clientPreferences.roofsHidden; // L: 3687 - Tile.savePreferences(); // L: 3688 - if (GrandExchangeOfferAgeComparator.clientPreferences.roofsHidden) { // L: 3689 - DevicePcmPlayerProvider.addGameMessage(99, "", "Roofs are now all hidden"); - } else { - DevicePcmPlayerProvider.addGameMessage(99, "", "Roofs will only be removed selectively"); // L: 3690 - } + static Font method5482(byte[] var0) { + if (var0 == null) { + return null; + } else { + Font var1 = new Font(var0, class336.SpriteBuffer_xOffsets, class336.SpriteBuffer_yOffsets, class336.SpriteBuffer_spriteWidths, class336.SpriteBuffer_spriteHeights, class336.SpriteBuffer_spritePalette, GrandExchangeEvents.SpriteBuffer_pixels); + class336.SpriteBuffer_xOffsets = null; + class336.SpriteBuffer_yOffsets = null; + class336.SpriteBuffer_spriteWidths = null; + class336.SpriteBuffer_spriteHeights = null; + class336.SpriteBuffer_spritePalette = null; + GrandExchangeEvents.SpriteBuffer_pixels = null; + return var1; } - - if (var0.equalsIgnoreCase("displayfps")) { // L: 3692 - Client.displayFps = !Client.displayFps; - } - - if (var0.equalsIgnoreCase("renderself")) { // L: 3693 - Client.renderSelf = !Client.renderSelf; - } - - if (var0.equalsIgnoreCase("mouseovertext")) { // L: 3694 - Client.showMouseOverText = !Client.showMouseOverText; - } - - if (Client.staffModLevel >= 2) { // L: 3695 - if (var0.equalsIgnoreCase("errortest")) { // L: 3696 - throw new RuntimeException(); - } - - if (var0.equalsIgnoreCase("showcoord")) { // L: 3697 - KeyHandler.worldMap.showCoord = !KeyHandler.worldMap.showCoord; - } - - if (var0.equalsIgnoreCase("fpson")) { // L: 3698 - Client.displayFps = true; - } - - if (var0.equalsIgnoreCase("fpsoff")) { // L: 3699 - Client.displayFps = false; - } - - if (var0.equalsIgnoreCase("gc")) { // L: 3700 - System.gc(); - } - - if (var0.equalsIgnoreCase("clientdrop")) { // L: 3701 - FloorDecoration.method2986(); - } - } - - PacketBufferNode var1 = class4.getPacketBufferNode(ClientPacket.field2331, Client.packetWriter.isaacCipher); // L: 3704 - var1.packetBuffer.writeByte(var0.length() + 1); // L: 3705 - var1.packetBuffer.writeStringCp1252NullTerminated(var0); // L: 3706 - Client.packetWriter.addNode(var1); // L: 3707 - } // L: 3708 + } } diff --git a/runescape-client/src/main/java/class311.java b/runescape-client/src/main/java/class311.java index 2bd700ac4f..a75d789e38 100644 --- a/runescape-client/src/main/java/class311.java +++ b/runescape-client/src/main/java/class311.java @@ -1,71 +1,71 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("kh") +@ObfuscatedName("kd") public class class311 { - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("writeRandomDat") public static void writeRandomDat(byte[] var0, int var1, byte[] var2, int var3, int var4) { - if (var2 == var0) { // L: 12 - if (var3 == var1) { // L: 13 + if (var2 == var0) { + if (var3 == var1) { return; } - if (var3 > var1 && var3 < var4 + var1) { // L: 14 - --var4; // L: 15 - var1 += var4; // L: 16 - var3 += var4; // L: 17 - var4 = var1 - var4; // L: 18 + if (var3 > var1 && var3 < var4 + var1) { + --var4; + var1 += var4; + var3 += var4; + var4 = var1 - var4; - for (var4 += 7; var1 >= var4; var2[var3--] = var0[var1--]) { // L: 19 20 28 - var2[var3--] = var0[var1--]; // L: 21 - var2[var3--] = var0[var1--]; // L: 22 - var2[var3--] = var0[var1--]; // L: 23 - var2[var3--] = var0[var1--]; // L: 24 - var2[var3--] = var0[var1--]; // L: 25 - var2[var3--] = var0[var1--]; // L: 26 - var2[var3--] = var0[var1--]; // L: 27 + for (var4 += 7; var1 >= var4; var2[var3--] = var0[var1--]) { + var2[var3--] = var0[var1--]; + var2[var3--] = var0[var1--]; + var2[var3--] = var0[var1--]; + var2[var3--] = var0[var1--]; + var2[var3--] = var0[var1--]; + var2[var3--] = var0[var1--]; + var2[var3--] = var0[var1--]; } - for (var4 -= 7; var1 >= var4; var2[var3--] = var0[var1--]) { // L: 30 31 + for (var4 -= 7; var1 >= var4; var2[var3--] = var0[var1--]) { } - return; // L: 32 + return; } } - var4 += var1; // L: 35 + var4 += var1; - for (var4 -= 7; var1 < var4; var2[var3++] = var0[var1++]) { // L: 36 37 45 - var2[var3++] = var0[var1++]; // L: 38 - var2[var3++] = var0[var1++]; // L: 39 - var2[var3++] = var0[var1++]; // L: 40 - var2[var3++] = var0[var1++]; // L: 41 - var2[var3++] = var0[var1++]; // L: 42 - var2[var3++] = var0[var1++]; // L: 43 - var2[var3++] = var0[var1++]; // L: 44 + for (var4 -= 7; var1 < var4; var2[var3++] = var0[var1++]) { + var2[var3++] = var0[var1++]; + var2[var3++] = var0[var1++]; + var2[var3++] = var0[var1++]; + var2[var3++] = var0[var1++]; + var2[var3++] = var0[var1++]; + var2[var3++] = var0[var1++]; + var2[var3++] = var0[var1++]; } - for (var4 += 7; var1 < var4; var2[var3++] = var0[var1++]) { // L: 47 48 + for (var4 += 7; var1 < var4; var2[var3++] = var0[var1++]) { } - } // L: 49 + } - @ObfuscatedName("t") + @ObfuscatedName("z") @Export("clearIntArray") public static void clearIntArray(int[] var0, int var1, int var2) { - for (var2 = var2 + var1 - 7; var1 < var2; var0[var1++] = 0) { // L: 364 365 373 - var0[var1++] = 0; // L: 366 - var0[var1++] = 0; // L: 367 - var0[var1++] = 0; // L: 368 - var0[var1++] = 0; // L: 369 - var0[var1++] = 0; // L: 370 - var0[var1++] = 0; // L: 371 - var0[var1++] = 0; // L: 372 + for (var2 = var2 + var1 - 7; var1 < var2; var0[var1++] = 0) { + var0[var1++] = 0; + var0[var1++] = 0; + var0[var1++] = 0; + var0[var1++] = 0; + var0[var1++] = 0; + var0[var1++] = 0; + var0[var1++] = 0; } - for (var2 += 7; var1 < var2; var0[var1++] = 0) { // L: 375 376 + for (var2 += 7; var1 < var2; var0[var1++] = 0) { } - } // L: 377 + } } diff --git a/runescape-client/src/main/java/class323.java b/runescape-client/src/main/java/class323.java index 2a26bbca0f..e083014382 100644 --- a/runescape-client/src/main/java/class323.java +++ b/runescape-client/src/main/java/class323.java @@ -3,210 +3,62 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lh") +@ObfuscatedName("lz") public enum class323 implements Enumerated { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Llh;" + descriptor = "Llz;" ) - field3849(4, 0), - @ObfuscatedName("b") + field3857(2, 0), + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Llh;" + descriptor = "Llz;" ) - field3848(2, 2), - @ObfuscatedName("l") + field3853(0, 2), + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "Llh;" + descriptor = "Llz;" ) - field3855(5, 5), - @ObfuscatedName("m") + field3856(4, 5), + @ObfuscatedName("w") @ObfuscatedSignature( - descriptor = "Llh;" + descriptor = "Llz;" ) - field3850(1, 6), - @ObfuscatedName("z") + field3854(1, 6), + @ObfuscatedName("t") @ObfuscatedSignature( - descriptor = "Llh;" + descriptor = "Llz;" ) - field3851(0, 7), - @ObfuscatedName("q") + field3855(3, 7), + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "Llh;" + descriptor = "Llz;" ) - field3852(3, 8); + field3852(5, 8); - @ObfuscatedName("bw") - @ObfuscatedSignature( - descriptor = "Lle;" - ) - @Export("worldSelectLeftSprite") - static IndexedSprite worldSelectLeftSprite; - @ObfuscatedName("k") + @ObfuscatedName("n") @ObfuscatedGetter( - intValue = 1864683271 + intValue = -1735491841 ) - final int field3853; - @ObfuscatedName("c") + final int field3851; + @ObfuscatedName("p") @ObfuscatedGetter( - intValue = -475570997 + intValue = -966711557 ) - final int field3847; + final int field3858; class323(int var3, int var4) { - this.field3853 = var3; // L: 18 - this.field3847 = var4; // L: 19 - } // L: 20 + this.field3851 = var3; + this.field3858 = var4; + } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "23" + descriptor = "(I)I", + garbageValue = "-275768542" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.field3847; // L: 23 - } - - @ObfuscatedName("l") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;Lmc;I)Ljava/lang/String;", - garbageValue = "586268379" - ) - public static String method6048(CharSequence var0, LoginType var1) { - if (var0 == null) { // L: 40 - return null; - } else { - int var2 = 0; // L: 41 - - int var3; - for (var3 = var0.length(); var2 < var3 && Tiles.method1223(var0.charAt(var2)); ++var2) { // L: 42 43 - } - - while (var3 > var2 && Tiles.method1223(var0.charAt(var3 - 1))) { // L: 44 - --var3; - } - - int var4 = var3 - var2; // L: 45 - if (var4 >= 1) { // L: 47 - byte var6; - if (var1 == null) { // L: 51 - var6 = 12; // L: 52 - } else { - switch(var1.field4070) { // L: 55 - case 6: - var6 = 20; // L: 57 - break; // L: 58 - default: - var6 = 12; // L: 60 - } - } - - if (var4 <= var6) { // L: 64 - StringBuilder var10 = new StringBuilder(var4); // L: 68 - - for (int var11 = var2; var11 < var3; ++var11) { // L: 69 - char var7 = var0.charAt(var11); // L: 70 - if (class9.method124(var7)) { // L: 71 - char var8; - switch(var7) { // L: 74 - case ' ': - case '-': - case '_': - case ' ': - var8 = '_'; // L: 105 - break; // L: 106 - case '#': - case '[': - case ']': - var8 = var7; // L: 88 - break; // L: 89 - case 'À': - case 'Á': - case 'Â': - case 'Ã': - case 'Ä': - case 'à': - case 'á': - case 'â': - case 'ã': - case 'ä': - var8 = 'a'; // L: 117 - break; // L: 118 - case 'Ç': - case 'ç': - var8 = 'c'; // L: 96 - break; // L: 97 - case 'È': - case 'É': - case 'Ê': - case 'Ë': - case 'è': - case 'é': - case 'ê': - case 'ë': - var8 = 'e'; // L: 83 - break; - case 'Í': - case 'Î': - case 'Ï': - case 'í': - case 'î': - case 'ï': - var8 = 'i'; // L: 147 - break; // L: 148 - case 'Ñ': - case 'ñ': - var8 = 'n'; // L: 92 - break; // L: 93 - case 'Ò': - case 'Ó': - case 'Ô': - case 'Õ': - case 'Ö': - case 'ò': - case 'ó': - case 'ô': - case 'õ': - case 'ö': - var8 = 'o'; // L: 129 - break; // L: 130 - case 'Ù': - case 'Ú': - case 'Û': - case 'Ü': - case 'ù': - case 'ú': - case 'û': - case 'ü': - var8 = 'u'; // L: 139 - break; // L: 140 - case 'ß': - var8 = 'b'; // L: 154 - break; - case 'ÿ': - case 'Ÿ': - var8 = 'y'; // L: 151 - break; // L: 152 - default: - var8 = Character.toLowerCase(var7); // L: 99 - } - - if (var8 != 0) { // L: 159 - var10.append(var8); // L: 160 - } - } - } - - if (var10.length() == 0) { // L: 162 - return null; - } - - return var10.toString(); // L: 163 - } - } - - return null; // L: 66 - } + return this.field3858; } } diff --git a/runescape-client/src/main/java/class330.java b/runescape-client/src/main/java/class330.java new file mode 100644 index 0000000000..3aa05b4afb --- /dev/null +++ b/runescape-client/src/main/java/class330.java @@ -0,0 +1,13 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("ly") +public class class330 { + @ObfuscatedName("dd") + @ObfuscatedSignature( + descriptor = "Lil;" + ) + @Export("archive3") + static Archive archive3; +} diff --git a/runescape-client/src/main/java/class333.java b/runescape-client/src/main/java/class333.java new file mode 100644 index 0000000000..66dee5dbf9 --- /dev/null +++ b/runescape-client/src/main/java/class333.java @@ -0,0 +1,50 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedGetter; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("lj") +public enum class333 implements Enumerated { + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "Llj;" + ) + @Export("SOLID") + SOLID(0, 0), + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "Llj;" + ) + field3897(1, 1), + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "Llj;" + ) + field3898(2, 2); + + @ObfuscatedName("w") + @ObfuscatedGetter( + intValue = 1992705459 + ) + public final int field3902; + @ObfuscatedName("t") + @ObfuscatedGetter( + intValue = -1944525395 + ) + final int field3900; + + class333(int var3, int var4) { + this.field3902 = var3; + this.field3900 = var4; + } + + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-275768542" + ) + @Export("rsOrdinal") + public int rsOrdinal() { + return this.field3900; + } +} diff --git a/runescape-client/src/main/java/class336.java b/runescape-client/src/main/java/class336.java index bb23b2b25b..be13949cbd 100644 --- a/runescape-client/src/main/java/class336.java +++ b/runescape-client/src/main/java/class336.java @@ -1,452 +1,34 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("li") +@ObfuscatedName("lh") public class class336 { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedGetter( - intValue = -691755619 + intValue = -1169451727 ) @Export("SpriteBuffer_spriteCount") - static int SpriteBuffer_spriteCount; - @ObfuscatedName("b") + public static int SpriteBuffer_spriteCount; + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -1823110703 - ) - @Export("SpriteBuffer_spriteWidth") - static int SpriteBuffer_spriteWidth; - @ObfuscatedName("l") - @ObfuscatedGetter( - intValue = -2023472681 + intValue = -335686915 ) @Export("SpriteBuffer_spriteHeight") - static int SpriteBuffer_spriteHeight; - @ObfuscatedName("m") + public static int SpriteBuffer_spriteHeight; + @ObfuscatedName("w") @Export("SpriteBuffer_xOffsets") - static int[] SpriteBuffer_xOffsets; - @ObfuscatedName("q") + public static int[] SpriteBuffer_xOffsets; + @ObfuscatedName("t") + @Export("SpriteBuffer_yOffsets") + public static int[] SpriteBuffer_yOffsets; + @ObfuscatedName("j") @Export("SpriteBuffer_spriteWidths") - static int[] SpriteBuffer_spriteWidths; - @ObfuscatedName("k") + public static int[] SpriteBuffer_spriteWidths; + @ObfuscatedName("n") @Export("SpriteBuffer_spriteHeights") - static int[] SpriteBuffer_spriteHeights; - - @ObfuscatedName("ea") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "374882055" - ) - @Export("load") - static void load() { - int var26; - if (Client.titleLoadingStage == 0) { // L: 1922 - ModeWhere.scene = new Scene(4, 104, 104, Tiles.Tiles_heights); // L: 1923 - - for (var26 = 0; var26 < 4; ++var26) { // L: 1924 - Client.collisionMaps[var26] = new CollisionMap(104, 104); - } - - InterfaceParent.sceneMinimapSprite = new Sprite(512, 512); // L: 1925 - Login.Login_loadingText = "Starting game engine..."; // L: 1926 - Login.Login_loadingPercent = 5; // L: 1927 - Client.titleLoadingStage = 20; // L: 1928 - } else if (Client.titleLoadingStage == 20) { // L: 1931 - Login.Login_loadingText = "Prepared visibility map"; // L: 1932 - Login.Login_loadingPercent = 10; // L: 1933 - Client.titleLoadingStage = 30; // L: 1934 - } else if (Client.titleLoadingStage == 30) { // L: 1937 - MenuAction.archive0 = ReflectionCheck.newArchive(0, false, true, true); // L: 1938 - WorldMapManager.archive1 = ReflectionCheck.newArchive(1, false, true, true); // L: 1939 - WorldMapSection3.archive2 = ReflectionCheck.newArchive(2, true, false, true); // L: 1940 - FaceNormal.archive3 = ReflectionCheck.newArchive(3, false, true, true); // L: 1941 - Username.archive4 = ReflectionCheck.newArchive(4, false, true, true); // L: 1942 - Varcs.archive5 = ReflectionCheck.newArchive(5, true, true, true); // L: 1943 - ApproximateRouteStrategy.archive6 = ReflectionCheck.newArchive(6, true, true, true); // L: 1944 - class236.archive7 = ReflectionCheck.newArchive(7, false, true, true); // L: 1945 - GrandExchangeOffer.archive8 = ReflectionCheck.newArchive(8, false, true, true); // L: 1946 - WorldMapData_1.archive9 = ReflectionCheck.newArchive(9, false, true, true); // L: 1947 - class281.archive10 = ReflectionCheck.newArchive(10, false, true, true); // L: 1948 - AbstractByteArrayCopier.archive11 = ReflectionCheck.newArchive(11, false, true, true); // L: 1949 - ViewportMouse.archive12 = ReflectionCheck.newArchive(12, false, true, true); // L: 1950 - class8.archive13 = ReflectionCheck.newArchive(13, true, false, true); // L: 1951 - AbstractByteArrayCopier.archive14 = ReflectionCheck.newArchive(14, false, true, true); // L: 1952 - class1.archive15 = ReflectionCheck.newArchive(15, false, true, true); // L: 1953 - class23.archive17 = ReflectionCheck.newArchive(17, true, true, true); // L: 1954 - ModelData0.archive18 = ReflectionCheck.newArchive(18, false, true, true); // L: 1955 - class60.archive19 = ReflectionCheck.newArchive(19, false, true, true); // L: 1956 - Tiles.archive20 = ReflectionCheck.newArchive(20, false, true, true); // L: 1957 - Login.Login_loadingText = "Connecting to update server"; // L: 1958 - Login.Login_loadingPercent = 20; // L: 1959 - Client.titleLoadingStage = 40; // L: 1960 - } else if (Client.titleLoadingStage != 40) { // L: 1963 - if (Client.titleLoadingStage == 45) { // L: 2010 - boolean var28 = !Client.isLowDetail; // L: 2011 - PcmPlayer.field1442 = 22050; // L: 2014 - PcmPlayer.PcmPlayer_stereo = var28; // L: 2015 - FontName.field3694 = 2; // L: 2016 - MidiPcmStream var27 = new MidiPcmStream(); // L: 2018 - var27.method3863(9, 128); // L: 2019 - class195.pcmPlayer0 = class13.method146(GameShell.taskHandler, 0, 22050); // L: 2020 - class195.pcmPlayer0.setStream(var27); // L: 2021 - TileItemPile.method2909(class1.archive15, AbstractByteArrayCopier.archive14, Username.archive4, var27); // L: 2022 - class23.pcmPlayer1 = class13.method146(GameShell.taskHandler, 1, 2048); // L: 2023 - GrandExchangeEvents.pcmStreamMixer = new PcmStreamMixer(); // L: 2024 - class23.pcmPlayer1.setStream(GrandExchangeEvents.pcmStreamMixer); // L: 2025 - NetSocket.decimator = new Decimator(22050, PcmPlayer.field1442); // L: 2026 - Login.Login_loadingText = "Prepared sound engine"; // L: 2027 - Login.Login_loadingPercent = 35; // L: 2028 - Client.titleLoadingStage = 50; // L: 2029 - WorldMapAreaData.WorldMapElement_fonts = new Fonts(GrandExchangeOffer.archive8, class8.archive13); // L: 2030 - } else if (Client.titleLoadingStage == 50) { // L: 2033 - var26 = FontName.method5456().length; // L: 2034 - Client.fontsMap = WorldMapAreaData.WorldMapElement_fonts.createMap(FontName.method5456()); // L: 2035 - if (Client.fontsMap.size() < var26) { // L: 2036 - Login.Login_loadingText = "Loading fonts - " + Client.fontsMap.size() * 100 / var26 + "%"; // L: 2037 - Login.Login_loadingPercent = 40; // L: 2038 - } else { - DevicePcmPlayerProvider.fontPlain11 = (Font)Client.fontsMap.get(FontName.FontName_plain11); // L: 2041 - WorldMapCacheName.fontPlain12 = (Font)Client.fontsMap.get(FontName.FontName_plain12); // L: 2042 - ReflectionCheck.fontBold12 = (Font)Client.fontsMap.get(FontName.FontName_bold12); // L: 2043 - Skills.platformInfo = Client.platformInfoProvider.get(); // L: 2044 - Login.Login_loadingText = "Loaded fonts"; // L: 2045 - Login.Login_loadingPercent = 40; // L: 2046 - Client.titleLoadingStage = 60; // L: 2047 - } - } else { - int var3; - int var4; - Archive var21; - Archive var22; - if (Client.titleLoadingStage == 60) { // L: 2050 - var21 = class281.archive10; // L: 2052 - var22 = GrandExchangeOffer.archive8; // L: 2053 - var3 = 0; // L: 2055 - if (var21.tryLoadFileByNames("title.jpg", "")) { // L: 2056 - ++var3; - } - - if (var22.tryLoadFileByNames("logo", "")) { // L: 2057 - ++var3; - } - - if (var22.tryLoadFileByNames("logo_deadman_mode", "")) { // L: 2058 - ++var3; - } - - if (var22.tryLoadFileByNames("logo_seasonal_mode", "")) { // L: 2059 - ++var3; - } - - if (var22.tryLoadFileByNames("titlebox", "")) { // L: 2060 - ++var3; - } - - if (var22.tryLoadFileByNames("titlebutton", "")) { // L: 2061 - ++var3; - } - - if (var22.tryLoadFileByNames("runes", "")) { // L: 2062 - ++var3; - } - - if (var22.tryLoadFileByNames("title_mute", "")) { // L: 2063 - ++var3; - } - - if (var22.tryLoadFileByNames("options_radio_buttons,0", "")) { // L: 2064 - ++var3; - } - - if (var22.tryLoadFileByNames("options_radio_buttons,2", "")) { // L: 2065 - ++var3; - } - - if (var22.tryLoadFileByNames("options_radio_buttons,4", "")) { // L: 2066 - ++var3; - } - - if (var22.tryLoadFileByNames("options_radio_buttons,6", "")) { // L: 2067 - ++var3; - } - - var22.tryLoadFileByNames("sl_back", ""); // L: 2068 - var22.tryLoadFileByNames("sl_flags", ""); // L: 2069 - var22.tryLoadFileByNames("sl_arrows", ""); // L: 2070 - var22.tryLoadFileByNames("sl_stars", ""); // L: 2071 - var22.tryLoadFileByNames("sl_button", ""); // L: 2072 - var4 = class90.method2168(); // L: 2076 - if (var3 < var4) { // L: 2077 - Login.Login_loadingText = "Loading title screen - " + var3 * 100 / var4 + "%"; // L: 2078 - Login.Login_loadingPercent = 50; // L: 2079 - } else { - Login.Login_loadingText = "Loaded title screen"; // L: 2082 - Login.Login_loadingPercent = 50; // L: 2083 - BuddyRankComparator.updateGameState(5); // L: 2084 - Client.titleLoadingStage = 70; // L: 2085 - } - } else if (Client.titleLoadingStage == 70) { // L: 2088 - if (!WorldMapSection3.archive2.isFullyLoaded()) { // L: 2089 - Login.Login_loadingText = "Loading config - " + WorldMapSection3.archive2.loadPercent() + "%"; // L: 2090 - Login.Login_loadingPercent = 60; // L: 2091 - } else { - Archive var24 = WorldMapSection3.archive2; // L: 2094 - FloorOverlayDefinition.FloorOverlayDefinition_archive = var24; // L: 2096 - ScriptFrame.method1224(WorldMapSection3.archive2); // L: 2098 - FileSystem.method3630(WorldMapSection3.archive2, class236.archive7); // L: 2099 - var21 = WorldMapSection3.archive2; // L: 2100 - var22 = class236.archive7; // L: 2101 - boolean var25 = Client.isLowDetail; // L: 2102 - ObjectDefinition.ObjectDefinition_archive = var21; // L: 2104 - GrandExchangeOfferAgeComparator.ObjectDefinition_modelsArchive = var22; // L: 2105 - ObjectDefinition.ObjectDefinition_isLowDetail = var25; // L: 2106 - Archive var23 = WorldMapSection3.archive2; // L: 2108 - Archive var5 = class236.archive7; // L: 2109 - NPCDefinition.NpcDefinition_archive = var23; // L: 2111 - NPCDefinition.NpcDefinition_modelArchive = var5; // L: 2112 - WorldMapAreaData.method791(WorldMapSection3.archive2); // L: 2114 - Archive var6 = WorldMapSection3.archive2; // L: 2115 - Archive var7 = class236.archive7; // L: 2116 - boolean var8 = Client.isMembersWorld; // L: 2117 - Font var9 = DevicePcmPlayerProvider.fontPlain11; // L: 2118 - ItemDefinition.ItemDefinition_archive = var6; // L: 2120 - UserComparator9.ItemDefinition_modelArchive = var7; // L: 2121 - SoundCache.ItemDefinition_inMembersWorld = var8; // L: 2122 - HealthBar.ItemDefinition_fileCount = ItemDefinition.ItemDefinition_archive.getGroupFileCount(10); // L: 2123 - VerticalAlignment.ItemDefinition_fontPlain11 = var9; // L: 2124 - Archive var10 = WorldMapSection3.archive2; // L: 2126 - Archive var11 = MenuAction.archive0; // L: 2127 - Archive var12 = WorldMapManager.archive1; // L: 2128 - SequenceDefinition.SequenceDefinition_archive = var10; // L: 2130 - SequenceDefinition.SequenceDefinition_animationsArchive = var11; // L: 2131 - DefaultsGroup.SequenceDefinition_skeletonsArchive = var12; // L: 2132 - class182.method3716(WorldMapSection3.archive2, class236.archive7); // L: 2134 - Archive var13 = WorldMapSection3.archive2; // L: 2135 - VarbitDefinition.VarbitDefinition_archive = var13; // L: 2137 - FaceNormal.method3393(WorldMapSection3.archive2); // L: 2139 - Varps.method4126(FaceNormal.archive3, class236.archive7, GrandExchangeOffer.archive8, class8.archive13); // L: 2140 - GrandExchangeOfferUnitPriceComparator.method211(WorldMapSection3.archive2); // L: 2141 - Messages.method2328(WorldMapSection3.archive2); // L: 2142 - Messages.method2339(WorldMapSection3.archive2); // L: 2143 - Archive var14 = WorldMapSection3.archive2; // L: 2144 - ParamDefinition.ParamDefinition_archive = var14; // L: 2146 - FriendSystem.varcs = new Varcs(); // L: 2148 - Archive var15 = WorldMapSection3.archive2; // L: 2149 - Archive var16 = GrandExchangeOffer.archive8; // L: 2150 - Archive var17 = class8.archive13; // L: 2151 - HitSplatDefinition.HitSplatDefinition_archive = var15; // L: 2153 - HitSplatDefinition.field3350 = var16; // L: 2154 - HitSplatDefinition.HitSplatDefinition_fontsArchive = var17; // L: 2155 - Archive var18 = WorldMapSection3.archive2; // L: 2157 - Archive var19 = GrandExchangeOffer.archive8; // L: 2158 - HealthBarDefinition.HealthBarDefinition_archive = var18; // L: 2160 - HealthBarDefinition.HitSplatDefinition_spritesArchive = var19; // L: 2161 - UserComparator4.method3504(WorldMapSection3.archive2, GrandExchangeOffer.archive8); // L: 2163 - Login.Login_loadingText = "Loaded config"; // L: 2164 - Login.Login_loadingPercent = 60; // L: 2165 - Client.titleLoadingStage = 80; // L: 2166 - } - } else if (Client.titleLoadingStage == 80) { // L: 2169 - var26 = 0; // L: 2170 - if (UserComparator5.compass == null) { // L: 2171 - UserComparator5.compass = FloorDecoration.SpriteBuffer_getSprite(GrandExchangeOffer.archive8, FontName.spriteIds.compass, 0); - } else { - ++var26; // L: 2172 - } - - if (class219.redHintArrowSprite == null) { // L: 2173 - class219.redHintArrowSprite = FloorDecoration.SpriteBuffer_getSprite(GrandExchangeOffer.archive8, FontName.spriteIds.field3835, 0); - } else { - ++var26; // L: 2174 - } - - if (AbstractWorldMapIcon.mapSceneSprites == null) { // L: 2175 - AbstractWorldMapIcon.mapSceneSprites = UserComparator5.method3540(GrandExchangeOffer.archive8, FontName.spriteIds.mapScenes, 0); - } else { - ++var26; // L: 2176 - } - - if (World.headIconPkSprites == null) { // L: 2177 - World.headIconPkSprites = HorizontalAlignment.method4882(GrandExchangeOffer.archive8, FontName.spriteIds.headIconsPk, 0); - } else { - ++var26; // L: 2178 - } - - if (TaskHandler.headIconPrayerSprites == null) { // L: 2179 - TaskHandler.headIconPrayerSprites = HorizontalAlignment.method4882(GrandExchangeOffer.archive8, FontName.spriteIds.field3836, 0); - } else { - ++var26; // L: 2180 - } - - if (class337.headIconHintSprites == null) { // L: 2181 - class337.headIconHintSprites = HorizontalAlignment.method4882(GrandExchangeOffer.archive8, FontName.spriteIds.field3839, 0); - } else { - ++var26; // L: 2182 - } - - if (ScriptEvent.mapMarkerSprites == null) { // L: 2183 - ScriptEvent.mapMarkerSprites = HorizontalAlignment.method4882(GrandExchangeOffer.archive8, FontName.spriteIds.field3841, 0); - } else { - ++var26; // L: 2184 - } - - if (class60.crossSprites == null) { // L: 2185 - class60.crossSprites = HorizontalAlignment.method4882(GrandExchangeOffer.archive8, FontName.spriteIds.field3837, 0); - } else { - ++var26; // L: 2186 - } - - if (Entity.mapDotSprites == null) { // L: 2187 - Entity.mapDotSprites = HorizontalAlignment.method4882(GrandExchangeOffer.archive8, FontName.spriteIds.field3834, 0); - } else { - ++var26; // L: 2188 - } - - if (WorldMapSection0.scrollBarSprites == null) { // L: 2189 - WorldMapSection0.scrollBarSprites = UserComparator5.method3540(GrandExchangeOffer.archive8, FontName.spriteIds.field3842, 0); - } else { - ++var26; // L: 2190 - } - - if (SpriteMask.modIconSprites == null) { // L: 2191 - SpriteMask.modIconSprites = UserComparator5.method3540(GrandExchangeOffer.archive8, FontName.spriteIds.field3844, 0); - } else { - ++var26; // L: 2192 - } - - if (var26 < 11) { // L: 2193 - Login.Login_loadingText = "Loading sprites - " + var26 * 100 / 12 + "%"; // L: 2194 - Login.Login_loadingPercent = 70; // L: 2195 - } else { - AbstractFont.AbstractFont_modIconSprites = SpriteMask.modIconSprites; // L: 2198 - class219.redHintArrowSprite.normalize(); // L: 2199 - int var1 = (int)(Math.random() * 21.0D) - 10; // L: 2200 - int var2 = (int)(Math.random() * 21.0D) - 10; // L: 2201 - var3 = (int)(Math.random() * 21.0D) - 10; // L: 2202 - var4 = (int)(Math.random() * 41.0D) - 20; // L: 2203 - AbstractWorldMapIcon.mapSceneSprites[0].shiftColors(var1 + var4, var2 + var4, var4 + var3); // L: 2204 - Login.Login_loadingText = "Loaded sprites"; // L: 2205 - Login.Login_loadingPercent = 70; // L: 2206 - Client.titleLoadingStage = 90; // L: 2207 - } - } else if (Client.titleLoadingStage == 90) { // L: 2210 - if (!WorldMapData_1.archive9.isFullyLoaded()) { // L: 2211 - Login.Login_loadingText = "Loading textures - " + "0%"; // L: 2212 - Login.Login_loadingPercent = 90; // L: 2213 - } else { - class278.textureProvider = new TextureProvider(WorldMapData_1.archive9, GrandExchangeOffer.archive8, 20, 0.8D, Client.isLowDetail ? 64 : 128); // L: 2216 - Rasterizer3D.Rasterizer3D_setTextureLoader(class278.textureProvider); // L: 2217 - Rasterizer3D.Rasterizer3D_setBrightness(0.8D); // L: 2218 - Client.titleLoadingStage = 100; // L: 2219 - } - } else if (Client.titleLoadingStage == 100) { // L: 2222 - var26 = class278.textureProvider.getLoadedPercentage(); // L: 2223 - if (var26 < 100) { // L: 2224 - Login.Login_loadingText = "Loading textures - " + var26 + "%"; // L: 2225 - Login.Login_loadingPercent = 90; // L: 2226 - } else { - Login.Login_loadingText = "Loaded textures"; // L: 2229 - Login.Login_loadingPercent = 90; // L: 2230 - Client.titleLoadingStage = 110; // L: 2231 - } - } else if (Client.titleLoadingStage == 110) { // L: 2234 - class204.mouseRecorder = new MouseRecorder(); // L: 2235 - GameShell.taskHandler.newThreadTask(class204.mouseRecorder, 10); // L: 2236 - Login.Login_loadingText = "Loaded input handler"; // L: 2237 - Login.Login_loadingPercent = 92; // L: 2238 - Client.titleLoadingStage = 120; // L: 2239 - } else if (Client.titleLoadingStage == 120) { // L: 2242 - if (!class281.archive10.tryLoadFileByNames("huffman", "")) { // L: 2243 - Login.Login_loadingText = "Loading wordpack - " + 0 + "%"; // L: 2244 - Login.Login_loadingPercent = 94; // L: 2245 - } else { - Huffman var0 = new Huffman(class281.archive10.takeFileByNames("huffman", "")); // L: 2248 - class4.method77(var0); // L: 2249 - Login.Login_loadingText = "Loaded wordpack"; // L: 2250 - Login.Login_loadingPercent = 94; // L: 2251 - Client.titleLoadingStage = 130; // L: 2252 - } - } else if (Client.titleLoadingStage == 130) { // L: 2255 - if (!FaceNormal.archive3.isFullyLoaded()) { // L: 2256 - Login.Login_loadingText = "Loading interfaces - " + FaceNormal.archive3.loadPercent() * 4 / 5 + "%"; // L: 2257 - Login.Login_loadingPercent = 96; // L: 2258 - } else if (!ViewportMouse.archive12.isFullyLoaded()) { // L: 2261 - Login.Login_loadingText = "Loading interfaces - " + (80 + ViewportMouse.archive12.loadPercent() / 6) + "%"; // L: 2262 - Login.Login_loadingPercent = 96; // L: 2263 - } else if (!class8.archive13.isFullyLoaded()) { // L: 2266 - Login.Login_loadingText = "Loading interfaces - " + (96 + class8.archive13.loadPercent() / 50) + "%"; // L: 2267 - Login.Login_loadingPercent = 96; // L: 2268 - } else { - Login.Login_loadingText = "Loaded interfaces"; // L: 2271 - Login.Login_loadingPercent = 98; // L: 2272 - Client.titleLoadingStage = 140; // L: 2273 - } - } else if (Client.titleLoadingStage == 140) { // L: 2276 - Login.Login_loadingPercent = 100; // L: 2277 - if (!class60.archive19.tryLoadGroupByName(WorldMapCacheName.field320.name)) { // L: 2278 - Login.Login_loadingText = "Loading world map - " + class60.archive19.groupLoadPercentByName(WorldMapCacheName.field320.name) / 10 + "%"; // L: 2279 - } else { - if (KeyHandler.worldMap == null) { // L: 2282 - KeyHandler.worldMap = new WorldMap(); // L: 2283 - KeyHandler.worldMap.init(class60.archive19, ModelData0.archive18, Tiles.archive20, ReflectionCheck.fontBold12, Client.fontsMap, AbstractWorldMapIcon.mapSceneSprites); // L: 2284 - } - - Login.Login_loadingText = "Loaded world map"; // L: 2286 - Client.titleLoadingStage = 150; // L: 2287 - } - } else if (Client.titleLoadingStage == 150) { // L: 2290 - BuddyRankComparator.updateGameState(10); // L: 2291 - } - } - } else { - byte var20 = 0; // L: 1964 - var26 = var20 + MenuAction.archive0.percentage() * 4 / 100; // L: 1965 - var26 += WorldMapManager.archive1.percentage() * 4 / 100; // L: 1966 - var26 += WorldMapSection3.archive2.percentage() * 2 / 100; // L: 1967 - var26 += FaceNormal.archive3.percentage() * 2 / 100; // L: 1968 - var26 += Username.archive4.percentage() * 6 / 100; // L: 1969 - var26 += Varcs.archive5.percentage() * 4 / 100; // L: 1970 - var26 += ApproximateRouteStrategy.archive6.percentage() * 2 / 100; // L: 1971 - var26 += class236.archive7.percentage() * 56 / 100; // L: 1972 - var26 += GrandExchangeOffer.archive8.percentage() * 2 / 100; // L: 1973 - var26 += WorldMapData_1.archive9.percentage() * 2 / 100; // L: 1974 - var26 += class281.archive10.percentage() * 2 / 100; // L: 1975 - var26 += AbstractByteArrayCopier.archive11.percentage() * 2 / 100; // L: 1976 - var26 += ViewportMouse.archive12.percentage() * 2 / 100; // L: 1977 - var26 += class8.archive13.percentage() * 2 / 100; // L: 1978 - var26 += AbstractByteArrayCopier.archive14.percentage() * 2 / 100; // L: 1979 - var26 += class1.archive15.percentage() * 2 / 100; // L: 1980 - var26 += class60.archive19.percentage() / 100; // L: 1981 - var26 += ModelData0.archive18.percentage() / 100; // L: 1982 - var26 += Tiles.archive20.percentage() / 100; // L: 1983 - var26 += class23.archive17.method4420() && class23.archive17.isFullyLoaded() ? 1 : 0; // L: 1984 - if (var26 != 100) { // L: 1985 - if (var26 != 0) { // L: 1986 - Login.Login_loadingText = "Checking for updates - " + var26 + "%"; - } - - Login.Login_loadingPercent = 30; // L: 1987 - } else { - ArchiveDiskActionHandler.method4404(MenuAction.archive0, "Animations"); // L: 1990 - ArchiveDiskActionHandler.method4404(WorldMapManager.archive1, "Skeletons"); // L: 1991 - ArchiveDiskActionHandler.method4404(Username.archive4, "Sound FX"); // L: 1992 - ArchiveDiskActionHandler.method4404(Varcs.archive5, "Maps"); // L: 1993 - ArchiveDiskActionHandler.method4404(ApproximateRouteStrategy.archive6, "Music Tracks"); // L: 1994 - ArchiveDiskActionHandler.method4404(class236.archive7, "Models"); // L: 1995 - ArchiveDiskActionHandler.method4404(GrandExchangeOffer.archive8, "Sprites"); // L: 1996 - ArchiveDiskActionHandler.method4404(AbstractByteArrayCopier.archive11, "Music Jingles"); // L: 1997 - ArchiveDiskActionHandler.method4404(AbstractByteArrayCopier.archive14, "Music Samples"); // L: 1998 - ArchiveDiskActionHandler.method4404(class1.archive15, "Music Patches"); // L: 1999 - ArchiveDiskActionHandler.method4404(class60.archive19, "World Map"); // L: 2000 - ArchiveDiskActionHandler.method4404(ModelData0.archive18, "World Map Geography"); // L: 2001 - ArchiveDiskActionHandler.method4404(Tiles.archive20, "World Map Ground"); // L: 2002 - FontName.spriteIds = new GraphicsDefaults(); // L: 2003 - FontName.spriteIds.decode(class23.archive17); // L: 2004 - Login.Login_loadingText = "Loaded update list"; // L: 2005 - Login.Login_loadingPercent = 30; // L: 2006 - Client.titleLoadingStage = 45; // L: 2007 - } - } - } // L: 1929 1935 1961 1988 2008 2031 2039 2048 2080 2086 2092 2167 2196 2208 2214 2220 2227 2232 2240 2246 2253 2259 2264 2269 2274 2280 2288 2292 2294 + public static int[] SpriteBuffer_spriteHeights; + @ObfuscatedName("p") + @Export("SpriteBuffer_spritePalette") + public static int[] SpriteBuffer_spritePalette; } diff --git a/runescape-client/src/main/java/class337.java b/runescape-client/src/main/java/class337.java deleted file mode 100644 index f380e37f52..0000000000 --- a/runescape-client/src/main/java/class337.java +++ /dev/null @@ -1,13 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("lq") -public class class337 { - @ObfuscatedName("hy") - @ObfuscatedSignature( - descriptor = "[Llc;" - ) - @Export("headIconHintSprites") - static Sprite[] headIconHintSprites; -} diff --git a/runescape-client/src/main/java/class347.java b/runescape-client/src/main/java/class347.java index 9a0d45ef25..a60847f325 100644 --- a/runescape-client/src/main/java/class347.java +++ b/runescape-client/src/main/java/class347.java @@ -1,21 +1,21 @@ import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("mo") +@ObfuscatedName("mj") public class class347 { - @ObfuscatedName("t") - static final int[] field4056; - @ObfuscatedName("e") - static final int[] field4059; + @ObfuscatedName("z") + static final int[] field4060; + @ObfuscatedName("u") + static final int[] field4062; static { - field4056 = new int[2048]; // L: 13 - field4059 = new int[2048]; // L: 14 - double var0 = 0.0030679615757712823D; // L: 17 + field4060 = new int[2048]; + field4062 = new int[2048]; + double var0 = 0.0030679615757712823D; - for (int var2 = 0; var2 < 2048; ++var2) { // L: 18 - field4056[var2] = (int)(65536.0D * Math.sin(var0 * (double)var2)); // L: 19 - field4059[var2] = (int)(65536.0D * Math.cos(var0 * (double)var2)); // L: 20 + for (int var2 = 0; var2 < 2048; ++var2) { + field4060[var2] = (int)(65536.0D * Math.sin((double)var2 * var0)); + field4062[var2] = (int)(65536.0D * Math.cos((double)var2 * var0)); } - } // L: 22 + } } diff --git a/runescape-client/src/main/java/class349.java b/runescape-client/src/main/java/class349.java index f5bead21de..f49c9c8024 100644 --- a/runescape-client/src/main/java/class349.java +++ b/runescape-client/src/main/java/class349.java @@ -1,14 +1,231 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mn") +@ObfuscatedName("mw") public class class349 { - @ObfuscatedName("l") - static final char[] field4075; - @ObfuscatedName("m") - static final char[] field4073; + @ObfuscatedName("x") + static final char[] field4077; + @ObfuscatedName("w") + static final char[] field4079; + @ObfuscatedName("bd") + @ObfuscatedSignature( + descriptor = "[Llo;" + ) + @Export("worldSelectStars") + static IndexedSprite[] worldSelectStars; static { - field4075 = new char[]{' ', ' ', '_', '-', 'à', 'á', 'â', 'ä', 'ã', 'À', 'Á', 'Â', 'Ä', 'Ã', 'è', 'é', 'ê', 'ë', 'È', 'É', 'Ê', 'Ë', 'í', 'î', 'ï', 'Í', 'Î', 'Ï', 'ò', 'ó', 'ô', 'ö', 'õ', 'Ò', 'Ó', 'Ô', 'Ö', 'Õ', 'ù', 'ú', 'û', 'ü', 'Ù', 'Ú', 'Û', 'Ü', 'ç', 'Ç', 'ÿ', 'Ÿ', 'ñ', 'Ñ', 'ß'}; // L: 8 - field4073 = new char[]{'[', ']', '#'}; // L: 9 + field4077 = new char[]{' ', ' ', '_', '-', 'à', 'á', 'â', 'ä', 'ã', 'À', 'Á', 'Â', 'Ä', 'Ã', 'è', 'é', 'ê', 'ë', 'È', 'É', 'Ê', 'Ë', 'í', 'î', 'ï', 'Í', 'Î', 'Ï', 'ò', 'ó', 'ô', 'ö', 'õ', 'Ò', 'Ó', 'Ô', 'Ö', 'Õ', 'ù', 'ú', 'û', 'ü', 'Ù', 'Ú', 'Û', 'Ü', 'ç', 'Ç', 'ÿ', 'Ÿ', 'ñ', 'Ñ', 'ß'}; + field4079 = new char[]{'[', ']', '#'}; + } + + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "(Lky;II)V", + garbageValue = "2034684239" + ) + @Export("readPlayerUpdate") + static void readPlayerUpdate(PacketBuffer var0, int var1) { + boolean var2 = var0.readBits(1) == 1; + if (var2) { + Players.Players_pendingUpdateIndices[++Players.Players_pendingUpdateCount - 1] = var1; + } + + int var3 = var0.readBits(2); + Player var4 = Client.players[var1]; + if (var3 == 0) { + if (var2) { + var4.field631 = false; + } else if (Client.localPlayerIndex == var1) { + throw new RuntimeException(); + } else { + Players.Players_regions[var1] = (var4.plane << 28) + (NetFileRequest.baseX * 64 + var4.pathX[0] >> 13 << 14) + (class41.baseY * 64 + var4.pathY[0] >> 13); + if (var4.field959 != -1) { + Players.Players_orientations[var1] = var4.field959; + } else { + Players.Players_orientations[var1] = var4.orientation; + } + + Players.Players_targetIndices[var1] = var4.targetIndex; + Client.players[var1] = null; + if (var0.readBits(1) != 0) { + WorldMapSection0.updateExternalPlayer(var0, var1); + } + + } + } else { + int var5; + int var6; + int var7; + if (var3 == 1) { + var5 = var0.readBits(3); + var6 = var4.pathX[0]; + var7 = var4.pathY[0]; + if (var5 == 0) { + --var6; + --var7; + } else if (var5 == 1) { + --var7; + } else if (var5 == 2) { + ++var6; + --var7; + } else if (var5 == 3) { + --var6; + } else if (var5 == 4) { + ++var6; + } else if (var5 == 5) { + --var6; + ++var7; + } else if (var5 == 6) { + ++var7; + } else if (var5 == 7) { + ++var6; + ++var7; + } + + if (Client.localPlayerIndex == var1 && (var4.x < 1536 || var4.y < 1536 || var4.x >= 11776 || var4.y >= 11776)) { + var4.resetPath(var6, var7); + var4.field631 = false; + } else if (var2) { + var4.field631 = true; + var4.tileX = var6; + var4.tileY = var7; + } else { + var4.field631 = false; + var4.method1313(var6, var7, Players.field1253[var1]); + } + + } else if (var3 == 2) { + var5 = var0.readBits(4); + var6 = var4.pathX[0]; + var7 = var4.pathY[0]; + if (var5 == 0) { + var6 -= 2; + var7 -= 2; + } else if (var5 == 1) { + --var6; + var7 -= 2; + } else if (var5 == 2) { + var7 -= 2; + } else if (var5 == 3) { + ++var6; + var7 -= 2; + } else if (var5 == 4) { + var6 += 2; + var7 -= 2; + } else if (var5 == 5) { + var6 -= 2; + --var7; + } else if (var5 == 6) { + var6 += 2; + --var7; + } else if (var5 == 7) { + var6 -= 2; + } else if (var5 == 8) { + var6 += 2; + } else if (var5 == 9) { + var6 -= 2; + ++var7; + } else if (var5 == 10) { + var6 += 2; + ++var7; + } else if (var5 == 11) { + var6 -= 2; + var7 += 2; + } else if (var5 == 12) { + --var6; + var7 += 2; + } else if (var5 == 13) { + var7 += 2; + } else if (var5 == 14) { + ++var6; + var7 += 2; + } else if (var5 == 15) { + var6 += 2; + var7 += 2; + } + + if (Client.localPlayerIndex != var1 || var4.x >= 1536 && var4.y >= 1536 && var4.x < 11776 && var4.y < 11776) { + if (var2) { + var4.field631 = true; + var4.tileX = var6; + var4.tileY = var7; + } else { + var4.field631 = false; + var4.method1313(var6, var7, Players.field1253[var1]); + } + } else { + var4.resetPath(var6, var7); + var4.field631 = false; + } + + } else { + var5 = var0.readBits(1); + int var8; + int var9; + int var10; + int var11; + if (var5 == 0) { + var6 = var0.readBits(12); + var7 = var6 >> 10; + var8 = var6 >> 5 & 31; + if (var8 > 15) { + var8 -= 32; + } + + var9 = var6 & 31; + if (var9 > 15) { + var9 -= 32; + } + + var10 = var8 + var4.pathX[0]; + var11 = var9 + var4.pathY[0]; + if (Client.localPlayerIndex != var1 || var4.x >= 1536 && var4.y >= 1536 && var4.x < 11776 && var4.y < 11776) { + if (var2) { + var4.field631 = true; + var4.tileX = var10; + var4.tileY = var11; + } else { + var4.field631 = false; + var4.method1313(var10, var11, Players.field1253[var1]); + } + } else { + var4.resetPath(var10, var11); + var4.field631 = false; + } + + var4.plane = (byte)(var7 + var4.plane & 3); + if (Client.localPlayerIndex == var1) { + GameObject.Client_plane = var4.plane; + } + + } else { + var6 = var0.readBits(30); + var7 = var6 >> 28; + var8 = var6 >> 14 & 16383; + var9 = var6 & 16383; + var10 = (NetFileRequest.baseX * 64 + var8 + var4.pathX[0] & 16383) - NetFileRequest.baseX * 64; + var11 = (class41.baseY * 64 + var9 + var4.pathY[0] & 16383) - class41.baseY * 64; + if (Client.localPlayerIndex == var1 && (var4.x < 1536 || var4.y < 1536 || var4.x >= 11776 || var4.y >= 11776)) { + var4.resetPath(var10, var11); + var4.field631 = false; + } else if (var2) { + var4.field631 = true; + var4.tileX = var10; + var4.tileY = var11; + } else { + var4.field631 = false; + var4.method1313(var10, var11, Players.field1253[var1]); + } + + var4.plane = (byte)(var7 + var4.plane & 3); + if (Client.localPlayerIndex == var1) { + GameObject.Client_plane = var4.plane; + } + + } + } + } } } diff --git a/runescape-client/src/main/java/class39.java b/runescape-client/src/main/java/class39.java index 69a7b215f8..802a7612bf 100644 --- a/runescape-client/src/main/java/class39.java +++ b/runescape-client/src/main/java/class39.java @@ -1,302 +1,188 @@ -import java.awt.image.BufferedImage; -import java.awt.image.PixelGrabber; -import java.io.ByteArrayInputStream; -import java.io.IOException; -import javax.imageio.ImageIO; import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ag") +@ObfuscatedName("aa") public class class39 { - @ObfuscatedName("pv") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Llb;" + descriptor = "Laa;" ) - @Export("privateChatMode") - static PrivateChatMode privateChatMode; - @ObfuscatedName("f") + static final class39 field278; + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Lag;" + descriptor = "Laa;" ) - static final class39 field287; - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "Lag;" - ) - static final class39 field285; - @ObfuscatedName("l") + static final class39 field277; + @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -235911215 + intValue = 980177793 + ) + @Export("clientType") + public static int clientType; + @ObfuscatedName("hk") + @ObfuscatedSignature( + descriptor = "[Llo;" + ) + @Export("modIconSprites") + static IndexedSprite[] modIconSprites; + @ObfuscatedName("x") + @ObfuscatedGetter( + intValue = 1993101161 ) @Export("value") final int value; static { - field287 = new class39(0); // L: 4 - field285 = new class39(1); // L: 5 + field278 = new class39(0); + field277 = new class39(1); } class39(int var1) { - this.value = var1; // L: 9 - } // L: 10 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "([BB)Llc;", - garbageValue = "0" - ) - @Export("convertJpgToSprite") - public static final Sprite convertJpgToSprite(byte[] var0) { - BufferedImage var1 = null; // L: 20 - - try { - var1 = ImageIO.read(new ByteArrayInputStream(var0)); // L: 22 - int var2 = var1.getWidth(); // L: 23 - int var3 = var1.getHeight(); // L: 24 - int[] var4 = new int[var3 * var2]; // L: 25 - PixelGrabber var5 = new PixelGrabber(var1, 0, 0, var2, var3, var4, 0, var2); // L: 26 - var5.grabPixels(); // L: 27 - return new Sprite(var4, var2, var3); // L: 28 - } catch (IOException var7) { // L: 30 - } catch (InterruptedException var8) { // L: 31 - } - - return new Sprite(0, 0); // L: 32 + this.value = var1; } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lks;IS)V", - garbageValue = "-7425" + descriptor = "([BIII)Ljava/lang/String;", + garbageValue = "2030729234" ) - @Export("updatePlayers") - static final void updatePlayers(PacketBuffer var0, int var1) { - int var2 = var0.offset; // L: 71 - Players.Players_pendingUpdateCount = 0; // L: 72 - GrandExchangeEvent.method172(var0); // L: 73 + public static String method591(byte[] var0, int var1, int var2) { + char[] var3 = new char[var2]; + int var4 = 0; + int var5 = var1; - for (int var3 = 0; var3 < Players.Players_pendingUpdateCount; ++var3) { // L: 75 - int var4 = Players.Players_pendingUpdateIndices[var3]; // L: 76 - Player var5 = Client.players[var4]; // L: 77 - int var6 = var0.readUnsignedByte(); // L: 78 - if ((var6 & 16) != 0) { // L: 79 - var6 += var0.readUnsignedByte() << 8; - } - - byte var7 = -1; // L: 81 - int var8; - if ((var6 & 2048) != 0) { // L: 82 - for (var8 = 0; var8 < 3; ++var8) { // L: 83 - var5.actions[var8] = var0.readStringCp1252NullTerminated(); - } - } - - int var9; - if ((var6 & 2) != 0) { // L: 85 - var8 = var0.readUnsignedShort(); // L: 86 - if (var8 == 65535) { // L: 87 - var8 = -1; - } - - var9 = var0.method5668(); // L: 88 - Varps.performPlayerAnimation(var5, var8, var9); // L: 89 - } - - if ((var6 & 256) != 0) { // L: 91 - var7 = var0.method5669(); // L: 92 - } - - int var11; - int var12; - int var15; - if ((var6 & 8) != 0) { // L: 94 - var8 = var0.method5659(); // L: 95 - PlayerType var16 = (PlayerType)class195.findEnumerated(WorldMapLabelSize.PlayerType_values(), var0.method5619()); // L: 96 - boolean var10 = var0.readUnsignedByte() == 1; // L: 97 - var11 = var0.method5668(); // L: 98 - var12 = var0.offset; // L: 99 - if (var5.username != null && var5.appearance != null) { // L: 100 - boolean var13 = false; // L: 101 - if (var16.isUser && WorldMapLabelSize.friendSystem.isIgnored(var5.username)) { // L: 102 103 - var13 = true; - } - - if (!var13 && Client.field795 == 0 && !var5.isHidden) { // L: 105 - Players.field1280.offset = 0; // L: 106 - var0.method5833(Players.field1280.array, 0, var11); // L: 107 - Players.field1280.offset = 0; // L: 108 - String var14 = AbstractFont.escapeBrackets(WorldMapSection0.method328(Tile.method3004(Players.field1280))); // L: 109 - var5.overheadText = var14.trim(); // L: 110 - var5.overheadTextColor = var8 >> 8; // L: 111 - var5.overheadTextEffect = var8 & 255; // L: 112 - var5.overheadTextCyclesRemaining = 150; // L: 113 - var5.isAutoChatting = var10; // L: 114 - var5.field974 = var5 != PlayerType.localPlayer && var16.isUser && "" != Client.field710 && var14.toLowerCase().indexOf(Client.field710) == -1; // L: 115 - if (var16.isPrivileged) { // L: 117 - var15 = var10 ? 91 : 1; - } else { - var15 = var10 ? 90 : 2; // L: 118 - } - - if (var16.modIcon != -1) { // L: 119 - DevicePcmPlayerProvider.addGameMessage(var15, PrivateChatMode.method6034(var16.modIcon) + var5.username.getName(), var14); - } else { - DevicePcmPlayerProvider.addGameMessage(var15, var5.username.getName(), var14); // L: 120 - } - } - } - - var0.offset = var12 + var11; // L: 123 - } - - if ((var6 & 32) != 0) { // L: 125 - var5.field1003 = var0.method5675(); // L: 126 - if (var5.pathLength == 0) { // L: 127 - var5.orientation = var5.field1003; // L: 128 - var5.field1003 = -1; // L: 129 - } - } - - if ((var6 & 128) != 0) { // L: 132 - var5.overheadText = var0.readStringCp1252NullTerminated(); // L: 133 - if (var5.overheadText.charAt(0) == '~') { // L: 134 - var5.overheadText = var5.overheadText.substring(1); // L: 135 - DevicePcmPlayerProvider.addGameMessage(2, var5.username.getName(), var5.overheadText); // L: 136 - } else if (var5 == PlayerType.localPlayer) { // L: 138 - DevicePcmPlayerProvider.addGameMessage(2, var5.username.getName(), var5.overheadText); // L: 139 - } - - var5.isAutoChatting = false; // L: 141 - var5.overheadTextColor = 0; // L: 142 - var5.overheadTextEffect = 0; // L: 143 - var5.overheadTextCyclesRemaining = 150; // L: 144 - } - - if ((var6 & 4096) != 0) { // L: 146 - var5.spotAnimation = var0.readUnsignedShort(); // L: 147 - var8 = var0.method5685(); // L: 148 - var5.field1016 = var8 >> 16; // L: 149 - var5.field1015 = (var8 & 65535) + Client.cycle; // L: 150 - var5.spotAnimationFrame = 0; // L: 151 - var5.spotAnimationFrameCycle = 0; // L: 152 - if (var5.field1015 > Client.cycle) { // L: 153 - var5.spotAnimationFrame = -1; - } - - if (var5.spotAnimation == 65535) { // L: 154 - var5.spotAnimation = -1; - } - } - - if ((var6 & 64) != 0) { // L: 156 - var5.targetIndex = var0.method5675(); // L: 157 - if (var5.targetIndex == 65535) { // L: 158 - var5.targetIndex = -1; - } - } - - if ((var6 & 4) != 0) { // L: 160 - var8 = var0.method5650(); // L: 161 - byte[] var22 = new byte[var8]; // L: 162 - Buffer var17 = new Buffer(var22); // L: 163 - var0.method5689(var22, 0, var8); // L: 164 - Players.field1284[var4] = var17; // L: 165 - var5.read(var17); // L: 166 - } - - if ((var6 & 1) != 0) { // L: 168 - var8 = var0.readUnsignedByte(); // L: 169 - int var18; - int var19; - int var21; - if (var8 > 0) { // L: 170 - for (var9 = 0; var9 < var8; ++var9) { // L: 171 - var11 = -1; // L: 173 - var12 = -1; // L: 174 - var21 = -1; // L: 175 - var19 = var0.readUShortSmart(); // L: 176 - if (var19 == 32767) { // L: 177 - var19 = var0.readUShortSmart(); // L: 178 - var12 = var0.readUShortSmart(); // L: 179 - var11 = var0.readUShortSmart(); // L: 180 - var21 = var0.readUShortSmart(); // L: 181 - } else if (var19 != 32766) { // L: 183 - var12 = var0.readUShortSmart(); // L: 184 - } else { - var19 = -1; // L: 186 - } - - var18 = var0.readUShortSmart(); // L: 187 - var5.addHitSplat(var19, var12, var11, var21, Client.cycle, var18); // L: 188 - } - } - - var9 = var0.method5668(); // L: 191 - if (var9 > 0) { // L: 192 - for (var19 = 0; var19 < var9; ++var19) { // L: 193 - var11 = var0.readUShortSmart(); // L: 194 - var12 = var0.readUShortSmart(); // L: 195 - if (var12 != 32767) { // L: 196 - var21 = var0.readUShortSmart(); // L: 197 - var18 = var0.method5668(); // L: 198 - var15 = var12 > 0 ? var0.readUnsignedByte() : var18; // L: 199 - var5.addHealthBar(var11, Client.cycle, var12, var21, var18, var15); // L: 200 - } else { - var5.removeHealthBar(var11); // L: 202 - } - } - } - } - - if ((var6 & 1024) != 0) { // L: 206 - var5.field1017 = var0.method5837(); // L: 207 - var5.field1019 = var0.readByte(); // L: 208 - var5.field1018 = var0.method5837(); // L: 209 - var5.field1020 = var0.method5837(); // L: 210 - var5.field1009 = var0.method5659() + Client.cycle; // L: 211 - var5.field1024 = var0.method5797() + Client.cycle; // L: 212 - var5.field1023 = var0.method5659(); // L: 213 - if (var5.field664) { // L: 214 - var5.field1017 += var5.tileX; // L: 215 - var5.field1019 += var5.tileY; // L: 216 - var5.field1018 += var5.tileX; // L: 217 - var5.field1020 += var5.tileY; // L: 218 - var5.pathLength = 0; // L: 219 + int var8; + for (int var6 = var2 + var1; var5 < var6; var3[var4++] = (char)var8) { + int var7 = var0[var5++] & 255; + if (var7 < 128) { + if (var7 == 0) { + var8 = 65533; } else { - var5.field1017 += var5.pathX[0]; // L: 222 - var5.field1019 += var5.pathY[0]; // L: 223 - var5.field1018 += var5.pathX[0]; // L: 224 - var5.field1020 += var5.pathY[0]; // L: 225 - var5.pathLength = 1; // L: 226 + var8 = var7; } - - var5.field1034 = 0; // L: 228 - } - - if ((var6 & 512) != 0) { // L: 230 - Players.field1295[var4] = var0.method5669(); // L: 231 - } - - if (var5.field664) { // L: 233 - if (var7 == 127) { // L: 234 - var5.resetPath(var5.tileX, var5.tileY); + } else if (var7 < 192) { + var8 = 65533; + } else if (var7 < 224) { + if (var5 < var6 && (var0[var5] & 192) == 128) { + var8 = (var7 & 31) << 6 | var0[var5++] & 63; + if (var8 < 128) { + var8 = 65533; + } } else { - byte var20; - if (var7 != -1) { // L: 237 - var20 = var7; + var8 = 65533; + } + } else if (var7 < 240) { + if (var5 + 1 < var6 && (var0[var5] & 192) == 128 && (var0[var5 + 1] & 192) == 128) { + var8 = (var7 & 15) << 12 | (var0[var5++] & 63) << 6 | var0[var5++] & 63; + if (var8 < 2048) { + var8 = 65533; + } + } else { + var8 = 65533; + } + } else if (var7 < 248) { + if (var5 + 2 < var6 && (var0[var5] & 192) == 128 && (var0[var5 + 1] & 192) == 128 && (var0[var5 + 2] & 192) == 128) { + var8 = (var7 & 7) << 18 | (var0[var5++] & 63) << 12 | (var0[var5++] & 63) << 6 | var0[var5++] & 63; + if (var8 >= 65536 && var8 <= 1114111) { + var8 = 65533; } else { - var20 = Players.field1295[var4]; // L: 238 + var8 = 65533; + } + } else { + var8 = 65533; + } + } else { + var8 = 65533; + } + } + + return new String(var3, 0, var4); + } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(IIIII)V", + garbageValue = "-257596336" + ) + static final void method594(int var0, int var1, int var2, int var3) { + for (int var4 = var1; var4 <= var3 + var1; ++var4) { + for (int var5 = var0; var5 <= var0 + var2; ++var5) { + if (var5 >= 0 && var5 < 104 && var4 >= 0 && var4 < 104) { + Tiles.field511[0][var5][var4] = 127; + if (var0 == var5 && var5 > 0) { + Tiles.Tiles_heights[0][var5][var4] = Tiles.Tiles_heights[0][var5 - 1][var4]; } - var5.method1335(var5.tileX, var5.tileY, var20); // L: 239 + if (var5 == var0 + var2 && var5 < 103) { + Tiles.Tiles_heights[0][var5][var4] = Tiles.Tiles_heights[0][var5 + 1][var4]; + } + + if (var4 == var1 && var4 > 0) { + Tiles.Tiles_heights[0][var5][var4] = Tiles.Tiles_heights[0][var5][var4 - 1]; + } + + if (var3 + var1 == var4 && var4 < 103) { + Tiles.Tiles_heights[0][var5][var4] = Tiles.Tiles_heights[0][var5][var4 + 1]; + } } } } - if (var0.offset - var2 != var1) { // L: 246 - throw new RuntimeException(var0.offset - var2 + " " + var1); // L: 247 + } + + @ObfuscatedName("p") + @ObfuscatedSignature( + descriptor = "(CI)Z", + garbageValue = "-1443206500" + ) + @Export("isDigit") + public static boolean isDigit(char var0) { + return var0 >= '0' && var0 <= '9'; + } + + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "-1859709852" + ) + @Export("Messages_getLastChatID") + static int Messages_getLastChatID(int var0) { + Message var1 = (Message)Messages.Messages_hashTable.get((long)var0); + if (var1 == null) { + return -1; + } else { + return var1.nextDual == Messages.Messages_queue.sentinel ? -1 : ((Message)var1.nextDual).count; } - } // L: 249 + } + + @ObfuscatedName("fj") + @ObfuscatedSignature( + descriptor = "(S)V", + garbageValue = "20631" + ) + static final void method596() { + Scene.Scene_isLowDetail = false; + Client.isLowDetail = false; + } + + @ObfuscatedName("fq") + @ObfuscatedSignature( + descriptor = "(III)V", + garbageValue = "-1974117172" + ) + static void method593(int var0, int var1) { + int[] var2 = new int[9]; + + for (int var3 = 0; var3 < var2.length; ++var3) { + int var4 = var3 * 32 + 15 + 128; + int var5 = WorldMapManager.method704(var4); + int var6 = Rasterizer3D.Rasterizer3D_sine[var4]; + var5 = NetSocket.method3587(var5, var1); + var2[var3] = var6 * var5 >> 16; + } + + Scene.Scene_buildVisiblityMap(var2, 500, 800, var0 * 334 / var1, 334); + } } diff --git a/runescape-client/src/main/java/class4.java b/runescape-client/src/main/java/class4.java index 8deb2255be..7666f27efe 100644 --- a/runescape-client/src/main/java/class4.java +++ b/runescape-client/src/main/java/class4.java @@ -1,106 +1,81 @@ -import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("z") +@ObfuscatedName("t") final class class4 implements class0 { - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/Object;Lkb;I)V", - garbageValue = "192866787" + @ObfuscatedName("sc") + @ObfuscatedGetter( + longValue = 4748047598054050873L ) - public void vmethod69(Object var1, Buffer var2) { - this.method67((String)var1, var2); + static long field17; + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/Object;Lkj;I)V", + garbageValue = "781194334" + ) + public void vmethod49(Object var1, Buffer var2) { + this.method47((String)var1, var2); } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(Lkb;I)Ljava/lang/Object;", - garbageValue = "-1094020977" + descriptor = "(Lkj;B)Ljava/lang/Object;", + garbageValue = "12" ) - public Object vmethod72(Buffer var1) { - return var1.readStringCp1252NullTerminated(); // L: 42 + public Object vmethod48(Buffer var1) { + return var1.readStringCp1252NullTerminated(); + } + + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;Lkj;B)V", + garbageValue = "7" + ) + void method47(String var1, Buffer var2) { + var2.writeStringCp1252NullTerminated(var1); + } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-78527761" + ) + public static void method53() { + synchronized(MouseHandler.MouseHandler_instance) { + MouseHandler.MouseHandler_currentButton = MouseHandler.MouseHandler_currentButtonVolatile; + MouseHandler.MouseHandler_x = MouseHandler.MouseHandler_xVolatile; + MouseHandler.MouseHandler_y = MouseHandler.MouseHandler_yVolatile; + MouseHandler.MouseHandler_millis = MouseHandler.MouseHandler_lastMovedVolatile; + MouseHandler.MouseHandler_lastButton = MouseHandler.MouseHandler_lastButtonVolatile; + MouseHandler.MouseHandler_lastPressedX = MouseHandler.MouseHandler_lastPressedXVolatile; + MouseHandler.MouseHandler_lastPressedY = MouseHandler.MouseHandler_lastPressedYVolatile; + MouseHandler.MouseHandler_lastPressedTimeMillis = MouseHandler.MouseHandler_lastPressedTimeMillisVolatile; + MouseHandler.MouseHandler_lastButtonVolatile = 0; + } } @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Lkb;B)V", - garbageValue = "-103" + descriptor = "(IIIB)I", + garbageValue = "-36" ) - void method67(String var1, Buffer var2) { - var2.writeStringCp1252NullTerminated(var1); - } - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(Lhi;S)V", - garbageValue = "-19591" - ) - public static void method77(Huffman var0) { - class219.huffman = var0; // L: 14 - } // L: 15 - - @ObfuscatedName("b") - @ObfuscatedSignature( - descriptor = "(Lgz;Lmh;B)Lgk;", - garbageValue = "10" - ) - @Export("getPacketBufferNode") - public static PacketBufferNode getPacketBufferNode(ClientPacket var0, IsaacCipher var1) { - PacketBufferNode var2 = ChatChannel.method2363(); // L: 27 - var2.clientPacket = var0; // L: 28 - var2.clientPacketLength = var0.length; // L: 29 - if (var2.clientPacketLength == -1) { // L: 30 - var2.packetBuffer = new PacketBuffer(260); - } else if (var2.clientPacketLength == -2) { - var2.packetBuffer = new PacketBuffer(10000); // L: 31 - } else if (var2.clientPacketLength <= 18) { // L: 32 - var2.packetBuffer = new PacketBuffer(20); - } else if (var2.clientPacketLength <= 98) { // L: 33 - var2.packetBuffer = new PacketBuffer(100); - } else { - var2.packetBuffer = new PacketBuffer(260); // L: 34 - } - - var2.packetBuffer.setIsaacCipher(var1); // L: 35 - var2.packetBuffer.writeByteIsaac(var2.clientPacket.id); // L: 36 - var2.index = 0; // L: 37 - return var2; // L: 38 - } - - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "(IIB)Lbk;", - garbageValue = "-20" - ) - @Export("Messages_getByChannelAndID") - static Message Messages_getByChannelAndID(int var0, int var1) { - ChatChannel var2 = (ChatChannel)Messages.Messages_channels.get(var0); // L: 39 - return var2.getMessage(var1); // L: 40 - } - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "43" - ) - static void method78() { - ItemContainer.itemContainers = new NodeHashTable(32); // L: 78 - } // L: 79 - - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "([BIII)I", - garbageValue = "-56891300" - ) - public static int method81(byte[] var0, int var1, int var2) { - int var3 = -1; // L: 45 - - for (int var4 = var1; var4 < var2; ++var4) { // L: 46 - var3 = var3 >>> 8 ^ Buffer.crc32Table[(var3 ^ var0[var4]) & 255]; // L: 47 - } - - var3 = ~var3; // L: 49 - return var3; // L: 50 + static final int method56(int var0, int var1, int var2) { + int var3 = var0 / var2; + int var4 = var0 & var2 - 1; + int var5 = var1 / var2; + int var6 = var1 & var2 - 1; + int var7 = WorldMapSprite.method468(var3, var5); + int var8 = WorldMapSprite.method468(var3 + 1, var5); + int var9 = WorldMapSprite.method468(var3, var5 + 1); + int var10 = WorldMapSprite.method468(var3 + 1, var5 + 1); + int var12 = 65536 - Rasterizer3D.Rasterizer3D_cosine[var4 * 1024 / var2] >> 1; + int var11 = ((65536 - var12) * var7 >> 16) + (var12 * var8 >> 16); + int var14 = 65536 - Rasterizer3D.Rasterizer3D_cosine[var4 * 1024 / var2] >> 1; + int var13 = ((65536 - var14) * var9 >> 16) + (var14 * var10 >> 16); + int var16 = 65536 - Rasterizer3D.Rasterizer3D_cosine[var6 * 1024 / var2] >> 1; + int var15 = ((65536 - var16) * var11 >> 16) + (var16 * var13 >> 16); + return var15; } } diff --git a/runescape-client/src/main/java/class41.java b/runescape-client/src/main/java/class41.java index 73874f7e58..c29a912904 100644 --- a/runescape-client/src/main/java/class41.java +++ b/runescape-client/src/main/java/class41.java @@ -2,66 +2,214 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("aw") +@ObfuscatedName("ab") public class class41 { - @ObfuscatedName("eb") + @ObfuscatedName("rv") @ObfuscatedGetter( - intValue = -1092142465 + intValue = 641219975 ) - @Export("port3") - static int port3; - - @ObfuscatedName("hb") + static int field302; + @ObfuscatedName("eg") @ObfuscatedSignature( - descriptor = "(IIB)V", - garbageValue = "9" + descriptor = "Lil;" ) - @Export("updateItemPile") - static final void updateItemPile(int var0, int var1) { - NodeDeque var2 = Client.groundItems[GrandExchangeOfferUnitPriceComparator.Client_plane][var0][var1]; // L: 7422 - if (var2 == null) { // L: 7423 - ModeWhere.scene.removeGroundItemPile(GrandExchangeOfferUnitPriceComparator.Client_plane, var0, var1); // L: 7424 + @Export("archive18") + static Archive archive18; + @ObfuscatedName("gz") + @ObfuscatedGetter( + intValue = 725701035 + ) + @Export("baseY") + static int baseY; + @ObfuscatedName("gb") + @Export("regionMapArchiveIds") + static int[] regionMapArchiveIds; + + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "-335068840" + ) + @Export("loadInterface") + public static boolean loadInterface(int var0) { + if (class195.Widget_loadedInterfaces[var0]) { + return true; + } else if (!class58.Widget_archive.tryLoadGroup(var0)) { + return false; } else { - long var3 = -99999999L; // L: 7427 - TileItem var5 = null; // L: 7428 - - TileItem var6; - for (var6 = (TileItem)var2.last(); var6 != null; var6 = (TileItem)var2.previous()) { // L: 7429 7430 7438 - ItemDefinition var7 = AbstractWorldMapData.ItemDefinition_get(var6.id); // L: 7431 - long var11 = (long)var7.price; // L: 7432 - if (var7.isStackable == 1) { - var11 *= (long)(var6.quantity + 1); // L: 7433 - } - - if (var11 > var3) { // L: 7434 - var3 = var11; // L: 7435 - var5 = var6; // L: 7436 - } - } - - if (var5 == null) { // L: 7440 - ModeWhere.scene.removeGroundItemPile(GrandExchangeOfferUnitPriceComparator.Client_plane, var0, var1); // L: 7441 + int var1 = class58.Widget_archive.getGroupFileCount(var0); + if (var1 == 0) { + class195.Widget_loadedInterfaces[var0] = true; + return true; } else { - var2.addLast(var5); // L: 7444 - TileItem var13 = null; // L: 7445 - TileItem var8 = null; // L: 7446 + if (class9.Widget_interfaceComponents[var0] == null) { + class9.Widget_interfaceComponents[var0] = new Widget[var1]; + } - for (var6 = (TileItem)var2.last(); var6 != null; var6 = (TileItem)var2.previous()) { // L: 7447 7448 7453 - if (var5.id != var6.id) { // L: 7449 - if (var13 == null) { // L: 7450 - var13 = var6; - } - - if (var13.id != var6.id && var8 == null) { // L: 7451 - var8 = var6; + for (int var2 = 0; var2 < var1; ++var2) { + if (class9.Widget_interfaceComponents[var0][var2] == null) { + byte[] var3 = class58.Widget_archive.takeFile(var0, var2); + if (var3 != null) { + class9.Widget_interfaceComponents[var0][var2] = new Widget(); + class9.Widget_interfaceComponents[var0][var2].id = var2 + (var0 << 16); + if (var3[0] == -1) { + class9.Widget_interfaceComponents[var0][var2].decode(new Buffer(var3)); + } else { + class9.Widget_interfaceComponents[var0][var2].decodeLegacy(new Buffer(var3)); + } } } } - long var9 = GrandExchangeOfferOwnWorldComparator.calculateTag(var0, var1, 3, false, 0); // L: 7455 - ModeWhere.scene.newGroundItemPile(GrandExchangeOfferUnitPriceComparator.Client_plane, var0, var1, GrandExchangeOfferWorldComparator.getTileHeight(var0 * 128 + 64, var1 * 128 + 64, GrandExchangeOfferUnitPriceComparator.Client_plane), var5, var9, var13, var8); // L: 7456 + class195.Widget_loadedInterfaces[var0] = true; + return true; } } - } // L: 7425 7442 7457 + } + + @ObfuscatedName("ae") + @ObfuscatedSignature( + descriptor = "(ILcs;ZI)I", + garbageValue = "1680484143" + ) + static int method602(int var0, Script var1, boolean var2) { + int var4; + int var9; + if (var0 == ScriptOpcodes.ADD) { + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var4 + var9; + return 1; + } else if (var0 == ScriptOpcodes.SUB) { + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9 - var4; + return 1; + } else if (var0 == ScriptOpcodes.MULTIPLY) { + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var4 * var9; + return 1; + } else if (var0 == ScriptOpcodes.DIV) { + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9 / var4; + return 1; + } else if (var0 == ScriptOpcodes.RANDOM) { + var9 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = (int)(Math.random() * (double)var9); + return 1; + } else if (var0 == ScriptOpcodes.RANDOMINC) { + var9 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = (int)(Math.random() * (double)(var9 + 1)); + return 1; + } else if (var0 == ScriptOpcodes.INTERPOLATE) { + VarcInt.Interpreter_intStackSize -= 5; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + int var10 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 2]; + int var6 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 3]; + int var11 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 4]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9 + (var4 - var9) * (var11 - var10) / (var6 - var10); + return 1; + } else if (var0 == ScriptOpcodes.ADDPERCENT) { + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9 + var9 * var4 / 100; + return 1; + } else if (var0 == ScriptOpcodes.SETBIT) { + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9 | 1 << var4; + return 1; + } else if (var0 == ScriptOpcodes.CLEARBIT) { + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9 & -1 - (1 << var4); + return 1; + } else if (var0 == ScriptOpcodes.TESTBIT) { + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = (var9 & 1 << var4) != 0 ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.MOD) { + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9 % var4; + return 1; + } else if (var0 == ScriptOpcodes.POW) { + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + if (var9 == 0) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = (int)Math.pow((double)var9, (double)var4); + } + + return 1; + } else if (var0 == ScriptOpcodes.INVPOW) { + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + if (var9 == 0) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else { + switch(var4) { + case 0: + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Integer.MAX_VALUE; + break; + case 1: + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9; + break; + case 2: + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = (int)Math.sqrt((double)var9); + break; + case 3: + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = (int)Math.cbrt((double)var9); + break; + case 4: + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = (int)Math.sqrt(Math.sqrt((double)var9)); + break; + default: + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = (int)Math.pow((double)var9, 1.0D / (double)var4); + } + + return 1; + } + } else if (var0 == ScriptOpcodes.AND) { + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9 & var4; + return 1; + } else if (var0 == ScriptOpcodes.OR) { + VarcInt.Interpreter_intStackSize -= 2; + var9 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9 | var4; + return 1; + } else if (var0 == ScriptOpcodes.SCALE) { + VarcInt.Interpreter_intStackSize -= 3; + long var3 = (long)Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + long var5 = (long)Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]; + long var7 = (long)Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 2]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = (int)(var3 * var7 / var5); + return 1; + } else { + return 2; + } + } } diff --git a/runescape-client/src/main/java/class5.java b/runescape-client/src/main/java/class5.java index 511c62b1e4..46f94b89f4 100644 --- a/runescape-client/src/main/java/class5.java +++ b/runescape-client/src/main/java/class5.java @@ -1,33 +1,33 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("q") +@ObfuscatedName("j") public class class5 implements class12 { class5() { - } // L: 8 - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(Lkb;)Lkb;" - ) - public Buffer vmethod145(Buffer var1) { - Buffer var2 = new Buffer(100); // L: 11 - this.method84(var1, var2); // L: 12 - return var2; // L: 13 } - @ObfuscatedName("b") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lkb;Lkb;)V" + descriptor = "(Lkj;)Lkj;" ) - void method84(Buffer var1, Buffer var2) { - class10 var3 = new class10(var1); // L: 17 - class6 var4 = new class6(var3); // L: 18 + public Buffer vmethod123(Buffer var1) { + Buffer var2 = new Buffer(100); + this.method61(var1, var2); + return var2; + } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(Lkj;Lkj;)V" + ) + void method61(Buffer var1, Buffer var2) { + class10 var3 = new class10(var1); + class6 var4 = new class6(var3); long var5; - for (var5 = 0L; !var4.method89(var3.method135(), var3.method134(), var5); ++var5) { // L: 19 20 21 + for (var5 = 0L; !var4.method64(var3.method114(), var3.method121(), var5); ++var5) { } - var2.writeLong(var5); // L: 23 - } // L: 24 + var2.writeLong(var5); + } } diff --git a/runescape-client/src/main/java/class51.java b/runescape-client/src/main/java/class51.java new file mode 100644 index 0000000000..cc6a6f6862 --- /dev/null +++ b/runescape-client/src/main/java/class51.java @@ -0,0 +1,436 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedGetter; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("at") +public class class51 implements WorldMapSection { + @ObfuscatedName("h") + @ObfuscatedGetter( + intValue = 386223373 + ) + int field391; + @ObfuscatedName("v") + @ObfuscatedGetter( + intValue = 2109143743 + ) + int field383; + @ObfuscatedName("x") + @ObfuscatedGetter( + intValue = -1355419329 + ) + int field384; + @ObfuscatedName("w") + @ObfuscatedGetter( + intValue = -76124047 + ) + int field385; + @ObfuscatedName("t") + @ObfuscatedGetter( + intValue = -1532618423 + ) + int field392; + @ObfuscatedName("j") + @ObfuscatedGetter( + intValue = -1466028357 + ) + int field387; + @ObfuscatedName("n") + @ObfuscatedGetter( + intValue = -249737173 + ) + int field388; + @ObfuscatedName("p") + @ObfuscatedGetter( + intValue = 1727232939 + ) + int field389; + @ObfuscatedName("l") + @ObfuscatedGetter( + intValue = -196617295 + ) + int field390; + @ObfuscatedName("z") + @ObfuscatedGetter( + intValue = -1159678885 + ) + int field393; + + class51() { + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(Lav;S)V", + garbageValue = "19050" + ) + @Export("expandBounds") + public void expandBounds(WorldMapArea var1) { + if (var1.regionLowX > this.field392) { + var1.regionLowX = this.field392; + } + + if (var1.regionHighX < this.field392) { + var1.regionHighX = this.field392; + } + + if (var1.regionLowY > this.field387) { + var1.regionLowY = this.field387; + } + + if (var1.regionHighY < this.field387) { + var1.regionHighY = this.field387; + } + + } + + @ObfuscatedName("v") + @ObfuscatedSignature( + descriptor = "(IIII)Z", + garbageValue = "241939554" + ) + @Export("containsCoord") + public boolean containsCoord(int var1, int var2, int var3) { + if (var1 >= this.field391 && var1 < this.field391 + this.field383) { + return var2 >= (this.field384 << 6) + (this.field388 << 3) && var2 <= (this.field384 << 6) + (this.field388 << 3) + 7 && var3 >= (this.field385 << 6) + (this.field389 << 3) && var3 <= (this.field385 << 6) + (this.field389 << 3) + 7; + } else { + return false; + } + } + + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "(III)Z", + garbageValue = "639074408" + ) + @Export("containsPosition") + public boolean containsPosition(int var1, int var2) { + return var1 >= (this.field392 << 6) + (this.field390 << 3) && var1 <= (this.field392 << 6) + (this.field390 << 3) + 7 && var2 >= (this.field387 << 6) + (this.field393 << 3) && var2 <= (this.field387 << 6) + (this.field393 << 3) + 7; + } + + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "(IIII)[I", + garbageValue = "1868308301" + ) + @Export("getBorderTileLengths") + public int[] getBorderTileLengths(int var1, int var2, int var3) { + if (!this.containsCoord(var1, var2, var3)) { + return null; + } else { + int[] var4 = new int[]{this.field392 * 64 - this.field384 * 64 + var2 + (this.field390 * 8 - this.field388 * 8), var3 + (this.field387 * 64 - this.field385 * 64) + (this.field393 * 8 - this.field389 * 8)}; + return var4; + } + } + + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "(IIB)Lhs;", + garbageValue = "0" + ) + @Export("coord") + public Coord coord(int var1, int var2) { + if (!this.containsPosition(var1, var2)) { + return null; + } else { + int var3 = this.field384 * 64 - this.field392 * 64 + (this.field388 * 8 - this.field390 * 8) + var1; + int var4 = this.field385 * 64 - this.field387 * 64 + var2 + (this.field389 * 8 - this.field393 * 8); + return new Coord(this.field391, var3, var4); + } + } + + @ObfuscatedName("j") + @ObfuscatedSignature( + descriptor = "(Lkj;B)V", + garbageValue = "125" + ) + @Export("read") + public void read(Buffer var1) { + this.field391 = var1.readUnsignedByte(); + this.field383 = var1.readUnsignedByte(); + this.field384 = var1.readUnsignedShort(); + this.field388 = var1.readUnsignedByte(); + this.field385 = var1.readUnsignedShort(); + this.field389 = var1.readUnsignedByte(); + this.field392 = var1.readUnsignedShort(); + this.field390 = var1.readUnsignedByte(); + this.field387 = var1.readUnsignedShort(); + this.field393 = var1.readUnsignedByte(); + this.method817(); + } + + @ObfuscatedName("n") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "-70" + ) + void method817() { + } + + @ObfuscatedName("h") + @ObfuscatedSignature( + descriptor = "(IIII)I", + garbageValue = "73723896" + ) + public static int method815(int var0, int var1, int var2) { + var2 &= 3; + if (var2 == 0) { + return var0; + } else if (var2 == 1) { + return var1; + } else { + return var2 == 2 ? 7 - var0 : 7 - var1; + } + } + + @ObfuscatedName("t") + @ObfuscatedSignature( + descriptor = "(Lib;Ljava/lang/String;Ljava/lang/String;I)Llo;", + garbageValue = "-973430603" + ) + @Export("SpriteBuffer_getIndexedSpriteByName") + public static IndexedSprite SpriteBuffer_getIndexedSpriteByName(AbstractArchive var0, String var1, String var2) { + int var3 = var0.getGroupId(var1); + int var4 = var0.getFileId(var3, var2); + IndexedSprite var5; + if (!class304.method5363(var0, var3, var4)) { + var5 = null; + } else { + var5 = PrivateChatMode.method5937(); + } + + return var5; + } + + @ObfuscatedName("gk") + @ObfuscatedSignature( + descriptor = "(Lcx;I)V", + garbageValue = "1281357003" + ) + static final void method831(Actor var0) { + var0.movementSequence = var0.idleSequence; + if (var0.pathLength == 0) { + var0.field963 = 0; + } else { + if (var0.sequence != -1 && var0.sequenceDelay == 0) { + SequenceDefinition var1 = ParamDefinition.SequenceDefinition_get(var0.sequence); + if (var0.field996 > 0 && var1.field3560 == 0) { + ++var0.field963; + return; + } + + if (var0.field996 <= 0 && var1.field3555 == 0) { + ++var0.field963; + return; + } + } + + int var10 = var0.x; + int var2 = var0.y; + int var3 = var0.pathX[var0.pathLength - 1] * 128 + var0.field941 * 108072960; + int var4 = var0.pathY[var0.pathLength - 1] * 128 + var0.field941 * 108072960; + if (var10 < var3) { + if (var2 < var4) { + var0.orientation = 1280; + } else if (var2 > var4) { + var0.orientation = 1792; + } else { + var0.orientation = 1536; + } + } else if (var10 > var3) { + if (var2 < var4) { + var0.orientation = 768; + } else if (var2 > var4) { + var0.orientation = 256; + } else { + var0.orientation = 512; + } + } else if (var2 < var4) { + var0.orientation = 1024; + } else if (var2 > var4) { + var0.orientation = 0; + } + + byte var5 = var0.pathTraversed[var0.pathLength - 1]; + if (var3 - var10 <= 256 && var3 - var10 >= -256 && var4 - var2 <= 256 && var4 - var2 >= -256) { + int var6 = var0.orientation - var0.rotation & 2047; + if (var6 > 1024) { + var6 -= 2048; + } + + int var7 = var0.walkBackSequence; + if (var6 >= -256 && var6 <= 256) { + var7 = var0.walkSequence; + } else if (var6 >= 256 && var6 < 768) { + var7 = var0.walkRightSequence; + } else if (var6 >= -768 && var6 <= -256) { + var7 = var0.walkLeftSequence; + } + + if (var7 == -1) { + var7 = var0.walkSequence; + } + + var0.movementSequence = var7; + int var8 = 4; + boolean var9 = true; + if (var0 instanceof NPC) { + var9 = ((NPC)var0).definition.isClickable; + } + + if (var9) { + if (var0.orientation != var0.rotation && var0.targetIndex == -1 && var0.field940 != 0) { + var8 = 2; + } + + if (var0.pathLength > 2) { + var8 = 6; + } + + if (var0.pathLength > 3) { + var8 = 8; + } + + if (var0.field963 > 0 && var0.pathLength > 1) { + var8 = 8; + --var0.field963; + } + } else { + if (var0.pathLength > 1) { + var8 = 6; + } + + if (var0.pathLength > 2) { + var8 = 8; + } + + if (var0.field963 > 0 && var0.pathLength > 1) { + var8 = 8; + --var0.field963; + } + } + + if (var5 == 2) { + var8 <<= 1; + } + + if (var8 >= 8 && var0.walkSequence == var0.movementSequence && var0.runSequence != -1) { + var0.movementSequence = var0.runSequence; + } + + if (var10 != var3 || var4 != var2) { + if (var10 < var3) { + var0.x += var8; + if (var0.x > var3) { + var0.x = var3; + } + } else if (var10 > var3) { + var0.x -= var8; + if (var0.x < var3) { + var0.x = var3; + } + } + + if (var2 < var4) { + var0.y += var8; + if (var0.y > var4) { + var0.y = var4; + } + } else if (var2 > var4) { + var0.y -= var8; + if (var0.y < var4) { + var0.y = var4; + } + } + } + + if (var3 == var0.x && var4 == var0.y) { + --var0.pathLength; + if (var0.field996 > 0) { + --var0.field996; + } + } + + } else { + var0.x = var3; + var0.y = var4; + --var0.pathLength; + if (var0.field996 > 0) { + --var0.field996; + } + + } + } + } + + @ObfuscatedName("gf") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1731859133" + ) + static void method832() { + if (Client.renderSelf) { + ClientPreferences.addPlayerToScene(PlayerAppearance.localPlayer, false); + } + + } + + @ObfuscatedName("ju") + @ObfuscatedSignature( + descriptor = "(IIIIIIIB)V", + garbageValue = "1" + ) + @Export("updateRootInterface") + static final void updateRootInterface(int var0, int var1, int var2, int var3, int var4, int var5, int var6) { + if (class41.loadInterface(var0)) { + Players.updateInterface(class9.Widget_interfaceComponents[var0], -1, var1, var2, var3, var4, var5, var6); + } + } + + @ObfuscatedName("ks") + @ObfuscatedSignature( + descriptor = "([Lhe;II)V", + garbageValue = "1271776997" + ) + @Export("runComponentCloseListeners") + static final void runComponentCloseListeners(Widget[] var0, int var1) { + for (int var2 = 0; var2 < var0.length; ++var2) { + Widget var3 = var0[var2]; + if (var3 != null) { + if (var3.type == 0) { + if (var3.children != null) { + runComponentCloseListeners(var3.children, var1); + } + + InterfaceParent var4 = (InterfaceParent)Client.interfaceParents.get((long)var3.id); + if (var4 != null) { + WorldMapRectangle.runIntfCloseListeners(var4.group, var1); + } + } + + ScriptEvent var5; + if (var1 == 0 && var3.onDialogAbort != null) { + var5 = new ScriptEvent(); + var5.widget = var3; + var5.args = var3.onDialogAbort; + class22.runScriptEvent(var5); + } + + if (var1 == 1 && var3.onSubChange != null) { + if (var3.childIndex >= 0) { + Widget var6 = CollisionMap.getWidget(var3.id); + if (var6 == null || var6.children == null || var3.childIndex >= var6.children.length || var3 != var6.children[var3.childIndex]) { + continue; + } + } + + var5 = new ScriptEvent(); + var5.widget = var3; + var5.args = var3.onSubChange; + class22.runScriptEvent(var5); + } + } + } + + } +} diff --git a/runescape-client/src/main/java/class52.java b/runescape-client/src/main/java/class52.java index 5e2e4e6e3d..de4afad75d 100644 --- a/runescape-client/src/main/java/class52.java +++ b/runescape-client/src/main/java/class52.java @@ -1,88 +1,391 @@ -import java.awt.FontMetrics; -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("bb") +@ObfuscatedName("bh") public final class class52 { - @ObfuscatedName("a") - @Export("userHomeDirectory") - static String userHomeDirectory; - @ObfuscatedName("av") - @Export("loginScreenFontMetrics") - static FontMetrics loginScreenFontMetrics; - @ObfuscatedName("fu") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Les;" + descriptor = "(II)Llw;", + garbageValue = "1066778190" ) - @Export("urlRequester") - static UrlRequester urlRequester; - @ObfuscatedName("gw") - @Export("regions") - static int[] regions; + public static PrivateChatMode method840(int var0) { + PrivateChatMode[] var1 = new PrivateChatMode[]{PrivateChatMode.field3834, PrivateChatMode.field3833, PrivateChatMode.field3832}; + PrivateChatMode[] var2 = var1; - @ObfuscatedName("q") - @ObfuscatedSignature( - descriptor = "([BIII)Ljava/lang/String;", - garbageValue = "-1899471565" - ) - @Export("decodeStringCp1252") - public static String decodeStringCp1252(byte[] var0, int var1, int var2) { - char[] var3 = new char[var2]; // L: 143 - int var4 = 0; // L: 144 - - for (int var5 = 0; var5 < var2; ++var5) { // L: 145 - int var6 = var0[var5 + var1] & 255; // L: 146 - if (var6 != 0) { // L: 147 - if (var6 >= 128 && var6 < 160) { // L: 148 - char var7 = class298.cp1252AsciiExtension[var6 - 128]; // L: 149 - if (var7 == 0) { // L: 150 - var7 = '?'; - } - - var6 = var7; // L: 151 - } - - var3[var4++] = (char)var6; // L: 153 + for (int var3 = 0; var3 < var2.length; ++var3) { + PrivateChatMode var4 = var2[var3]; + if (var0 == var4.field3835) { + return var4; } } - return new String(var3, 0, var4); // L: 155 + return null; } - @ObfuscatedName("em") + @ObfuscatedName("j") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "793107384" + descriptor = "(II)Z", + garbageValue = "-677680032" ) - static boolean method897() { - if (Client.archiveLoaders != null && Client.archiveLoadersDone < Client.archiveLoaders.size()) { // L: 1899 - while (Client.archiveLoadersDone < Client.archiveLoaders.size()) { // L: 1900 - ArchiveLoader var0 = (ArchiveLoader)Client.archiveLoaders.get(Client.archiveLoadersDone); // L: 1901 - if (!var0.isLoaded()) { - return false; // L: 1902 - } + public static boolean method844(int var0) { + return (var0 >> 30 & 1) != 0; + } - ++Client.archiveLoadersDone; // L: 1903 - } - - return true; // L: 1905 + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "(ILcs;ZI)I", + garbageValue = "2036711787" + ) + static int method845(int var0, Script var1, boolean var2) { + int var3; + if (var0 == 6600) { + var3 = GameObject.Client_plane; + int var15 = NetFileRequest.baseX * 64 + (PlayerAppearance.localPlayer.x >> 7); + int var8 = class41.baseY * 64 + (PlayerAppearance.localPlayer.y >> 7); + Actor.getWorldMap().method6370(var3, var15, var8, true); + return 1; } else { - return true; // L: 1904 + WorldMapArea var9; + if (var0 == ScriptOpcodes.WORLDMAP_GETMAPNAME) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + String var16 = ""; + var9 = Actor.getWorldMap().getMapArea(var3); + if (var9 != null) { + var16 = var9.getExternalName(); + } + + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var16; + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_SETMAP) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Actor.getWorldMap().setCurrentMapAreaId(var3); + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_GETZOOM) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Actor.getWorldMap().getZoomLevel(); + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_SETZOOM) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Actor.getWorldMap().setZoomPercentage(var3); + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_ISLOADED) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Actor.getWorldMap().isCacheLoaded() ? 1 : 0; + return 1; + } else { + Coord var14; + if (var0 == ScriptOpcodes.WORLDMAP_JUMPTODISPLAYCOORD) { + var14 = new Coord(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + Actor.getWorldMap().setWorldMapPositionTarget(var14.x, var14.y); + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_JUMPTODISPLAYCOORD_INSTANT) { + var14 = new Coord(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + Actor.getWorldMap().setWorldMapPositionTargetInstant(var14.x, var14.y); + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_JUMPTOSOURCECOORD) { + var14 = new Coord(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + Actor.getWorldMap().jumpToSourceCoord(var14.plane, var14.x, var14.y); + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_JUMPTOSOURCECOORD_INSTANT) { + var14 = new Coord(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + Actor.getWorldMap().jumpToSourceCoordInstant(var14.plane, var14.x, var14.y); + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_GETDISPLAYPOSITION) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Actor.getWorldMap().getDisplayX(); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Actor.getWorldMap().getDisplayY(); + return 1; + } else { + WorldMapArea var11; + if (var0 == ScriptOpcodes.WORLDMAP_GETCONFIGORIGIN) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var11 = Actor.getWorldMap().getMapArea(var3); + if (var11 == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var11.getOrigin().packed(); + } + + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_GETCONFIGSIZE) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var11 = Actor.getWorldMap().getMapArea(var3); + if (var11 == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = (var11.getRegionHighX() - var11.getRegionLowX() + 1) * 64; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = (var11.getRegionHighY() - var11.getRegionLowY() + 1) * 64; + } + + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_GETCONFIGBOUNDS) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var11 = Actor.getWorldMap().getMapArea(var3); + if (var11 == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var11.getRegionLowX() * 64; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var11.getRegionLowY() * 64; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var11.getRegionHighX() * 64 + 64 - 1; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var11.getRegionHighY() * 64 + 64 - 1; + } + + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_GETCONFIGZOOM) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var11 = Actor.getWorldMap().getMapArea(var3); + if (var11 == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var11.getZoom(); + } + + return 1; + } else if (var0 == 6615) { + var14 = Actor.getWorldMap().getDisplayCoord(); + if (var14 == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var14.x; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var14.y; + } + + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_GETCURRENTMAP) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Actor.getWorldMap().currentMapAreaId(); + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_GETDISPLAYCOORD) { + var14 = new Coord(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + var11 = Actor.getWorldMap().getCurrentMapArea(); + if (var11 == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + return 1; + } else { + int[] var12 = var11.position(var14.plane, var14.x, var14.y); + if (var12 == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var12[0]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var12[1]; + } + + return 1; + } + } else { + Coord var5; + if (var0 == 6618) { + var14 = new Coord(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + var11 = Actor.getWorldMap().getCurrentMapArea(); + if (var11 == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + return 1; + } else { + var5 = var11.coord(var14.x, var14.y); + if (var5 == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var5.packed(); + } + + return 1; + } + } else { + Coord var10; + if (var0 == 6619) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var10 = new Coord(Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]); + class204.method3721(var3, var10, false); + return 1; + } else if (var0 == 6620) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var10 = new Coord(Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]); + class204.method3721(var3, var10, true); + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_COORDINMAP) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var10 = new Coord(Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]); + var9 = Actor.getWorldMap().getMapArea(var3); + if (var9 == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = 0; + return 1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var9.containsCoord(var10.plane, var10.x, var10.y) ? 1 : 0; + return 1; + } + } else if (var0 == ScriptOpcodes.WORLDMAP_GETSIZE) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Actor.getWorldMap().getDisplayWith(); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Actor.getWorldMap().getDisplayHeight(); + return 1; + } else if (var0 == 6623) { + var14 = new Coord(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + var11 = Actor.getWorldMap().mapAreaAtCoord(var14.plane, var14.x, var14.y); + if (var11 == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var11.getId(); + } + + return 1; + } else if (var0 == 6624) { + Actor.getWorldMap().setMaxFlashCount(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + return 1; + } else if (var0 == 6625) { + Actor.getWorldMap().resetMaxFlashCount(); + return 1; + } else if (var0 == 6626) { + Actor.getWorldMap().setCyclesPerFlash(Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]); + return 1; + } else if (var0 == 6627) { + Actor.getWorldMap().resetCyclesPerFlash(); + return 1; + } else { + boolean var13; + if (var0 == ScriptOpcodes.WORLDMAP_PERPETUALFLASH) { + var13 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + Actor.getWorldMap().setPerpetualFlash(var13); + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_FLASHELEMENT) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Actor.getWorldMap().flashElement(var3); + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_FLASHELEMENTCATEGORY) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Actor.getWorldMap().flashCategory(var3); + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_STOPCURRENTFLASHES) { + Actor.getWorldMap().stopCurrentFlashes(); + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_DISABLEELEMENTS) { + var13 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize] == 1; + Actor.getWorldMap().setElementsDisabled(var13); + return 1; + } else { + boolean var7; + if (var0 == ScriptOpcodes.WORLDMAP_DISABLEELEMENT) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var7 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1] == 1; + Actor.getWorldMap().disableElement(var3, var7); + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_DISABLEELEMENTCATEGORY) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var7 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1] == 1; + Actor.getWorldMap().setCategoryDisabled(var3, var7); + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_GETDISABLEELEMENTS) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Actor.getWorldMap().getElementsDisabled() ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_GETDISABLEELEMENT) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Actor.getWorldMap().isElementDisabled(var3) ? 1 : 0; + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_GETDISABLEELEMENTCATEGORY) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Actor.getWorldMap().isCategoryDisabled(var3) ? 1 : 0; + return 1; + } else if (var0 == 6638) { + VarcInt.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize]; + var10 = new Coord(Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1]); + var5 = Actor.getWorldMap().method6414(var3, var10); + if (var5 == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var5.packed(); + } + + return 1; + } else { + AbstractWorldMapIcon var6; + if (var0 == ScriptOpcodes.WORLDMAP_LISTELEMENT_START) { + var6 = Actor.getWorldMap().iconStart(); + if (var6 == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var6.getElement(); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var6.coord2.packed(); + } + + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_LISTELEMENT_NEXT) { + var6 = Actor.getWorldMap().iconNext(); + if (var6 == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var6.getElement(); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var6.coord2.packed(); + } + + return 1; + } else { + WorldMapElement var4; + if (var0 == ScriptOpcodes.MEC_TEXT) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var4 = UserComparator10.WorldMapElement_get(var3); + if (var4.name == null) { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; + } else { + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var4.name; + } + + return 1; + } else if (var0 == ScriptOpcodes.MEC_TEXTSIZE) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var4 = UserComparator10.WorldMapElement_get(var3); + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var4.textSize; + return 1; + } else if (var0 == ScriptOpcodes.MEC_CATEGORY) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var4 = UserComparator10.WorldMapElement_get(var3); + if (var4 == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var4.category; + } + + return 1; + } else if (var0 == ScriptOpcodes.MEC_SPRITE) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + var4 = UserComparator10.WorldMapElement_get(var3); + if (var4 == null) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = var4.sprite1; + } + + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_ELEMENT) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Script.worldMapEvent.mapElement; + return 1; + } else if (var0 == 6698) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Script.worldMapEvent.coord1.packed(); + return 1; + } else if (var0 == ScriptOpcodes.WORLDMAP_ELEMENTCOORD) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Script.worldMapEvent.coord2.packed(); + return 1; + } else { + return 2; + } + } + } + } + } + } + } + } + } } } - - @ObfuscatedName("jf") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1432177323" - ) - @Export("FriendSystem_invalidateIgnoreds") - static final void FriendSystem_invalidateIgnoreds() { - class9.method132(); // L: 11482 - if (DevicePcmPlayerProvider.clanChat != null) { // L: 11483 - DevicePcmPlayerProvider.clanChat.invalidateIgnoreds(); // L: 11484 - } - - } // L: 11486 } diff --git a/runescape-client/src/main/java/class56.java b/runescape-client/src/main/java/class56.java index 6854251f30..64bee893c8 100644 --- a/runescape-client/src/main/java/class56.java +++ b/runescape-client/src/main/java/class56.java @@ -3,14 +3,14 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; import netscape.javascript.JSObject; -@ObfuscatedName("bc") +@ObfuscatedName("bl") public class class56 { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Ljava/applet/Applet;Ljava/lang/String;[Ljava/lang/Object;I)Ljava/lang/Object;", - garbageValue = "-1898995849" + descriptor = "(Ljava/applet/Applet;Ljava/lang/String;B)Ljava/lang/Object;", + garbageValue = "16" ) - public static Object method944(Applet var0, String var1, Object[] var2) throws Throwable { - return JSObject.getWindow(var0).call(var1, var2); // L: 13 + public static Object method901(Applet var0, String var1) throws Throwable { + return null; } } diff --git a/runescape-client/src/main/java/class58.java b/runescape-client/src/main/java/class58.java index 3425ce1edd..6ab3fdb8a2 100644 --- a/runescape-client/src/main/java/class58.java +++ b/runescape-client/src/main/java/class58.java @@ -1,3 +1,6 @@ +import java.io.File; +import java.io.IOException; +import java.io.RandomAccessFile; import javax.imageio.ImageIO; import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedGetter; @@ -5,346 +8,236 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("bl") +@ObfuscatedName("bf") public class class58 { - @ObfuscatedName("sz") - @ObfuscatedGetter( - longValue = -2922274226149570533L + @ObfuscatedName("sx") + @ObfuscatedSignature( + descriptor = "Lmf;" ) - static long field444; - @ObfuscatedName("ey") - @ObfuscatedGetter( - intValue = -1623536047 + @Export("platformInfo") + static PlatformInfo platformInfo; + @ObfuscatedName("l") + @ObfuscatedSignature( + descriptor = "Lib;" ) - static int field445; + @Export("Widget_archive") + public static AbstractArchive Widget_archive; + @ObfuscatedName("ex") + @ObfuscatedGetter( + intValue = 1420275067 + ) + static int field433; static { - ImageIO.setUseCache(false); // L: 12 - } // L: 13 + ImageIO.setUseCache(false); + } - @ObfuscatedName("b") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Lbd;II)V", - garbageValue = "-485493685" + descriptor = "(Ljava/lang/String;Ljava/lang/String;II)Ljava/io/File;", + garbageValue = "-276534150" ) - @Export("runScript") - static void runScript(ScriptEvent var0, int var1) { - Object[] var2 = var0.args; // L: 101 - Script var3; - int var17; - if (WorldMapIcon_0.isWorldMapEvent(var0.type)) { // L: 103 - WorldMapSection0.worldMapEvent = (WorldMapEvent)var2[0]; // L: 104 - WorldMapElement var4 = class194.WorldMapElement_get(WorldMapSection0.worldMapEvent.mapElement); // L: 105 - var3 = WorldMapManager.getWorldMapScript(var0.type, var4.objectId, var4.category); // L: 106 - } else { - var17 = (Integer)var2[0]; // L: 109 - var3 = WorldMapSection0.getScript(var17); // L: 110 - } - - if (var3 != null) { // L: 112 - MilliClock.Interpreter_intStackSize = 0; // L: 115 - UrlRequester.Interpreter_stringStackSize = 0; // L: 116 - var17 = -1; // L: 117 - int[] var5 = var3.opcodes; // L: 118 - int[] var6 = var3.intOperands; // L: 119 - byte var7 = -1; // L: 120 - Interpreter.Interpreter_frameDepth = 0; // L: 121 - Interpreter.field1130 = false; // L: 122 - + public static File method917(String var0, String var1, int var2) { + String var3 = var2 == 0 ? "" : "" + var2; + JagexCache.JagexCache_locationFile = new File(TileItemPile.userHomeDirectory, "jagex_cl_" + var0 + "_" + var1 + var3 + ".dat"); + String var4 = null; + String var5 = null; + boolean var6 = false; + Buffer var8; + int var11; + File var27; + if (JagexCache.JagexCache_locationFile.exists()) { try { - int var10; + AccessFile var7 = new AccessFile(JagexCache.JagexCache_locationFile, "rw", 10000L); + + int var9; + for (var8 = new Buffer((int)var7.length()); var8.offset < var8.array.length; var8.offset += var9) { + var9 = var7.read(var8.array, var8.offset, var8.array.length - var8.offset); + if (var9 == -1) { + throw new IOException(); + } + } + + var8.offset = 0; + var9 = var8.readUnsignedByte(); + if (var9 < 1 || var9 > 3) { + throw new IOException("" + var9); + } + + int var10 = 0; + if (var9 > 1) { + var10 = var8.readUnsignedByte(); + } + + if (var9 <= 2) { + var4 = var8.readStringCp1252NullCircumfixed(); + if (var10 == 1) { + var5 = var8.readStringCp1252NullCircumfixed(); + } + } else { + var4 = var8.readCESU8(); + if (var10 == 1) { + var5 = var8.readCESU8(); + } + } + + var7.close(); + } catch (IOException var25) { + var25.printStackTrace(); + } + + if (var4 != null) { + var27 = new File(var4); + if (!var27.exists()) { + var4 = null; + } + } + + if (var4 != null) { + var27 = new File(var4, "test.dat"); + + boolean var28; try { - Interpreter.Interpreter_intLocals = new int[var3.localIntCount]; // L: 124 - int var8 = 0; // L: 125 - Interpreter.Interpreter_stringLocals = new String[var3.localStringCount]; // L: 126 - int var9 = 0; // L: 127 - - int var11; - String var18; - for (var10 = 1; var10 < var2.length; ++var10) { // L: 128 - if (var2[var10] instanceof Integer) { // L: 129 - var11 = (Integer)var2[var10]; // L: 130 - if (var11 == -2147483647) { // L: 131 - var11 = var0.mouseX; - } - - if (var11 == -2147483646) { // L: 132 - var11 = var0.mouseY; - } - - if (var11 == -2147483645) { // L: 133 - var11 = var0.widget != null ? var0.widget.id * -583486671 * -509491759 : -1; - } - - if (var11 == -2147483644) { // L: 134 - var11 = var0.opIndex; - } - - if (var11 == -2147483643) { // L: 135 - var11 = var0.widget != null ? var0.widget.childIndex * -1360175439 * 2048666193 : -1; - } - - if (var11 == -2147483642) { // L: 136 - var11 = var0.dragTarget != null ? var0.dragTarget.id * -583486671 * -509491759 : -1; - } - - if (var11 == -2147483641) { // L: 137 - var11 = var0.dragTarget != null ? var0.dragTarget.childIndex * -1360175439 * 2048666193 : -1; - } - - if (var11 == -2147483640) { // L: 138 - var11 = var0.keyTyped; - } - - if (var11 == -2147483639) { // L: 139 - var11 = var0.keyPressed; - } - - Interpreter.Interpreter_intLocals[var8++] = var11; // L: 140 - } else if (var2[var10] instanceof String) { // L: 142 - var18 = (String)var2[var10]; // L: 143 - if (var18.equals("event_opbase")) { // L: 144 - var18 = var0.targetName; - } - - Interpreter.Interpreter_stringLocals[var9++] = var18; // L: 145 - } - } - - var10 = 0; // L: 149 - Interpreter.field1119 = var0.field600; // L: 150 - - while (true) { - ++var10; // L: 152 - if (var10 > var1) { // L: 153 - throw new RuntimeException(); - } - - ++var17; // L: 154 - int var29 = var5[var17]; - int var20; - if (var29 >= 100) { // L: 155 - boolean var32; - if (var3.intOperands[var17] == 1) { // L: 353 - var32 = true; - } else { - var32 = false; // L: 354 - } - - var20 = VarcInt.method4562(var29, var3, var32); // L: 355 - switch(var20) { // L: 356 - case 0: - return; - case 1: - default: - break; - case 2: - throw new IllegalStateException(); // L: 363 - } - } else if (var29 == ScriptOpcodes.ICONST) { // L: 156 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = var6[var17]; // L: 157 - } else if (var29 == ScriptOpcodes.GET_VARP) { // L: 160 - var11 = var6[var17]; // L: 161 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Varps.Varps_main[var11]; // L: 162 - } else if (var29 == ScriptOpcodes.SET_VARP) { // L: 165 - var11 = var6[var17]; // L: 166 - Varps.Varps_main[var11] = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 167 - class23.changeGameOptions(var11); // L: 168 - } else if (var29 == ScriptOpcodes.SCONST) { // L: 171 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var3.stringOperands[var17]; // L: 172 - } else if (var29 == ScriptOpcodes.JUMP) { // L: 175 - var17 += var6[var17]; // L: 176 - } else if (var29 == ScriptOpcodes.IF_ICMPNE) { // L: 179 - MilliClock.Interpreter_intStackSize -= 2; // L: 180 - if (Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize] != Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]) { // L: 181 - var17 += var6[var17]; - } - } else if (var29 == ScriptOpcodes.IF_ICMPEQ) { // L: 184 - MilliClock.Interpreter_intStackSize -= 2; // L: 185 - if (Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize] == Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]) { // L: 186 - var17 += var6[var17]; - } - } else if (var29 == ScriptOpcodes.IF_ICMPLT) { // L: 189 - MilliClock.Interpreter_intStackSize -= 2; // L: 190 - if (Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize] < Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]) { // L: 191 - var17 += var6[var17]; - } - } else if (var29 == ScriptOpcodes.IF_ICMPGT) { // L: 194 - MilliClock.Interpreter_intStackSize -= 2; // L: 195 - if (Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize] > Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]) { // L: 196 - var17 += var6[var17]; - } - } else if (var29 == ScriptOpcodes.RETURN) { // L: 199 - if (Interpreter.Interpreter_frameDepth == 0) { // L: 200 - return; - } - - ScriptFrame var34 = Interpreter.Interpreter_frames[--Interpreter.Interpreter_frameDepth]; // L: 201 - var3 = var34.script; // L: 202 - var5 = var3.opcodes; // L: 203 - var6 = var3.intOperands; // L: 204 - var17 = var34.pc; // L: 205 - Interpreter.Interpreter_intLocals = var34.intLocals; // L: 206 - Interpreter.Interpreter_stringLocals = var34.stringLocals; // L: 207 - } else if (var29 == ScriptOpcodes.GET_VARBIT) { // L: 210 - var11 = var6[var17]; // L: 211 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = ApproximateRouteStrategy.getVarbit(var11); // L: 212 - } else if (var29 == ScriptOpcodes.SET_VARBIT) { // L: 215 - var11 = var6[var17]; // L: 216 - class169.method3571(var11, Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 217 - } else if (var29 == ScriptOpcodes.IF_ICMPLE) { // L: 220 - MilliClock.Interpreter_intStackSize -= 2; // L: 221 - if (Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize] <= Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]) { // L: 222 - var17 += var6[var17]; - } - } else if (var29 == ScriptOpcodes.IF_ICMPGE) { // L: 225 - MilliClock.Interpreter_intStackSize -= 2; // L: 226 - if (Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize] >= Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]) { // L: 227 - var17 += var6[var17]; - } - } else if (var29 == ScriptOpcodes.ILOAD) { // L: 230 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Interpreter.Interpreter_intLocals[var6[var17]]; // L: 231 - } else if (var29 == ScriptOpcodes.ISTORE) { // L: 234 - Interpreter.Interpreter_intLocals[var6[var17]] = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 235 - } else if (var29 == ScriptOpcodes.SLOAD) { // L: 238 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = Interpreter.Interpreter_stringLocals[var6[var17]]; // L: 239 - } else if (var29 == ScriptOpcodes.SSTORE) { // L: 242 - Interpreter.Interpreter_stringLocals[var6[var17]] = Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]; // L: 243 - } else if (var29 == ScriptOpcodes.JOIN_STRING) { // L: 246 - var11 = var6[var17]; // L: 247 - UrlRequester.Interpreter_stringStackSize -= var11; // L: 248 - String var31 = ApproximateRouteStrategy.method1324(Interpreter.Interpreter_stringStack, UrlRequester.Interpreter_stringStackSize, var11); // L: 249 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var31; // L: 250 - } else if (var29 == ScriptOpcodes.POP_INT) { // L: 253 - --MilliClock.Interpreter_intStackSize; // L: 254 - } else if (var29 == ScriptOpcodes.POP_STRING) { // L: 257 - --UrlRequester.Interpreter_stringStackSize; // L: 258 - } else { - int var15; - if (var29 != ScriptOpcodes.INVOKE) { // L: 261 - if (var29 == ScriptOpcodes.GET_VARC_INT) { // L: 284 - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = FriendSystem.varcs.getInt(var6[var17]); // L: 285 - } else if (var29 == ScriptOpcodes.SET_VARC_INT) { // L: 288 - FriendSystem.varcs.setInt(var6[var17], Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 289 - } else if (var29 == ScriptOpcodes.DEFINE_ARRAY) { // L: 292 - var11 = var6[var17] >> 16; // L: 293 - var20 = var6[var17] & 65535; // L: 294 - int var21 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 295 - if (var21 < 0 || var21 > 5000) { // L: 296 - throw new RuntimeException(); // L: 297 - } - - Interpreter.Interpreter_arrayLengths[var11] = var21; // L: 299 - byte var22 = -1; // L: 300 - if (var20 == 105) { // L: 301 - var22 = 0; - } - - for (var15 = 0; var15 < var21; ++var15) { // L: 302 - Interpreter.Interpreter_arrays[var11][var15] = var22; - } - } else if (var29 == ScriptOpcodes.GET_ARRAY_INT) { // L: 305 - var11 = var6[var17]; // L: 306 - var20 = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 307 - if (var20 < 0 || var20 >= Interpreter.Interpreter_arrayLengths[var11]) { // L: 308 - throw new RuntimeException(); // L: 309 - } - - Interpreter.Interpreter_intStack[++MilliClock.Interpreter_intStackSize - 1] = Interpreter.Interpreter_arrays[var11][var20]; // L: 311 - } else if (var29 == ScriptOpcodes.SET_ARRAY_INT) { // L: 314 - var11 = var6[var17]; // L: 315 - MilliClock.Interpreter_intStackSize -= 2; // L: 316 - var20 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 317 - if (var20 < 0 || var20 >= Interpreter.Interpreter_arrayLengths[var11]) { // L: 318 - throw new RuntimeException(); // L: 319 - } - - Interpreter.Interpreter_arrays[var11][var20] = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 321 - } else if (var29 == ScriptOpcodes.GET_VARC_STRING_OLD) { // L: 324 - var18 = FriendSystem.varcs.getStringOld(var6[var17]); // L: 325 - if (var18 == null) { // L: 326 - var18 = "null"; - } - - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var18; // L: 327 - } else if (var29 == ScriptOpcodes.SET_VARC_STRING_OLD) { // L: 330 - FriendSystem.varcs.setStringOld(var6[var17], Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]); // L: 331 - } else if (var29 == ScriptOpcodes.GET_VARC_STRING) { // L: 334 - var18 = FriendSystem.varcs.getString(var6[var17]); // L: 335 - Interpreter.Interpreter_stringStack[++UrlRequester.Interpreter_stringStackSize - 1] = var18; // L: 336 - } else if (var29 == ScriptOpcodes.SET_VARC_STRING) { // L: 339 - FriendSystem.varcs.setString(var6[var17], Interpreter.Interpreter_stringStack[--UrlRequester.Interpreter_stringStackSize]); // L: 340 - } else { - if (var29 != ScriptOpcodes.SWITCH) { // L: 343 - throw new IllegalStateException(); // L: 349 - } - - IterableNodeHashTable var33 = var3.switches[var6[var17]]; // L: 344 - IntegerNode var30 = (IntegerNode)var33.get((long)Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 345 - if (var30 != null) { // L: 346 - var17 += var30.integer; - } - } - } else { - var11 = var6[var17]; // L: 262 - Script var12 = WorldMapSection0.getScript(var11); // L: 263 - int[] var13 = new int[var12.localIntCount]; // L: 264 - String[] var14 = new String[var12.localStringCount]; // L: 265 - - for (var15 = 0; var15 < var12.intArgumentCount; ++var15) { // L: 266 - var13[var15] = Interpreter.Interpreter_intStack[var15 + (MilliClock.Interpreter_intStackSize - var12.intArgumentCount)]; - } - - for (var15 = 0; var15 < var12.stringArgumentCount; ++var15) { // L: 267 - var14[var15] = Interpreter.Interpreter_stringStack[var15 + (UrlRequester.Interpreter_stringStackSize - var12.stringArgumentCount)]; - } - - MilliClock.Interpreter_intStackSize -= var12.intArgumentCount; // L: 268 - UrlRequester.Interpreter_stringStackSize -= var12.stringArgumentCount; // L: 269 - ScriptFrame var19 = new ScriptFrame(); // L: 270 - var19.script = var3; // L: 271 - var19.pc = var17; // L: 272 - var19.intLocals = Interpreter.Interpreter_intLocals; // L: 273 - var19.stringLocals = Interpreter.Interpreter_stringLocals; // L: 274 - Interpreter.Interpreter_frames[++Interpreter.Interpreter_frameDepth - 1] = var19; // L: 275 - var3 = var12; // L: 276 - var5 = var12.opcodes; // L: 277 - var6 = var12.intOperands; // L: 278 - var17 = -1; // L: 279 - Interpreter.Interpreter_intLocals = var13; // L: 280 - Interpreter.Interpreter_stringLocals = var14; // L: 281 - } - } - } - } catch (Exception var27) { // L: 369 - StringBuilder var24 = new StringBuilder(30); // L: 371 - var24.append("").append(var3.key).append(" "); // L: 372 - - for (var10 = Interpreter.Interpreter_frameDepth - 1; var10 >= 0; --var10) { // L: 373 - var24.append("").append(Interpreter.Interpreter_frames[var10].script.key).append(" "); - } - - var24.append("").append(var7); // L: 374 - PacketWriter.RunException_sendStackTrace(var24.toString(), var27); // L: 375 - } - } finally { - if (Interpreter.field1130) { // L: 379 - Interpreter.field1128 = true; // L: 380 - ModeWhere.method3815(); // L: 381 - Interpreter.field1128 = false; // L: 382 - Interpreter.field1130 = false; // L: 383 + RandomAccessFile var15 = new RandomAccessFile(var27, "rw"); + var11 = var15.read(); + var15.seek(0L); + var15.write(var11); + var15.seek(0L); + var15.close(); + var27.delete(); + var28 = true; + } catch (Exception var23) { + var28 = false; } + if (!var28) { + var4 = null; + } } } - } // L: 113 386 - @ObfuscatedName("q") + if (var4 == null && var2 == 0) { + label159: + for (int var16 = 0; var16 < DynamicObject.field1318.length; ++var16) { + for (int var17 = 0; var17 < GraphicsObject.field1117.length; ++var17) { + File var18 = new File(GraphicsObject.field1117[var17] + DynamicObject.field1318[var16] + File.separatorChar + var0 + File.separatorChar); + if (var18.exists()) { + File var19 = new File(var18, "test.dat"); + + boolean var29; + try { + RandomAccessFile var12 = new RandomAccessFile(var19, "rw"); + int var13 = var12.read(); + var12.seek(0L); + var12.write(var13); + var12.seek(0L); + var12.close(); + var19.delete(); + var29 = true; + } catch (Exception var22) { + var29 = false; + } + + if (var29) { + var4 = var18.toString(); + var6 = true; + break label159; + } + } + } + } + } + + if (var4 == null) { + var4 = TileItemPile.userHomeDirectory + File.separatorChar + "jagexcache" + var3 + File.separatorChar + var0 + File.separatorChar + var1 + File.separatorChar; + var6 = true; + } + + File var26; + if (var5 != null) { + var26 = new File(var5); + var27 = new File(var4); + + try { + File[] var33 = var26.listFiles(); + File[] var31 = var33; + + for (var11 = 0; var11 < var31.length; ++var11) { + File var30 = var31[var11]; + File var20 = new File(var27, var30.getName()); + boolean var14 = var30.renameTo(var20); + if (!var14) { + throw new IOException(); + } + } + } catch (Exception var24) { + var24.printStackTrace(); + } + + var6 = true; + } + + if (var6) { + var26 = new File(var4); + var8 = null; + + try { + AccessFile var34 = new AccessFile(JagexCache.JagexCache_locationFile, "rw", 10000L); + Buffer var32 = new Buffer(500); + var32.writeByte(3); + var32.writeByte(var8 != null ? 1 : 0); + var32.writeCESU8(var26.getPath()); + if (var8 != null) { + var32.writeCESU8(""); + } + + var34.write(var32.array, 0, var32.offset); + var34.close(); + } catch (IOException var21) { + var21.printStackTrace(); + } + } + + return new File(var4); + } + + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1826105698" + descriptor = "(ILcs;ZI)I", + garbageValue = "-591482656" ) - public static boolean method957() { - return class206.musicPlayerStatus != 0 ? true : class13.midiPcmStream.isReady(); // L: 65 66 + static int method916(int var0, Script var1, boolean var2) { + if (var0 == ScriptOpcodes.GETWINDOWMODE) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = SoundSystem.getWindowedMode(); + return 1; + } else { + int var3; + if (var0 == ScriptOpcodes.SETWINDOWMODE) { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (var3 == 1 || var3 == 2) { + class13.setWindowedMode(var3); + } + + return 1; + } else if (var0 == ScriptOpcodes.GETDEFAULTWINDOWMODE) { + Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Timer.clientPreferences.windowMode; + return 1; + } else if (var0 != ScriptOpcodes.SETDEFAULTWINDOWMODE) { + if (var0 == 5310) { + --VarcInt.Interpreter_intStackSize; + return 1; + } else { + return 2; + } + } else { + var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize]; + if (var3 == 1 || var3 == 2) { + Timer.clientPreferences.windowMode = var3; + GrandExchangeOffer.savePreferences(); + } + + return 1; + } + } } } diff --git a/runescape-client/src/main/java/class6.java b/runescape-client/src/main/java/class6.java index aeac198402..3d9ee38f7b 100644 --- a/runescape-client/src/main/java/class6.java +++ b/runescape-client/src/main/java/class6.java @@ -4,77 +4,77 @@ import java.security.NoSuchAlgorithmException; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("k") +@ObfuscatedName("n") public class class6 implements class11 { - @ObfuscatedName("f") - final MessageDigest field21; + @ObfuscatedName("h") + final MessageDigest field20; @ObfuscatedSignature( - descriptor = "(Le;)V" + descriptor = "(Lu;)V" ) class6(class10 var1) { - this.field21 = this.method105(); // L: 14 - } // L: 15 - - @ObfuscatedName("f") - boolean method89(int var1, String var2, long var3) { - byte[] var5 = this.method91(var2, var3); // L: 18 - return method87(var5) >= var1; // L: 19 + this.field20 = this.method68(); } - @ObfuscatedName("m") - byte[] method91(String var1, long var2) { - StringBuilder var4 = new StringBuilder(); // L: 56 - var4.append(var1).append(Long.toHexString(var2)); // L: 57 - this.field21.reset(); // L: 58 + @ObfuscatedName("h") + boolean method64(int var1, String var2, long var3) { + byte[] var5 = this.method67(var2, var3); + return method65(var5) >= var1; + } + + @ObfuscatedName("w") + byte[] method67(String var1, long var2) { + StringBuilder var4 = new StringBuilder(); + var4.append(var1).append(Long.toHexString(var2)); + this.field20.reset(); try { - this.field21.update(var4.toString().getBytes("UTF-8")); // L: 60 - } catch (UnsupportedEncodingException var6) { // L: 62 - var6.printStackTrace(); // L: 63 + this.field20.update(var4.toString().getBytes("UTF-8")); + } catch (UnsupportedEncodingException var6) { + var6.printStackTrace(); } - return this.field21.digest(); // L: 65 + return this.field20.digest(); } - @ObfuscatedName("z") - MessageDigest method105() { + @ObfuscatedName("t") + MessageDigest method68() { try { - return MessageDigest.getInstance("SHA-256"); // L: 70 - } catch (NoSuchAlgorithmException var2) { // L: 72 - var2.printStackTrace(); // L: 73 - return null; // L: 74 + return MessageDigest.getInstance("SHA-256"); + } catch (NoSuchAlgorithmException var2) { + var2.printStackTrace(); + return null; } } - @ObfuscatedName("b") - static int method87(byte[] var0) { - int var1 = 0; // L: 23 - byte[] var2 = var0; // L: 25 + @ObfuscatedName("v") + static int method65(byte[] var0) { + int var1 = 0; + byte[] var2 = var0; - for (int var3 = 0; var3 < var2.length; ++var3) { // L: 26 - byte var4 = var2[var3]; // L: 27 - int var5 = method90(var4); // L: 29 - var1 += var5; // L: 30 - if (var5 != 8) { // L: 31 + for (int var3 = 0; var3 < var2.length; ++var3) { + byte var4 = var2[var3]; + int var5 = method74(var4); + var1 += var5; + if (var5 != 8) { break; } } - return var1; // L: 37 + return var1; } - @ObfuscatedName("l") - static int method90(byte var0) { - int var1 = 0; // L: 41 - if (var0 == 0) { // L: 42 - var1 = 8; // L: 43 + @ObfuscatedName("x") + static int method74(byte var0) { + int var1 = 0; + if (var0 == 0) { + var1 = 8; } else { - for (int var2 = var0 & 255; (var2 & 128) == 0; var2 <<= 1) { // L: 46 47 49 - ++var1; // L: 48 + for (int var2 = var0 & 255; (var2 & 128) == 0; var2 <<= 1) { + ++var1; } } - return var1; // L: 52 + return var1; } } diff --git a/runescape-client/src/main/java/class60.java b/runescape-client/src/main/java/class60.java index ec3bdddf15..663a89f430 100644 --- a/runescape-client/src/main/java/class60.java +++ b/runescape-client/src/main/java/class60.java @@ -1,688 +1,32 @@ import java.applet.Applet; import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bo") +@ObfuscatedName("bm") public class class60 { - @ObfuscatedName("rh") - @ObfuscatedGetter( - intValue = -685259439 - ) - static int field452; - @ObfuscatedName("f") + @ObfuscatedName("h") @Export("applet") public static Applet applet; - @ObfuscatedName("b") - public static String field453; - @ObfuscatedName("ek") - @ObfuscatedSignature( - descriptor = "Lid;" - ) - @Export("archive19") - static Archive archive19; - @ObfuscatedName("hz") - @ObfuscatedSignature( - descriptor = "[Llc;" - ) - @Export("crossSprites") - static Sprite[] crossSprites; + @ObfuscatedName("v") + public static String field439; static { - applet = null; // L: 10 - field453 = ""; + applet = null; + field439 = ""; } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(Liw;Liw;IZI)Lex;", - garbageValue = "-908411627" + descriptor = "(IIB)I", + garbageValue = "24" ) - public static Frames method984(AbstractArchive var0, AbstractArchive var1, int var2, boolean var3) { - boolean var4 = true; // L: 11 - int[] var5 = var0.getGroupFileIds(var2); // L: 12 - - for (int var6 = 0; var6 < var5.length; ++var6) { // L: 13 - byte[] var7 = var0.getFile(var2, var5[var6]); // L: 14 - if (var7 == null) { // L: 15 - var4 = false; // L: 16 - } else { - int var8 = (var7[0] & 255) << 8 | var7[1] & 255; // L: 19 - byte[] var9; - if (var3) { // L: 21 - var9 = var1.getFile(0, var8); - } else { - var9 = var1.getFile(var8, 0); // L: 22 - } - - if (var9 == null) { // L: 23 - var4 = false; - } - } - } - - if (!var4) { - return null; // L: 25 + static int method942(int var0, int var1) { + ItemContainer var2 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); + if (var2 == null) { + return -1; } else { - try { - return new Frames(var0, var1, var2, var3); // L: 27 - } catch (Exception var11) { // L: 29 - return null; // L: 30 - } + return var1 >= 0 && var1 < var2.ids.length ? var2.ids[var1] : -1; } } - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "687907076" - ) - static final void method983(String var0) { - StringBuilder var10000 = (new StringBuilder()).append(var0); - Object var10001 = null; - String var1 = var10000.append(" is already on your friend list").toString(); // L: 119 - DevicePcmPlayerProvider.addGameMessage(30, "", var1); // L: 121 - } // L: 123 - - @ObfuscatedName("e") - @ObfuscatedSignature( - descriptor = "(Lkq;Lkq;Lkq;B)V", - garbageValue = "106" - ) - @Export("drawTitle") - static void drawTitle(Font var0, Font var1, Font var2) { - Login.xPadding = (ItemContainer.canvasWidth - 765) / 2; // L: 1008 - Login.loginBoxX = Login.xPadding + 202; // L: 1009 - AttackOption.loginBoxCenter = Login.loginBoxX + 180; // L: 1010 - byte var3; - int var4; - int var8; - int var10; - int var25; - int var31; - int var38; - if (Login.worldSelectOpen) { // L: 1011 - if (EnumDefinition.worldSelectBackSprites == null) { // L: 1013 - EnumDefinition.worldSelectBackSprites = ParamDefinition.method4677(GrandExchangeOffer.archive8, "sl_back", ""); - } - - Archive var39; - IndexedSprite[] var41; - int var42; - if (FaceNormal.worldSelectFlagSprites == null) { // L: 1014 - var39 = GrandExchangeOffer.archive8; // L: 1016 - var38 = var39.getGroupId("sl_flags"); // L: 1018 - var42 = var39.getFileId(var38, ""); // L: 1019 - var41 = UserComparator5.method3540(var39, var38, var42); // L: 1020 - FaceNormal.worldSelectFlagSprites = var41; // L: 1022 - } - - if (class301.worldSelectArrows == null) { // L: 1024 - var39 = GrandExchangeOffer.archive8; // L: 1026 - var38 = var39.getGroupId("sl_arrows"); // L: 1028 - var42 = var39.getFileId(var38, ""); // L: 1029 - var41 = UserComparator5.method3540(var39, var38, var42); // L: 1030 - class301.worldSelectArrows = var41; // L: 1032 - } - - if (GameObject.worldSelectStars == null) { // L: 1034 - var39 = GrandExchangeOffer.archive8; // L: 1036 - var38 = var39.getGroupId("sl_stars"); // L: 1038 - var42 = var39.getFileId(var38, ""); // L: 1039 - var41 = UserComparator5.method3540(var39, var38, var42); // L: 1040 - GameObject.worldSelectStars = var41; // L: 1042 - } - - if (class323.worldSelectLeftSprite == null) { // L: 1044 - class323.worldSelectLeftSprite = Canvas.SpriteBuffer_getIndexedSpriteByName(GrandExchangeOffer.archive8, "leftarrow", ""); - } - - if (class280.worldSelectRightSprite == null) { // L: 1045 - class280.worldSelectRightSprite = Canvas.SpriteBuffer_getIndexedSpriteByName(GrandExchangeOffer.archive8, "rightarrow", ""); - } - - Rasterizer2D.Rasterizer2D_fillRectangle(Login.xPadding, 23, 765, 480, 0); // L: 1046 - Rasterizer2D.Rasterizer2D_fillRectangleGradient(Login.xPadding, 0, 125, 23, 12425273, 9135624); // L: 1047 - Rasterizer2D.Rasterizer2D_fillRectangleGradient(Login.xPadding + 125, 0, 640, 23, 5197647, 2697513); // L: 1048 - var0.drawCentered("Select a world", Login.xPadding + 62, 15, 0, -1); // L: 1049 - if (GameObject.worldSelectStars != null) { // L: 1050 - GameObject.worldSelectStars[1].drawAt(Login.xPadding + 140, 1); // L: 1051 - var1.draw("Members only world", Login.xPadding + 152, 10, 16777215, -1); // L: 1052 - GameObject.worldSelectStars[0].drawAt(Login.xPadding + 140, 12); // L: 1053 - var1.draw("Free world", Login.xPadding + 152, 21, 16777215, -1); // L: 1054 - } - - if (class301.worldSelectArrows != null) { // L: 1056 - var31 = Login.xPadding + 280; // L: 1057 - if (World.World_sortOption1[0] == 0 && World.World_sortOption2[0] == 0) { // L: 1058 - class301.worldSelectArrows[2].drawAt(var31, 4); - } else { - class301.worldSelectArrows[0].drawAt(var31, 4); // L: 1059 - } - - if (World.World_sortOption1[0] == 0 && World.World_sortOption2[0] == 1) { // L: 1060 - class301.worldSelectArrows[3].drawAt(var31 + 15, 4); - } else { - class301.worldSelectArrows[1].drawAt(var31 + 15, 4); // L: 1061 - } - - var0.draw("World", var31 + 32, 17, 16777215, -1); // L: 1062 - var4 = Login.xPadding + 390; // L: 1063 - if (World.World_sortOption1[0] == 1 && World.World_sortOption2[0] == 0) { // L: 1064 - class301.worldSelectArrows[2].drawAt(var4, 4); - } else { - class301.worldSelectArrows[0].drawAt(var4, 4); // L: 1065 - } - - if (World.World_sortOption1[0] == 1 && World.World_sortOption2[0] == 1) { // L: 1066 - class301.worldSelectArrows[3].drawAt(var4 + 15, 4); - } else { - class301.worldSelectArrows[1].drawAt(var4 + 15, 4); // L: 1067 - } - - var0.draw("Players", var4 + 32, 17, 16777215, -1); // L: 1068 - var38 = Login.xPadding + 500; // L: 1069 - if (World.World_sortOption1[0] == 2 && World.World_sortOption2[0] == 0) { // L: 1070 - class301.worldSelectArrows[2].drawAt(var38, 4); - } else { - class301.worldSelectArrows[0].drawAt(var38, 4); // L: 1071 - } - - if (World.World_sortOption1[0] == 2 && World.World_sortOption2[0] == 1) { // L: 1072 - class301.worldSelectArrows[3].drawAt(var38 + 15, 4); - } else { - class301.worldSelectArrows[1].drawAt(var38 + 15, 4); // L: 1073 - } - - var0.draw("Location", var38 + 32, 17, 16777215, -1); // L: 1074 - var42 = Login.xPadding + 610; // L: 1075 - if (World.World_sortOption1[0] == 3 && World.World_sortOption2[0] == 0) { // L: 1076 - class301.worldSelectArrows[2].drawAt(var42, 4); - } else { - class301.worldSelectArrows[0].drawAt(var42, 4); // L: 1077 - } - - if (World.World_sortOption1[0] == 3 && World.World_sortOption2[0] == 1) { // L: 1078 - class301.worldSelectArrows[3].drawAt(var42 + 15, 4); - } else { - class301.worldSelectArrows[1].drawAt(var42 + 15, 4); // L: 1079 - } - - var0.draw("Type", var42 + 32, 17, 16777215, -1); // L: 1080 - } - - Rasterizer2D.Rasterizer2D_fillRectangle(Login.xPadding + 708, 4, 50, 16, 0); // L: 1082 - var1.drawCentered("Cancel", Login.xPadding + 708 + 25, 16, 16777215, -1); // L: 1083 - Login.hoveredWorldIndex = -1; // L: 1084 - if (EnumDefinition.worldSelectBackSprites != null) { // L: 1085 - var3 = 88; // L: 1086 - byte var35 = 19; // L: 1087 - var38 = 765 / (var3 + 1) - 1; // L: 1088 - var42 = 480 / (var35 + 1); // L: 1089 - - do { - var25 = var42; // L: 1091 - var8 = var38; // L: 1092 - if (var42 * (var38 - 1) >= World.World_count) { // L: 1093 - --var38; - } - - if (var38 * (var42 - 1) >= World.World_count) { // L: 1094 - --var42; - } - - if (var38 * (var42 - 1) >= World.World_count) { // L: 1095 - --var42; - } - } while(var25 != var42 || var8 != var38); // L: 1096 - - var25 = (765 - var3 * var38) / (var38 + 1); // L: 1098 - if (var25 > 5) { // L: 1099 - var25 = 5; - } - - var8 = (480 - var35 * var42) / (var42 + 1); // L: 1100 - if (var8 > 5) { // L: 1101 - var8 = 5; - } - - int var28 = (765 - var3 * var38 - var25 * (var38 - 1)) / 2; // L: 1102 - var10 = (480 - var35 * var42 - var8 * (var42 - 1)) / 2; // L: 1103 - int var36 = (var42 + World.World_count - 1) / var42; // L: 1104 - Login.worldSelectPagesCount = var36 - var38; // L: 1105 - if (class323.worldSelectLeftSprite != null && Login.worldSelectPage > 0) { // L: 1106 - class323.worldSelectLeftSprite.drawAt(8, HealthBar.canvasHeight / 2 - class323.worldSelectLeftSprite.subHeight / 2); // L: 1107 - } - - if (class280.worldSelectRightSprite != null && Login.worldSelectPage < Login.worldSelectPagesCount) { // L: 1109 - class280.worldSelectRightSprite.drawAt(ItemContainer.canvasWidth - class280.worldSelectRightSprite.subWidth - 8, HealthBar.canvasHeight / 2 - class280.worldSelectRightSprite.subHeight / 2); // L: 1110 - } - - int var12 = var10 + 23; // L: 1112 - int var13 = var28 + Login.xPadding; // L: 1113 - int var14 = 0; // L: 1114 - boolean var15 = false; // L: 1115 - int var16 = Login.worldSelectPage; // L: 1116 - - int var17; - for (var17 = var42 * var16; var17 < World.World_count && var16 - Login.worldSelectPage < var38; ++var17) { // L: 1117 1118 - World var18 = DefaultsGroup.World_worlds[var17]; // L: 1121 - boolean var19 = true; // L: 1122 - String var20 = Integer.toString(var18.population); // L: 1123 - if (var18.population == -1) { // L: 1124 - var20 = "OFF"; // L: 1125 - var19 = false; // L: 1126 - } else if (var18.population > 1980) { // L: 1128 - var20 = "FULL"; // L: 1129 - var19 = false; // L: 1130 - } - - int var22 = 0; // L: 1133 - byte var21; - if (var18.isBeta()) { // L: 1134 - if (var18.isMembersOnly()) { // L: 1135 - var21 = 7; - } else { - var21 = 6; // L: 1136 - } - } else if (var18.isDeadman()) { // L: 1138 - var22 = 16711680; // L: 1139 - if (var18.isMembersOnly()) { // L: 1140 - var21 = 5; - } else { - var21 = 4; // L: 1141 - } - } else if (var18.method1880()) { // L: 1143 - if (var18.isMembersOnly()) { // L: 1144 - var21 = 9; - } else { - var21 = 8; // L: 1145 - } - } else if (var18.isPvp()) { // L: 1147 - if (var18.isMembersOnly()) { // L: 1148 - var21 = 3; - } else { - var21 = 2; // L: 1149 - } - } else if (var18.isMembersOnly()) { // L: 1152 - var21 = 1; - } else { - var21 = 0; // L: 1153 - } - - if (MouseHandler.MouseHandler_x >= var13 && MouseHandler.MouseHandler_y >= var12 && MouseHandler.MouseHandler_x < var13 + var3 && MouseHandler.MouseHandler_y < var35 + var12 && var19) { // L: 1155 - Login.hoveredWorldIndex = var17; // L: 1156 - EnumDefinition.worldSelectBackSprites[var21].drawTransOverlayAt(var13, var12, 128, 16777215); // L: 1157 - var15 = true; // L: 1158 - } else { - EnumDefinition.worldSelectBackSprites[var21].drawAt(var13, var12); // L: 1160 - } - - if (FaceNormal.worldSelectFlagSprites != null) { // L: 1161 - FaceNormal.worldSelectFlagSprites[(var18.isMembersOnly() ? 8 : 0) + var18.location].drawAt(var13 + 29, var12); - } - - var0.drawCentered(Integer.toString(var18.id), var13 + 15, var35 / 2 + var12 + 5, var22, -1); // L: 1162 - var1.drawCentered(var20, var13 + 60, var35 / 2 + var12 + 5, 268435455, -1); // L: 1163 - var12 = var12 + var8 + var35; // L: 1164 - ++var14; // L: 1165 - if (var14 >= var42) { - var12 = var10 + 23; // L: 1166 - var13 = var13 + var25 + var3; // L: 1167 - var14 = 0; // L: 1168 - ++var16; // L: 1169 - } - } - - if (var15) { // L: 1172 - var17 = var1.stringWidth(DefaultsGroup.World_worlds[Login.hoveredWorldIndex].activity) + 6; // L: 1173 - int var29 = var1.ascent + 8; // L: 1174 - int var37 = MouseHandler.MouseHandler_y + 25; // L: 1175 - if (var37 + var29 > 480) { // L: 1176 - var37 = MouseHandler.MouseHandler_y - 25 - var29; // L: 1177 - } - - Rasterizer2D.Rasterizer2D_fillRectangle(MouseHandler.MouseHandler_x - var17 / 2, var37, var17, var29, 16777120); // L: 1179 - Rasterizer2D.Rasterizer2D_drawRectangle(MouseHandler.MouseHandler_x - var17 / 2, var37, var17, var29, 0); // L: 1180 - var1.drawCentered(DefaultsGroup.World_worlds[Login.hoveredWorldIndex].activity, MouseHandler.MouseHandler_x, var37 + var1.ascent + 4, 0, -1); // L: 1181 - } - } - - class22.rasterProvider.drawFull(0, 0); // L: 1184 - } else { - Login.leftTitleSprite.drawAt(Login.xPadding, 0); // L: 1188 - Login.rightTitleSprite.drawAt(Login.xPadding + 382, 0); // L: 1189 - SecureRandomFuture.logoSprite.drawAt(Login.xPadding + 382 - SecureRandomFuture.logoSprite.subWidth / 2, 18); // L: 1190 - if (Client.gameState == 0 || Client.gameState == 5) { // L: 1191 - var3 = 20; // L: 1192 - var0.drawCentered("RuneScape is loading - please wait...", Login.loginBoxX + 180, 245 - var3, 16777215, -1); // L: 1193 - var4 = 253 - var3; // L: 1194 - Rasterizer2D.Rasterizer2D_drawRectangle(Login.loginBoxX + 180 - 152, var4, 304, 34, 9179409); // L: 1195 - Rasterizer2D.Rasterizer2D_drawRectangle(Login.loginBoxX + 180 - 151, var4 + 1, 302, 32, 0); // L: 1196 - Rasterizer2D.Rasterizer2D_fillRectangle(Login.loginBoxX + 180 - 150, var4 + 2, Login.Login_loadingPercent * 3, 30, 9179409); // L: 1197 - Rasterizer2D.Rasterizer2D_fillRectangle(Login.loginBoxX + 180 - 150 + Login.Login_loadingPercent * 3, var4 + 2, 300 - Login.Login_loadingPercent * 3, 30, 0); // L: 1198 - var0.drawCentered(Login.Login_loadingText, Login.loginBoxX + 180, 276 - var3, 16777215, -1); // L: 1199 - } - - String var5; - String var6; - String var7; - short var30; - short var32; - if (Client.gameState == 20) { // L: 1201 - Tiles.titleboxSprite.drawAt(Login.loginBoxX + 180 - Tiles.titleboxSprite.subWidth / 2, 271 - Tiles.titleboxSprite.subHeight / 2); // L: 1202 - var30 = 201; // L: 1203 - var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var30, 16776960, 0); // L: 1204 - var31 = var30 + 15; // L: 1205 - var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var31, 16776960, 0); // L: 1206 - var31 += 15; // L: 1207 - var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var31, 16776960, 0); // L: 1208 - var31 += 15; // L: 1209 - var31 += 7; // L: 1210 - if (Login.loginIndex != 4) { // L: 1211 - var0.draw("Login: ", Login.loginBoxX + 180 - 110, var31, 16777215, 0); // L: 1212 - var32 = 200; // L: 1213 - var5 = GrandExchangeOfferAgeComparator.clientPreferences.hideUsername ? LoginPacket.method3747(Login.Login_username) : Login.Login_username; // L: 1216 - - for (var6 = var5; var0.stringWidth(var6) > var32; var6 = var6.substring(0, var6.length() - 1)) { // L: 1218 1219 1220 - } - - var0.draw(AbstractFont.escapeBrackets(var6), Login.loginBoxX + 180 - 70, var31, 16777215, 0); // L: 1222 - var31 += 15; // L: 1223 - - for (var7 = LoginPacket.method3747(Login.Login_password); var0.stringWidth(var7) > var32; var7 = var7.substring(1)) { // L: 1224 1225 1226 - } - - var0.draw("Password: " + var7, Login.loginBoxX + 180 - 108, var31, 16777215, 0); // L: 1228 - var31 += 15; // L: 1229 - } - } - - if (Client.gameState == 10 || Client.gameState == 11) { // L: 1232 - Tiles.titleboxSprite.drawAt(Login.loginBoxX, 171); // L: 1233 - short var23; - if (Login.loginIndex == 0) { // L: 1234 - var30 = 251; // L: 1235 - var0.drawCentered("Welcome to RuneScape", Login.loginBoxX + 180, var30, 16776960, 0); // L: 1236 - var31 = var30 + 30; // L: 1237 - var4 = Login.loginBoxX + 180 - 80; // L: 1238 - var23 = 291; // L: 1239 - Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); // L: 1240 - var0.drawLines("New User", var4 - 73, var23 - 20, 144, 40, 16777215, 0, 1, 1, 0); // L: 1241 - var4 = Login.loginBoxX + 180 + 80; // L: 1242 - Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); // L: 1243 - var0.drawLines("Existing User", var4 - 73, var23 - 20, 144, 40, 16777215, 0, 1, 1, 0); // L: 1244 - } else if (Login.loginIndex == 1) { // L: 1246 - var0.drawCentered(Login.Login_response0, Login.loginBoxX + 180, 201, 16776960, 0); // L: 1247 - var30 = 236; // L: 1248 - var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var30, 16777215, 0); // L: 1249 - var31 = var30 + 15; // L: 1250 - var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var31, 16777215, 0); // L: 1251 - var31 += 15; // L: 1252 - var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var31, 16777215, 0); // L: 1253 - var31 += 15; // L: 1254 - var4 = Login.loginBoxX + 180 - 80; // L: 1255 - var23 = 321; // L: 1256 - Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); // L: 1257 - var0.drawCentered("Continue", var4, var23 + 5, 16777215, 0); // L: 1258 - var4 = Login.loginBoxX + 180 + 80; // L: 1259 - Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); // L: 1260 - var0.drawCentered("Cancel", var4, var23 + 5, 16777215, 0); // L: 1261 - } else if (Login.loginIndex == 2) { // L: 1263 - var30 = 201; // L: 1264 - var0.drawCentered(Login.Login_response1, AttackOption.loginBoxCenter, var30, 16776960, 0); // L: 1265 - var31 = var30 + 15; // L: 1266 - var0.drawCentered(Login.Login_response2, AttackOption.loginBoxCenter, var31, 16776960, 0); // L: 1267 - var31 += 15; // L: 1268 - var0.drawCentered(Login.Login_response3, AttackOption.loginBoxCenter, var31, 16776960, 0); // L: 1269 - var31 += 15; // L: 1270 - var31 += 7; // L: 1271 - var0.draw("Login: ", AttackOption.loginBoxCenter - 110, var31, 16777215, 0); // L: 1272 - var32 = 200; // L: 1273 - var5 = GrandExchangeOfferAgeComparator.clientPreferences.hideUsername ? LoginPacket.method3747(Login.Login_username) : Login.Login_username; // L: 1276 - - for (var6 = var5; var0.stringWidth(var6) > var32; var6 = var6.substring(1)) { // L: 1278 1279 1280 - } - - var0.draw(AbstractFont.escapeBrackets(var6) + (Login.currentLoginField == 0 & Client.cycle % 40 < 20 ? Client.colorStartTag(16776960) + "|" : ""), AttackOption.loginBoxCenter - 70, var31, 16777215, 0); // L: 1282 - var31 += 15; // L: 1283 - - for (var7 = LoginPacket.method3747(Login.Login_password); var0.stringWidth(var7) > var32; var7 = var7.substring(1)) { // L: 1284 1285 1286 - } - - var0.draw("Password: " + var7 + (Login.currentLoginField == 1 & Client.cycle % 40 < 20 ? Client.colorStartTag(16776960) + "|" : ""), AttackOption.loginBoxCenter - 108, var31, 16777215, 0); // L: 1288 - var31 += 15; // L: 1289 - var30 = 277; // L: 1290 - var8 = AttackOption.loginBoxCenter + -117; // L: 1291 - IndexedSprite var9 = TaskHandler.method3609(Client.Login_isUsernameRemembered, Login.field1230); // L: 1292 - var9.drawAt(var8, var30); // L: 1293 - var8 = var8 + var9.subWidth + 5; // L: 1294 - var1.draw("Remember username", var8, var30 + 13, 16776960, 0); // L: 1295 - var8 = AttackOption.loginBoxCenter + 24; // L: 1296 - var9 = TaskHandler.method3609(GrandExchangeOfferAgeComparator.clientPreferences.hideUsername, Login.field1229); // L: 1297 - var9.drawAt(var8, var30); // L: 1298 - var8 = var8 + var9.subWidth + 5; // L: 1299 - var1.draw("Hide username", var8, var30 + 13, 16776960, 0); // L: 1300 - var31 = var30 + 15; // L: 1301 - var10 = AttackOption.loginBoxCenter - 80; // L: 1302 - short var11 = 321; // L: 1303 - Login.titlebuttonSprite.drawAt(var10 - 73, var11 - 20); // L: 1304 - var0.drawCentered("Login", var10, var11 + 5, 16777215, 0); // L: 1305 - var10 = AttackOption.loginBoxCenter + 80; // L: 1306 - Login.titlebuttonSprite.drawAt(var10 - 73, var11 - 20); // L: 1307 - var0.drawCentered("Cancel", var10, var11 + 5, 16777215, 0); // L: 1308 - var30 = 357; // L: 1309 - switch(Login.field1217) { // L: 1310 - case 2: - UserComparator10.field2002 = "Having trouble logging in?"; // L: 1315 - break; - default: - UserComparator10.field2002 = "Can't login? Click here."; // L: 1312 - } - - class89.field1163 = new Bounds(AttackOption.loginBoxCenter, var30, var1.stringWidth(UserComparator10.field2002), 11); // L: 1318 - ClientPreferences.field1089 = new Bounds(AttackOption.loginBoxCenter, var30, var1.stringWidth("Still having trouble logging in?"), 11); // L: 1319 - var1.drawCentered(UserComparator10.field2002, AttackOption.loginBoxCenter, var30, 16777215, 0); // L: 1320 - } else if (Login.loginIndex == 3) { // L: 1322 - var30 = 201; // L: 1323 - var0.drawCentered("Invalid credentials.", Login.loginBoxX + 180, var30, 16776960, 0); // L: 1324 - var31 = var30 + 20; // L: 1325 - var1.drawCentered("For accounts created after 24th November 2010, please use your", Login.loginBoxX + 180, var31, 16776960, 0); // L: 1326 - var31 += 15; // L: 1327 - var1.drawCentered("email address to login. Otherwise please login with your username.", Login.loginBoxX + 180, var31, 16776960, 0); // L: 1328 - var31 += 15; // L: 1329 - var4 = Login.loginBoxX + 180; // L: 1330 - var23 = 276; // L: 1331 - Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); // L: 1332 - var2.drawCentered("Try again", var4, var23 + 5, 16777215, 0); // L: 1333 - var4 = Login.loginBoxX + 180; // L: 1334 - var23 = 326; // L: 1335 - Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); // L: 1336 - var2.drawCentered("Forgotten password?", var4, var23 + 5, 16777215, 0); // L: 1337 - } else { - short var34; - if (Login.loginIndex == 4) { // L: 1339 - var0.drawCentered("Authenticator", Login.loginBoxX + 180, 201, 16776960, 0); // L: 1340 - var30 = 236; // L: 1341 - var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var30, 16777215, 0); // L: 1342 - var31 = var30 + 15; // L: 1343 - var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var31, 16777215, 0); // L: 1344 - var31 += 15; // L: 1345 - var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var31, 16777215, 0); // L: 1346 - var31 += 15; // L: 1347 - var0.draw("PIN: " + LoginPacket.method3747(EnumDefinition.otp) + (Client.cycle % 40 < 20 ? Client.colorStartTag(16776960) + "|" : ""), Login.loginBoxX + 180 - 108, var31, 16777215, 0); // L: 1348 - var31 -= 8; // L: 1349 - var0.draw("Trust this computer", Login.loginBoxX + 180 - 9, var31, 16776960, 0); // L: 1350 - var31 += 15; // L: 1351 - var0.draw("for 30 days: ", Login.loginBoxX + 180 - 9, var31, 16776960, 0); // L: 1352 - var4 = 180 + Login.loginBoxX - 9 + var0.stringWidth("for 30 days: ") + 15; // L: 1353 - var38 = var31 - var0.ascent; // L: 1354 - IndexedSprite var33; - if (Login.field1227) { // L: 1356 - var33 = Login.options_buttons_2Sprite; // L: 1357 - } else { - var33 = Login.options_buttons_0Sprite; // L: 1360 - } - - var33.drawAt(var4, var38); // L: 1362 - var31 += 15; // L: 1363 - var25 = Login.loginBoxX + 180 - 80; // L: 1364 - var34 = 321; // L: 1365 - Login.titlebuttonSprite.drawAt(var25 - 73, var34 - 20); // L: 1366 - var0.drawCentered("Continue", var25, var34 + 5, 16777215, 0); // L: 1367 - var25 = Login.loginBoxX + 180 + 80; // L: 1368 - Login.titlebuttonSprite.drawAt(var25 - 73, var34 - 20); // L: 1369 - var0.drawCentered("Cancel", var25, var34 + 5, 16777215, 0); // L: 1370 - var1.drawCentered("Can't Log In?", Login.loginBoxX + 180, var34 + 36, 255, 0); // L: 1371 - } else if (Login.loginIndex == 5) { // L: 1373 - var0.drawCentered("Forgotten your password?", Login.loginBoxX + 180, 201, 16776960, 0); // L: 1374 - var30 = 221; // L: 1375 - var2.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var30, 16776960, 0); // L: 1376 - var31 = var30 + 15; // L: 1377 - var2.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var31, 16776960, 0); // L: 1378 - var31 += 15; // L: 1379 - var2.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var31, 16776960, 0); // L: 1380 - var31 += 15; // L: 1381 - var31 += 14; // L: 1382 - var0.draw("Username/email: ", Login.loginBoxX + 180 - 145, var31, 16777215, 0); // L: 1383 - var32 = 174; // L: 1384 - var5 = GrandExchangeOfferAgeComparator.clientPreferences.hideUsername ? LoginPacket.method3747(Login.Login_username) : Login.Login_username; // L: 1387 - - for (var6 = var5; var0.stringWidth(var6) > var32; var6 = var6.substring(1)) { // L: 1389 1390 1391 - } - - var0.draw(AbstractFont.escapeBrackets(var6) + (Client.cycle % 40 < 20 ? Client.colorStartTag(16776960) + "|" : ""), Login.loginBoxX + 180 - 34, var31, 16777215, 0); // L: 1393 - var31 += 15; // L: 1394 - var25 = Login.loginBoxX + 180 - 80; // L: 1395 - var34 = 321; // L: 1396 - Login.titlebuttonSprite.drawAt(var25 - 73, var34 - 20); // L: 1397 - var0.drawCentered("Recover", var25, var34 + 5, 16777215, 0); // L: 1398 - var25 = Login.loginBoxX + 180 + 80; // L: 1399 - Login.titlebuttonSprite.drawAt(var25 - 73, var34 - 20); // L: 1400 - var0.drawCentered("Back", var25, var34 + 5, 16777215, 0); // L: 1401 - var34 = 356; // L: 1402 - var1.drawCentered("Still having trouble logging in?", AttackOption.loginBoxCenter, var34, 268435455, 0); // L: 1403 - } else if (Login.loginIndex == 6) { // L: 1405 - var30 = 201; // L: 1406 - var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var30, 16776960, 0); // L: 1407 - var31 = var30 + 15; // L: 1408 - var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var31, 16776960, 0); // L: 1409 - var31 += 15; // L: 1410 - var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var31, 16776960, 0); // L: 1411 - var31 += 15; // L: 1412 - var4 = Login.loginBoxX + 180; // L: 1413 - var23 = 321; // L: 1414 - Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); // L: 1415 - var0.drawCentered("Back", var4, var23 + 5, 16777215, 0); // L: 1416 - } else if (Login.loginIndex == 7) { // L: 1418 - var30 = 216; // L: 1419 - var0.drawCentered("Your date of birth isn't set.", Login.loginBoxX + 180, var30, 16776960, 0); // L: 1420 - var31 = var30 + 15; // L: 1421 - var2.drawCentered("Please verify your account status by", Login.loginBoxX + 180, var31, 16776960, 0); // L: 1422 - var31 += 15; // L: 1423 - var2.drawCentered("setting your date of birth.", Login.loginBoxX + 180, var31, 16776960, 0); // L: 1424 - var31 += 15; // L: 1425 - var4 = Login.loginBoxX + 180 - 80; // L: 1426 - var23 = 321; // L: 1427 - Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); // L: 1428 - var0.drawCentered("Set Date of Birth", var4, var23 + 5, 16777215, 0); // L: 1429 - var4 = Login.loginBoxX + 180 + 80; // L: 1430 - Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); // L: 1431 - var0.drawCentered("Back", var4, var23 + 5, 16777215, 0); // L: 1432 - } else if (Login.loginIndex == 8) { // L: 1434 - var30 = 216; // L: 1435 - var0.drawCentered("Sorry, but your account is not eligible to play.", Login.loginBoxX + 180, var30, 16776960, 0); // L: 1436 - var31 = var30 + 15; // L: 1437 - var2.drawCentered("For more information, please take a look at", Login.loginBoxX + 180, var31, 16776960, 0); // L: 1438 - var31 += 15; // L: 1439 - var2.drawCentered("our privacy policy.", Login.loginBoxX + 180, var31, 16776960, 0); // L: 1440 - var31 += 15; // L: 1441 - var4 = Login.loginBoxX + 180 - 80; // L: 1442 - var23 = 321; // L: 1443 - Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); // L: 1444 - var0.drawCentered("Privacy Policy", var4, var23 + 5, 16777215, 0); // L: 1445 - var4 = Login.loginBoxX + 180 + 80; // L: 1446 - Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); // L: 1447 - var0.drawCentered("Back", var4, var23 + 5, 16777215, 0); // L: 1448 - } else if (Login.loginIndex == 12) { // L: 1450 - var30 = 201; // L: 1451 - String var24 = ""; // L: 1452 - var5 = ""; // L: 1453 - var6 = ""; // L: 1454 - switch(Login.field1216) { // L: 1455 - case 0: - var24 = "Your account has been disabled."; // L: 1465 - var5 = Strings.field2839; // L: 1466 - var6 = ""; // L: 1467 - break; // L: 1468 - case 1: - var24 = "Account locked as we suspect it has been stolen."; // L: 1458 - var5 = Strings.field3046; // L: 1459 - var6 = ""; // L: 1460 - break; - default: - HealthBar.Login_promptCredentials(false); // L: 1472 - } - - var0.drawCentered(var24, Login.loginBoxX + 180, var30, 16776960, 0); // L: 1476 - var31 = var30 + 15; // L: 1477 - var2.drawCentered(var5, Login.loginBoxX + 180, var31, 16776960, 0); // L: 1478 - var31 += 15; // L: 1479 - var2.drawCentered(var6, Login.loginBoxX + 180, var31, 16776960, 0); // L: 1480 - var31 += 15; // L: 1481 - var25 = Login.loginBoxX + 180; // L: 1482 - var34 = 276; // L: 1483 - Login.titlebuttonSprite.drawAt(var25 - 73, var34 - 20); // L: 1484 - var0.drawCentered("Support Page", var25, var34 + 5, 16777215, 0); // L: 1485 - var25 = Login.loginBoxX + 180; // L: 1486 - var34 = 326; // L: 1487 - Login.titlebuttonSprite.drawAt(var25 - 73, var34 - 20); // L: 1488 - var0.drawCentered("Back", var25, var34 + 5, 16777215, 0); // L: 1489 - } else if (Login.loginIndex == 24) { // L: 1491 - var30 = 221; // L: 1492 - var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var30, 16777215, 0); // L: 1493 - var31 = var30 + 15; // L: 1494 - var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var31, 16777215, 0); // L: 1495 - var31 += 15; // L: 1496 - var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var31, 16777215, 0); // L: 1497 - var31 += 15; // L: 1498 - var4 = Login.loginBoxX + 180; // L: 1499 - var23 = 301; // L: 1500 - Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); // L: 1501 - var0.drawCentered("Ok", var4, var23 + 5, 16777215, 0); // L: 1502 - } - } - } - - if (Client.gameState >= 10) { // L: 1505 - int[] var26 = new int[4]; // L: 1506 - Rasterizer2D.Rasterizer2D_getClipArray(var26); // L: 1507 - Rasterizer2D.Rasterizer2D_setClip(Login.xPadding, 0, Login.xPadding + 765, HealthBar.canvasHeight); // L: 1508 - Login.loginScreenRunesAnimation.draw(Login.xPadding - 22, Client.cycle); // L: 1509 - Login.loginScreenRunesAnimation.draw(Login.xPadding + 22 + 765 - 128, Client.cycle); // L: 1510 - Rasterizer2D.Rasterizer2D_setClipArray(var26); // L: 1511 - } - - DefaultsGroup.title_muteSprite[GrandExchangeOfferAgeComparator.clientPreferences.titleMusicDisabled ? 1 : 0].drawAt(Login.xPadding + 765 - 40, 463); // L: 1513 - if (Client.gameState > 5 && Language.Language_EN == FontName.clientLanguage) { // L: 1514 - if (MouseHandler.field523 != null) { // L: 1515 - var31 = Login.xPadding + 5; // L: 1516 - var32 = 463; // L: 1517 - byte var40 = 100; // L: 1518 - byte var27 = 35; // L: 1519 - MouseHandler.field523.drawAt(var31, var32); // L: 1520 - var0.drawCentered("World" + " " + Client.worldId, var40 / 2 + var31, var27 / 2 + var32 - 2, 16777215, 0); // L: 1521 - if (class248.World_request != null) { // L: 1522 - var1.drawCentered("Loading...", var40 / 2 + var31, var27 / 2 + var32 + 12, 16777215, 0); - } else { - var1.drawCentered("Click to switch", var40 / 2 + var31, var27 / 2 + var32 + 12, 16777215, 0); // L: 1523 - } - } else { - MouseHandler.field523 = Canvas.SpriteBuffer_getIndexedSpriteByName(GrandExchangeOffer.archive8, "sl_button", ""); // L: 1526 - } - } - - } - } // L: 1186 1529 } diff --git a/runescape-client/src/main/java/class69.java b/runescape-client/src/main/java/class69.java index 7b1add7e2a..e713c57345 100644 --- a/runescape-client/src/main/java/class69.java +++ b/runescape-client/src/main/java/class69.java @@ -1,684 +1,50 @@ import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ScriptOpcodes; -@ObfuscatedName("br") +@ObfuscatedName("bu") public class class69 { - @ObfuscatedName("o") - @ObfuscatedSignature( - descriptor = "Lle;" + @ObfuscatedName("fv") + @ObfuscatedGetter( + longValue = 2632665440634654357L ) - static IndexedSprite field583; - @ObfuscatedName("n") - @ObfuscatedSignature( - descriptor = "Ldd;" + static long field557; + @ObfuscatedName("hl") + @ObfuscatedGetter( + intValue = 814144915 ) - @Export("pcmPlayerProvider") - public static PlayerProvider pcmPlayerProvider; + @Export("cameraZ") + static int cameraZ; - @ObfuscatedName("f") - @Export("base37DecodeLong") - public static String base37DecodeLong(long var0) { - if (var0 > 0L && var0 < 6582952005840035281L) { // L: 16 - if (var0 % 37L == 0L) { // L: 17 - return null; - } else { - int var2 = 0; // L: 18 - - for (long var3 = var0; 0L != var3; var3 /= 37L) { // L: 19 20 22 - ++var2; // L: 21 - } - - StringBuilder var5; - char var8; - for (var5 = new StringBuilder(var2); 0L != var0; var5.append(var8)) { // L: 24 25 34 - long var6 = var0; // L: 26 - var0 /= 37L; // L: 27 - var8 = class299.base37Table[(int)(var6 - 37L * var0)]; // L: 28 - if (var8 == '_') { // L: 29 - int var9 = var5.length() - 1; // L: 30 - var5.setCharAt(var9, Character.toUpperCase(var5.charAt(var9))); // L: 31 - var8 = 160; // L: 32 + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "([BIIII[Lfo;B)V", + garbageValue = "115" + ) + static final void method1252(byte[] var0, int var1, int var2, int var3, int var4, CollisionMap[] var5) { + int var7; + int var8; + for (int var6 = 0; var6 < 4; ++var6) { + for (var7 = 0; var7 < 64; ++var7) { + for (var8 = 0; var8 < 64; ++var8) { + if (var7 + var1 > 0 && var7 + var1 < 103 && var8 + var2 > 0 && var8 + var2 < 103) { + int[] var10000 = var5[var6].flags[var7 + var1]; + var10000[var2 + var8] &= -16777217; } } - - var5.reverse(); // L: 36 - var5.setCharAt(0, Character.toUpperCase(var5.charAt(0))); // L: 37 - return var5.toString(); // L: 38 } - } else { - return null; } + + Buffer var10 = new Buffer(var0); + + for (var7 = 0; var7 < 4; ++var7) { + for (var8 = 0; var8 < 64; ++var8) { + for (int var9 = 0; var9 < 64; ++var9) { + Huffman.loadTerrain(var10, var7, var8 + var1, var9 + var2, var3, var4, 0); + } + } + } + } - - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(ILco;ZI)I", - garbageValue = "-2072046578" - ) - static int method1266(int var0, Script var1, boolean var2) { - Widget var3; - if (var0 >= 2000) { // L: 732 - var0 -= 1000; // L: 733 - var3 = UserComparator4.getWidget(Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]); // L: 734 - } else { - var3 = var2 ? MouseRecorder.field621 : Interpreter.field1122; // L: 736 - } - - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var3); // L: 737 - if (var0 != ScriptOpcodes.CC_SETOBJECT && var0 != ScriptOpcodes.CC_SETOBJECT_NONUM && var0 != ScriptOpcodes.CC_SETOBJECT_ALWAYS_NUM) { // L: 738 - if (var0 == ScriptOpcodes.CC_SETNPCHEAD) { // L: 758 - var3.modelType = 2; // L: 759 - var3.modelId = Interpreter.Interpreter_intStack[--MilliClock.Interpreter_intStackSize]; // L: 760 - return 1; // L: 761 - } else if (var0 == ScriptOpcodes.CC_SETPLAYERHEAD_SELF) { // L: 763 - var3.modelType = 3; // L: 764 - var3.modelId = PlayerType.localPlayer.appearance.getChatHeadId(); // L: 765 - return 1; // L: 766 - } else { - return 2; // L: 768 - } - } else { - MilliClock.Interpreter_intStackSize -= 2; // L: 739 - int var4 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize]; // L: 740 - int var5 = Interpreter.Interpreter_intStack[MilliClock.Interpreter_intStackSize + 1]; // L: 741 - var3.itemId = var4; // L: 742 - var3.itemQuantity = var5; // L: 743 - ItemDefinition var6 = AbstractWorldMapData.ItemDefinition_get(var4); // L: 744 - var3.modelAngleX = var6.xan2d; // L: 745 - var3.modelAngleY = var6.yan2d; // L: 746 - var3.modelAngleZ = var6.zan2d; // L: 747 - var3.modelOffsetX = var6.offsetX2d; // L: 748 - var3.modelOffsetY = var6.offsetY2d; // L: 749 - var3.modelZoom = var6.zoom2d; // L: 750 - if (var0 == ScriptOpcodes.CC_SETOBJECT_NONUM) { // L: 751 - var3.itemQuantityMode = 0; - } else if (var0 == ScriptOpcodes.CC_SETOBJECT_ALWAYS_NUM | 1 == var6.isStackable) { // L: 752 - var3.itemQuantityMode = 1; - } else { - var3.itemQuantityMode = 2; // L: 753 - } - - if (var3.field2678 > 0) { // L: 754 - var3.modelZoom = var3.modelZoom * 32 / var3.field2678; - } else if (var3.rawWidth > 0) { // L: 755 - var3.modelZoom = var3.modelZoom * 32 / var3.rawWidth; - } - - return 1; // L: 756 - } - } - - @ObfuscatedName("hf") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "319100634" - ) - @Export("Widget_runOnTargetLeave") - static void Widget_runOnTargetLeave() { - if (Client.isSpellSelected) { // L: 8808 - Widget var0 = ItemContainer.getWidgetChild(class307.selectedSpellWidget, Client.selectedSpellChildIndex); // L: 8809 - if (var0 != null && var0.onTargetLeave != null) { // L: 8810 - ScriptEvent var1 = new ScriptEvent(); // L: 8811 - var1.widget = var0; // L: 8812 - var1.args = var0.onTargetLeave; // L: 8813 - Entity.runScriptEvent(var1); // L: 8814 - } - - Client.isSpellSelected = false; // L: 8816 - GrandExchangeOfferOwnWorldComparator.invalidateWidget(var0); // L: 8817 - } - } // L: 8818 - - @ObfuscatedName("jd") - @ObfuscatedSignature( - descriptor = "([Lht;IIIIIIIS)V", - garbageValue = "482" - ) - @Export("updateInterface") - static final void updateInterface(Widget[] var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { - for (int var8 = 0; var8 < var0.length; ++var8) { // L: 10348 - Widget var9 = var0[var8]; // L: 10349 - if (var9 != null && var9.parentId == var1 && (!var9.isIf3 || var9.type == 0 || var9.hasListener || WorldMapData_0.getWidgetFlags(var9) != 0 || var9 == Client.clickedWidgetParent || var9.contentType == 1338)) { // L: 10350 10351 10352 - if (var9.isIf3) { // L: 10353 - if (VertexNormal.isComponentHidden(var9)) { // L: 10354 - continue; - } - } else if (var9.type == 0 && var9 != GrandExchangeEvent.mousedOverWidgetIf1 && VertexNormal.isComponentHidden(var9)) { // L: 10357 - continue; - } - - int var10 = var9.x + var6; // L: 10359 - int var11 = var7 + var9.y; // L: 10360 - int var12; - int var13; - int var14; - int var15; - int var17; - int var18; - if (var9.type == 2) { // L: 10365 - var12 = var2; // L: 10366 - var13 = var3; // L: 10367 - var14 = var4; // L: 10368 - var15 = var5; // L: 10369 - } else { - int var16; - if (var9.type == 9) { // L: 10371 - var16 = var10; // L: 10372 - var17 = var11; // L: 10373 - var18 = var10 + var9.width; // L: 10374 - int var19 = var11 + var9.height; // L: 10375 - if (var18 < var10) { // L: 10376 - var16 = var18; // L: 10378 - var18 = var10; // L: 10379 - } - - if (var19 < var11) { // L: 10381 - var17 = var19; // L: 10383 - var19 = var11; // L: 10384 - } - - ++var18; // L: 10386 - ++var19; // L: 10387 - var12 = var16 > var2 ? var16 : var2; // L: 10388 - var13 = var17 > var3 ? var17 : var3; // L: 10389 - var14 = var18 < var4 ? var18 : var4; // L: 10390 - var15 = var19 < var5 ? var19 : var5; // L: 10391 - } else { - var16 = var10 + var9.width; // L: 10394 - var17 = var11 + var9.height; // L: 10395 - var12 = var10 > var2 ? var10 : var2; // L: 10396 - var13 = var11 > var3 ? var11 : var3; // L: 10397 - var14 = var16 < var4 ? var16 : var4; // L: 10398 - var15 = var17 < var5 ? var17 : var5; // L: 10399 - } - } - - if (var9 == Client.clickedWidget) { // L: 10401 - Client.field705 = true; // L: 10402 - Client.field931 = var10; // L: 10403 - Client.field701 = var11; // L: 10404 - } - - boolean var32 = false; // L: 10406 - if (var9.field2667) { // L: 10407 - switch(Client.field843) { // L: 10408 - case 0: - var32 = true; // L: 10410 - case 1: - default: - break; - case 2: - if (Client.field844 == var9.id >>> 16) { // L: 10413 - var32 = true; // L: 10414 - } - break; - case 3: - if (var9.id == Client.field844) { // L: 10418 - var32 = true; // L: 10419 - } - } - } - - if (var32 || !var9.isIf3 || var12 < var14 && var13 < var15) { // L: 10424 - if (var9.isIf3) { // L: 10425 - ScriptEvent var26; - if (var9.noClickThrough) { // L: 10426 - if (MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { // L: 10427 - for (var26 = (ScriptEvent)Client.scriptEvents.last(); var26 != null; var26 = (ScriptEvent)Client.scriptEvents.previous()) { // L: 10428 - if (var26.isMouseInputEvent) { // L: 10429 - var26.remove(); // L: 10430 - var26.widget.containsMouse = false; // L: 10431 - } - } - - if (GrandExchangeEvent.widgetDragDuration == 0) { // L: 10434 - Client.clickedWidget = null; // L: 10435 - Client.clickedWidgetParent = null; // L: 10436 - } - - if (!Client.isMenuOpen) { // L: 10438 - WorldMapSection2.addCancelMenuEntry(); // L: 10439 - } - } - } else if (var9.noScrollThrough && MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { // L: 10443 10444 - for (var26 = (ScriptEvent)Client.scriptEvents.last(); var26 != null; var26 = (ScriptEvent)Client.scriptEvents.previous()) { // L: 10445 - if (var26.isMouseInputEvent && var26.widget.onScroll == var26.args) { // L: 10446 - var26.remove(); // L: 10447 - } - } - } - } - - var17 = MouseHandler.MouseHandler_x; // L: 10453 - var18 = MouseHandler.MouseHandler_y; // L: 10454 - if (MouseHandler.MouseHandler_lastButton != 0) { // L: 10455 - var17 = MouseHandler.MouseHandler_lastPressedX; // L: 10456 - var18 = MouseHandler.MouseHandler_lastPressedY; // L: 10457 - } - - boolean var33 = var17 >= var12 && var18 >= var13 && var17 < var14 && var18 < var15; // L: 10459 - if (var9.contentType == 1337) { // L: 10460 - if (!Client.isLoading && !Client.isMenuOpen && var33) { // L: 10461 - KeyHandler.addSceneMenuOptions(var17, var18, var12, var13); - } - } else if (var9.contentType == 1338) { // L: 10464 - class9.checkIfMinimapClicked(var9, var10, var11); // L: 10465 - } else { - if (var9.contentType == 1400) { // L: 10468 - KeyHandler.worldMap.onCycle(MouseHandler.MouseHandler_x, MouseHandler.MouseHandler_y, var33, var10, var11, var9.width, var9.height); // L: 10469 - } - - if (!Client.isMenuOpen && var33) { // L: 10471 - if (var9.contentType == 1400) { // L: 10472 - KeyHandler.worldMap.addElementMenuOptions(var10, var11, var9.width, var9.height, var17, var18); // L: 10473 - } else { - class238.Widget_addToMenu(var9, var17 - var10, var18 - var11); // L: 10476 - } - } - - boolean var21; - int var23; - if (var32) { // L: 10479 - for (int var20 = 0; var20 < var9.field2668.length; ++var20) { // L: 10480 - var21 = false; // L: 10481 - boolean var27 = false; // L: 10482 - if (!var21 && var9.field2668[var20] != null) { // L: 10483 - for (var23 = 0; var23 < var9.field2668[var20].length; ++var23) { // L: 10484 - boolean var24 = false; // L: 10485 - if (var9.field2594 != null) { // L: 10486 - var24 = KeyHandler.KeyHandler_pressedKeys[var9.field2668[var20][var23]]; // L: 10487 - } - - if (TileItem.method2235(var9.field2668[var20][var23]) || var24) { // L: 10489 - var21 = true; // L: 10490 - if (var9.field2594 != null && var9.field2594[var20] > Client.cycle) { // L: 10491 - break; - } - - byte var31 = var9.field2649[var20][var23]; // L: 10492 - if (var31 == 0 || ((var31 & 8) == 0 || !KeyHandler.KeyHandler_pressedKeys[86] && !KeyHandler.KeyHandler_pressedKeys[82] && !KeyHandler.KeyHandler_pressedKeys[81]) && ((var31 & 2) == 0 || KeyHandler.KeyHandler_pressedKeys[86]) && ((var31 & 1) == 0 || KeyHandler.KeyHandler_pressedKeys[82]) && ((var31 & 4) == 0 || KeyHandler.KeyHandler_pressedKeys[81])) { // L: 10493 10494 10495 10496 10497 - var27 = true; // L: 10499 - break; - } - } - } - } - - if (var27) { // L: 10505 - if (var20 < 10) { // L: 10506 - Messages.widgetDefaultMenuAction(var20 + 1, var9.id, var9.childIndex, var9.itemId, ""); - } else if (var20 == 10) { // L: 10507 - Widget_runOnTargetLeave(); // L: 10508 - class3.selectSpell(var9.id, var9.childIndex, JagexCache.Widget_unpackTargetMask(WorldMapData_0.getWidgetFlags(var9)), var9.itemId); // L: 10509 - Client.selectedSpellActionName = PendingSpawn.Widget_getSpellActionName(var9); // L: 10510 - if (Client.selectedSpellActionName == null) { // L: 10511 - Client.selectedSpellActionName = "null"; - } - - Client.selectedSpellName = var9.dataText + Client.colorStartTag(16777215); // L: 10512 - } - - var23 = var9.field2670[var20]; // L: 10514 - if (var9.field2594 == null) { // L: 10515 - var9.field2594 = new int[var9.field2668.length]; - } - - if (var9.field2671 == null) { // L: 10516 - var9.field2671 = new int[var9.field2668.length]; - } - - if (var23 != 0) { // L: 10517 - if (var9.field2594[var20] == 0) { // L: 10518 - var9.field2594[var20] = var23 + Client.cycle + var9.field2671[var20]; - } else { - var9.field2594[var20] = var23 + Client.cycle; // L: 10519 - } - } else { - var9.field2594[var20] = Integer.MAX_VALUE; // L: 10521 - } - } - - if (!var21 && var9.field2594 != null) { // L: 10523 10524 - var9.field2594[var20] = 0; - } - } - } - - if (var9.isIf3) { // L: 10528 - if (MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { // L: 10529 - var33 = true; - } else { - var33 = false; // L: 10530 - } - - boolean var34 = false; // L: 10531 - if ((MouseHandler.MouseHandler_currentButton == 1 || !MusicPatchNode.mouseCam && MouseHandler.MouseHandler_currentButton == 4) && var33) { // L: 10532 - var34 = true; - } - - var21 = false; // L: 10533 - if ((MouseHandler.MouseHandler_lastButton == 1 || !MusicPatchNode.mouseCam && MouseHandler.MouseHandler_lastButton == 4) && MouseHandler.MouseHandler_lastPressedX >= var12 && MouseHandler.MouseHandler_lastPressedY >= var13 && MouseHandler.MouseHandler_lastPressedX < var14 && MouseHandler.MouseHandler_lastPressedY < var15) { // L: 10534 - var21 = true; - } - - if (var21) { // L: 10535 - class228.clickWidget(var9, MouseHandler.MouseHandler_lastPressedX - var10, MouseHandler.MouseHandler_lastPressedY - var11); - } - - if (var9.contentType == 1400) { // L: 10536 - KeyHandler.worldMap.method6456(var17, var18, var33 & var34, var33 & var21); // L: 10537 - } - - if (Client.clickedWidget != null && var9 != Client.clickedWidget && var33 && MusicPatch.method4039(WorldMapData_0.getWidgetFlags(var9))) { // L: 10539 - Client.draggedOnWidget = var9; - } - - if (var9 == Client.clickedWidgetParent) { // L: 10540 - Client.field859 = true; // L: 10541 - Client.field860 = var10; // L: 10542 - Client.field861 = var11; // L: 10543 - } - - if (var9.hasListener) { // L: 10545 - ScriptEvent var22; - if (var33 && Client.mouseWheelRotation != 0 && var9.onScroll != null) { // L: 10546 - var22 = new ScriptEvent(); // L: 10547 - var22.isMouseInputEvent = true; // L: 10548 - var22.widget = var9; // L: 10549 - var22.mouseY = Client.mouseWheelRotation; // L: 10550 - var22.args = var9.onScroll; // L: 10551 - Client.scriptEvents.addFirst(var22); // L: 10552 - } - - if (Client.clickedWidget != null || GameBuild.dragInventoryWidget != null || Client.isMenuOpen) { // L: 10554 - var21 = false; // L: 10555 - var34 = false; // L: 10556 - var33 = false; // L: 10557 - } - - if (!var9.isClicked && var21) { // L: 10559 - var9.isClicked = true; // L: 10560 - if (var9.onClick != null) { // L: 10561 - var22 = new ScriptEvent(); // L: 10562 - var22.isMouseInputEvent = true; // L: 10563 - var22.widget = var9; // L: 10564 - var22.mouseX = MouseHandler.MouseHandler_lastPressedX - var10; // L: 10565 - var22.mouseY = MouseHandler.MouseHandler_lastPressedY - var11; // L: 10566 - var22.args = var9.onClick; // L: 10567 - Client.scriptEvents.addFirst(var22); // L: 10568 - } - } - - if (var9.isClicked && var34 && var9.onClickRepeat != null) { // L: 10571 10572 - var22 = new ScriptEvent(); // L: 10573 - var22.isMouseInputEvent = true; // L: 10574 - var22.widget = var9; // L: 10575 - var22.mouseX = MouseHandler.MouseHandler_x - var10; // L: 10576 - var22.mouseY = MouseHandler.MouseHandler_y - var11; // L: 10577 - var22.args = var9.onClickRepeat; // L: 10578 - Client.scriptEvents.addFirst(var22); // L: 10579 - } - - if (var9.isClicked && !var34) { // L: 10582 - var9.isClicked = false; // L: 10583 - if (var9.onRelease != null) { // L: 10584 - var22 = new ScriptEvent(); // L: 10585 - var22.isMouseInputEvent = true; // L: 10586 - var22.widget = var9; // L: 10587 - var22.mouseX = MouseHandler.MouseHandler_x - var10; // L: 10588 - var22.mouseY = MouseHandler.MouseHandler_y - var11; // L: 10589 - var22.args = var9.onRelease; // L: 10590 - Client.field939.addFirst(var22); // L: 10591 - } - } - - if (var34 && var9.onHold != null) { // L: 10594 10595 - var22 = new ScriptEvent(); // L: 10596 - var22.isMouseInputEvent = true; // L: 10597 - var22.widget = var9; // L: 10598 - var22.mouseX = MouseHandler.MouseHandler_x - var10; // L: 10599 - var22.mouseY = MouseHandler.MouseHandler_y - var11; // L: 10600 - var22.args = var9.onHold; // L: 10601 - Client.scriptEvents.addFirst(var22); // L: 10602 - } - - if (!var9.containsMouse && var33) { // L: 10605 - var9.containsMouse = true; // L: 10606 - if (var9.onMouseOver != null) { // L: 10607 - var22 = new ScriptEvent(); // L: 10608 - var22.isMouseInputEvent = true; // L: 10609 - var22.widget = var9; // L: 10610 - var22.mouseX = MouseHandler.MouseHandler_x - var10; // L: 10611 - var22.mouseY = MouseHandler.MouseHandler_y - var11; // L: 10612 - var22.args = var9.onMouseOver; // L: 10613 - Client.scriptEvents.addFirst(var22); // L: 10614 - } - } - - if (var9.containsMouse && var33 && var9.onMouseRepeat != null) { // L: 10617 10618 - var22 = new ScriptEvent(); // L: 10619 - var22.isMouseInputEvent = true; // L: 10620 - var22.widget = var9; // L: 10621 - var22.mouseX = MouseHandler.MouseHandler_x - var10; // L: 10622 - var22.mouseY = MouseHandler.MouseHandler_y - var11; // L: 10623 - var22.args = var9.onMouseRepeat; // L: 10624 - Client.scriptEvents.addFirst(var22); // L: 10625 - } - - if (var9.containsMouse && !var33) { // L: 10628 - var9.containsMouse = false; // L: 10629 - if (var9.onMouseLeave != null) { // L: 10630 - var22 = new ScriptEvent(); // L: 10631 - var22.isMouseInputEvent = true; // L: 10632 - var22.widget = var9; // L: 10633 - var22.mouseX = MouseHandler.MouseHandler_x - var10; // L: 10634 - var22.mouseY = MouseHandler.MouseHandler_y - var11; // L: 10635 - var22.args = var9.onMouseLeave; // L: 10636 - Client.field939.addFirst(var22); // L: 10637 - } - } - - if (var9.onTimer != null) { // L: 10640 - var22 = new ScriptEvent(); // L: 10641 - var22.widget = var9; // L: 10642 - var22.args = var9.onTimer; // L: 10643 - Client.field881.addFirst(var22); // L: 10644 - } - - ScriptEvent var25; - int var35; - int var36; - if (var9.onVarTransmit != null && Client.field868 > var9.field2727) { // L: 10646 - if (var9.varTransmitTriggers != null && Client.field868 - var9.field2727 <= 32) { // L: 10647 - label774: - for (var36 = var9.field2727; var36 < Client.field868; ++var36) { // L: 10654 - var23 = Client.field867[var36 & 31]; // L: 10655 - - for (var35 = 0; var35 < var9.varTransmitTriggers.length; ++var35) { // L: 10656 - if (var23 == var9.varTransmitTriggers[var35]) { // L: 10657 - var25 = new ScriptEvent(); // L: 10658 - var25.widget = var9; // L: 10659 - var25.args = var9.onVarTransmit; // L: 10660 - Client.scriptEvents.addFirst(var25); // L: 10661 - break label774; // L: 10662 - } - } - } - } else { - var22 = new ScriptEvent(); // L: 10648 - var22.widget = var9; // L: 10649 - var22.args = var9.onVarTransmit; // L: 10650 - Client.scriptEvents.addFirst(var22); // L: 10651 - } - - var9.field2727 = Client.field868; // L: 10667 - } - - if (var9.onInvTransmit != null && Client.field941 > var9.field2728) { // L: 10669 - if (var9.invTransmitTriggers != null && Client.field941 - var9.field2728 <= 32) { // L: 10670 - label750: - for (var36 = var9.field2728; var36 < Client.field941; ++var36) { // L: 10677 - var23 = Client.changedItemContainers[var36 & 31]; // L: 10678 - - for (var35 = 0; var35 < var9.invTransmitTriggers.length; ++var35) { // L: 10679 - if (var23 == var9.invTransmitTriggers[var35]) { // L: 10680 - var25 = new ScriptEvent(); // L: 10681 - var25.widget = var9; // L: 10682 - var25.args = var9.onInvTransmit; // L: 10683 - Client.scriptEvents.addFirst(var25); // L: 10684 - break label750; // L: 10685 - } - } - } - } else { - var22 = new ScriptEvent(); // L: 10671 - var22.widget = var9; // L: 10672 - var22.args = var9.onInvTransmit; // L: 10673 - Client.scriptEvents.addFirst(var22); // L: 10674 - } - - var9.field2728 = Client.field941; // L: 10690 - } - - if (var9.onStatTransmit != null && Client.changedSkillsCount > var9.field2729) { // L: 10692 - if (var9.statTransmitTriggers != null && Client.changedSkillsCount - var9.field2729 <= 32) { // L: 10693 - label726: - for (var36 = var9.field2729; var36 < Client.changedSkillsCount; ++var36) { // L: 10700 - var23 = Client.changedSkills[var36 & 31]; // L: 10701 - - for (var35 = 0; var35 < var9.statTransmitTriggers.length; ++var35) { // L: 10702 - if (var23 == var9.statTransmitTriggers[var35]) { // L: 10703 - var25 = new ScriptEvent(); // L: 10704 - var25.widget = var9; // L: 10705 - var25.args = var9.onStatTransmit; // L: 10706 - Client.scriptEvents.addFirst(var25); // L: 10707 - break label726; // L: 10708 - } - } - } - } else { - var22 = new ScriptEvent(); // L: 10694 - var22.widget = var9; // L: 10695 - var22.args = var9.onStatTransmit; // L: 10696 - Client.scriptEvents.addFirst(var22); // L: 10697 - } - - var9.field2729 = Client.changedSkillsCount; // L: 10713 - } - - if (Client.chatCycle > var9.field2726 && var9.onChatTransmit != null) { // L: 10715 - var22 = new ScriptEvent(); // L: 10716 - var22.widget = var9; // L: 10717 - var22.args = var9.onChatTransmit; // L: 10718 - Client.scriptEvents.addFirst(var22); // L: 10719 - } - - if (Client.field874 > var9.field2726 && var9.onFriendTransmit != null) { // L: 10721 - var22 = new ScriptEvent(); // L: 10722 - var22.widget = var9; // L: 10723 - var22.args = var9.onFriendTransmit; // L: 10724 - Client.scriptEvents.addFirst(var22); // L: 10725 - } - - if (Client.field875 > var9.field2726 && var9.onClanTransmit != null) { // L: 10727 - var22 = new ScriptEvent(); // L: 10728 - var22.widget = var9; // L: 10729 - var22.args = var9.onClanTransmit; // L: 10730 - Client.scriptEvents.addFirst(var22); // L: 10731 - } - - if (Client.field885 > var9.field2726 && var9.onStockTransmit != null) { // L: 10733 - var22 = new ScriptEvent(); // L: 10734 - var22.widget = var9; // L: 10735 - var22.args = var9.onStockTransmit; // L: 10736 - Client.scriptEvents.addFirst(var22); // L: 10737 - } - - if (Client.field852 > var9.field2726 && var9.field2669 != null) { // L: 10739 - var22 = new ScriptEvent(); // L: 10740 - var22.widget = var9; // L: 10741 - var22.args = var9.field2669; // L: 10742 - Client.scriptEvents.addFirst(var22); // L: 10743 - } - - if (Client.field878 > var9.field2726 && var9.onMiscTransmit != null) { // L: 10745 - var22 = new ScriptEvent(); // L: 10746 - var22.widget = var9; // L: 10747 - var22.args = var9.onMiscTransmit; // L: 10748 - Client.scriptEvents.addFirst(var22); // L: 10749 - } - - var9.field2726 = Client.cycleCntr; // L: 10751 - if (var9.onKey != null) { // L: 10752 - for (var36 = 0; var36 < Client.field902; ++var36) { // L: 10753 - ScriptEvent var30 = new ScriptEvent(); // L: 10754 - var30.widget = var9; // L: 10755 - var30.keyTyped = Client.field904[var36]; // L: 10756 - var30.keyPressed = Client.field903[var36]; // L: 10757 - var30.args = var9.onKey; // L: 10758 - Client.scriptEvents.addFirst(var30); // L: 10759 - } - } - } - } - - if (!var9.isIf3) { // L: 10764 - if (Client.clickedWidget != null || GameBuild.dragInventoryWidget != null || Client.isMenuOpen) { // L: 10765 - continue; - } - - if ((var9.mouseOverRedirect >= 0 || var9.mouseOverColor != 0) && MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { // L: 10766 - if (var9.mouseOverRedirect >= 0) { // L: 10767 - GrandExchangeEvent.mousedOverWidgetIf1 = var0[var9.mouseOverRedirect]; - } else { - GrandExchangeEvent.mousedOverWidgetIf1 = var9; // L: 10768 - } - } - - if (var9.type == 8 && MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { // L: 10770 - GrandExchangeOfferOwnWorldComparator.field677 = var9; // L: 10771 - } - - if (var9.scrollHeight > var9.height) { // L: 10773 - PacketBufferNode.method3759(var9, var10 + var9.width, var11, var9.height, var9.scrollHeight, MouseHandler.MouseHandler_x, MouseHandler.MouseHandler_y); - } - } - - if (var9.type == 0) { // L: 10775 - updateInterface(var0, var9.id, var12, var13, var14, var15, var10 - var9.scrollX, var11 - var9.scrollY); // L: 10776 - if (var9.children != null) { // L: 10777 - updateInterface(var9.children, var9.id, var12, var13, var14, var15, var10 - var9.scrollX, var11 - var9.scrollY); - } - - InterfaceParent var28 = (InterfaceParent)Client.interfaceParents.get((long)var9.id); // L: 10778 - if (var28 != null) { // L: 10779 - if (var28.type == 0 && MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15 && !Client.isMenuOpen) { // L: 10780 - for (ScriptEvent var29 = (ScriptEvent)Client.scriptEvents.last(); var29 != null; var29 = (ScriptEvent)Client.scriptEvents.previous()) { // L: 10781 - if (var29.isMouseInputEvent) { // L: 10782 - var29.remove(); // L: 10783 - var29.widget.containsMouse = false; // L: 10784 - } - } - - if (GrandExchangeEvent.widgetDragDuration == 0) { // L: 10787 - Client.clickedWidget = null; // L: 10788 - Client.clickedWidgetParent = null; // L: 10789 - } - - if (!Client.isMenuOpen) { // L: 10791 - WorldMapSection2.addCancelMenuEntry(); // L: 10792 - } - } - - DynamicObject.updateRootInterface(var28.group, var12, var13, var14, var15, var10, var11); // L: 10795 - } - } - } - } - } - } - - } // L: 10799 } diff --git a/runescape-client/src/main/java/class7.java b/runescape-client/src/main/java/class7.java index 97eef561ce..2b28dcee7d 100644 --- a/runescape-client/src/main/java/class7.java +++ b/runescape-client/src/main/java/class7.java @@ -1,99 +1,667 @@ +import java.io.InputStream; +import java.io.OutputStreamWriter; +import java.net.URL; +import java.net.URLConnection; import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("c") +@ObfuscatedName("p") public enum class7 implements Enumerated { - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lc;" + descriptor = "Lp;" ) - field26(0, 0); + field25(0, 0); - @ObfuscatedName("s") - @ObfuscatedGetter( - intValue = -2134453371 + @ObfuscatedName("sb") + @ObfuscatedSignature( + descriptor = "Llx;" ) - @Export("clientTickTimeIdx") - static int clientTickTimeIdx; - @ObfuscatedName("b") + @Export("masterDisk") + static ArchiveDisk masterDisk; + @ObfuscatedName("v") @ObfuscatedGetter( - intValue = 655499637 + intValue = -1415154919 ) - final int field23; - @ObfuscatedName("l") + final int field26; + @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 299082675 + intValue = 403603803 ) final int field24; class7(int var3, int var4) { - this.field23 = var3; // L: 12 - this.field24 = var4; // L: 13 - } // L: 14 + this.field26 = var3; + this.field24 = var4; + } - @ObfuscatedName("m") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "23" + descriptor = "(I)I", + garbageValue = "-275768542" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.field24; // L: 17 + return this.field24; } - @ObfuscatedName("l") + @ObfuscatedName("p") @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "1670201823" + descriptor = "(IIIIIILeo;Lfo;B)V", + garbageValue = "14" ) - public static boolean method108(int var0) { - return var0 == WorldMapDecorationType.field2768.id; // L: 50 + static final void method90(int var0, int var1, int var2, int var3, int var4, int var5, Scene var6, CollisionMap var7) { + if (!Client.isLowDetail || (Tiles.Tiles_renderFlags[0][var1][var2] & 2) != 0 || (Tiles.Tiles_renderFlags[var0][var1][var2] & 16) == 0) { + if (var0 < Tiles.Tiles_minPlane) { + Tiles.Tiles_minPlane = var0; + } + + ObjectDefinition var8 = WorldMapDecoration.getObjectDefinition(var3); + int var9; + int var10; + if (var4 != 1 && var4 != 3) { + var9 = var8.sizeX; + var10 = var8.sizeY; + } else { + var9 = var8.sizeY; + var10 = var8.sizeX; + } + + int var11; + int var12; + if (var9 + var1 <= 104) { + var11 = (var9 >> 1) + var1; + var12 = (var9 + 1 >> 1) + var1; + } else { + var11 = var1; + var12 = var1 + 1; + } + + int var13; + int var14; + if (var10 + var2 <= 104) { + var13 = (var10 >> 1) + var2; + var14 = var2 + (var10 + 1 >> 1); + } else { + var13 = var2; + var14 = var2 + 1; + } + + int[][] var15 = Tiles.Tiles_heights[var0]; + int var16 = var15[var12][var14] + var15[var12][var13] + var15[var11][var13] + var15[var11][var14] >> 2; + int var17 = (var1 << 7) + (var9 << 6); + int var18 = (var2 << 7) + (var10 << 6); + long var19 = NPC.calculateTag(var1, var2, 2, var8.int1 == 0, var3); + int var21 = var5 + (var4 << 6); + if (var8.int3 == 1) { + var21 += 256; + } + + int var23; + int var24; + if (var8.hasSound()) { + ObjectSound var22 = new ObjectSound(); + var22.plane = var0; + var22.x = var1 * 16384; + var22.y = var2 * 128; + var23 = var8.sizeX; + var24 = var8.sizeY; + if (var4 == 1 || var4 == 3) { + var23 = var8.sizeY; + var24 = var8.sizeX; + } + + var22.field1073 = (var23 + var1) * 16384; + var22.field1078 = (var24 + var2) * 128; + var22.soundEffectId = var8.ambientSoundId; + var22.field1086 = var8.int4 * 128; + var22.field1085 = var8.int5; + var22.field1083 = var8.int6; + var22.soundEffectIds = var8.soundEffectIds; + if (var8.transforms != null) { + var22.obj = var8; + var22.set(); + } + + ObjectSound.objectSounds.addFirst(var22); + if (var22.soundEffectIds != null) { + var22.field1081 = var22.field1085 + (int)(Math.random() * (double)(var22.field1083 - var22.field1085)); + } + } + + Object var34; + if (var5 == 22) { + if (!Client.isLowDetail || var8.int1 != 0 || var8.interactType == 1 || var8.boolean2) { + if (var8.animationId == -1 && var8.transforms == null) { + var34 = var8.getEntity(22, var4, var15, var17, var16, var18); + } else { + var34 = new DynamicObject(var3, 22, var4, var0, var1, var2, var8.animationId, var8.field3429, (Entity)null); + } + + var6.newFloorDecoration(var0, var1, var2, var16, (Entity)var34, var19, var21); + if (var8.interactType == 1 && var7 != null) { + var7.setBlockedByFloorDec(var1, var2); + } + + } + } else if (var5 != 10 && var5 != 11) { + int[] var10000; + if (var5 >= 12) { + if (var8.animationId == -1 && var8.transforms == null) { + var34 = var8.getEntity(var5, var4, var15, var17, var16, var18); + } else { + var34 = new DynamicObject(var3, var5, var4, var0, var1, var2, var8.animationId, var8.field3429, (Entity)null); + } + + var6.method3160(var0, var1, var2, var16, 1, 1, (Entity)var34, 0, var19, var21); + if (var5 >= 12 && var5 <= 17 && var5 != 13 && var0 > 0) { + var10000 = GrandExchangeOfferWorldComparator.field52[var0][var1]; + var10000[var2] |= 2340; + } + + if (var8.interactType != 0 && var7 != null) { + var7.addGameObject(var1, var2, var9, var10, var8.boolean1); + } + + } else if (var5 == 0) { + if (var8.animationId == -1 && var8.transforms == null) { + var34 = var8.getEntity(0, var4, var15, var17, var16, var18); + } else { + var34 = new DynamicObject(var3, 0, var4, var0, var1, var2, var8.animationId, var8.field3429, (Entity)null); + } + + var6.newBoundaryObject(var0, var1, var2, var16, (Entity)var34, (Entity)null, Tiles.field512[var4], 0, var19, var21); + if (var4 == 0) { + if (var8.clipped) { + Tiles.field511[var0][var1][var2] = 50; + Tiles.field511[var0][var1][var2 + 1] = 50; + } + + if (var8.modelClipped) { + var10000 = GrandExchangeOfferWorldComparator.field52[var0][var1]; + var10000[var2] |= 585; + } + } else if (var4 == 1) { + if (var8.clipped) { + Tiles.field511[var0][var1][var2 + 1] = 50; + Tiles.field511[var0][var1 + 1][var2 + 1] = 50; + } + + if (var8.modelClipped) { + var10000 = GrandExchangeOfferWorldComparator.field52[var0][var1]; + var10000[1 + var2] |= 1170; + } + } else if (var4 == 2) { + if (var8.clipped) { + Tiles.field511[var0][var1 + 1][var2] = 50; + Tiles.field511[var0][var1 + 1][var2 + 1] = 50; + } + + if (var8.modelClipped) { + var10000 = GrandExchangeOfferWorldComparator.field52[var0][var1 + 1]; + var10000[var2] |= 585; + } + } else if (var4 == 3) { + if (var8.clipped) { + Tiles.field511[var0][var1][var2] = 50; + Tiles.field511[var0][var1 + 1][var2] = 50; + } + + if (var8.modelClipped) { + var10000 = GrandExchangeOfferWorldComparator.field52[var0][var1]; + var10000[var2] |= 1170; + } + } + + if (var8.interactType != 0 && var7 != null) { + var7.method3611(var1, var2, var5, var4, var8.boolean1); + } + + if (var8.int2 != 16) { + var6.method3175(var0, var1, var2, var8.int2); + } + + } else if (var5 == 1) { + if (var8.animationId == -1 && var8.transforms == null) { + var34 = var8.getEntity(1, var4, var15, var17, var16, var18); + } else { + var34 = new DynamicObject(var3, 1, var4, var0, var1, var2, var8.animationId, var8.field3429, (Entity)null); + } + + var6.newBoundaryObject(var0, var1, var2, var16, (Entity)var34, (Entity)null, Tiles.field513[var4], 0, var19, var21); + if (var8.clipped) { + if (var4 == 0) { + Tiles.field511[var0][var1][var2 + 1] = 50; + } else if (var4 == 1) { + Tiles.field511[var0][var1 + 1][var2 + 1] = 50; + } else if (var4 == 2) { + Tiles.field511[var0][var1 + 1][var2] = 50; + } else if (var4 == 3) { + Tiles.field511[var0][var1][var2] = 50; + } + } + + if (var8.interactType != 0 && var7 != null) { + var7.method3611(var1, var2, var5, var4, var8.boolean1); + } + + } else { + int var28; + if (var5 == 2) { + var28 = var4 + 1 & 3; + Object var31; + Object var32; + if (var8.animationId == -1 && var8.transforms == null) { + var31 = var8.getEntity(2, var4 + 4, var15, var17, var16, var18); + var32 = var8.getEntity(2, var28, var15, var17, var16, var18); + } else { + var31 = new DynamicObject(var3, 2, var4 + 4, var0, var1, var2, var8.animationId, var8.field3429, (Entity)null); + var32 = new DynamicObject(var3, 2, var28, var0, var1, var2, var8.animationId, var8.field3429, (Entity)null); + } + + var6.newBoundaryObject(var0, var1, var2, var16, (Entity)var31, (Entity)var32, Tiles.field512[var4], Tiles.field512[var28], var19, var21); + if (var8.modelClipped) { + if (var4 == 0) { + var10000 = GrandExchangeOfferWorldComparator.field52[var0][var1]; + var10000[var2] |= 585; + var10000 = GrandExchangeOfferWorldComparator.field52[var0][var1]; + var10000[1 + var2] |= 1170; + } else if (var4 == 1) { + var10000 = GrandExchangeOfferWorldComparator.field52[var0][var1]; + var10000[var2 + 1] |= 1170; + var10000 = GrandExchangeOfferWorldComparator.field52[var0][var1 + 1]; + var10000[var2] |= 585; + } else if (var4 == 2) { + var10000 = GrandExchangeOfferWorldComparator.field52[var0][var1 + 1]; + var10000[var2] |= 585; + var10000 = GrandExchangeOfferWorldComparator.field52[var0][var1]; + var10000[var2] |= 1170; + } else if (var4 == 3) { + var10000 = GrandExchangeOfferWorldComparator.field52[var0][var1]; + var10000[var2] |= 1170; + var10000 = GrandExchangeOfferWorldComparator.field52[var0][var1]; + var10000[var2] |= 585; + } + } + + if (var8.interactType != 0 && var7 != null) { + var7.method3611(var1, var2, var5, var4, var8.boolean1); + } + + if (var8.int2 != 16) { + var6.method3175(var0, var1, var2, var8.int2); + } + + } else if (var5 == 3) { + if (var8.animationId == -1 && var8.transforms == null) { + var34 = var8.getEntity(3, var4, var15, var17, var16, var18); + } else { + var34 = new DynamicObject(var3, 3, var4, var0, var1, var2, var8.animationId, var8.field3429, (Entity)null); + } + + var6.newBoundaryObject(var0, var1, var2, var16, (Entity)var34, (Entity)null, Tiles.field513[var4], 0, var19, var21); + if (var8.clipped) { + if (var4 == 0) { + Tiles.field511[var0][var1][var2 + 1] = 50; + } else if (var4 == 1) { + Tiles.field511[var0][var1 + 1][var2 + 1] = 50; + } else if (var4 == 2) { + Tiles.field511[var0][var1 + 1][var2] = 50; + } else if (var4 == 3) { + Tiles.field511[var0][var1][var2] = 50; + } + } + + if (var8.interactType != 0 && var7 != null) { + var7.method3611(var1, var2, var5, var4, var8.boolean1); + } + + } else if (var5 == 9) { + if (var8.animationId == -1 && var8.transforms == null) { + var34 = var8.getEntity(var5, var4, var15, var17, var16, var18); + } else { + var34 = new DynamicObject(var3, var5, var4, var0, var1, var2, var8.animationId, var8.field3429, (Entity)null); + } + + var6.method3160(var0, var1, var2, var16, 1, 1, (Entity)var34, 0, var19, var21); + if (var8.interactType != 0 && var7 != null) { + var7.addGameObject(var1, var2, var9, var10, var8.boolean1); + } + + if (var8.int2 != 16) { + var6.method3175(var0, var1, var2, var8.int2); + } + + } else if (var5 == 4) { + if (var8.animationId == -1 && var8.transforms == null) { + var34 = var8.getEntity(4, var4, var15, var17, var16, var18); + } else { + var34 = new DynamicObject(var3, 4, var4, var0, var1, var2, var8.animationId, var8.field3429, (Entity)null); + } + + var6.newWallDecoration(var0, var1, var2, var16, (Entity)var34, (Entity)null, Tiles.field512[var4], 0, 0, 0, var19, var21); + } else { + Object var25; + long var29; + if (var5 == 5) { + var28 = 16; + var29 = var6.getBoundaryObjectTag(var0, var1, var2); + if (var29 != 0L) { + var28 = WorldMapDecoration.getObjectDefinition(Occluder.Entity_unpackID(var29)).int2; + } + + if (var8.animationId == -1 && var8.transforms == null) { + var25 = var8.getEntity(4, var4, var15, var17, var16, var18); + } else { + var25 = new DynamicObject(var3, 4, var4, var0, var1, var2, var8.animationId, var8.field3429, (Entity)null); + } + + var6.newWallDecoration(var0, var1, var2, var16, (Entity)var25, (Entity)null, Tiles.field512[var4], 0, var28 * Tiles.field518[var4], var28 * Tiles.field515[var4], var19, var21); + } else if (var5 == 6) { + var28 = 8; + var29 = var6.getBoundaryObjectTag(var0, var1, var2); + if (var29 != 0L) { + var28 = WorldMapDecoration.getObjectDefinition(Occluder.Entity_unpackID(var29)).int2 / 2; + } + + if (var8.animationId == -1 && var8.transforms == null) { + var25 = var8.getEntity(4, var4 + 4, var15, var17, var16, var18); + } else { + var25 = new DynamicObject(var3, 4, var4 + 4, var0, var1, var2, var8.animationId, var8.field3429, (Entity)null); + } + + var6.newWallDecoration(var0, var1, var2, var16, (Entity)var25, (Entity)null, 256, var4, var28 * Tiles.field509[var4], var28 * Tiles.field517[var4], var19, var21); + } else if (var5 == 7) { + var23 = var4 + 2 & 3; + if (var8.animationId == -1 && var8.transforms == null) { + var34 = var8.getEntity(4, var23 + 4, var15, var17, var16, var18); + } else { + var34 = new DynamicObject(var3, 4, var23 + 4, var0, var1, var2, var8.animationId, var8.field3429, (Entity)null); + } + + var6.newWallDecoration(var0, var1, var2, var16, (Entity)var34, (Entity)null, 256, var23, 0, 0, var19, var21); + } else if (var5 == 8) { + var28 = 8; + var29 = var6.getBoundaryObjectTag(var0, var1, var2); + if (var29 != 0L) { + var28 = WorldMapDecoration.getObjectDefinition(Occluder.Entity_unpackID(var29)).int2 / 2; + } + + int var27 = var4 + 2 & 3; + Object var26; + if (var8.animationId == -1 && var8.transforms == null) { + var25 = var8.getEntity(4, var4 + 4, var15, var17, var16, var18); + var26 = var8.getEntity(4, var27 + 4, var15, var17, var16, var18); + } else { + var25 = new DynamicObject(var3, 4, var4 + 4, var0, var1, var2, var8.animationId, var8.field3429, (Entity)null); + var26 = new DynamicObject(var3, 4, var27 + 4, var0, var1, var2, var8.animationId, var8.field3429, (Entity)null); + } + + var6.newWallDecoration(var0, var1, var2, var16, (Entity)var25, (Entity)var26, 256, var4, var28 * Tiles.field509[var4], var28 * Tiles.field517[var4], var19, var21); + } + } + } + } else { + if (var8.animationId == -1 && var8.transforms == null) { + var34 = var8.getEntity(10, var4, var15, var17, var16, var18); + } else { + var34 = new DynamicObject(var3, 10, var4, var0, var1, var2, var8.animationId, var8.field3429, (Entity)null); + } + + if (var34 != null && var6.method3160(var0, var1, var2, var16, var9, var10, (Entity)var34, var5 == 11 ? 256 : 0, var19, var21) && var8.clipped) { + var23 = 15; + if (var34 instanceof Model) { + var23 = ((Model)var34).method2991() / 4; + if (var23 > 30) { + var23 = 30; + } + } + + for (var24 = 0; var24 <= var9; ++var24) { + for (int var33 = 0; var33 <= var10; ++var33) { + if (var23 > Tiles.field511[var0][var24 + var1][var33 + var2]) { + Tiles.field511[var0][var24 + var1][var33 + var2] = (byte)var23; + } + } + } + } + + if (var8.interactType != 0 && var7 != null) { + var7.addGameObject(var1, var2, var9, var10, var8.boolean1); + } + + } + } } - @ObfuscatedName("gc") + @ObfuscatedName("u") @ObfuscatedSignature( - descriptor = "(IIIIIIII)V", - garbageValue = "-1921843394" + descriptor = "(I)V", + garbageValue = "-249600986" ) - static final void method112(int var0, int var1, int var2, int var3, int var4, int var5, int var6) { - var5 = HorizontalAlignment.method4876(var5, var6); // L: 5444 - int var7 = 2048 - var3 & 2047; // L: 5445 - int var8 = 2048 - var4 & 2047; // L: 5446 - int var9 = 0; // L: 5447 - int var10 = 0; // L: 5448 - int var11 = var5; // L: 5449 - int var12; - int var13; - int var14; - if (var7 != 0) { // L: 5450 - var12 = Rasterizer3D.Rasterizer3D_sine[var7]; // L: 5451 - var13 = Rasterizer3D.Rasterizer3D_cosine[var7]; // L: 5452 - var14 = var13 * var10 - var5 * var12 >> 16; // L: 5453 - var11 = var13 * var5 + var12 * var10 >> 16; // L: 5454 - var10 = var14; // L: 5455 + static void method83() { + Login.Login_username = Login.Login_username.trim(); + if (Login.Login_username.length() == 0) { + GameShell.setLoginResponseString("Please enter your username.", "If you created your account after November", "2010, this will be the creation email address."); + } else { + long var1; + try { + URL var3 = new URL(AbstractWorldMapIcon.method632("services", false) + "m=accountappeal/login.ws"); + URLConnection var4 = var3.openConnection(); + var4.setRequestProperty("connection", "close"); + var4.setDoInput(true); + var4.setDoOutput(true); + var4.setConnectTimeout(5000); + OutputStreamWriter var5 = new OutputStreamWriter(var4.getOutputStream()); + var5.write("data1=req"); + var5.flush(); + InputStream var6 = var4.getInputStream(); + Buffer var7 = new Buffer(new byte[1000]); + + while (true) { + int var8 = var6.read(var7.array, var7.offset, 1000 - var7.offset); + if (var8 == -1) { + var7.offset = 0; + long var10 = var7.readLong(); + var1 = var10; + break; + } + + var7.offset += var8; + if (var7.offset >= 1000) { + var1 = 0L; + break; + } + } + } catch (Exception var14) { + var1 = 0L; + } + + int var0; + if (0L == var1) { + var0 = 5; + } else { + var0 = MusicPatchNode2.method3724(var1, Login.Login_username); + } + + switch(var0) { + case 2: + GameShell.setLoginResponseString(Strings.field3053, Strings.field3054, Strings.field3055); + Login.loginIndex = 6; + break; + case 3: + GameShell.setLoginResponseString("", "Error connecting to server.", ""); + break; + case 4: + GameShell.setLoginResponseString("The part of the website you are trying", "to connect to is offline at the moment.", "Please try again later."); + break; + case 5: + GameShell.setLoginResponseString("Sorry, there was an error trying to", "log you in to this part of the website.", "Please try again later."); + break; + case 6: + GameShell.setLoginResponseString("", "Error connecting to server.", ""); + break; + case 7: + GameShell.setLoginResponseString("You must enter a valid login to proceed. For accounts", "created after 24th November 2010, please use your", "email address. Otherwise please use your username."); + } + + } + } + + @ObfuscatedName("ht") + @ObfuscatedSignature( + descriptor = "(Lbp;I)V", + garbageValue = "-1524924441" + ) + static final void method86(PendingSpawn var0) { + long var1 = 0L; + int var3 = -1; + int var4 = 0; + int var5 = 0; + if (var0.type == 0) { + var1 = ArchiveLoader.scene.getBoundaryObjectTag(var0.plane, var0.x, var0.y); } - if (var8 != 0) { // L: 5457 - var12 = Rasterizer3D.Rasterizer3D_sine[var8]; // L: 5458 - var13 = Rasterizer3D.Rasterizer3D_cosine[var8]; // L: 5459 - var14 = var11 * var12 + var13 * var9 >> 16; // L: 5460 - var11 = var13 * var11 - var9 * var12 >> 16; // L: 5461 - var9 = var14; // L: 5462 + if (var0.type == 1) { + var1 = ArchiveLoader.scene.getWallDecorationTag(var0.plane, var0.x, var0.y); } - ItemContainer.cameraX = var0 - var9; // L: 5464 - ChatChannel.cameraY = var1 - var10; // L: 5465 - WorldMapManager.cameraZ = var2 - var11; // L: 5466 - World.cameraPitch = var3; // L: 5467 - ViewportMouse.cameraYaw = var4; // L: 5468 - if (Client.oculusOrbState == 1 && Client.staffModLevel >= 2 && Client.cycle % 50 == 0 && (TileItem.oculusOrbFocalPointX >> 7 != PlayerType.localPlayer.x >> 7 || Interpreter.oculusOrbFocalPointY >> 7 != PlayerType.localPlayer.y >> 7)) { // L: 5469 5470 - var12 = PlayerType.localPlayer.plane; // L: 5471 - var13 = (TileItem.oculusOrbFocalPointX >> 7) + FloorDecoration.baseX; // L: 5472 - var14 = (Interpreter.oculusOrbFocalPointY >> 7) + WorldMapData_0.baseY; // L: 5473 - class2.method42(var13, var14, var12, true); // L: 5474 + if (var0.type == 2) { + var1 = ArchiveLoader.scene.getGameObjectTag(var0.plane, var0.x, var0.y); } - } // L: 5477 + if (var0.type == 3) { + var1 = ArchiveLoader.scene.getFloorDecorationTag(var0.plane, var0.x, var0.y); + } + + if (var1 != 0L) { + int var6 = ArchiveLoader.scene.getObjectFlags(var0.plane, var0.x, var0.y, var1); + var3 = Occluder.Entity_unpackID(var1); + var4 = var6 & 31; + var5 = var6 >> 6 & 3; + } + + var0.objectId = var3; + var0.field935 = var4; + var0.field929 = var5; + } + + @ObfuscatedName("jm") + @ObfuscatedSignature( + descriptor = "(IIIIIII)V", + garbageValue = "175619167" + ) + static final void method87(int var0, int var1, int var2, int var3, int var4, int var5) { + int var6 = var2 - var0; + int var7 = var3 - var1; + int var8 = var6 >= 0 ? var6 : -var6; + int var9 = var7 >= 0 ? var7 : -var7; + int var10 = var8; + if (var8 < var9) { + var10 = var9; + } + + if (var10 != 0) { + int var11 = (var6 << 16) / var10; + int var12 = (var7 << 16) / var10; + if (var12 <= var11) { + var11 = -var11; + } else { + var12 = -var12; + } + + int var13 = var5 * var12 >> 17; + int var14 = var5 * var12 + 1 >> 17; + int var15 = var5 * var11 >> 17; + int var16 = var5 * var11 + 1 >> 17; + var0 -= Rasterizer2D.Rasterizer2D_xClipStart; + var1 -= Rasterizer2D.Rasterizer2D_yClipStart; + int var17 = var0 + var13; + int var18 = var0 - var14; + int var19 = var0 + var6 - var14; + int var20 = var0 + var13 + var6; + int var21 = var15 + var1; + int var22 = var1 - var16; + int var23 = var7 + var1 - var16; + int var24 = var15 + var7 + var1; + Rasterizer3D.method3078(var17, var18, var19); + Rasterizer3D.method3081(var21, var22, var23, var17, var18, var19, var4); + Rasterizer3D.method3078(var17, var19, var20); + Rasterizer3D.method3081(var21, var23, var24, var17, var19, var20, var4); + } + } + + @ObfuscatedName("jj") + @ObfuscatedSignature( + descriptor = "(Lhe;III)V", + garbageValue = "-1067771846" + ) + @Export("alignWidgetPosition") + static void alignWidgetPosition(Widget var0, int var1, int var2) { + if (var0.xAlignment == 0) { + var0.x = var0.rawX; + } else if (var0.xAlignment == 1) { + var0.x = var0.rawX + (var1 - var0.width) / 2; + } else if (var0.xAlignment == 2) { + var0.x = var1 - var0.width - var0.rawX; + } else if (var0.xAlignment == 3) { + var0.x = var0.rawX * var1 >> 14; + } else if (var0.xAlignment == 4) { + var0.x = (var0.rawX * var1 >> 14) + (var1 - var0.width) / 2; + } else { + var0.x = var1 - var0.width - (var0.rawX * var1 >> 14); + } + + if (var0.yAlignment == 0) { + var0.y = var0.rawY; + } else if (var0.yAlignment == 1) { + var0.y = (var2 - var0.height) / 2 + var0.rawY; + } else if (var0.yAlignment == 2) { + var0.y = var2 - var0.height - var0.rawY; + } else if (var0.yAlignment == 3) { + var0.y = var2 * var0.rawY >> 14; + } else if (var0.yAlignment == 4) { + var0.y = (var2 * var0.rawY >> 14) + (var2 - var0.height) / 2; + } else { + var0.y = var2 - var0.height - (var2 * var0.rawY >> 14); + } + + } + + @ObfuscatedName("ja") + @ObfuscatedSignature( + descriptor = "(Lhe;Ljq;IIZI)V", + garbageValue = "1516995220" + ) + @Export("addWidgetItemMenuItem") + static final void addWidgetItemMenuItem(Widget var0, ItemDefinition var1, int var2, int var3, boolean var4) { + String[] var5 = var1.inventoryActions; + byte var6 = -1; + String var7 = null; + if (var5 != null && var5[var3] != null) { + if (var3 == 0) { + var6 = 33; + } else if (var3 == 1) { + var6 = 34; + } else if (var3 == 2) { + var6 = 35; + } else if (var3 == 3) { + var6 = 36; + } else { + var6 = 37; + } + + var7 = var5[var3]; + } else if (var3 == 4) { + var6 = 37; + var7 = "Drop"; + } + + if (var6 != -1 && var7 != null) { + WorldMapID.insertMenuItem(var7, class23.colorStartTag(16748608) + var1.name, var6, var1.id, var2, var0.id, var4); + } + + } } diff --git a/runescape-client/src/main/java/class8.java b/runescape-client/src/main/java/class8.java index 7c7e5f38e9..0e27d6279c 100644 --- a/runescape-client/src/main/java/class8.java +++ b/runescape-client/src/main/java/class8.java @@ -1,144 +1,98 @@ import java.util.concurrent.Callable; import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("u") +@ObfuscatedName("l") public class class8 implements Callable { - @ObfuscatedName("ow") - @ObfuscatedSignature( - descriptor = "Lfq;" + @ObfuscatedName("l") + @ObfuscatedGetter( + intValue = 1988326555 ) - @Export("mouseWheel") - static MouseWheel mouseWheel; - @ObfuscatedName("at") - @Export("hasFocus") - protected static boolean hasFocus; - @ObfuscatedName("dr") + @Export("gameCyclesToDo") + protected static int gameCyclesToDo; + @ObfuscatedName("bk") @ObfuscatedSignature( - descriptor = "Lid;" + descriptor = "Llo;" ) - @Export("archive13") - static Archive archive13; - @ObfuscatedName("f") + @Export("worldSelectRightSprite") + static IndexedSprite worldSelectRightSprite; + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "Lkb;" + descriptor = "Lkj;" ) final Buffer field35; - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "Ln;" + descriptor = "Lm;" ) - final class12 field31; + final class12 field32; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lt;" + descriptor = "Lz;" ) final class9 this$0; @ObfuscatedSignature( - descriptor = "(Lt;Lkb;Ln;)V" + descriptor = "(Lz;Lkj;Lm;)V" ) class8(class9 var1, Buffer var2, class12 var3) { - this.this$0 = var1; // L: 47 - this.field35 = var2; // L: 48 - this.field31 = var3; // L: 49 - } // L: 50 + this.this$0 = var1; + this.field35 = var2; + this.field32 = var3; + } public Object call() { - return this.field31.vmethod145(this.field35); // L: 53 + return this.field32.vmethod123(this.field35); } - @ObfuscatedName("f") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(I)[Lih;", - garbageValue = "1246224952" + descriptor = "(III)I", + garbageValue = "-497960753" ) - static class238[] method116() { - return new class238[]{class238.field3116, class238.field3113}; // L: 35 - } - - @ObfuscatedName("f") - @ObfuscatedSignature( - descriptor = "(IIII)J", - garbageValue = "1560484309" - ) - static long method117(int var0, int var1, int var2) { - return (long)(var2 << 16 | var0 << 8 | var1); // L: 38 - } - - @ObfuscatedName("m") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;I)[B", - garbageValue = "-2023789845" - ) - public static byte[] method113(CharSequence var0) { - int var1 = var0.length(); // L: 68 - byte[] var2 = new byte[var1]; // L: 69 - - for (int var3 = 0; var3 < var1; ++var3) { // L: 70 - char var4 = var0.charAt(var3); // L: 71 - if (var4 > 0 && var4 < 128 || var4 >= 160 && var4 <= 255) { // L: 72 - var2[var3] = (byte)var4; - } else if (var4 == 8364) { // L: 73 - var2[var3] = -128; - } else if (var4 == 8218) { // L: 74 - var2[var3] = -126; - } else if (var4 == 402) { // L: 75 - var2[var3] = -125; - } else if (var4 == 8222) { // L: 76 - var2[var3] = -124; - } else if (var4 == 8230) { // L: 77 - var2[var3] = -123; - } else if (var4 == 8224) { // L: 78 - var2[var3] = -122; - } else if (var4 == 8225) { // L: 79 - var2[var3] = -121; - } else if (var4 == 710) { // L: 80 - var2[var3] = -120; - } else if (var4 == 8240) { // L: 81 - var2[var3] = -119; - } else if (var4 == 352) { // L: 82 - var2[var3] = -118; - } else if (var4 == 8249) { // L: 83 - var2[var3] = -117; - } else if (var4 == 338) { // L: 84 - var2[var3] = -116; - } else if (var4 == 381) { // L: 85 - var2[var3] = -114; - } else if (var4 == 8216) { // L: 86 - var2[var3] = -111; - } else if (var4 == 8217) { // L: 87 - var2[var3] = -110; - } else if (var4 == 8220) { // L: 88 - var2[var3] = -109; - } else if (var4 == 8221) { // L: 89 - var2[var3] = -108; - } else if (var4 == 8226) { // L: 90 - var2[var3] = -107; - } else if (var4 == 8211) { // L: 91 - var2[var3] = -106; - } else if (var4 == 8212) { // L: 92 - var2[var3] = -105; - } else if (var4 == 732) { // L: 93 - var2[var3] = -104; - } else if (var4 == 8482) { // L: 94 - var2[var3] = -103; - } else if (var4 == 353) { // L: 95 - var2[var3] = -102; - } else if (var4 == 8250) { // L: 96 - var2[var3] = -101; - } else if (var4 == 339) { // L: 97 - var2[var3] = -100; - } else if (var4 == 382) { // L: 98 - var2[var3] = -98; - } else if (var4 == 376) { // L: 99 - var2[var3] = -97; - } else { - var2[var3] = 63; // L: 100 - } + @Export("ItemContainer_getCount") + static int ItemContainer_getCount(int var0, int var1) { + ItemContainer var2 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); + if (var2 == null) { + return 0; + } else { + return var1 >= 0 && var1 < var2.quantities.length ? var2.quantities[var1] : 0; } + } - return var2; // L: 102 + @ObfuscatedName("jh") + @ObfuscatedSignature( + descriptor = "(Lhe;I)Z", + garbageValue = "-2010469963" + ) + @Export("runCs1") + static final boolean runCs1(Widget var0) { + if (var0.cs1Comparisons == null) { + return false; + } else { + for (int var1 = 0; var1 < var0.cs1Comparisons.length; ++var1) { + int var2 = HealthBarDefinition.method4512(var0, var1); + int var3 = var0.cs1ComparisonValues[var1]; + if (var0.cs1Comparisons[var1] == 2) { + if (var2 >= var3) { + return false; + } + } else if (var0.cs1Comparisons[var1] == 3) { + if (var2 <= var3) { + return false; + } + } else if (var0.cs1Comparisons[var1] == 4) { + if (var2 == var3) { + return false; + } + } else if (var3 != var2) { + return false; + } + } + + return true; + } } } diff --git a/runescape-client/src/main/java/class89.java b/runescape-client/src/main/java/class89.java index f24961da29..a03f685e0d 100644 --- a/runescape-client/src/main/java/class89.java +++ b/runescape-client/src/main/java/class89.java @@ -1,120 +1,154 @@ import java.math.BigInteger; import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cn") +@ObfuscatedName("cr") public class class89 { - @ObfuscatedName("z") - static final BigInteger field1166; - @ObfuscatedName("q") - static final BigInteger field1167; - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "Llw;" + @ObfuscatedName("rz") + @ObfuscatedGetter( + intValue = -1242433920 ) - static Bounds field1163; + static int field1140; + @ObfuscatedName("t") + static final BigInteger field1147; + @ObfuscatedName("j") + static final BigInteger field1142; static { - field1166 = new BigInteger("80782894952180643741752986186714059433953886149239752893425047584684715842049"); // L: 20 - field1167 = new BigInteger("7237300117305667488707183861728052766358166655052137727439795191253340127955075499635575104901523446809299097934591732635674173519120047404024393881551683"); // L: 21 + field1147 = new BigInteger("80782894952180643741752986186714059433953886149239752893425047584684715842049"); + field1142 = new BigInteger("7237300117305667488707183861728052766358166655052137727439795191253340127955075499635575104901523446809299097934591732635674173519120047404024393881551683"); } - @ObfuscatedName("z") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(II)Lbk;", - garbageValue = "971686415" + descriptor = "([Ljava/lang/String;[SIII)V", + garbageValue = "-483488480" ) - @Export("Messages_getMessage") - static Message Messages_getMessage(int var0) { - return (Message)Messages.Messages_hashTable.get((long)var0); // L: 44 - } + @Export("sortItemsByName") + public static void sortItemsByName(String[] var0, short[] var1, int var2, int var3) { + if (var2 < var3) { + int var4 = (var3 + var2) / 2; + int var5 = var2; + String var6 = var0[var4]; + var0[var4] = var0[var3]; + var0[var3] = var6; + short var7 = var1[var4]; + var1[var4] = var1[var3]; + var1[var3] = var7; - @ObfuscatedName("k") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "39" - ) - static void method2163() { - Players.Players_count = 0; // L: 616 + for (int var8 = var2; var8 < var3; ++var8) { + if (var6 == null || var0[var8] != null && var0[var8].compareTo(var6) < (var8 & 1)) { + String var9 = var0[var8]; + var0[var8] = var0[var5]; + var0[var5] = var9; + short var10 = var1[var8]; + var1[var8] = var1[var5]; + var1[var5++] = var10; + } + } - for (int var0 = 0; var0 < 2048; ++var0) { // L: 617 - Players.field1284[var0] = null; // L: 618 - Players.field1295[var0] = 1; // L: 619 + var0[var3] = var0[var5]; + var0[var5] = var6; + var1[var3] = var1[var5]; + var1[var5] = var7; + sortItemsByName(var0, var1, var2, var5 - 1); + sortItemsByName(var0, var1, var5 + 1, var3); } - } // L: 621 + } - @ObfuscatedName("eg") + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "(Lib;Ljava/lang/String;Ljava/lang/String;I)[Llo;", + garbageValue = "-1519109689" + ) + public static IndexedSprite[] method2123(AbstractArchive var0, String var1, String var2) { + int var3 = var0.getGroupId(var1); + int var4 = var0.getFileId(var3, var2); + IndexedSprite[] var5; + if (!class304.method5363(var0, var3, var4)) { + var5 = null; + } else { + IndexedSprite[] var7 = new IndexedSprite[class336.SpriteBuffer_spriteCount]; + + for (int var8 = 0; var8 < class336.SpriteBuffer_spriteCount; ++var8) { + IndexedSprite var9 = var7[var8] = new IndexedSprite(); + var9.width = DirectByteArrayCopier.SpriteBuffer_spriteWidth; + var9.height = class336.SpriteBuffer_spriteHeight; + var9.xOffset = class336.SpriteBuffer_xOffsets[var8]; + var9.yOffset = class336.SpriteBuffer_yOffsets[var8]; + var9.subWidth = class336.SpriteBuffer_spriteWidths[var8]; + var9.subHeight = class336.SpriteBuffer_spriteHeights[var8]; + var9.palette = class336.SpriteBuffer_spritePalette; + var9.pixels = GrandExchangeEvents.SpriteBuffer_pixels[var8]; + } + + class336.SpriteBuffer_xOffsets = null; + class336.SpriteBuffer_yOffsets = null; + class336.SpriteBuffer_spriteWidths = null; + class336.SpriteBuffer_spriteHeights = null; + class336.SpriteBuffer_spritePalette = null; + GrandExchangeEvents.SpriteBuffer_pixels = null; + var5 = var7; + } + + return var5; + } + + @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1081555887" + garbageValue = "-1990775275" ) - @Export("logOut") - static final void logOut() { - Client.packetWriter.close(); // L: 2933 - NetFileRequest.method4292(); // L: 2935 - MidiPcmStream.method3970(); // L: 2936 - KitDefinition.KitDefinition_cached.clear(); // L: 2938 - ObjectDefinition.ObjectDefinition_cached.clear(); // L: 2941 - ObjectDefinition.ObjectDefinition_cachedModelData.clear(); // L: 2942 - ObjectDefinition.ObjectDefinition_cachedEntities.clear(); // L: 2943 - ObjectDefinition.ObjectDefinition_cachedModels.clear(); // L: 2944 - TileItem.method2239(); // L: 2946 - class200.method3803(); // L: 2947 - SequenceDefinition.SequenceDefinition_cached.clear(); // L: 2949 - SequenceDefinition.SequenceDefinition_cachedFrames.clear(); // L: 2950 - Projectile.method2228(); // L: 2952 - class234.method4261(); // L: 2953 - MouseRecorder.method1283(); // L: 2954 - GrandExchangeOfferAgeComparator.method242(); // L: 2955 - WorldMapIcon_0.method297(); // L: 2956 - StructDefinition.method4699(); // L: 2957 - ParamDefinition.ParamDefinition_cached.clear(); // L: 2959 - class13.method150(); // L: 2961 - WorldMapIcon_1.method398(); // L: 2962 - Widget.Widget_cachedSprites.clear(); // L: 2964 - Widget.Widget_cachedModels.clear(); // L: 2965 - Widget.Widget_cachedFonts.clear(); // L: 2966 - Widget.Widget_cachedSpriteMasks.clear(); // L: 2967 - ((TextureProvider)Rasterizer3D.Rasterizer3D_textureLoader).clear(); // L: 2969 - Script.Script_cached.clear(); // L: 2970 - MenuAction.archive0.clearFiles(); // L: 2971 - WorldMapManager.archive1.clearFiles(); // L: 2972 - FaceNormal.archive3.clearFiles(); // L: 2973 - Username.archive4.clearFiles(); // L: 2974 - Varcs.archive5.clearFiles(); // L: 2975 - ApproximateRouteStrategy.archive6.clearFiles(); // L: 2976 - class236.archive7.clearFiles(); // L: 2977 - GrandExchangeOffer.archive8.clearFiles(); // L: 2978 - WorldMapData_1.archive9.clearFiles(); // L: 2979 - class281.archive10.clearFiles(); // L: 2980 - AbstractByteArrayCopier.archive11.clearFiles(); // L: 2981 - ViewportMouse.archive12.clearFiles(); // L: 2982 - ModeWhere.scene.clear(); // L: 2984 + static void method2122() { + if (Login.clearLoginScreen) { + WorldMapEvent.titleboxSprite = null; + Login.titlebuttonSprite = null; + GZipDecompressor.runesSprite = null; + class25.leftTitleSprite = null; + class224.rightTitleSprite = null; + class224.logoSprite = null; + Login.title_muteSprite = null; + DirectByteArrayCopier.options_buttons_0Sprite = null; + ItemContainer.options_buttons_2Sprite = null; + class301.worldSelectBackSprites = null; + class90.worldSelectFlagSprites = null; + WorldMapSectionType.worldSelectArrows = null; + class349.worldSelectStars = null; + class9.field42 = null; + class1.loginScreenRunesAnimation.method1877(); + SecureRandomCallable.method1220(2); + SoundSystem.method2564(true); + Login.clearLoginScreen = false; + } + } - for (int var0 = 0; var0 < 4; ++var0) { // L: 2985 - Client.collisionMaps[var0].clear(); + @ObfuscatedName("js") + @ObfuscatedSignature( + descriptor = "(IIIIII)V", + garbageValue = "-373616735" + ) + @Export("drawScrollBar") + static final void drawScrollBar(int var0, int var1, int var2, int var3, int var4) { + InterfaceParent.scrollBarSprites[0].drawAt(var0, var1); + InterfaceParent.scrollBarSprites[1].drawAt(var0, var3 + var1 - 16); + Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1 + 16, 16, var3 - 32, Client.field711); + int var5 = var3 * (var3 - 32) / var4; + if (var5 < 8) { + var5 = 8; } - System.gc(); // L: 2986 - VertexNormal.method3133(2); // L: 2987 - Client.currentTrackGroupId = -1; // L: 2988 - Client.field916 = false; // L: 2989 - - for (ObjectSound var1 = (ObjectSound)ObjectSound.objectSounds.last(); var1 != null; var1 = (ObjectSound)ObjectSound.objectSounds.previous()) { // L: 2991 - if (var1.stream1 != null) { // L: 2992 - GrandExchangeEvents.pcmStreamMixer.removeSubStream(var1.stream1); // L: 2993 - var1.stream1 = null; // L: 2994 - } - - if (var1.stream2 != null) { // L: 2996 - GrandExchangeEvents.pcmStreamMixer.removeSubStream(var1.stream2); // L: 2997 - var1.stream2 = null; // L: 2998 - } - } - - ObjectSound.objectSounds.clear(); // L: 3001 - BuddyRankComparator.updateGameState(10); // L: 3003 - } // L: 3004 + int var6 = (var3 - 32 - var5) * var2 / (var4 - var3); + Rasterizer2D.Rasterizer2D_fillRectangle(var0, var6 + var1 + 16, 16, var5, Client.field712); + Rasterizer2D.Rasterizer2D_drawVerticalLine(var0, var6 + var1 + 16, var5, Client.field714); + Rasterizer2D.Rasterizer2D_drawVerticalLine(var0 + 1, var6 + var1 + 16, var5, Client.field714); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(var0, var6 + var1 + 16, 16, Client.field714); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(var0, var6 + var1 + 17, 16, Client.field714); + Rasterizer2D.Rasterizer2D_drawVerticalLine(var0 + 15, var6 + var1 + 16, var5, Client.field713); + Rasterizer2D.Rasterizer2D_drawVerticalLine(var0 + 14, var6 + var1 + 17, var5 - 1, Client.field713); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(var0, var5 + var6 + var1 + 15, 16, Client.field713); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(var0 + 1, var6 + var5 + var1 + 14, 15, Client.field713); + } } diff --git a/runescape-client/src/main/java/class9.java b/runescape-client/src/main/java/class9.java index e8ef75976b..4d51ef4804 100644 --- a/runescape-client/src/main/java/class9.java +++ b/runescape-client/src/main/java/class9.java @@ -6,287 +6,132 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("t") +@ObfuscatedName("z") public class class9 { - @ObfuscatedName("f") - ExecutorService field44; - @ObfuscatedName("b") - Future field41; - @ObfuscatedName("l") + @ObfuscatedName("j") + static byte[][][] field40; + @ObfuscatedName("n") @ObfuscatedSignature( - descriptor = "Lkb;" + descriptor = "[[Lhe;" ) - final Buffer field43; - @ObfuscatedName("m") + @Export("Widget_interfaceComponents") + public static Widget[][] Widget_interfaceComponents; + @ObfuscatedName("bc") @ObfuscatedSignature( - descriptor = "Ln;" + descriptor = "Llo;" ) - final class12 field40; + static IndexedSprite field42; + @ObfuscatedName("h") + ExecutorService field39; + @ObfuscatedName("v") + Future field43; + @ObfuscatedName("x") + @ObfuscatedSignature( + descriptor = "Lkj;" + ) + final Buffer field41; + @ObfuscatedName("w") + @ObfuscatedSignature( + descriptor = "Lm;" + ) + final class12 field38; @ObfuscatedSignature( - descriptor = "(Lkb;Ln;)V" + descriptor = "(Lkj;Lm;)V" ) public class9(Buffer var1, class12 var2) { - this.field44 = Executors.newSingleThreadExecutor(); // L: 10 - this.field43 = var1; - this.field40 = var2; - this.method129(); // L: 18 + this.field39 = Executors.newSingleThreadExecutor(); + this.field41 = var1; + this.field38 = var2; + this.method96(); } - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "208933439" + garbageValue = "139189298" ) - public boolean method120() { - return this.field41.isDone(); + public boolean method112() { + return this.field43.isDone(); } - @ObfuscatedName("b") + @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1441030159" + garbageValue = "-1420165485" ) - public void method121() { - this.field44.shutdown(); - this.field44 = null; + public void method97() { + this.field39.shutdown(); + this.field39 = null; } - @ObfuscatedName("l") + @ObfuscatedName("x") @ObfuscatedSignature( - descriptor = "(I)Lkb;", - garbageValue = "590307722" + descriptor = "(B)Lkj;", + garbageValue = "60" ) - public Buffer method122() { + public Buffer method98() { try { - return (Buffer)this.field41.get(); - } catch (Exception var2) { // L: 34 - return null; // L: 35 + return (Buffer)this.field43.get(); + } catch (Exception var2) { + return null; } } - @ObfuscatedName("m") + @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-2106026130" + garbageValue = "-787508892" ) - void method129() { - this.field41 = this.field44.submit(new class8(this, this.field43, this.field40)); // L: 40 - } // L: 41 + void method96() { + this.field43 = this.field39.submit(new class8(this, this.field41, this.field38)); + } - @ObfuscatedName("f") + @ObfuscatedName("i") @ObfuscatedSignature( - descriptor = "(CB)Z", - garbageValue = "-47" + descriptor = "(IIB)I", + garbageValue = "20" ) - static final boolean method124(char var0) { - if (Character.isISOControl(var0)) { // L: 16 - return false; - } else if (class3.isAlphaNumeric(var0)) { // L: 17 - return true; + static final int method101(int var0, int var1) { + if (var0 == -2) { + return 12345678; + } else if (var0 == -1) { + if (var1 < 2) { + var1 = 2; + } else if (var1 > 126) { + var1 = 126; + } + + return var1; } else { - char[] var1 = class349.field4075; // L: 19 - - int var2; - char var3; - for (var2 = 0; var2 < var1.length; ++var2) { // L: 20 - var3 = var1[var2]; // L: 21 - if (var0 == var3) { // L: 22 - return true; - } + var1 = (var0 & 127) * var1 / 128; + if (var1 < 2) { + var1 = 2; + } else if (var1 > 126) { + var1 = 126; } - var1 = class349.field4073; // L: 26 - - for (var2 = 0; var2 < var1.length; ++var2) { // L: 27 - var3 = var1[var2]; // L: 28 - if (var0 == var3) { - return true; // L: 29 - } - } - - return false; // L: 32 + return (var0 & 65408) + var1; } } - @ObfuscatedName("q") + @ObfuscatedName("kd") @ObfuscatedSignature( - descriptor = "(Lks;IS)Z", - garbageValue = "21881" + descriptor = "(B)V", + garbageValue = "-24" ) - @Export("updateExternalPlayer") - static boolean updateExternalPlayer(PacketBuffer var0, int var1) { - int var2 = var0.readBits(2); // L: 541 - int var3; - int var4; - int var7; - int var8; - int var9; - int var10; - if (var2 == 0) { // L: 542 - if (var0.readBits(1) != 0) { // L: 543 - updateExternalPlayer(var0, var1); - } - - var3 = var0.readBits(13); // L: 544 - var4 = var0.readBits(13); // L: 545 - boolean var12 = var0.readBits(1) == 1; // L: 546 - if (var12) { // L: 547 - Players.Players_pendingUpdateIndices[++Players.Players_pendingUpdateCount - 1] = var1; - } - - if (Client.players[var1] != null) { // L: 548 - throw new RuntimeException(); // L: 549 - } else { - Player var11 = Client.players[var1] = new Player(); // L: 551 - var11.index = var1; // L: 552 - if (Players.field1284[var1] != null) { // L: 553 - var11.read(Players.field1284[var1]); - } - - var11.orientation = Players.Players_orientations[var1]; // L: 554 - var11.targetIndex = Players.Players_targetIndices[var1]; // L: 555 - var7 = Players.Players_regions[var1]; // L: 556 - var8 = var7 >> 28; // L: 557 - var9 = var7 >> 14 & 255; // L: 558 - var10 = var7 & 255; // L: 559 - var11.pathTraversed[0] = Players.field1295[var1]; // L: 560 - var11.plane = (byte)var8; // L: 561 - var11.resetPath((var9 << 13) + var3 - FloorDecoration.baseX, (var10 << 13) + var4 - WorldMapData_0.baseY); // L: 562 - var11.field664 = false; // L: 563 - return true; // L: 564 - } - } else if (var2 == 1) { // L: 566 - var3 = var0.readBits(2); // L: 567 - var4 = Players.Players_regions[var1]; // L: 568 - Players.Players_regions[var1] = (var4 & 268435455) + (((var4 >> 28) + var3 & 3) << 28); // L: 569 - return false; // L: 570 - } else { - int var5; - int var6; - if (var2 == 2) { // L: 572 - var3 = var0.readBits(5); // L: 573 - var4 = var3 >> 3; // L: 574 - var5 = var3 & 7; // L: 575 - var6 = Players.Players_regions[var1]; // L: 576 - var7 = (var6 >> 28) + var4 & 3; // L: 577 - var8 = var6 >> 14 & 255; // L: 578 - var9 = var6 & 255; // L: 579 - if (var5 == 0) { // L: 580 - --var8; // L: 581 - --var9; // L: 582 - } - - if (var5 == 1) { // L: 584 - --var9; - } - - if (var5 == 2) { // L: 585 - ++var8; // L: 586 - --var9; // L: 587 - } - - if (var5 == 3) { // L: 589 - --var8; - } - - if (var5 == 4) { // L: 590 - ++var8; - } - - if (var5 == 5) { // L: 591 - --var8; // L: 592 - ++var9; // L: 593 - } - - if (var5 == 6) { // L: 595 - ++var9; - } - - if (var5 == 7) { // L: 596 - ++var8; // L: 597 - ++var9; // L: 598 - } - - Players.Players_regions[var1] = (var8 << 14) + var9 + (var7 << 28); // L: 600 - return false; // L: 601 - } else { - var3 = var0.readBits(18); // L: 603 - var4 = var3 >> 16; // L: 604 - var5 = var3 >> 8 & 255; // L: 605 - var6 = var3 & 255; // L: 606 - var7 = Players.Players_regions[var1]; // L: 607 - var8 = (var7 >> 28) + var4 & 3; // L: 608 - var9 = var5 + (var7 >> 14) & 255; // L: 609 - var10 = var6 + var7 & 255; // L: 610 - Players.Players_regions[var1] = (var9 << 14) + var10 + (var8 << 28); // L: 611 - return false; // L: 612 - } - } - } - - @ObfuscatedName("c") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1826644624" - ) - static void method132() { - Iterator var0 = Messages.Messages_hashTable.iterator(); // L: 61 + @Export("FriendSystem_invalidateIgnoreds") + static final void FriendSystem_invalidateIgnoreds() { + Iterator var0 = Messages.Messages_hashTable.iterator(); while (var0.hasNext()) { - Message var1 = (Message)var0.next(); // L: 62 - var1.clearIsFromIgnored(); // L: 64 + Message var1 = (Message)var0.next(); + var1.clearIsFromIgnored(); } - } // L: 67 - - @ObfuscatedName("fv") - @ObfuscatedSignature( - descriptor = "(Lht;III)V", - garbageValue = "549022721" - ) - @Export("checkIfMinimapClicked") - static final void checkIfMinimapClicked(Widget var0, int var1, int var2) { - if (Client.minimapState == 0 || Client.minimapState == 3) { // L: 3627 - if (!Client.isMenuOpen && (MouseHandler.MouseHandler_lastButton == 1 || !MusicPatchNode.mouseCam && MouseHandler.MouseHandler_lastButton == 4)) { // L: 3628 - SpriteMask var3 = var0.getSpriteMask(true); // L: 3629 - if (var3 == null) { // L: 3630 - return; - } - - int var4 = MouseHandler.MouseHandler_lastPressedX - var1; // L: 3631 - int var5 = MouseHandler.MouseHandler_lastPressedY - var2; // L: 3632 - if (var3.contains(var4, var5)) { // L: 3633 - var4 -= var3.width / 2; // L: 3634 - var5 -= var3.height / 2; // L: 3635 - int var6 = Client.camAngleY & 2047; // L: 3636 - int var7 = Rasterizer3D.Rasterizer3D_sine[var6]; // L: 3637 - int var8 = Rasterizer3D.Rasterizer3D_cosine[var6]; // L: 3638 - int var9 = var5 * var7 + var4 * var8 >> 11; // L: 3639 - int var10 = var5 * var8 - var7 * var4 >> 11; // L: 3640 - int var11 = var9 + PlayerType.localPlayer.x >> 7; // L: 3641 - int var12 = PlayerType.localPlayer.y - var10 >> 7; // L: 3642 - PacketBufferNode var13 = class4.getPacketBufferNode(ClientPacket.field2318, Client.packetWriter.isaacCipher); // L: 3644 - var13.packetBuffer.writeByte(18); // L: 3645 - var13.packetBuffer.method5674(var11 + FloorDecoration.baseX); // L: 3646 - var13.packetBuffer.writeByte(KeyHandler.KeyHandler_pressedKeys[82] ? (KeyHandler.KeyHandler_pressedKeys[81] ? 2 : 1) : 0); // L: 3647 - var13.packetBuffer.writeShortLE(var12 + WorldMapData_0.baseY); // L: 3648 - var13.packetBuffer.writeByte(var4); // L: 3649 - var13.packetBuffer.writeByte(var5); // L: 3650 - var13.packetBuffer.writeShort(Client.camAngleY); // L: 3651 - var13.packetBuffer.writeByte(57); // L: 3652 - var13.packetBuffer.writeByte(0); // L: 3653 - var13.packetBuffer.writeByte(0); // L: 3654 - var13.packetBuffer.writeByte(89); // L: 3655 - var13.packetBuffer.writeShort(PlayerType.localPlayer.x); // L: 3656 - var13.packetBuffer.writeShort(PlayerType.localPlayer.y); // L: 3657 - var13.packetBuffer.writeByte(63); // L: 3658 - Client.packetWriter.addNode(var13); // L: 3659 - Client.destinationX = var11; // L: 3660 - Client.destinationY = var12; // L: 3661 - } - } - + if (WorldMapArea.clanChat != null) { + WorldMapArea.clanChat.invalidateIgnoreds(); } - } // L: 3664 + + } } diff --git a/runescape-client/src/main/java/class90.java b/runescape-client/src/main/java/class90.java index ebd2c7d000..08e5038509 100644 --- a/runescape-client/src/main/java/class90.java +++ b/runescape-client/src/main/java/class90.java @@ -2,45 +2,51 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cw") +@ObfuscatedName("ch") public class class90 { - @ObfuscatedName("w") + @ObfuscatedName("bm") @ObfuscatedSignature( - descriptor = "Lkb;" + descriptor = "[Llo;" ) - @Export("NetCache_reference") - static Buffer NetCache_reference; + @Export("worldSelectFlagSprites") + static IndexedSprite[] worldSelectFlagSprites; - @ObfuscatedName("f") + @ObfuscatedName("h") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-246202754" + descriptor = "([Ljava/lang/CharSequence;III)Ljava/lang/String;", + garbageValue = "-540842250" ) - static int method2168() { - return 12; // L: 123 - } - - @ObfuscatedName("u") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "-214239745" - ) - @Export("Messages_getLastChatID") - static int Messages_getLastChatID(int var0) { - Message var1 = (Message)Messages.Messages_hashTable.get((long)var0); // L: 70 - if (var1 == null) { // L: 71 - return -1; + public static String method2125(CharSequence[] var0, int var1, int var2) { + if (var2 == 0) { + return ""; + } else if (var2 == 1) { + CharSequence var10 = var0[var1]; + return var10 == null ? "null" : var10.toString(); } else { - return var1.nextDual == Messages.Messages_queue.sentinel ? -1 : ((Message)var1.nextDual).count; // L: 72 73 + int var3 = var2 + var1; + int var4 = 0; + + for (int var5 = var1; var5 < var3; ++var5) { + CharSequence var9 = var0[var5]; + if (var9 == null) { + var4 += 4; + } else { + var4 += var9.length(); + } + } + + StringBuilder var8 = new StringBuilder(var4); + + for (int var6 = var1; var6 < var3; ++var6) { + CharSequence var7 = var0[var6]; + if (var7 == null) { + var8.append("null"); + } else { + var8.append(var7); + } + } + + return var8.toString(); } } - - @ObfuscatedName("bg") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)I", - garbageValue = "1147462173" - ) - public static int method2169(String var0) { - return var0.length() + 2; // L: 126 - } } diff --git a/runescape-client/src/main/java/class92.java b/runescape-client/src/main/java/class92.java index 67eeb877d5..a511d46232 100644 --- a/runescape-client/src/main/java/class92.java +++ b/runescape-client/src/main/java/class92.java @@ -1,45 +1,43 @@ -import java.io.IOException; import java.math.BigInteger; +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cq") +@ObfuscatedName("cl") public class class92 { - @ObfuscatedName("f") - static final BigInteger field1198; - @ObfuscatedName("b") - static final BigInteger field1197; + @ObfuscatedName("h") + static final BigInteger field1170; + @ObfuscatedName("v") + static final BigInteger field1168; + @ObfuscatedName("l") + static int[][] field1173; + @ObfuscatedName("e") + @Export("Tiles_lightness") + static int[] Tiles_lightness; + @ObfuscatedName("dc") + @ObfuscatedSignature( + descriptor = "Lil;" + ) + @Export("archive10") + static Archive archive10; static { - field1198 = new BigInteger("10001", 16); // L: 6 - field1197 = new BigInteger("a06bfdd9568298f630b8bd054ad4e6672231dffed57b38134e601756fa2a3443a6f0b423799b2d930bdc4c4213e63731504e130f4b4b1d5b21c8327e3f188eb1be3d8c1eca5ebe82c769bf3ef14b288fdd291fc951e5547262f62c171254701308d6106038c718cd10d503c59d12a4ed849a8eb4b3fae3f15212e22ae4918a4f", 16); // L: 7 + field1170 = new BigInteger("10001", 16); + field1168 = new BigInteger("a79020d1617f0ba919c482c16d3ca354b6f489c1fc0f8b7ae13f0b045d400a01909941833566aa78af9725aa374a64c5cab6a9b920c6d77d02e38c969a27c969e05a0b90b46b8bf8d6497f1f5128a7d2007dacc592ac40a393cffb7ed0283be246faabbb3d7b98bc6663678643cd33410b37d2dae42239bf606084415ee4fc97", 16); } - @ObfuscatedName("z") + @ObfuscatedName("v") @ObfuscatedSignature( - descriptor = "(B)[B", - garbageValue = "60" + descriptor = "(III)Lhe;", + garbageValue = "-100010964" ) - public static byte[] method2172() { - byte[] var0 = new byte[24]; // L: 310 - - try { - JagexCache.JagexCache_randomDat.seek(0L); // L: 312 - JagexCache.JagexCache_randomDat.readFully(var0); // L: 313 - - int var1; - for (var1 = 0; var1 < 24 && var0[var1] == 0; ++var1) { // L: 314 315 316 - } - - if (var1 >= 24) { - throw new IOException(); // L: 318 - } - } catch (Exception var4) { - for (int var2 = 0; var2 < 24; ++var2) { // L: 321 - var0[var2] = -1; - } + @Export("getWidgetChild") + public static Widget getWidgetChild(int var0, int var1) { + Widget var2 = CollisionMap.getWidget(var0); + if (var1 == -1) { + return var2; + } else { + return var2 != null && var2.children != null && var1 < var2.children.length ? var2.children[var1] : null; } - - return var0; // L: 323 } } diff --git a/runescape-client/src/main/java/net/runelite/rs/Opcodes.java b/runescape-client/src/main/java/net/runelite/rs/Opcodes.java index c7364a3db6..317b2a8c42 100644 --- a/runescape-client/src/main/java/net/runelite/rs/Opcodes.java +++ b/runescape-client/src/main/java/net/runelite/rs/Opcodes.java @@ -1,3 +1,4 @@ package net.runelite.rs; -public class Opcodes {} +public class Opcodes { +}