From 112a2bcba75d5ba9759bd64ab83b1b94af08bbd9 Mon Sep 17 00:00:00 2001 From: Lucas Date: Mon, 8 Jul 2019 17:46:10 +0200 Subject: [PATCH 1/2] more RSClient refactoring --- .../deob/updater/AnnotationCleaner.java | 4 + .../java/net/runelite/rs/api/RSClient.java | 2 +- .../src/main/java/AbstractWorldMapIcon.java | 24 +- runescape-client/src/main/java/Actor.java | 10 +- .../src/main/java/ArchiveLoader.java | 18 +- .../src/main/java/BoundaryObject.java | 2 +- .../src/main/java/ByteArrayPool.java | 6 +- .../src/main/java/Bzip2Decompressor.java | 20 +- .../java/{class211.java => Calendar.java} | 22 +- runescape-client/src/main/java/Canvas.java | 6 +- runescape-client/src/main/java/Client.java | 210 ++++----- .../java/DesktopPlatformInfoProvider.java | 6 +- .../main/java/DevicePcmPlayerProvider.java | 26 +- .../src/main/java/DynamicObject.java | 2 +- .../src/main/java/FloorOverlayDefinition.java | 8 +- .../main/java/FloorUnderlayDefinition.java | 4 +- runescape-client/src/main/java/FontName.java | 2 +- .../src/main/java/FriendSystem.java | 2 +- runescape-client/src/main/java/GameShell.java | 6 +- .../src/main/java/GrandExchangeEvent.java | 2 +- .../java/GrandExchangeOfferAgeComparator.java | 2 +- ...GrandExchangeOfferUnitPriceComparator.java | 2 +- .../src/main/java/HitSplatDefinition.java | 2 +- ...class266.java => HorizontalAlignment.java} | 11 +- runescape-client/src/main/java/Huffman.java | 77 ++-- .../src/main/java/Interpreter.java | 6 +- .../src/main/java/KitDefinition.java | 2 +- runescape-client/src/main/java/Login.java | 4 +- .../src/main/java/LoginPacket.java | 2 +- .../src/main/java/LoginScreenAnimation.java | 2 + .../src/main/java/MenuAction.java | 2 +- .../src/main/java/NPCDefinition.java | 4 +- .../src/main/java/NetFileRequest.java | 4 +- runescape-client/src/main/java/NetSocket.java | 2 +- .../src/main/java/ObjectDefinition.java | 2 +- runescape-client/src/main/java/Occluder.java | 3 +- .../src/main/java/PendingSpawn.java | 2 +- runescape-client/src/main/java/Player.java | 2 +- .../src/main/java/PlayerAppearance.java | 12 +- .../src/main/java/Rasterizer2D.java | 140 +++--- .../src/main/java/Rasterizer3D.java | 4 +- .../src/main/java/RouteStrategy.java | 2 + runescape-client/src/main/java/Scene.java | 6 +- .../src/main/java/ScriptEvent.java | 2 +- .../src/main/java/SecureRandomCallable.java | 6 +- .../src/main/java/SoundEffect.java | 3 +- .../src/main/java/StructDefinition.java | 52 +-- runescape-client/src/main/java/Texture.java | 6 +- .../src/main/java/TextureLoader.java | 3 +- .../src/main/java/TextureProvider.java | 7 +- .../src/main/java/UserComparator4.java | 2 +- runescape-client/src/main/java/Varcs.java | 4 +- .../src/main/java/VertexNormal.java | 4 +- .../{class249.java => VerticalAlignment.java} | 11 +- .../src/main/java/WorldMapArea.java | 12 +- .../src/main/java/WorldMapAreaData.java | 4 +- .../src/main/java/WorldMapCacheName.java | 4 +- .../src/main/java/WorldMapDecoration.java | 2 +- .../src/main/java/WorldMapDecorationType.java | 5 +- .../src/main/java/WorldMapElement.java | 25 +- .../src/main/java/WorldMapIcon1.java | 2 +- .../src/main/java/WorldMapIcon2.java | 2 +- .../src/main/java/WorldMapLabel.java | 2 +- .../src/main/java/WorldMapLabelSize.java | 10 +- .../src/main/java/WorldMapManager.java | 66 +-- .../{class22.java => WorldMapRectangle.java} | 19 +- .../src/main/java/WorldMapRegion.java | 139 +++--- .../src/main/java/WorldMapSection0.java | 367 +++++++++------- .../src/main/java/WorldMapSection1.java | 304 ++++++------- .../src/main/java/WorldMapSection2.java | 406 +++++++++--------- .../src/main/java/WorldMapSection3.java | 303 +++++++------ .../src/main/java/WorldMapSectionType.java | 30 +- runescape-client/src/main/java/class1.java | 10 +- runescape-client/src/main/java/class15.java | 4 +- runescape-client/src/main/java/class16.java | 24 +- runescape-client/src/main/java/class171.java | 114 ++--- runescape-client/src/main/java/class196.java | 2 +- runescape-client/src/main/java/class198.java | 2 +- runescape-client/src/main/java/class21.java | 12 +- runescape-client/src/main/java/class238.java | 4 +- runescape-client/src/main/java/class306.java | 2 +- runescape-client/src/main/java/class32.java | 2 +- runescape-client/src/main/java/class39.java | 2 +- runescape-client/src/main/java/class4.java | 16 +- runescape-client/src/main/java/class40.java | 14 +- runescape-client/src/main/java/class50.java | 8 +- runescape-client/src/main/java/class54.java | 12 +- 87 files changed, 1384 insertions(+), 1323 deletions(-) rename runescape-client/src/main/java/{class211.java => Calendar.java} (94%) rename runescape-client/src/main/java/{class266.java => HorizontalAlignment.java} (84%) rename runescape-client/src/main/java/{class249.java => VerticalAlignment.java} (78%) rename runescape-client/src/main/java/{class22.java => WorldMapRectangle.java} (88%) diff --git a/deobfuscator/src/test/java/net/runelite/deob/updater/AnnotationCleaner.java b/deobfuscator/src/test/java/net/runelite/deob/updater/AnnotationCleaner.java index dddc93c4d6..56d716cda2 100644 --- a/deobfuscator/src/test/java/net/runelite/deob/updater/AnnotationCleaner.java +++ b/deobfuscator/src/test/java/net/runelite/deob/updater/AnnotationCleaner.java @@ -45,6 +45,10 @@ public class AnnotationCleaner { assertEquals(c + " implements " + implementingName + " but is called " + c.getClassName(), implementingName, c.getClassName()); } + else + { + assertTrue(c + " isn't obfuscated but doesn't have @Implements", Deob.isObfuscated(c.getClassName())); + } for (Field f : c.getFields()) { 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 421bc5e64e..eba775f70e 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 @@ -978,7 +978,7 @@ public interface RSClient extends RSGameShell, Client @Import("Rasterizer2D_drawVerticalLine") void rasterizerDrawVerticalLine(int x, int y, int h, int rgb); - @Import("drawGradient") + @Import("Rasterizer2D_drawGradient") void rasterizerDrawGradient(int x, int y, int w, int h, int rgbTop, int rgbBottom); @Import("Rasterizer2D_fillRectangleAlpha") diff --git a/runescape-client/src/main/java/AbstractWorldMapIcon.java b/runescape-client/src/main/java/AbstractWorldMapIcon.java index 6eb7f5cc76..6fb6f20059 100644 --- a/runescape-client/src/main/java/AbstractWorldMapIcon.java +++ b/runescape-client/src/main/java/AbstractWorldMapIcon.java @@ -34,12 +34,14 @@ public abstract class AbstractWorldMapIcon { @ObfuscatedGetter( intValue = -521086143 ) - int field5; + @Export("screenX") + int screenX; @ObfuscatedName("x") @ObfuscatedGetter( intValue = -1065362217 ) - int field6; + @Export("screenY") + int screenY; @ObfuscatedSignature( signature = "(Lhu;Lhu;)V" @@ -109,38 +111,38 @@ public abstract class AbstractWorldMapIcon { WorldMapElement var3 = ViewportMouse.getWorldMapElement(this.getElement()); int var4 = this.vmethod397(); int var5 = this.vmethod398(); - switch(var3.field3287.field3528) { + switch(var3.horizontalAlignment.value) { case 0: - if (var1 >= this.field5 - var4 / 2 && var1 <= var4 / 2 + this.field5) { + if (var1 >= this.screenX - var4 / 2 && var1 <= var4 / 2 + this.screenX) { break; } return false; case 1: - if (var1 >= this.field5 && var1 < var4 + this.field5) { + if (var1 >= this.screenX && var1 < var4 + this.screenX) { break; } return false; case 2: - if (var1 <= this.field5 - var4 || var1 > this.field5) { + if (var1 <= this.screenX - var4 || var1 > this.screenX) { return false; } } - switch(var3.field3301.field3275) { + switch(var3.verticalAlignment.value) { case 0: - if (var2 <= this.field6 - var5 || var2 > this.field6) { + if (var2 <= this.screenY - var5 || var2 > this.screenY) { return false; } break; case 1: - if (var2 < this.field6 - var5 / 2 || var2 > var5 / 2 + this.field6) { + if (var2 < this.screenY - var5 / 2 || var2 > var5 / 2 + this.screenY) { return false; } break; case 2: - if (var2 < this.field6 || var2 >= var5 + this.field6) { + if (var2 < this.screenY || var2 >= var5 + this.screenY) { return false; } } @@ -156,7 +158,7 @@ public abstract class AbstractWorldMapIcon { ) boolean method21(int var1, int var2) { WorldMapLabel var3 = this.getLabel(); - return var3 == null ? false : (var1 >= this.field5 - var3.width / 2 && var1 <= var3.width / 2 + this.field5 ? var2 >= this.field6 && var2 <= var3.height + this.field6 : false); + return var3 == null ? false : (var1 >= this.screenX - var3.width / 2 && var1 <= var3.width / 2 + this.screenX ? var2 >= this.screenY && var2 <= var3.height + this.screenY : false); } @ObfuscatedName("es") diff --git a/runescape-client/src/main/java/Actor.java b/runescape-client/src/main/java/Actor.java index 12cc33ee48..5c22e661a8 100644 --- a/runescape-client/src/main/java/Actor.java +++ b/runescape-client/src/main/java/Actor.java @@ -919,7 +919,7 @@ public abstract class Actor extends Entity { var13 = class204.getWidgetChild(argument2, argument1); if (var13 != null) { Player.method1281(); - WorldMapDecoration.method350(argument2, argument1, class211.method4107(class1.getWidgetClickMask(var13)), var13.itemId); + WorldMapDecoration.method350(argument2, argument1, Calendar.method4107(class1.getWidgetClickMask(var13)), var13.itemId); Client.isItemSelected = 0; Client.selectedSpellActionName = class198.method3745(var13); if (Client.selectedSpellActionName == null) { @@ -967,7 +967,7 @@ public abstract class Actor extends Entity { if (Client.field127 == null) { TilePaint.method3060(argument2, argument1); Client.field127 = class204.getWidgetChild(argument2, argument1); - class22.method295(Client.field127); + WorldMapRectangle.method295(Client.field127); } } else if (opcode == 31) { var8 = Interpreter.method1915(ClientPacket.field285, Client.packetWriter.isaacCipher); @@ -1045,7 +1045,7 @@ public abstract class Actor extends Entity { HealthBarDefinition.selectedItemSlot = argument1; ServerPacket.selectedItemWidget = argument2; MenuAction.selectedItemId = argument0; - class22.method295(var13); + WorldMapRectangle.method295(var13); Client.selectedItemName = BufferedFile.colorStartTag(16748608) + Skills.getItemDefinition(argument0).name + BufferedFile.colorStartTag(16777215); if (Client.selectedItemName == null) { Client.selectedItemName = "null"; @@ -1327,7 +1327,7 @@ public abstract class Actor extends Entity { if (Client.isItemSelected != 0) { Client.isItemSelected = 0; - class22.method295(Huffman.getWidget(ServerPacket.selectedItemWidget)); + WorldMapRectangle.method295(Huffman.getWidget(ServerPacket.selectedItemWidget)); } if (Client.isSpellSelected) { @@ -1335,7 +1335,7 @@ public abstract class Actor extends Entity { } if (BoundaryObject.field40 != null && Client.field203 == 0) { - class22.method295(BoundaryObject.field40); + WorldMapRectangle.method295(BoundaryObject.field40); } } diff --git a/runescape-client/src/main/java/ArchiveLoader.java b/runescape-client/src/main/java/ArchiveLoader.java index 03c033e450..266e415c5b 100644 --- a/runescape-client/src/main/java/ArchiveLoader.java +++ b/runescape-client/src/main/java/ArchiveLoader.java @@ -92,7 +92,7 @@ public class ArchiveLoader { boolean var11; if (Login.worldSelectOpen) { if (class30.worldSelectBackSprites == null) { - class30.worldSelectBackSprites = class2.method20(WorldMapSection3.archive8, "sl_back", ""); + class30.worldSelectBackSprites = class2.method20(WorldMapSection1.archive8, "sl_back", ""); } Archive var12; @@ -100,7 +100,7 @@ public class ArchiveLoader { int var14; IndexedSprite[] var15; if (Frames.worldSelectFlagSprites == null) { - var12 = WorldMapSection3.archive8; + var12 = WorldMapSection1.archive8; var14 = var12.getGroupId("sl_flags"); var13 = var12.getFileId(var14, ""); if (!SpriteMask.loadSprite(var12, var14, var13)) { @@ -113,7 +113,7 @@ public class ArchiveLoader { } if (AttackOption.worldSelectArrows == null) { - var12 = WorldMapSection3.archive8; + var12 = WorldMapSection1.archive8; var14 = var12.getGroupId("sl_arrows"); var13 = var12.getFileId(var14, ""); if (!SpriteMask.loadSprite(var12, var14, var13)) { @@ -126,7 +126,7 @@ public class ArchiveLoader { } if (UrlRequest.worldSelectStars == null) { - var12 = WorldMapSection3.archive8; + var12 = WorldMapSection1.archive8; var14 = var12.getGroupId("sl_stars"); var13 = var12.getFileId(var14, ""); if (!SpriteMask.loadSprite(var12, var14, var13)) { @@ -139,16 +139,16 @@ public class ArchiveLoader { } if (SecureRandomFuture.worldSelectLeftSprite == null) { - SecureRandomFuture.worldSelectLeftSprite = MenuAction.loadIndexedSpriteByName(WorldMapSection3.archive8, "leftarrow", ""); + SecureRandomFuture.worldSelectLeftSprite = MenuAction.loadIndexedSpriteByName(WorldMapSection1.archive8, "leftarrow", ""); } if (NetSocket.worldSelectRightSprite == null) { - NetSocket.worldSelectRightSprite = MenuAction.loadIndexedSpriteByName(WorldMapSection3.archive8, "rightarrow", ""); + NetSocket.worldSelectRightSprite = MenuAction.loadIndexedSpriteByName(WorldMapSection1.archive8, "rightarrow", ""); } Rasterizer2D.Rasterizer2D_fillRectangle(Login.xPadding, 23, 765, 480, 0); - Rasterizer2D.drawGradient(Login.xPadding, 0, 125, 23, 12425273, 9135624); - Rasterizer2D.drawGradient(Login.xPadding + 125, 0, 640, 23, 5197647, 2697513); + Rasterizer2D.Rasterizer2D_drawGradient(Login.xPadding, 0, 125, 23, 0xbd9839, 0x8b6608); + Rasterizer2D.Rasterizer2D_drawGradient(Login.xPadding + 125, 0, 640, 23, 0x4f4f4f, 0x292929); var0.drawCentered("Select a world", Login.xPadding + 62, 15, 0, -1); if (UrlRequest.worldSelectStars != null) { UrlRequest.worldSelectStars[1].drawAt(Login.xPadding + 140, 1); @@ -700,7 +700,7 @@ public class ArchiveLoader { var1.drawCentered("Click to switch", var39 / 2 + var10, var41 / 2 + var34 + 12, 16777215, 0); } } else { - class277.field1144 = MenuAction.loadIndexedSpriteByName(WorldMapSection3.archive8, "sl_button", ""); + class277.field1144 = MenuAction.loadIndexedSpriteByName(WorldMapSection1.archive8, "sl_button", ""); } } } diff --git a/runescape-client/src/main/java/BoundaryObject.java b/runescape-client/src/main/java/BoundaryObject.java index 217a8415c8..f1a17d3d5b 100644 --- a/runescape-client/src/main/java/BoundaryObject.java +++ b/runescape-client/src/main/java/BoundaryObject.java @@ -81,7 +81,7 @@ public final class BoundaryObject { static final void doCheat(String var0) { if (var0.equalsIgnoreCase("toggleroof")) { ReflectionCheck.clientPreferences.roofsHidden = !ReflectionCheck.clientPreferences.roofsHidden; - WorldMapSection0.savePreferences(); + WorldMapSection3.savePreferences(); if (ReflectionCheck.clientPreferences.roofsHidden) { WorldMapIcon1.addGameMessage(99, "", "Roofs are now all hidden"); } else { diff --git a/runescape-client/src/main/java/ByteArrayPool.java b/runescape-client/src/main/java/ByteArrayPool.java index 2e8ad5df4a..1135e87bb1 100644 --- a/runescape-client/src/main/java/ByteArrayPool.java +++ b/runescape-client/src/main/java/ByteArrayPool.java @@ -83,9 +83,9 @@ public class ByteArrayPool { if (field55[var3] != var0) { if (var0 < field55[var3]) { } - } else if (WorldMapSection2.field1082[var3] > 0) { - byte[] var4 = RouteStrategy.field760[var3][--WorldMapSection2.field1082[var3]]; - RouteStrategy.field760[var3][WorldMapSection2.field1082[var3]] = null; + } else if (WorldMapSection0.field1082[var3] > 0) { + byte[] var4 = RouteStrategy.field760[var3][--WorldMapSection0.field1082[var3]]; + RouteStrategy.field760[var3][WorldMapSection0.field1082[var3]] = null; return var4; } } diff --git a/runescape-client/src/main/java/Bzip2Decompressor.java b/runescape-client/src/main/java/Bzip2Decompressor.java index 8c452325a4..e174e355e2 100644 --- a/runescape-client/src/main/java/Bzip2Decompressor.java +++ b/runescape-client/src/main/java/Bzip2Decompressor.java @@ -44,7 +44,7 @@ public final class Bzip2Decompressor { int var2 = var0.field70; int var3 = var0.field78; int var4 = var0.field76; - int[] var5 = WorldMapSection0.field1056; + int[] var5 = WorldMapSection3.field1056; int var6 = var0.field75; byte[] var7 = var0.field65; int var8 = var0.field66; @@ -159,7 +159,7 @@ public final class Bzip2Decompressor { var0.field70 = var2; var0.field78 = var3; var0.field76 = var4; - WorldMapSection0.field1056 = var5; + WorldMapSection3.field1056 = var5; var0.field75 = var6; var0.field65 = var7; var0.field66 = var8; @@ -194,8 +194,8 @@ public final class Bzip2Decompressor { int[] var21 = null; int[] var22 = null; var0.field73 = 1; - if (WorldMapSection0.field1056 == null) { - WorldMapSection0.field1056 = new int[var0.field73 * 100000]; + if (WorldMapSection3.field1056 == null) { + WorldMapSection3.field1056 = new int[var0.field73 * 100000]; } boolean var23 = true; @@ -434,7 +434,7 @@ public final class Bzip2Decompressor { } var10003 = var0.field77[var0.field83[var24 & 255] & 255]++; - WorldMapSection0.field1056[var39] = var0.field83[var24 & 255] & 255; + WorldMapSection3.field1056[var39] = var0.field83[var24 & 255] & 255; ++var39; if (var41 == 0) { ++var53; @@ -493,7 +493,7 @@ public final class Bzip2Decompressor { var46 = var0.field77; for (var46[var24 & 255] += var48; var48 > 0; --var48) { - WorldMapSection0.field1056[var39] = var24 & 255; + WorldMapSection3.field1056[var39] = var24 & 255; ++var39; } } @@ -513,16 +513,16 @@ public final class Bzip2Decompressor { } for (var25 = 0; var25 < var39; ++var25) { - var24 = (byte)(WorldMapSection0.field1056[var25] & 255); - var46 = WorldMapSection0.field1056; + var24 = (byte)(WorldMapSection3.field1056[var25] & 255); + var46 = WorldMapSection3.field1056; var48 = var0.field79[var24 & 255]; var46[var48] |= var25 << 8; ++var0.field79[var24 & 255]; } - var0.field75 = WorldMapSection0.field1056[var0.field74] >> 8; + var0.field75 = WorldMapSection3.field1056[var0.field74] >> 8; var0.field78 = 0; - var0.field75 = WorldMapSection0.field1056[var0.field75]; + var0.field75 = WorldMapSection3.field1056[var0.field75]; var0.field76 = (byte)(var0.field75 & 255); var0.field75 >>= 8; ++var0.field78; diff --git a/runescape-client/src/main/java/class211.java b/runescape-client/src/main/java/Calendar.java similarity index 94% rename from runescape-client/src/main/java/class211.java rename to runescape-client/src/main/java/Calendar.java index b017a4cdb1..0d00a8f7fa 100644 --- a/runescape-client/src/main/java/class211.java +++ b/runescape-client/src/main/java/Calendar.java @@ -1,19 +1,23 @@ -import java.util.Calendar; import java.util.Date; import java.util.TimeZone; 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("hg") -public class class211 { +@Implements("Calendar") +public class Calendar { @ObfuscatedName("m") - static final String[][] field1124; + @Export("MONTH_NAMES_ENGLISH_GERMAN") + static final String[][] MONTH_NAMES_ENGLISH_GERMAN; @ObfuscatedName("f") - static final String[] field1125; + @Export("DAYS_OF_THE_WEEK") + static final String[] DAYS_OF_THE_WEEK; @ObfuscatedName("q") - static Calendar field1126; + @Export("Calendar_calendar") + static java.util.Calendar Calendar_calendar; @ObfuscatedName("em") @ObfuscatedSignature( signature = "Llg;" @@ -210,9 +214,9 @@ public class class211 { } static { - field1124 = 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"}}; - field1125 = new String[]{"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"}; - Calendar.getInstance(TimeZone.getTimeZone("Europe/London")); - field1126 = Calendar.getInstance(TimeZone.getTimeZone("GMT")); + 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"}}; + DAYS_OF_THE_WEEK = new String[]{"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"}; + java.util.Calendar.getInstance(TimeZone.getTimeZone("Europe/London")); + Calendar_calendar = java.util.Calendar.getInstance(TimeZone.getTimeZone("GMT")); } } diff --git a/runescape-client/src/main/java/Canvas.java b/runescape-client/src/main/java/Canvas.java index fa8f279fc6..2908ce3715 100644 --- a/runescape-client/src/main/java/Canvas.java +++ b/runescape-client/src/main/java/Canvas.java @@ -157,7 +157,7 @@ public final class Canvas extends java.awt.Canvas { GrandExchangeOfferAgeComparator.field1111 = var10; } - class22.method295(var5); + WorldMapRectangle.method295(var5); return 1; } } @@ -167,12 +167,12 @@ public final class Canvas extends java.awt.Canvas { var6 = var2 ? WorldMapIcon1.field1030 : GrandExchangeOfferAgeComparator.field1111; var5 = Huffman.getWidget(var6.id); var5.children[var6.childIndex] = null; - class22.method295(var5); + WorldMapRectangle.method295(var5); return 1; } else if (var0 == ScriptOpcodes.CC_DELETEALL) { var6 = Huffman.getWidget(Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]); var6.children = null; - class22.method295(var6); + WorldMapRectangle.method295(var6); return 1; } else if (var0 != ScriptOpcodes.CC_FIND) { if (var0 == ScriptOpcodes.IF_FIND) { diff --git a/runescape-client/src/main/java/Client.java b/runescape-client/src/main/java/Client.java index 77c7b0767f..8a104b9752 100644 --- a/runescape-client/src/main/java/Client.java +++ b/runescape-client/src/main/java/Client.java @@ -1843,19 +1843,19 @@ public final class Client extends GameShell implements Usernamed { if (var30 > 0) { var43 = var30 - 1; - var44 = (FloorOverlayDefinition)FloorOverlayDefinition.field664.get((long)var43); + var44 = (FloorOverlayDefinition)FloorOverlayDefinition.FloorOverlayDefinition_cached.get((long)var43); FloorOverlayDefinition var46; if (var44 != null) { var46 = var44; } else { - byte[] var47 = FloorOverlayDefinition.field663.takeFile(4, var43); + byte[] var47 = FloorOverlayDefinition.FloorOverlayDefinition_archive.takeFile(4, var43); var44 = new FloorOverlayDefinition(); if (var47 != null) { var44.decode(new Buffer(var47), var43); } var44.postDecode(); - FloorOverlayDefinition.field664.put(var44, (long)var43); + FloorOverlayDefinition.FloorOverlayDefinition_cached.put(var44, (long)var43); var46 = var44; } @@ -1881,18 +1881,18 @@ public final class Client extends GameShell implements Usernamed { var42 = class32.field1157[var6][var12][var18] + 1; byte var67 = class307.field1155[var6][var12][var18]; int var68 = var30 - 1; - FloorOverlayDefinition var69 = (FloorOverlayDefinition)FloorOverlayDefinition.field664.get((long)var68); + FloorOverlayDefinition var69 = (FloorOverlayDefinition)FloorOverlayDefinition.FloorOverlayDefinition_cached.get((long)var68); if (var69 != null) { var44 = var69; } else { - byte[] var48 = FloorOverlayDefinition.field663.takeFile(4, var68); + byte[] var48 = FloorOverlayDefinition.FloorOverlayDefinition_archive.takeFile(4, var68); var69 = new FloorOverlayDefinition(); if (var48 != null) { var69.decode(new Buffer(var48), var68); } var69.postDecode(); - FloorOverlayDefinition.field664.put(var69, (long)var68); + FloorOverlayDefinition.FloorOverlayDefinition_cached.put(var69, (long)var68); var44 = var69; } @@ -1902,7 +1902,7 @@ public final class Client extends GameShell implements Usernamed { int var51; int var52; if (var70 >= 0) { - var50 = Rasterizer3D.Rasterizer3D_textureLoader.vmethod324(var70); + var50 = Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var70); var49 = -1; } else if (var44.rgb == 16711935) { var49 = -2; @@ -2422,48 +2422,48 @@ public final class Client extends GameShell implements Usernamed { PacketBuffer.field667 = var27; try { - class266.osName = System.getProperty("os.name"); + HorizontalAlignment.osName = System.getProperty("os.name"); } catch (Exception var21) { - class266.osName = "Unknown"; + HorizontalAlignment.osName = "Unknown"; } - WorldMapSection3.osNameLowerCase = class266.osName.toLowerCase(); + WorldMapSection1.osNameLowerCase = HorizontalAlignment.osName.toLowerCase(); try { - WorldMapSection1.userHomeDirectory = System.getProperty("user.home"); - if (WorldMapSection1.userHomeDirectory != null) { - WorldMapSection1.userHomeDirectory = WorldMapSection1.userHomeDirectory + "/"; + WorldMapSection2.userHomeDirectory = System.getProperty("user.home"); + if (WorldMapSection2.userHomeDirectory != null) { + WorldMapSection2.userHomeDirectory = WorldMapSection2.userHomeDirectory + "/"; } } catch (Exception var20) { } try { - if (WorldMapSection3.osNameLowerCase.startsWith("win")) { - if (WorldMapSection1.userHomeDirectory == null) { - WorldMapSection1.userHomeDirectory = System.getenv("USERPROFILE"); + if (WorldMapSection1.osNameLowerCase.startsWith("win")) { + if (WorldMapSection2.userHomeDirectory == null) { + WorldMapSection2.userHomeDirectory = System.getenv("USERPROFILE"); } - } else if (WorldMapSection1.userHomeDirectory == null) { - WorldMapSection1.userHomeDirectory = System.getenv("HOME"); + } else if (WorldMapSection2.userHomeDirectory == null) { + WorldMapSection2.userHomeDirectory = System.getenv("HOME"); } - if (WorldMapSection1.userHomeDirectory != null) { - WorldMapSection1.userHomeDirectory = WorldMapSection1.userHomeDirectory + "/"; + if (WorldMapSection2.userHomeDirectory != null) { + WorldMapSection2.userHomeDirectory = WorldMapSection2.userHomeDirectory + "/"; } } catch (Exception var19) { } - if (WorldMapSection1.userHomeDirectory == null) { - WorldMapSection1.userHomeDirectory = "~/"; + if (WorldMapSection2.userHomeDirectory == null) { + WorldMapSection2.userHomeDirectory = "~/"; } - WorldMapSection2.cacheDirectoryLocations = new String[]{"c:/rscache/", "/rscache/", "c:/windows/", "c:/winnt/", "c:/", WorldMapSection1.userHomeDirectory, "/tmp/", ""}; + WorldMapSection0.cacheDirectoryLocations = new String[]{"c:/rscache/", "/rscache/", "c:/windows/", "c:/winnt/", "c:/", WorldMapSection2.userHomeDirectory, "/tmp/", ""}; Canvas.field94 = new String[]{".jagex_cache_" + PacketBuffer.field667, ".file_store_" + PacketBuffer.field667}; var6 = 0; label256: while (var6 < 4) { String var28 = var6 == 0 ? "" : "" + var6; - class337.clDat = new File(WorldMapSection1.userHomeDirectory, "jagex_cl_oldschool_" + var26 + var28 + ".dat"); + class337.clDat = new File(WorldMapSection2.userHomeDirectory, "jagex_cl_oldschool_" + var26 + var28 + ".dat"); String var30 = null; String var31 = null; boolean var32 = false; @@ -2529,8 +2529,8 @@ public final class Client extends GameShell implements Usernamed { if (var30 == null && var6 == 0) { label232: for (var3 = 0; var3 < Canvas.field94.length; ++var3) { - for (int var34 = 0; var34 < WorldMapSection2.cacheDirectoryLocations.length; ++var34) { - var36 = new File(WorldMapSection2.cacheDirectoryLocations[var34] + Canvas.field94[var3] + File.separatorChar + "oldschool" + File.separatorChar); + for (int var34 = 0; var34 < WorldMapSection0.cacheDirectoryLocations.length; ++var34) { + var36 = new File(WorldMapSection0.cacheDirectoryLocations[var34] + Canvas.field94[var3] + File.separatorChar + "oldschool" + File.separatorChar); if (var36.exists() && DevicePcmPlayerProvider.method847(new File(var36, "test.dat"), true)) { var30 = var36.toString(); var32 = true; @@ -2541,7 +2541,7 @@ public final class Client extends GameShell implements Usernamed { } if (var30 == null) { - var30 = WorldMapSection1.userHomeDirectory + File.separatorChar + "jagexcache" + var28 + File.separatorChar + "oldschool" + File.separatorChar + var26 + File.separatorChar; + var30 = WorldMapSection2.userHomeDirectory + File.separatorChar + "jagexcache" + var28 + File.separatorChar + "oldschool" + File.separatorChar + var26 + File.separatorChar; var32 = true; } @@ -2691,8 +2691,8 @@ public final class Client extends GameShell implements Usernamed { class21.field1123 = var5; break; case 10: - class22.studioGame = (StudioGame)ScriptFrame.findEnumerated(ClientPacket.method3664(), Integer.parseInt(var5)); - if (class22.studioGame == StudioGame.field892) { + WorldMapRectangle.studioGame = (StudioGame)ScriptFrame.findEnumerated(ClientPacket.method3664(), Integer.parseInt(var5)); + if (WorldMapRectangle.studioGame == StudioGame.field892) { KeyHandler.loginType = LoginType.field479; } else { KeyHandler.loginType = LoginType.field487; @@ -2840,9 +2840,9 @@ public final class Client extends GameShell implements Usernamed { int var21 = var17 == 0 ? 5 : 9; ModelData0.NetCache_currentResponse = var20; - class22.NetCache_responseArchiveBuffer = new Buffer(var13 + var21 + ModelData0.NetCache_currentResponse.padding); - class22.NetCache_responseArchiveBuffer.writeByte(var17); - class22.NetCache_responseArchiveBuffer.writeInt(var13); + WorldMapRectangle.NetCache_responseArchiveBuffer = new Buffer(var13 + var21 + ModelData0.NetCache_currentResponse.padding); + WorldMapRectangle.NetCache_responseArchiveBuffer.writeByte(var17); + WorldMapRectangle.NetCache_responseArchiveBuffer.writeInt(var13); NetCache.field630 = 8; NetCache.NetCache_responseHeaderBuffer.index = 0; } else if (NetCache.field630 == 0) { @@ -2854,31 +2854,31 @@ public final class Client extends GameShell implements Usernamed { } } } else { - var10 = class22.NetCache_responseArchiveBuffer.array.length - ModelData0.NetCache_currentResponse.padding; + var10 = WorldMapRectangle.NetCache_responseArchiveBuffer.array.length - ModelData0.NetCache_currentResponse.padding; var11 = 512 - NetCache.field630; - if (var11 > var10 - class22.NetCache_responseArchiveBuffer.index) { - var11 = var10 - class22.NetCache_responseArchiveBuffer.index; + if (var11 > var10 - WorldMapRectangle.NetCache_responseArchiveBuffer.index) { + var11 = var10 - WorldMapRectangle.NetCache_responseArchiveBuffer.index; } if (var11 > var8) { var11 = var8; } - NetCache.NetCache_socket.read(class22.NetCache_responseArchiveBuffer.array, class22.NetCache_responseArchiveBuffer.index, var11); + NetCache.NetCache_socket.read(WorldMapRectangle.NetCache_responseArchiveBuffer.array, WorldMapRectangle.NetCache_responseArchiveBuffer.index, var11); if (NetCache.field631 != 0) { for (var12 = 0; var12 < var11; ++var12) { - var14 = class22.NetCache_responseArchiveBuffer.array; - var15 = class22.NetCache_responseArchiveBuffer.index + var12; + var14 = WorldMapRectangle.NetCache_responseArchiveBuffer.array; + var15 = WorldMapRectangle.NetCache_responseArchiveBuffer.index + var12; var14[var15] ^= NetCache.field631; } } - var16 = class22.NetCache_responseArchiveBuffer; + var16 = WorldMapRectangle.NetCache_responseArchiveBuffer; var16.index += var11; NetCache.field630 += var11; - if (var10 == class22.NetCache_responseArchiveBuffer.index) { + if (var10 == WorldMapRectangle.NetCache_responseArchiveBuffer.index) { if (16711935L == ModelData0.NetCache_currentResponse.key) { - Players.NetCache_reference = class22.NetCache_responseArchiveBuffer; + Players.NetCache_reference = WorldMapRectangle.NetCache_responseArchiveBuffer; for (var12 = 0; var12 < 256; ++var12) { Archive var25 = NetCache.NetCache_archives[var12]; @@ -2891,7 +2891,7 @@ public final class Client extends GameShell implements Usernamed { } } else { NetCache.NetCache_crc.reset(); - NetCache.NetCache_crc.update(class22.NetCache_responseArchiveBuffer.array, 0, var10); + NetCache.NetCache_crc.update(WorldMapRectangle.NetCache_responseArchiveBuffer.array, 0, var10); var12 = (int)NetCache.NetCache_crc.getValue(); if (var12 != ModelData0.NetCache_currentResponse.crc) { try { @@ -2908,7 +2908,7 @@ public final class Client extends GameShell implements Usernamed { NetCache.NetCache_crcMismatches = 0; NetCache.NetCache_ioExceptions = 0; - ModelData0.NetCache_currentResponse.archive.write((int)(ModelData0.NetCache_currentResponse.key & 65535L), class22.NetCache_responseArchiveBuffer.array, 16711680L == (ModelData0.NetCache_currentResponse.key & 16711680L), GrandExchangeOfferWorldComparator.field988); + ModelData0.NetCache_currentResponse.archive.write((int)(ModelData0.NetCache_currentResponse.key & 65535L), WorldMapRectangle.NetCache_responseArchiveBuffer.array, 16711680L == (ModelData0.NetCache_currentResponse.key & 16711680L), GrandExchangeOfferWorldComparator.field988); } ModelData0.NetCache_currentResponse.remove(); @@ -2920,7 +2920,7 @@ public final class Client extends GameShell implements Usernamed { NetCache.field630 = 0; ModelData0.NetCache_currentResponse = null; - class22.NetCache_responseArchiveBuffer = null; + WorldMapRectangle.NetCache_responseArchiveBuffer = null; } else { if (NetCache.field630 != 512) { break; @@ -3038,7 +3038,7 @@ public final class Client extends GameShell implements Usernamed { UserComparator9.method3343(var2); NetCache.NetCache_responseHeaderBuffer.index = 0; ModelData0.NetCache_currentResponse = null; - class22.NetCache_responseArchiveBuffer = null; + WorldMapRectangle.NetCache_responseArchiveBuffer = null; NetCache.field630 = 0; while (true) { @@ -3343,16 +3343,16 @@ public final class Client extends GameShell implements Usernamed { var8.packetBuffer.writeInt(SecureRandomFuture.archive5.hash); var8.packetBuffer.writeInt(UserComparator3.archive6.hash); var8.packetBuffer.writeInt(class40.archive7.hash); - var8.packetBuffer.writeInt(WorldMapSection3.archive8.hash); + var8.packetBuffer.writeInt(WorldMapSection1.archive8.hash); var8.packetBuffer.writeInt(class238.archive9.hash); var8.packetBuffer.writeInt(class16.archive10.hash); var8.packetBuffer.writeInt(Login.archive11.hash); var8.packetBuffer.writeInt(Formatting.archive12.hash); var8.packetBuffer.writeInt(ByteArrayPool.archive13.hash); var8.packetBuffer.writeInt(class2.archive14.hash); - var8.packetBuffer.writeInt(WorldMapSection1.archive15.hash); + var8.packetBuffer.writeInt(WorldMapSection2.archive15.hash); var8.packetBuffer.writeInt(0); - var8.packetBuffer.writeInt(class22.archive16.hash); + var8.packetBuffer.writeInt(WorldMapRectangle.archive16.hash); var8.packetBuffer.writeInt(WorldMapLabelSize.field1040.hash); var8.packetBuffer.writeInt(ItemContainer.field434.hash); var8.packetBuffer.writeInt(AbstractByteArrayCopier.field0.hash); @@ -3396,12 +3396,12 @@ public final class Client extends GameShell implements Usernamed { } if (loginState == 7 && ((AbstractSocket)var1).available() > 0) { - WorldMapSection1.field1071 = ((AbstractSocket)var1).readUnsignedByte(); + WorldMapSection2.field1071 = ((AbstractSocket)var1).readUnsignedByte(); loginState = 8; } - if (loginState == 8 && ((AbstractSocket)var1).available() >= WorldMapSection1.field1071) { - ((AbstractSocket)var1).read(var2.array, 0, WorldMapSection1.field1071); + if (loginState == 8 && ((AbstractSocket)var1).available() >= WorldMapSection2.field1071) { + ((AbstractSocket)var1).read(var2.array, 0, WorldMapSection2.field1071); var2.index = 0; loginState = 6; } @@ -3449,7 +3449,7 @@ public final class Client extends GameShell implements Usernamed { ReflectionCheck.clientPreferences.rememberedUsername = null; } - WorldMapSection0.savePreferences(); + WorldMapSection3.savePreferences(); staffModLevel = ((AbstractSocket)var1).readUnsignedByte(); playerMod = ((AbstractSocket)var1).readUnsignedByte() == 1; localPlayerIndex = ((AbstractSocket)var1).readUnsignedByte(); @@ -3484,7 +3484,7 @@ public final class Client extends GameShell implements Usernamed { var2.index = 0; ((AbstractSocket)var1).read(var2.array, 0, packetWriter.serverPacket0Length); timer.method332(); - WorldMapSection1.method808(); + WorldMapSection2.method808(); GrandExchangeOfferNameComparator.updatePlayer(var2); GameObject.field359 = -1; class50.loadRegions(false, var2); @@ -3854,7 +3854,7 @@ public final class Client extends GameShell implements Usernamed { class60.worldMap0.method360(); } - class266.method5120(); + HorizontalAlignment.method5120(); Message.method1228(); if (gameState != 30) { return; @@ -3898,7 +3898,7 @@ public final class Client extends GameShell implements Usernamed { if (BoundaryObject.field40 != null) { ++field203; if (field203 >= 15) { - class22.method295(BoundaryObject.field40); + WorldMapRectangle.method295(BoundaryObject.field40); BoundaryObject.field40 = null; } } @@ -3974,7 +3974,7 @@ public final class Client extends GameShell implements Usernamed { PacketBufferNode var27; if (DevicePcmPlayerProvider.dragInventoryWidget != null) { - class22.method295(DevicePcmPlayerProvider.dragInventoryWidget); + WorldMapRectangle.method295(DevicePcmPlayerProvider.dragInventoryWidget); ++itemDragDuration; if (MouseHandler.MouseHandler_currentButton == 0) { if (field207) { @@ -4057,21 +4057,21 @@ public final class Client extends GameShell implements Usernamed { if (var36 != Clock.mousedOverWidgetIf1) { if (var36 != null) { - class22.method295(var36); + WorldMapRectangle.method295(var36); } if (Clock.mousedOverWidgetIf1 != null) { - class22.method295(Clock.mousedOverWidgetIf1); + WorldMapRectangle.method295(Clock.mousedOverWidgetIf1); } } if (var23 != AccessFile.field8 && field218 == field219) { if (var23 != null) { - class22.method295(var23); + WorldMapRectangle.method295(var23); } if (AccessFile.field8 != null) { - class22.method295(AccessFile.field8); + WorldMapRectangle.method295(AccessFile.field8); } } @@ -4079,7 +4079,7 @@ public final class Client extends GameShell implements Usernamed { if (field218 < field219) { ++field218; if (field219 == field218) { - class22.method295(AccessFile.field8); + WorldMapRectangle.method295(AccessFile.field8); } } } else if (field218 > 0) { @@ -4091,17 +4091,17 @@ public final class Client extends GameShell implements Usernamed { var4 = class3.field1146 * 128 + 64; var9 = MusicPatchPcmStream.field602 * 128 + 64; var10 = class32.getTileHeight(var4, var9, SoundSystem.plane) - AbstractWorldMapIcon.field4; - if (WorldMapSection1.cameraX < var4) { - WorldMapSection1.cameraX = (var4 - WorldMapSection1.cameraX) * class30.field1148 / 1000 + WorldMapSection1.cameraX + ClientPacket.field221; - if (WorldMapSection1.cameraX > var4) { - WorldMapSection1.cameraX = var4; + if (WorldMapSection2.cameraX < var4) { + WorldMapSection2.cameraX = (var4 - WorldMapSection2.cameraX) * class30.field1148 / 1000 + WorldMapSection2.cameraX + ClientPacket.field221; + if (WorldMapSection2.cameraX > var4) { + WorldMapSection2.cameraX = var4; } } - if (WorldMapSection1.cameraX > var4) { - WorldMapSection1.cameraX -= class30.field1148 * (WorldMapSection1.cameraX - var4) / 1000 + ClientPacket.field221; - if (WorldMapSection1.cameraX < var4) { - WorldMapSection1.cameraX = var4; + if (WorldMapSection2.cameraX > var4) { + WorldMapSection2.cameraX -= class30.field1148 * (WorldMapSection2.cameraX - var4) / 1000 + ClientPacket.field221; + if (WorldMapSection2.cameraX < var4) { + WorldMapSection2.cameraX = var4; } } @@ -4136,7 +4136,7 @@ public final class Client extends GameShell implements Usernamed { var4 = GrandExchangeOffer.field376 * 128 + 64; var9 = KeyHandler.field445 * 128 + 64; var10 = class32.getTileHeight(var4, var9, SoundSystem.plane) - ArchiveDiskAction.field410; - var11 = var4 - WorldMapSection1.cameraX; + var11 = var4 - WorldMapSection2.cameraX; var12 = var10 - GrandExchangeEvents.cameraY; var13 = var9 - GrandExchangeOfferNameComparator.cameraZ; var14 = (int)Math.sqrt((double)(var13 * var13 + var11 * var11)); @@ -4202,7 +4202,7 @@ public final class Client extends GameShell implements Usernamed { } class196.varcs.tryWrite(); - var4 = class22.method297(); + var4 = WorldMapRectangle.method297(); var9 = KeyHandler.KeyHandler_idleCycles; if (var4 > 15000 && var9 > 15000) { field175 = 250; @@ -4585,9 +4585,9 @@ public final class Client extends GameShell implements Usernamed { ClientPacket.field221 = var3.readUnsignedByte(); class30.field1148 = var3.readUnsignedByte(); if (class30.field1148 >= 100) { - WorldMapSection1.cameraX = class3.field1146 * 128 + 64; + WorldMapSection2.cameraX = class3.field1146 * 128 + 64; GrandExchangeOfferNameComparator.cameraZ = MusicPatchPcmStream.field602 * 128 + 64; - GrandExchangeEvents.cameraY = class32.getTileHeight(WorldMapSection1.cameraX, GrandExchangeOfferNameComparator.cameraZ, SoundSystem.plane) - AbstractWorldMapIcon.field4; + GrandExchangeEvents.cameraY = class32.getTileHeight(WorldMapSection2.cameraX, GrandExchangeOfferNameComparator.cameraZ, SoundSystem.plane) - AbstractWorldMapIcon.field4; } var1.serverPacket0 = null; @@ -4614,7 +4614,7 @@ public final class Client extends GameShell implements Usernamed { if (ServerPacket.field806 == var1.serverPacket0) { Canvas.field95 = var3.method59(); - WorldMapSection3.field1089 = var3.readUnsignedByteNegate(); + WorldMapSection1.field1089 = var3.readUnsignedByteNegate(); while (var3.index < var1.serverPacket0Length) { var38 = var3.readUnsignedByte(); @@ -4635,7 +4635,7 @@ public final class Client extends GameShell implements Usernamed { var8.sequenceId = var38; var8.modelFrame = 0; var8.modelFrameCycle = 0; - class22.method295(var8); + WorldMapRectangle.method295(var8); } var1.serverPacket0 = null; @@ -4648,7 +4648,7 @@ public final class Client extends GameShell implements Usernamed { var9 = Huffman.getWidget(var38); var9.modelType = 3; var9.modelId = Canvas.localPlayer.appearance.getChatHeadId(); - class22.method295(var9); + WorldMapRectangle.method295(var9); var1.serverPacket0 = null; return true; } @@ -4668,7 +4668,7 @@ public final class Client extends GameShell implements Usernamed { var9.itemIds[var5] = 0; } - class22.method295(var9); + WorldMapRectangle.method295(var9); var1.serverPacket0 = null; return true; } @@ -4716,7 +4716,7 @@ public final class Client extends GameShell implements Usernamed { } if (var8 != null) { - class22.method295(var8); + WorldMapRectangle.method295(var8); } GrandExchangeOfferAgeComparator.method159(); @@ -4738,7 +4738,7 @@ public final class Client extends GameShell implements Usernamed { } if (ServerPacket.field853 == var1.serverPacket0) { - WorldMapSection3.field1089 = var3.readUnsignedByteNegate(); + WorldMapSection1.field1089 = var3.readUnsignedByteNegate(); Canvas.field95 = var3.method59(); var1.serverPacket0 = null; return true; @@ -4751,7 +4751,7 @@ public final class Client extends GameShell implements Usernamed { var8 = Huffman.getWidget(var38); if (var14 != var8.isHidden) { var8.isHidden = var14; - class22.method295(var8); + WorldMapRectangle.method295(var8); } var1.serverPacket0 = null; @@ -4798,7 +4798,7 @@ public final class Client extends GameShell implements Usernamed { rootInterface = var38; this.method87(false); DevicePcmPlayerProvider.method845(var38); - WorldMapSection3.runWidgetOnLoadListener(rootInterface); + WorldMapSection1.runWidgetOnLoadListener(rootInterface); for (var6 = 0; var6 < 100; ++var6) { field100[var6] = true; @@ -4827,7 +4827,7 @@ public final class Client extends GameShell implements Usernamed { var15.modelAngleX = var38; var15.modelAngleY = var5; var15.modelZoom = var6; - class22.method295(var15); + WorldMapRectangle.method295(var15); } var1.serverPacket0 = null; @@ -4936,7 +4936,7 @@ public final class Client extends GameShell implements Usernamed { var16.modelAngleX = var41.xan2d; var16.modelAngleY = var41.yan2d; var16.modelZoom = var41.zoom2d * 100 / var5; - class22.method295(var16); + WorldMapRectangle.method295(var16); } else { var16.itemId = var6; var16.itemQuantity = var5; @@ -4959,7 +4959,7 @@ public final class Client extends GameShell implements Usernamed { var16.modelZoom = var16.modelZoom * 32 / var16.rawWidth; } - class22.method295(var16); + WorldMapRectangle.method295(var16); } var1.serverPacket0 = null; @@ -5159,7 +5159,7 @@ public final class Client extends GameShell implements Usernamed { } if (var8 != null) { - class22.method295(var8); + WorldMapRectangle.method295(var8); } GrandExchangeOfferAgeComparator.method159(); @@ -5187,7 +5187,7 @@ public final class Client extends GameShell implements Usernamed { var16.rawY = var6; var16.xAlignment = 0; var16.yAlignment = 0; - class22.method295(var16); + WorldMapRectangle.method295(var16); this.alignWidget(var16); if (var16.type == 0) { class39.revalidateWidgetScroll(Widget.interfaceComponents[var38 >> 16], var16, false); @@ -5205,7 +5205,7 @@ public final class Client extends GameShell implements Usernamed { if (var8.modelType != 2 || var38 != var8.modelId) { var8.modelType = 2; var8.modelId = var38; - class22.method295(var8); + WorldMapRectangle.method295(var8); } var1.serverPacket0 = null; @@ -5257,12 +5257,12 @@ public final class Client extends GameShell implements Usernamed { var15 = Huffman.getWidget(var6); if (var15 != null) { - class22.method295(var15); + WorldMapRectangle.method295(var15); } var15 = Huffman.getWidget(var38); if (var15 != null) { - class22.method295(var15); + WorldMapRectangle.method295(var15); class39.revalidateWidgetScroll(Widget.interfaceComponents[var15.id >>> 16], var15, true); } @@ -5284,7 +5284,7 @@ public final class Client extends GameShell implements Usernamed { Widget var48 = Huffman.getWidget(var38); if (var12 != var48.color) { var48.color = var12; - class22.method295(var48); + WorldMapRectangle.method295(var48); } var1.serverPacket0 = null; @@ -5321,9 +5321,9 @@ public final class Client extends GameShell implements Usernamed { if (ServerPacket.field814 == var1.serverPacket0) { Canvas.field95 = var3.readUnsignedByteNegate(); - WorldMapSection3.field1089 = var3.readUnsignedByte(); + WorldMapSection1.field1089 = var3.readUnsignedByte(); - for (var38 = WorldMapSection3.field1089; var38 < WorldMapSection3.field1089 + 8; ++var38) { + for (var38 = WorldMapSection1.field1089; var38 < WorldMapSection1.field1089 + 8; ++var38) { for (var6 = Canvas.field95; var6 < Canvas.field95 + 8; ++var6) { if (groundItems[SoundSystem.plane][var38][var6] != null) { groundItems[SoundSystem.plane][var38][var6] = null; @@ -5333,7 +5333,7 @@ public final class Client extends GameShell implements Usernamed { } for (PendingSpawn var46 = (PendingSpawn)pendingSpawns.last(); var46 != null; var46 = (PendingSpawn)pendingSpawns.previous()) { - if (var46.x >= WorldMapSection3.field1089 && var46.x < WorldMapSection3.field1089 + 8 && var46.y >= Canvas.field95 && var46.y < Canvas.field95 + 8 && var46.plane == SoundSystem.plane) { + if (var46.x >= WorldMapSection1.field1089 && var46.x < WorldMapSection1.field1089 + 8 && var46.y >= Canvas.field95 && var46.y < Canvas.field95 + 8 && var46.plane == SoundSystem.plane) { var46.hitpoints = 0; } } @@ -5349,7 +5349,7 @@ public final class Client extends GameShell implements Usernamed { if (var8.modelType != 1 || var6 != var8.modelId) { var8.modelType = 1; var8.modelId = var6; - class22.method295(var8); + WorldMapRectangle.method295(var8); } var1.serverPacket0 = null; @@ -5415,7 +5415,7 @@ public final class Client extends GameShell implements Usernamed { var8 = Huffman.getWidget(var38); if (!var4.equals(var8.text)) { var8.text = var4; - class22.method295(var8); + WorldMapRectangle.method295(var8); } var1.serverPacket0 = null; @@ -5450,7 +5450,7 @@ public final class Client extends GameShell implements Usernamed { var38 = GrandExchangeOffer.field376 * 128 + 64; var6 = KeyHandler.field445 * 128 + 64; var5 = class32.getTileHeight(var38, var6, SoundSystem.plane) - ArchiveDiskAction.field410; - var10 = var38 - WorldMapSection1.cameraX; + var10 = var38 - WorldMapSection2.cameraX; var11 = var5 - GrandExchangeEvents.cameraY; var12 = var6 - GrandExchangeOfferNameComparator.cameraZ; var13 = (int)Math.sqrt((double)(var12 * var12 + var10 * var10)); @@ -5484,7 +5484,7 @@ public final class Client extends GameShell implements Usernamed { if (var6 != var8.scrollY) { var8.scrollY = var6; - class22.method295(var8); + WorldMapRectangle.method295(var8); } } @@ -5598,7 +5598,7 @@ public final class Client extends GameShell implements Usernamed { rootInterface = var6; this.method87(false); DevicePcmPlayerProvider.method845(rootInterface); - WorldMapSection3.runWidgetOnLoadListener(rootInterface); + WorldMapSection1.runWidgetOnLoadListener(rootInterface); for (var10 = 0; var10 < 100; ++var10) { field100[var10] = true; @@ -5713,7 +5713,7 @@ public final class Client extends GameShell implements Usernamed { } if (field127 != null) { - class22.method295(field127); + WorldMapRectangle.method295(field127); field127 = null; } @@ -5936,7 +5936,7 @@ public final class Client extends GameShell implements Usernamed { } if (var15 != -1) { - WorldMapSection0.method245(var15); + WorldMapSection3.method245(var15); } isMenuOpen = false; @@ -5969,7 +5969,7 @@ public final class Client extends GameShell implements Usernamed { } if ((var11 == 1 || !AbstractRasterProvider.mouseCam && var11 == 4) && menuOptionsCount > 0) { - WorldMapSection0.method245(var2); + WorldMapSection3.method245(var2); } if (var11 == 2 && menuOptionsCount > 0) { @@ -5989,7 +5989,7 @@ public final class Client extends GameShell implements Usernamed { field207 = false; itemDragDuration = 0; if (DevicePcmPlayerProvider.dragInventoryWidget != null) { - class22.method295(DevicePcmPlayerProvider.dragInventoryWidget); + WorldMapRectangle.method295(DevicePcmPlayerProvider.dragInventoryWidget); } DevicePcmPlayerProvider.dragInventoryWidget = Huffman.getWidget(var13); @@ -6005,7 +6005,7 @@ public final class Client extends GameShell implements Usernamed { GrandExchangeOfferUnitPriceComparator.tempMenuAction.action = menuActions[var2]; } - class22.method295(DevicePcmPlayerProvider.dragInventoryWidget); + WorldMapRectangle.method295(DevicePcmPlayerProvider.dragInventoryWidget); return; } } @@ -6111,7 +6111,7 @@ public final class Client extends GameShell implements Usernamed { var4 = var2.height; } - WorldMapSection3.alignWidgetSize(component, var3, var4, false); + WorldMapSection1.alignWidgetSize(component, var3, var4, false); FloorOverlayDefinition.alignWidgetPosition(component, var3, var4); } @@ -6121,7 +6121,7 @@ public final class Client extends GameShell implements Usernamed { garbageValue = "715978124" ) final void method88() { - class22.method295(clickedWidget); + WorldMapRectangle.method295(clickedWidget); ++MouseRecorder.widgetDragDuration; if (field103 && field106) { int var1 = MouseHandler.MouseHandler_x; diff --git a/runescape-client/src/main/java/DesktopPlatformInfoProvider.java b/runescape-client/src/main/java/DesktopPlatformInfoProvider.java index 34868b1afd..0bf9ad7997 100644 --- a/runescape-client/src/main/java/DesktopPlatformInfoProvider.java +++ b/runescape-client/src/main/java/DesktopPlatformInfoProvider.java @@ -15,11 +15,11 @@ public class DesktopPlatformInfoProvider implements PlatformInfoProvider { @Export("get") public PlatformInfo get() { byte var1; - if (WorldMapSection3.osNameLowerCase.startsWith("win")) { + if (WorldMapSection1.osNameLowerCase.startsWith("win")) { var1 = 1; - } else if (WorldMapSection3.osNameLowerCase.startsWith("mac")) { + } else if (WorldMapSection1.osNameLowerCase.startsWith("mac")) { var1 = 2; - } else if (WorldMapSection3.osNameLowerCase.startsWith("linux")) { + } else if (WorldMapSection1.osNameLowerCase.startsWith("linux")) { var1 = 3; } else { var1 = 4; diff --git a/runescape-client/src/main/java/DevicePcmPlayerProvider.java b/runescape-client/src/main/java/DevicePcmPlayerProvider.java index 4ced5dafce..292829e300 100644 --- a/runescape-client/src/main/java/DevicePcmPlayerProvider.java +++ b/runescape-client/src/main/java/DevicePcmPlayerProvider.java @@ -295,7 +295,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { } if (var10.contentType == 1339) { - class22.method296(var10, var12, var13, var11); + WorldMapRectangle.method296(var10, var12, var13, var11); Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); continue; } @@ -370,7 +370,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { if (var36 != null) { var36.drawAt2(var21, var26); } else if (Widget.field957) { - class22.method295(var10); + WorldMapRectangle.method295(var10); } } } else { @@ -418,7 +418,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { var47.scrollY -= var45; Client.field206 += var45; - class22.method295(var47); + WorldMapRectangle.method295(var47); } if (var24 + var26 + 32 > Rasterizer2D.Rasterizer2D_yClipEnd && var47.scrollY < var47.scrollHeight - var47.height) { @@ -433,7 +433,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { var47.scrollY += var45; Client.field206 -= var45; - class22.method295(var47); + WorldMapRectangle.method295(var47); } } } else if (var10 == BoundaryObject.field40 && var22 == Client.field204) { @@ -442,7 +442,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { var42.drawAt2(var21, var26); } } else { - class22.method295(var10); + WorldMapRectangle.method295(var10); } } } @@ -466,7 +466,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { if (var10.fill) { switch(var10.rectangleMode.id) { case 1: - Rasterizer2D.drawGradient(var12, var13, var10.width, var10.height, var10.color, var10.color2); + Rasterizer2D.Rasterizer2D_drawGradient(var12, var13, var10.width, var10.height, var10.color, var10.color2); break; case 2: Rasterizer2D.drawGradientAlpha(var12, var13, var10.width, var10.height, var10.color, var10.color2, 255 - (var10.transparency & 255), 255 - (var10.field960 & 255)); @@ -489,7 +489,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { var27 = var10.getFont(); if (var27 == null) { if (Widget.field957) { - class22.method295(var10); + WorldMapRectangle.method295(var10); } } else { String var38 = var10.text; @@ -539,7 +539,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { if (var37 != null) { var37.drawAt2(var12, var13); } else if (Widget.field957) { - class22.method295(var10); + WorldMapRectangle.method295(var10); } } else { if (var10.itemId != -1) { @@ -550,7 +550,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { if (var37 == null) { if (Widget.field957) { - class22.method295(var10); + WorldMapRectangle.method295(var10); } } else { var19 = var37.width; @@ -608,7 +608,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { var43.calculateBoundsCylinder(); var21 = var43.height / 2; } else { - class22.method295(var10); + WorldMapRectangle.method295(var10); } } } else if (var10.modelType == 5) { @@ -620,13 +620,13 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { } else if (var19 == -1) { var43 = var10.getModel((SequenceDefinition)null, -1, var40, Canvas.localPlayer.appearance); if (var43 == null && Widget.field957) { - class22.method295(var10); + WorldMapRectangle.method295(var10); } } else { SequenceDefinition var44 = WorldMapAreaData.getSequenceDefinition(var19); var43 = var10.getModel(var44, var10.modelFrame, var40, Canvas.localPlayer.appearance); if (var43 == null && Widget.field957) { - class22.method295(var10); + WorldMapRectangle.method295(var10); } } @@ -652,7 +652,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { var27 = var10.getFont(); if (var27 == null) { if (Widget.field957) { - class22.method295(var10); + WorldMapRectangle.method295(var10); } continue; } diff --git a/runescape-client/src/main/java/DynamicObject.java b/runescape-client/src/main/java/DynamicObject.java index ad287bbc64..c023e48d5a 100644 --- a/runescape-client/src/main/java/DynamicObject.java +++ b/runescape-client/src/main/java/DynamicObject.java @@ -627,7 +627,7 @@ public class DynamicObject extends Entity { Client.soundEffectCount = 0; Client.isCameraLocked = false; - WorldMapSection1.cameraX -= var5 << 7; + WorldMapSection2.cameraX -= var5 << 7; GrandExchangeOfferNameComparator.cameraZ -= var6 << 7; MouseHandler.oculusOrbFocalPointX -= var5 << 7; ScriptEvent.oculusOrbFocalPointY -= var6 << 7; diff --git a/runescape-client/src/main/java/FloorOverlayDefinition.java b/runescape-client/src/main/java/FloorOverlayDefinition.java index 2568f46343..79c2455a5b 100644 --- a/runescape-client/src/main/java/FloorOverlayDefinition.java +++ b/runescape-client/src/main/java/FloorOverlayDefinition.java @@ -11,12 +11,14 @@ public class FloorOverlayDefinition extends DualNode { @ObfuscatedSignature( signature = "Lir;" ) - public static AbstractArchive field663; + @Export("FloorOverlayDefinition_archive") + public static AbstractArchive FloorOverlayDefinition_archive; @ObfuscatedName("f") @ObfuscatedSignature( signature = "Ler;" ) - public static EvictingDualNodeHashTable field664; + @Export("FloorOverlayDefinition_cached") + public static EvictingDualNodeHashTable FloorOverlayDefinition_cached; @ObfuscatedName("q") @ObfuscatedGetter( intValue = -111851793 @@ -240,6 +242,6 @@ public class FloorOverlayDefinition extends DualNode { } static { - field664 = new EvictingDualNodeHashTable(64); + FloorOverlayDefinition_cached = new EvictingDualNodeHashTable(64); } } diff --git a/runescape-client/src/main/java/FloorUnderlayDefinition.java b/runescape-client/src/main/java/FloorUnderlayDefinition.java index 2dc2ec26c4..e4c30b8774 100644 --- a/runescape-client/src/main/java/FloorUnderlayDefinition.java +++ b/runescape-client/src/main/java/FloorUnderlayDefinition.java @@ -176,8 +176,8 @@ public class FloorUnderlayDefinition extends DualNode { signature = "(I)[Lip;", garbageValue = "618327716" ) - static class249[] method4839() { - return new class249[]{class249.field3277, class249.field3273, class249.field3274}; + static VerticalAlignment[] method4839() { + return new VerticalAlignment[]{VerticalAlignment.field3277, VerticalAlignment.field3273, VerticalAlignment.field3274}; } static { diff --git a/runescape-client/src/main/java/FontName.java b/runescape-client/src/main/java/FontName.java index b942a26fd2..71f2f3b9d8 100644 --- a/runescape-client/src/main/java/FontName.java +++ b/runescape-client/src/main/java/FontName.java @@ -485,7 +485,7 @@ public class FontName { SecureRandomFuture.archive5.method8(); UserComparator3.archive6.method8(); class40.archive7.method8(); - WorldMapSection3.archive8.method8(); + WorldMapSection1.archive8.method8(); class238.archive9.method8(); class16.archive10.method8(); Login.archive11.method8(); diff --git a/runescape-client/src/main/java/FriendSystem.java b/runescape-client/src/main/java/FriendSystem.java index c4d48244db..9976c7a2e0 100644 --- a/runescape-client/src/main/java/FriendSystem.java +++ b/runescape-client/src/main/java/FriendSystem.java @@ -202,7 +202,7 @@ public class FriendSystem { var4 = "You can't add yourself to your own ignore list"; WorldMapIcon1.addGameMessage(30, "", var4); } else if (this.isIgnored(var2)) { - class22.method294(var1); + WorldMapRectangle.method294(var1); } else { PacketBufferNode var5; if (this.isFriended(var2, false)) { diff --git a/runescape-client/src/main/java/GameShell.java b/runescape-client/src/main/java/GameShell.java index 4ca3e00005..1aaea20dfb 100644 --- a/runescape-client/src/main/java/GameShell.java +++ b/runescape-client/src/main/java/GameShell.java @@ -1037,14 +1037,14 @@ public abstract class GameShell extends Applet implements Runnable, FocusListene if (gameState != 5 && gameState != 10) { if (gameState == 20) { - class2.method27(class16.archive10, WorldMapSection3.archive8, true, Client.gameState == 11 ? 4 : 0); + class2.method27(class16.archive10, WorldMapSection1.archive8, true, Client.gameState == 11 ? 4 : 0); } else if (gameState == 11) { - class2.method27(class16.archive10, WorldMapSection3.archive8, false, 4); + class2.method27(class16.archive10, WorldMapSection1.archive8, false, 4); } else { class80.method2015(); } } else { - class2.method27(class16.archive10, WorldMapSection3.archive8, true, 0); + class2.method27(class16.archive10, WorldMapSection1.archive8, true, 0); } Client.gameState = gameState; diff --git a/runescape-client/src/main/java/GrandExchangeEvent.java b/runescape-client/src/main/java/GrandExchangeEvent.java index 14ad28bf74..0ea9e315c3 100644 --- a/runescape-client/src/main/java/GrandExchangeEvent.java +++ b/runescape-client/src/main/java/GrandExchangeEvent.java @@ -238,7 +238,7 @@ public class GrandExchangeEvent { Interpreter.Interpreter_stringLocals = var30.stringLocals; } else if (var13 == ScriptOpcodes.GET_VARBIT) { var11 = var6[var4]; - Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = WorldMapSection2.getVarbit(var11); + Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = WorldMapSection0.getVarbit(var11); } else if (var13 == ScriptOpcodes.SET_VARBIT) { var11 = var6[var4]; PendingSpawn.method1695(var11, Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]); diff --git a/runescape-client/src/main/java/GrandExchangeOfferAgeComparator.java b/runescape-client/src/main/java/GrandExchangeOfferAgeComparator.java index 6a0f456579..4d54ab3c6b 100644 --- a/runescape-client/src/main/java/GrandExchangeOfferAgeComparator.java +++ b/runescape-client/src/main/java/GrandExchangeOfferAgeComparator.java @@ -145,7 +145,7 @@ final class GrandExchangeOfferAgeComparator implements Comparator { var4 = (int)var0.key; Widget var5 = Huffman.getWidget(var4); if (var5 != null) { - class22.method295(var5); + WorldMapRectangle.method295(var5); } } } diff --git a/runescape-client/src/main/java/GrandExchangeOfferUnitPriceComparator.java b/runescape-client/src/main/java/GrandExchangeOfferUnitPriceComparator.java index 924dc0bdbc..96ea411df2 100644 --- a/runescape-client/src/main/java/GrandExchangeOfferUnitPriceComparator.java +++ b/runescape-client/src/main/java/GrandExchangeOfferUnitPriceComparator.java @@ -83,7 +83,7 @@ final class GrandExchangeOfferUnitPriceComparator implements Comparator { var2 = Canvas.localPlayer.y >> 7; } - int var3 = WorldMapSection1.cameraX >> 7; + int var3 = WorldMapSection2.cameraX >> 7; int var4 = GrandExchangeOfferNameComparator.cameraZ >> 7; if (var3 < 0 || var4 < 0 || var3 >= 104 || var4 >= 104) { return SoundSystem.plane; diff --git a/runescape-client/src/main/java/HitSplatDefinition.java b/runescape-client/src/main/java/HitSplatDefinition.java index 4dd5c6279b..17c3f5e280 100644 --- a/runescape-client/src/main/java/HitSplatDefinition.java +++ b/runescape-client/src/main/java/HitSplatDefinition.java @@ -231,7 +231,7 @@ public class HitSplatDefinition extends DualNode { public final HitSplatDefinition transform() { int var1 = -1; if (this.transformVarbit != -1) { - var1 = WorldMapSection2.getVarbit(this.transformVarbit); + var1 = WorldMapSection0.getVarbit(this.transformVarbit); } else if (this.transformVarp != -1) { var1 = Varps.Varps_main[this.transformVarp]; } diff --git a/runescape-client/src/main/java/class266.java b/runescape-client/src/main/java/HorizontalAlignment.java similarity index 84% rename from runescape-client/src/main/java/class266.java rename to runescape-client/src/main/java/HorizontalAlignment.java index 275ac90a19..55adc59bad 100644 --- a/runescape-client/src/main/java/class266.java +++ b/runescape-client/src/main/java/HorizontalAlignment.java @@ -1,10 +1,12 @@ import net.runelite.mapping.Export; +import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("ju") -public enum class266 implements Enumerated { +@Implements("HorizontalAlignment") +public enum HorizontalAlignment implements Enumerated { @ObfuscatedName("m") @ObfuscatedSignature( signature = "Lju;" @@ -28,7 +30,8 @@ public enum class266 implements Enumerated { @ObfuscatedGetter( intValue = -739868097 ) - public final int field3528; + @Export("value") + public final int value; @ObfuscatedName("o") @ObfuscatedGetter( intValue = -1327532101 @@ -36,8 +39,8 @@ public enum class266 implements Enumerated { @Export("id") final int id; - private class266(int var3, int var4) { - this.field3528 = var3; + private HorizontalAlignment(int var3, int var4) { + this.value = var3; this.id = var4; } diff --git a/runescape-client/src/main/java/Huffman.java b/runescape-client/src/main/java/Huffman.java index 3ec70bc75d..b90daa9e9d 100644 --- a/runescape-client/src/main/java/Huffman.java +++ b/runescape-client/src/main/java/Huffman.java @@ -16,18 +16,21 @@ public class Huffman { @Export("canvasHeight") public static int canvasHeight; @ObfuscatedName("m") - int[] field399; + @Export("masks") + int[] masks; @ObfuscatedName("f") - byte[] field400; + @Export("bits") + byte[] bits; @ObfuscatedName("q") - int[] field401; + @Export("keys") + int[] keys; public Huffman(byte[] var1) { int var2 = var1.length; - this.field399 = new int[var2]; - this.field400 = var1; + this.masks = new int[var2]; + this.bits = var1; int[] var3 = new int[33]; - this.field401 = new int[8]; + this.keys = new int[8]; int var4 = 0; for (int var5 = 0; var5 < var2; ++var5) { @@ -35,7 +38,7 @@ public class Huffman { if (var6 != 0) { int var7 = 1 << 32 - var6; int var8 = var3[var6]; - this.field399[var5] = var8; + this.masks[var5] = var8; int var9; int var10; int var11; @@ -74,29 +77,29 @@ public class Huffman { for (var11 = 0; var11 < var6; ++var11) { var12 = Integer.MIN_VALUE >>> var11; if ((var8 & var12) != 0) { - if (this.field401[var10] == 0) { - this.field401[var10] = var4; + if (this.keys[var10] == 0) { + this.keys[var10] = var4; } - var10 = this.field401[var10]; + var10 = this.keys[var10]; } else { ++var10; } - if (var10 >= this.field401.length) { - int[] var13 = new int[this.field401.length * 2]; + if (var10 >= this.keys.length) { + int[] var13 = new int[this.keys.length * 2]; - for (int var14 = 0; var14 < this.field401.length; ++var14) { - var13[var14] = this.field401[var14]; + for (int var14 = 0; var14 < this.keys.length; ++var14) { + var13[var14] = this.keys[var14]; } - this.field401 = var13; + this.keys = var13; } var12 >>>= 1; } - this.field401[var10] = ~var5; + this.keys[var10] = ~var5; if (var10 >= var4) { var4 = var10 + 1; } @@ -110,14 +113,15 @@ public class Huffman { signature = "([BII[BIB)I", garbageValue = "64" ) - public int method127(byte[] var1, int var2, int var3, byte[] var4, int var5) { + @Export("compress") + public int compress(byte[] var1, int var2, int var3, byte[] var4, int var5) { int var6 = 0; int var7 = var5 << 3; for (var3 += var2; var2 < var3; ++var2) { int var8 = var1[var2] & 255; - int var9 = this.field399[var8]; - byte var10 = this.field400[var8]; + int var9 = this.masks[var8]; + byte var10 = this.bits[var8]; if (var10 == 0) { throw new RuntimeException(""); } @@ -160,7 +164,8 @@ public class Huffman { signature = "([BI[BIII)I", garbageValue = "-2094399899" ) - public int method128(byte[] var1, int var2, byte[] var3, int var4, int var5) { + @Export("decompress") + public int decompress(byte[] var1, int var2, byte[] var3, int var4, int var5) { if (var5 == 0) { return 0; } else { @@ -171,13 +176,13 @@ public class Huffman { while (true) { byte var8 = var1[var7]; if (var8 < 0) { - var6 = this.field401[var6]; + var6 = this.keys[var6]; } else { ++var6; } int var9; - if ((var9 = this.field401[var6]) < 0) { + if ((var9 = this.keys[var6]) < 0) { var3[var4++] = (byte)(~var9); if (var4 >= var5) { break; @@ -187,12 +192,12 @@ public class Huffman { } if ((var8 & 64) != 0) { - var6 = this.field401[var6]; + var6 = this.keys[var6]; } else { ++var6; } - if ((var9 = this.field401[var6]) < 0) { + if ((var9 = this.keys[var6]) < 0) { var3[var4++] = (byte)(~var9); if (var4 >= var5) { break; @@ -202,12 +207,12 @@ public class Huffman { } if ((var8 & 32) != 0) { - var6 = this.field401[var6]; + var6 = this.keys[var6]; } else { ++var6; } - if ((var9 = this.field401[var6]) < 0) { + if ((var9 = this.keys[var6]) < 0) { var3[var4++] = (byte)(~var9); if (var4 >= var5) { break; @@ -217,12 +222,12 @@ public class Huffman { } if ((var8 & 16) != 0) { - var6 = this.field401[var6]; + var6 = this.keys[var6]; } else { ++var6; } - if ((var9 = this.field401[var6]) < 0) { + if ((var9 = this.keys[var6]) < 0) { var3[var4++] = (byte)(~var9); if (var4 >= var5) { break; @@ -232,12 +237,12 @@ public class Huffman { } if ((var8 & 8) != 0) { - var6 = this.field401[var6]; + var6 = this.keys[var6]; } else { ++var6; } - if ((var9 = this.field401[var6]) < 0) { + if ((var9 = this.keys[var6]) < 0) { var3[var4++] = (byte)(~var9); if (var4 >= var5) { break; @@ -247,12 +252,12 @@ public class Huffman { } if ((var8 & 4) != 0) { - var6 = this.field401[var6]; + var6 = this.keys[var6]; } else { ++var6; } - if ((var9 = this.field401[var6]) < 0) { + if ((var9 = this.keys[var6]) < 0) { var3[var4++] = (byte)(~var9); if (var4 >= var5) { break; @@ -262,12 +267,12 @@ public class Huffman { } if ((var8 & 2) != 0) { - var6 = this.field401[var6]; + var6 = this.keys[var6]; } else { ++var6; } - if ((var9 = this.field401[var6]) < 0) { + if ((var9 = this.keys[var6]) < 0) { var3[var4++] = (byte)(~var9); if (var4 >= var5) { break; @@ -277,12 +282,12 @@ public class Huffman { } if ((var8 & 1) != 0) { - var6 = this.field401[var6]; + var6 = this.keys[var6]; } else { ++var6; } - if ((var9 = this.field401[var6]) < 0) { + if ((var9 = this.keys[var6]) < 0) { var3[var4++] = (byte)(~var9); if (var4 >= var5) { break; diff --git a/runescape-client/src/main/java/Interpreter.java b/runescape-client/src/main/java/Interpreter.java index 26455786ac..17773e38ff 100644 --- a/runescape-client/src/main/java/Interpreter.java +++ b/runescape-client/src/main/java/Interpreter.java @@ -149,15 +149,15 @@ public class Interpreter { ) public static void method1976() { try { - File var0 = new File(WorldMapSection1.userHomeDirectory, "random.dat"); + File var0 = new File(WorldMapSection2.userHomeDirectory, "random.dat"); int var1; if (var0.exists()) { class168.randomDat = new BufferedFile(new AccessFile(var0, "rw", 25L), 24, 0); } else { label34: for (int var2 = 0; var2 < Canvas.field94.length; ++var2) { - for (var1 = 0; var1 < WorldMapSection2.cacheDirectoryLocations.length; ++var1) { - File var3 = new File(WorldMapSection2.cacheDirectoryLocations[var1] + Canvas.field94[var2] + File.separatorChar + "random.dat"); + for (var1 = 0; var1 < WorldMapSection0.cacheDirectoryLocations.length; ++var1) { + File var3 = new File(WorldMapSection0.cacheDirectoryLocations[var1] + Canvas.field94[var2] + File.separatorChar + "random.dat"); if (var3.exists()) { class168.randomDat = new BufferedFile(new AccessFile(var3, "rw", 25L), 24, 0); break label34; diff --git a/runescape-client/src/main/java/KitDefinition.java b/runescape-client/src/main/java/KitDefinition.java index 2aac8708a3..f3c8232050 100644 --- a/runescape-client/src/main/java/KitDefinition.java +++ b/runescape-client/src/main/java/KitDefinition.java @@ -251,7 +251,7 @@ public class KitDefinition extends DualNode { } byte[] var3 = new byte[var2]; - var0.index += class303.huffman.method128(var0.array, var0.index, var3, 0, var2); + var0.index += class303.huffman.decompress(var0.array, var0.index, var3, 0, var2); String var4 = InterfaceParent.decodeStringCp1252(var3, 0, var2); var1 = var4; } catch (Exception var5) { diff --git a/runescape-client/src/main/java/Login.java b/runescape-client/src/main/java/Login.java index ef1fbe61a1..fd020ffbb4 100644 --- a/runescape-client/src/main/java/Login.java +++ b/runescape-client/src/main/java/Login.java @@ -205,8 +205,8 @@ public class Login { if (ReflectionCheck.clientPreferences.roofsHidden) { return SoundSystem.plane; } else { - int var0 = class32.getTileHeight(WorldMapSection1.cameraX, GrandExchangeOfferNameComparator.cameraZ, SoundSystem.plane); - return var0 - GrandExchangeEvents.cameraY < 800 && (Tiles.Tiles_renderFlags[SoundSystem.plane][WorldMapSection1.cameraX >> 7][GrandExchangeOfferNameComparator.cameraZ >> 7] & 4) != 0 ? SoundSystem.plane : 3; + int var0 = class32.getTileHeight(WorldMapSection2.cameraX, GrandExchangeOfferNameComparator.cameraZ, SoundSystem.plane); + return var0 - GrandExchangeEvents.cameraY < 800 && (Tiles.Tiles_renderFlags[SoundSystem.plane][WorldMapSection2.cameraX >> 7][GrandExchangeOfferNameComparator.cameraZ >> 7] & 4) != 0 ? SoundSystem.plane : 3; } } diff --git a/runescape-client/src/main/java/LoginPacket.java b/runescape-client/src/main/java/LoginPacket.java index 95d3ad97ad..39c810feeb 100644 --- a/runescape-client/src/main/java/LoginPacket.java +++ b/runescape-client/src/main/java/LoginPacket.java @@ -77,7 +77,7 @@ public class LoginPacket implements ClientPacketMarker { var4 = "_wip"; } - File var5 = new File(WorldMapSection1.userHomeDirectory, "jagex_" + var1 + "_preferences" + var0 + var4 + ".dat"); + File var5 = new File(WorldMapSection2.userHomeDirectory, "jagex_" + var1 + "_preferences" + var0 + var4 + ".dat"); AccessFile var6; if (!var2 && var5.exists()) { try { diff --git a/runescape-client/src/main/java/LoginScreenAnimation.java b/runescape-client/src/main/java/LoginScreenAnimation.java index 6171060b16..cd04c9ff89 100644 --- a/runescape-client/src/main/java/LoginScreenAnimation.java +++ b/runescape-client/src/main/java/LoginScreenAnimation.java @@ -4,11 +4,13 @@ import java.net.URL; import java.net.URLConnection; import java.util.Random; 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("bp") +@Implements("LoginScreenAnimation") public class LoginScreenAnimation { @ObfuscatedName("m") @ObfuscatedSignature( diff --git a/runescape-client/src/main/java/MenuAction.java b/runescape-client/src/main/java/MenuAction.java index 4712119a3f..2bd6703d40 100644 --- a/runescape-client/src/main/java/MenuAction.java +++ b/runescape-client/src/main/java/MenuAction.java @@ -82,7 +82,7 @@ public class MenuAction { Widget var12 = Huffman.getWidget(var3); if (var12 != null) { - class22.method295(var12); + WorldMapRectangle.method295(var12); } int var5; diff --git a/runescape-client/src/main/java/NPCDefinition.java b/runescape-client/src/main/java/NPCDefinition.java index 4f473abdf5..f12aa595fa 100644 --- a/runescape-client/src/main/java/NPCDefinition.java +++ b/runescape-client/src/main/java/NPCDefinition.java @@ -505,7 +505,7 @@ public class NPCDefinition extends DualNode { public final NPCDefinition transform() { int var1 = -1; if (this.transformVarbit != -1) { - var1 = WorldMapSection2.getVarbit(this.transformVarbit); + var1 = WorldMapSection0.getVarbit(this.transformVarbit); } else if (this.transformVarp != -1) { var1 = Varps.Varps_main[this.transformVarp]; } @@ -531,7 +531,7 @@ public class NPCDefinition extends DualNode { } else { int var1 = -1; if (this.transformVarbit != -1) { - var1 = WorldMapSection2.getVarbit(this.transformVarbit); + var1 = WorldMapSection0.getVarbit(this.transformVarbit); } else if (this.transformVarp != -1) { var1 = Varps.Varps_main[this.transformVarp]; } diff --git a/runescape-client/src/main/java/NetFileRequest.java b/runescape-client/src/main/java/NetFileRequest.java index da43e7940b..c459759de8 100644 --- a/runescape-client/src/main/java/NetFileRequest.java +++ b/runescape-client/src/main/java/NetFileRequest.java @@ -61,7 +61,7 @@ public class NetFileRequest extends DualNode { if (var7 != -1) { SequenceDefinition var6 = WorldMapAreaData.getSequenceDefinition(var7); - for (var3.modelFrameCycle += Client.field183; var3.modelFrameCycle > var6.frameLengths[var3.modelFrame]; class22.method295(var3)) { + for (var3.modelFrameCycle += Client.field183; var3.modelFrameCycle > var6.frameLengths[var3.modelFrame]; WorldMapRectangle.method295(var3)) { var3.modelFrameCycle -= var6.frameLengths[var3.modelFrame]; ++var3.modelFrame; if (var3.modelFrame >= var6.frameIds.length) { @@ -81,7 +81,7 @@ public class NetFileRequest extends DualNode { var7 *= Client.field183; var3.modelAngleX = var8 + var3.modelAngleX & 2047; var3.modelAngleY = var7 + var3.modelAngleY & 2047; - class22.method295(var3); + WorldMapRectangle.method295(var3); } } } diff --git a/runescape-client/src/main/java/NetSocket.java b/runescape-client/src/main/java/NetSocket.java index 2907e27c90..867629e386 100644 --- a/runescape-client/src/main/java/NetSocket.java +++ b/runescape-client/src/main/java/NetSocket.java @@ -435,7 +435,7 @@ public final class NetSocket extends AbstractSocket implements Runnable { var18 = var25; } else if (var2 == 2) { - var18 = WorldMapSection2.method593(var0, var1, var3, var4); + var18 = WorldMapSection0.method593(var0, var1, var3, var4); } else { var18 = ArchiveDisk.method3585(var0, var1, var2, var3, var4); } diff --git a/runescape-client/src/main/java/ObjectDefinition.java b/runescape-client/src/main/java/ObjectDefinition.java index 2610044c34..d0187aad78 100644 --- a/runescape-client/src/main/java/ObjectDefinition.java +++ b/runescape-client/src/main/java/ObjectDefinition.java @@ -826,7 +826,7 @@ public class ObjectDefinition extends DualNode { public final ObjectDefinition transform() { int var1 = -1; if (this.transformVarbit != -1) { - var1 = WorldMapSection2.getVarbit(this.transformVarbit); + var1 = WorldMapSection0.getVarbit(this.transformVarbit); } else if (this.transformVarp != -1) { var1 = Varps.Varps_main[this.transformVarp]; } diff --git a/runescape-client/src/main/java/Occluder.java b/runescape-client/src/main/java/Occluder.java index 67ba4151a0..ea90eddf8e 100644 --- a/runescape-client/src/main/java/Occluder.java +++ b/runescape-client/src/main/java/Occluder.java @@ -114,7 +114,8 @@ public final class Occluder { signature = "(IB)Lia;", garbageValue = "16" ) - public static VarbitDefinition method3255(int var0) { + @Export("getVarbitDefinition") + public static VarbitDefinition getVarbitDefinition(int var0) { VarbitDefinition var1 = (VarbitDefinition)VarbitDefinition.VarbitDefinition_cached.get((long)var0); if (var1 != null) { return var1; diff --git a/runescape-client/src/main/java/PendingSpawn.java b/runescape-client/src/main/java/PendingSpawn.java index c3b1a86330..5712ee43e4 100644 --- a/runescape-client/src/main/java/PendingSpawn.java +++ b/runescape-client/src/main/java/PendingSpawn.java @@ -96,7 +96,7 @@ public final class PendingSpawn extends Node { garbageValue = "1641191614" ) public static void method1695(int var0, int var1) { - VarbitDefinition var2 = Occluder.method3255(var0); + VarbitDefinition var2 = Occluder.getVarbitDefinition(var0); int var3 = var2.baseVar; int var4 = var2.startBit; int var5 = var2.endBit; diff --git a/runescape-client/src/main/java/Player.java b/runescape-client/src/main/java/Player.java index 5f6f9ad2de..1219103c7c 100644 --- a/runescape-client/src/main/java/Player.java +++ b/runescape-client/src/main/java/Player.java @@ -530,7 +530,7 @@ public final class Player extends Actor { } Client.isSpellSelected = false; - class22.method295(var0); + WorldMapRectangle.method295(var0); } } diff --git a/runescape-client/src/main/java/PlayerAppearance.java b/runescape-client/src/main/java/PlayerAppearance.java index 46059675b7..6b9510751b 100644 --- a/runescape-client/src/main/java/PlayerAppearance.java +++ b/runescape-client/src/main/java/PlayerAppearance.java @@ -54,7 +54,7 @@ public class PlayerAppearance { for (int var5 = 0; var5 < 7; ++var5) { for (int var6 = 0; var6 < KitDefinition.field457; ++var6) { - KitDefinition var7 = WorldMapSection1.getKitDefinition(var6); + KitDefinition var7 = WorldMapSection2.getKitDefinition(var6); if (var7 != null && !var7.nonSelectable && var5 + (var3 ? 7 : 0) == var7.bodypartID) { var1[field727[var5]] = var6 + 256; break; @@ -97,7 +97,7 @@ public class PlayerAppearance { } } - var4 = WorldMapSection1.getKitDefinition(var3); + var4 = WorldMapSection2.getKitDefinition(var3); } while(var4 == null); } while(var4.nonSelectable); } while(var1 + (this.isFemale ? 7 : 0) != var4.bodypartID); @@ -254,7 +254,7 @@ public class PlayerAppearance { int var10; for (int var11 = 0; var11 < 12; ++var11) { var10 = var7[var11]; - if (var10 >= 256 && var10 < 512 && !WorldMapSection1.getKitDefinition(var10 - 256).ready()) { + if (var10 >= 256 && var10 < 512 && !WorldMapSection2.getKitDefinition(var10 - 256).ready()) { var9 = true; } @@ -282,7 +282,7 @@ public class PlayerAppearance { var12 = var7[var13]; ModelData var14; if (var12 >= 256 && var12 < 512) { - var14 = WorldMapSection1.getKitDefinition(var12 - 256).getModelData(); + var14 = WorldMapSection2.getKitDefinition(var12 - 256).getModelData(); if (var14 != null) { var17[var10++] = var14; } @@ -346,7 +346,7 @@ public class PlayerAppearance { int var2; for (int var3 = 0; var3 < 12; ++var3) { var2 = this.equipment[var3]; - if (var2 >= 256 && var2 < 512 && !WorldMapSection1.getKitDefinition(var2 - 256).method161()) { + if (var2 >= 256 && var2 < 512 && !WorldMapSection2.getKitDefinition(var2 - 256).method161()) { var1 = true; } @@ -366,7 +366,7 @@ public class PlayerAppearance { var4 = this.equipment[var5]; ModelData var6; if (var4 >= 256 && var4 < 512) { - var6 = WorldMapSection1.getKitDefinition(var4 - 256).method162(); + var6 = WorldMapSection2.getKitDefinition(var4 - 256).method162(); if (var6 != null) { var7[var2++] = var6; } diff --git a/runescape-client/src/main/java/Rasterizer2D.java b/runescape-client/src/main/java/Rasterizer2D.java index a25f8df18a..1409081934 100644 --- a/runescape-client/src/main/java/Rasterizer2D.java +++ b/runescape-client/src/main/java/Rasterizer2D.java @@ -228,19 +228,19 @@ public class Rasterizer2D extends DualNode { @ObfuscatedName("dk") @Export("Rasterizer2D_drawCircleAlpha") - public static void Rasterizer2D_drawCircleAlpha(int var0, int var1, int var2, int var3, int var4) { - if (var4 != 0) { - if (var4 == 256) { + public static void Rasterizer2D_drawCircleAlpha(int var0, int var1, int var2, int var3, int opacity) { + if (opacity != 0) { + if (opacity == 256) { drawCircle(var0, var1, var2, var3); } else { if (var2 < 0) { var2 = -var2; } - int var5 = 256 - var4; - int var6 = (var3 >> 16 & 255) * var4; - int var7 = (var3 >> 8 & 255) * var4; - int var8 = var4 * (var3 & 255); + int var5 = 256 - opacity; + int var6 = (var3 >> 16 & 255) * opacity; + int var7 = (var3 >> 8 & 255) * opacity; + int var8 = opacity * (var3 & 255); int var9 = var1 - var2; if (var9 < Rasterizer2D_yClipStart) { var9 = Rasterizer2D_yClipStart; @@ -411,40 +411,40 @@ public class Rasterizer2D extends DualNode { } - @Export("drawGradient") + @Export("Rasterizer2D_drawGradient") @ObfuscatedName("dw") - public static void drawGradient(int var0, int var1, int var2, int var3, int var4, int var5) { - if (var2 > 0 && var3 > 0) { + public static void Rasterizer2D_drawGradient(int x, int y, int width, int height, int rgbTop, int rgbBot) { + if (width > 0 && height > 0) { int var6 = 0; - int var7 = 65536 / var3; - if (var0 < Rasterizer2D_xClipStart) { - var2 -= Rasterizer2D_xClipStart - var0; - var0 = Rasterizer2D_xClipStart; + int var7 = 65536 / height; + if (x < Rasterizer2D_xClipStart) { + width -= Rasterizer2D_xClipStart - x; + x = Rasterizer2D_xClipStart; } - if (var1 < Rasterizer2D_yClipStart) { - var6 += (Rasterizer2D_yClipStart - var1) * var7; - var3 -= Rasterizer2D_yClipStart - var1; - var1 = Rasterizer2D_yClipStart; + if (y < Rasterizer2D_yClipStart) { + var6 += (Rasterizer2D_yClipStart - y) * var7; + height -= Rasterizer2D_yClipStart - y; + y = Rasterizer2D_yClipStart; } - if (var0 + var2 > Rasterizer2D_xClipEnd) { - var2 = Rasterizer2D_xClipEnd - var0; + if (x + width > Rasterizer2D_xClipEnd) { + width = Rasterizer2D_xClipEnd - x; } - if (var3 + var1 > Rasterizer2D_yClipEnd) { - var3 = Rasterizer2D_yClipEnd - var1; + if (height + y > Rasterizer2D_yClipEnd) { + height = Rasterizer2D_yClipEnd - y; } - int var8 = Rasterizer2D_width - var2; - int var9 = var0 + Rasterizer2D_width * var1; + int var8 = Rasterizer2D_width - width; + int var9 = x + Rasterizer2D_width * y; - for (int var10 = -var3; var10 < 0; ++var10) { + for (int var10 = -height; 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; + int var13 = (var12 * (rgbBot & 16711935) + var11 * (rgbTop & 16711935) & -16711936) + (var12 * (rgbBot & 65280) + var11 * (rgbTop & 65280) & 16711680) >>> 8; - for (int var14 = -var2; var14 < 0; ++var14) { + for (int var14 = -width; var14 < 0; ++var14) { Rasterizer2D_pixels[var9++] = var13; } @@ -457,45 +457,45 @@ public class Rasterizer2D extends DualNode { @ObfuscatedName("dv") @Export("drawGradientAlpha") - public static void drawGradientAlpha(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { - if (var2 > 0 && var3 > 0) { + public static void drawGradientAlpha(int x, int y, int width, int height, int rgbTop, int rgbBot, int alphaTop, int alphaBot) { + if (width > 0 && height > 0) { int var8 = 0; - int var9 = 65536 / var3; - if (var0 < Rasterizer2D_xClipStart) { - var2 -= Rasterizer2D_xClipStart - var0; - var0 = Rasterizer2D_xClipStart; + int var9 = 65536 / height; + if (x < Rasterizer2D_xClipStart) { + width -= Rasterizer2D_xClipStart - x; + x = Rasterizer2D_xClipStart; } - if (var1 < Rasterizer2D_yClipStart) { - var8 += (Rasterizer2D_yClipStart - var1) * var9; - var3 -= Rasterizer2D_yClipStart - var1; - var1 = Rasterizer2D_yClipStart; + if (y < Rasterizer2D_yClipStart) { + var8 += (Rasterizer2D_yClipStart - y) * var9; + height -= Rasterizer2D_yClipStart - y; + y = Rasterizer2D_yClipStart; } - if (var0 + var2 > Rasterizer2D_xClipEnd) { - var2 = Rasterizer2D_xClipEnd - var0; + if (x + width > Rasterizer2D_xClipEnd) { + width = Rasterizer2D_xClipEnd - x; } - if (var3 + var1 > Rasterizer2D_yClipEnd) { - var3 = Rasterizer2D_yClipEnd - var1; + if (height + y > Rasterizer2D_yClipEnd) { + height = Rasterizer2D_yClipEnd - y; } - int var10 = Rasterizer2D_width - var2; - int var11 = var0 + Rasterizer2D_width * var1; + int var10 = Rasterizer2D_width - width; + int var11 = x + Rasterizer2D_width * y; - for (int var12 = -var3; var12 < 0; ++var12) { + for (int var12 = -height; var12 < 0; ++var12) { int var13 = 65536 - var8 >> 8; int var14 = var8 >> 8; - int var15 = (var13 * var6 + var14 * var7 & 65280) >>> 8; + int var15 = (var13 * alphaTop + var14 * alphaBot & 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; + int var16 = (var14 * (rgbBot & 16711935) + var13 * (rgbTop & 16711935) & -16711936) + (var14 * (rgbBot & 65280) + var13 * (rgbTop & 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) { + for (int var19 = -width; var19 < 0; ++var19) { int var20 = Rasterizer2D_pixels[var11]; if (var20 == 0) { Rasterizer2D_pixels[var11++] = var18; @@ -519,30 +519,30 @@ public class Rasterizer2D extends DualNode { garbageValue = "1" ) @Export("raster2d7") - public static void raster2d7(int var0, int var1, int var2, int var3, int var4, int var5, byte[] var6, int var7) { - if (var0 + var2 >= 0 && var3 + var1 >= 0 && var0 < Rasterizer2D_width && var1 < Rasterizer2D_height) { + public static void raster2d7(int x, int y, int width, int height, int var4, int var5, byte[] var6, int var7) { + if (x + width >= 0 && height + y >= 0 && x < Rasterizer2D_width && y < Rasterizer2D_height) { int var8 = 0; int var9 = 0; - if (var0 < 0) { - var8 -= var0; - var2 += var0; + if (x < 0) { + var8 -= x; + width += x; } - if (var1 < 0) { - var9 -= var1; - var3 += var1; + if (y < 0) { + var9 -= y; + height += y; } - if (var0 + var2 > Rasterizer2D_width) { - var2 = Rasterizer2D_width - var0; + if (x + width > Rasterizer2D_width) { + width = Rasterizer2D_width - x; } - if (var3 + var1 > Rasterizer2D_height) { - var3 = Rasterizer2D_height - var1; + if (height + y > Rasterizer2D_height) { + height = Rasterizer2D_height - y; } int var10 = var6.length / var7; - int var11 = Rasterizer2D_width - var2; + int var11 = Rasterizer2D_width - width; int var12 = var4 >>> 24; int var13 = var5 >>> 24; int var14; @@ -551,12 +551,12 @@ public class Rasterizer2D extends DualNode { int var17; int var18; if (var12 == 255 && var13 == 255) { - var14 = var0 + var8 + (var9 + var1) * Rasterizer2D_width; + var14 = x + var8 + (var9 + y) * Rasterizer2D_width; - 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; + for (var15 = var9 + y; var15 < height + var9 + y; ++var15) { + for (var16 = x + var8; var16 < x + var8 + width; ++var16) { + var17 = (var15 - y) % var10; + var18 = (var16 - x) % var7; if (var6[var18 + var17 * var7] != 0) { Rasterizer2D_pixels[var14++] = var5; } else { @@ -567,12 +567,12 @@ public class Rasterizer2D extends DualNode { var14 += var11; } } else { - var14 = var0 + var8 + (var9 + var1) * Rasterizer2D_width; + var14 = x + var8 + (var9 + y) * Rasterizer2D_width; - 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; + for (var15 = var9 + y; var15 < height + var9 + y; ++var15) { + for (var16 = x + var8; var16 < x + var8 + width; ++var16) { + var17 = (var15 - y) % var10; + var18 = (var16 - x) % var7; int var19 = var4; if (var6[var18 + var17 * var7] != 0) { var19 = var5; diff --git a/runescape-client/src/main/java/Rasterizer3D.java b/runescape-client/src/main/java/Rasterizer3D.java index 5f84a7352c..2541162f80 100644 --- a/runescape-client/src/main/java/Rasterizer3D.java +++ b/runescape-client/src/main/java/Rasterizer3D.java @@ -1397,7 +1397,7 @@ public class Rasterizer3D extends Rasterizer2D { int[] var19 = Rasterizer3D_textureLoader.load(var18); int var20; if (var19 == null) { - var20 = Rasterizer3D_textureLoader.vmethod324(var18); + var20 = Rasterizer3D_textureLoader.getAverageTextureRGB(var18); method3037(var0, var1, var2, var3, var4, var5, method3040(var20, var6), method3040(var20, var7), method3040(var20, var8)); } else { Rasterizer3D_isLowDetailTexture = Rasterizer3D_textureLoader.isLowDetail(var18); @@ -2440,7 +2440,7 @@ public class Rasterizer3D extends Rasterizer2D { int[] var19 = Rasterizer3D_textureLoader.load(var18); int var20; if (var19 == null) { - var20 = Rasterizer3D_textureLoader.vmethod324(var18); + var20 = Rasterizer3D_textureLoader.getAverageTextureRGB(var18); method3037(var0, var1, var2, var3, var4, var5, method3040(var20, var6), method3040(var20, var7), method3040(var20, var8)); } else { Rasterizer3D_isLowDetailTexture = Rasterizer3D_textureLoader.isLowDetail(var18); diff --git a/runescape-client/src/main/java/RouteStrategy.java b/runescape-client/src/main/java/RouteStrategy.java index eee9d2ab63..040ead2a47 100644 --- a/runescape-client/src/main/java/RouteStrategy.java +++ b/runescape-client/src/main/java/RouteStrategy.java @@ -1,9 +1,11 @@ import net.runelite.mapping.Export; +import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("fe") +@Implements("RouteStrategy") public abstract class RouteStrategy { @ObfuscatedName("l") @ObfuscatedGetter( diff --git a/runescape-client/src/main/java/Scene.java b/runescape-client/src/main/java/Scene.java index e07ebe99e3..10abbdb8a5 100644 --- a/runescape-client/src/main/java/Scene.java +++ b/runescape-client/src/main/java/Scene.java @@ -1848,7 +1848,7 @@ public class Scene { Rasterizer3D.method3012(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.vmethod324(var1.texture); + var30 = Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var1.texture); Rasterizer3D.method3037(var27, var29, var25, var26, var28, var24, method3108(var30, var1.neColor), method3108(var30, var1.nwColor), method3108(var30, var1.seColor)); } } @@ -1871,7 +1871,7 @@ public class Scene { } else if (!Scene_isLowDetail) { Rasterizer3D.method3012(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.vmethod324(var1.texture); + var30 = Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var1.texture); Rasterizer3D.method3037(var23, var25, var29, var22, var24, var28, method3108(var30, var1.swColor), method3108(var30, var1.seColor), method3108(var30, var1.nwColor)); } } @@ -1950,7 +1950,7 @@ public class Scene { Rasterizer3D.method3012(var16, var17, var18, var13, var14, var15, var1.triangleColorA[var9], var1.triangleColorB[var9], var1.triangleColorC[var9], TileModel.field902[var10], TileModel.field902[var11], TileModel.field902[var12], TileModel.field903[var10], TileModel.field903[var11], TileModel.field903[var12], TileModel.field904[var10], TileModel.field904[var11], TileModel.field904[var12], var1.triangleTextureId[var9]); } } else { - int var19 = Rasterizer3D.Rasterizer3D_textureLoader.vmethod324(var1.triangleTextureId[var9]); + int var19 = Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var1.triangleTextureId[var9]); Rasterizer3D.method3037(var16, var17, var18, var13, var14, var15, method3108(var19, var1.triangleColorA[var9]), method3108(var19, var1.triangleColorB[var9]), method3108(var19, var1.triangleColorC[var9])); } } else if (var1.triangleColorA[var9] != 12345678) { diff --git a/runescape-client/src/main/java/ScriptEvent.java b/runescape-client/src/main/java/ScriptEvent.java index 6e2d40c75f..0753934907 100644 --- a/runescape-client/src/main/java/ScriptEvent.java +++ b/runescape-client/src/main/java/ScriptEvent.java @@ -196,7 +196,7 @@ public class ScriptEvent extends Node { return 1; } else if (var0 == ScriptOpcodes.INV_SIZE) { var3 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = WorldMapDecorationType.method4523(var3).size; + Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = WorldMapDecorationType.getInvDefinition(var3).size; return 1; } else if (var0 == ScriptOpcodes.STAT) { var3 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; diff --git a/runescape-client/src/main/java/SecureRandomCallable.java b/runescape-client/src/main/java/SecureRandomCallable.java index 22a36b63d4..4a855b6eb9 100644 --- a/runescape-client/src/main/java/SecureRandomCallable.java +++ b/runescape-client/src/main/java/SecureRandomCallable.java @@ -59,9 +59,9 @@ public class SecureRandomCallable implements Callable { Client.interfaceParents.put(var3, (long)var0); DevicePcmPlayerProvider.method845(var1); Widget var4 = Huffman.getWidget(var0); - class22.method295(var4); + WorldMapRectangle.method295(var4); if (Client.field127 != null) { - class22.method295(Client.field127); + WorldMapRectangle.method295(Client.field127); Client.field127 = null; } @@ -133,7 +133,7 @@ public class SecureRandomCallable implements Callable { class214.menuWidth = var7; AbstractWorldMapIcon.menuHeight = Client.menuOptionsCount * 15 + 22; class39.revalidateWidgetScroll(Widget.interfaceComponents[var0 >> 16], var4, false); - WorldMapSection3.runWidgetOnLoadListener(var1); + WorldMapSection1.runWidgetOnLoadListener(var1); if (Client.rootInterface != -1) { GrandExchangeEvents.method74(Client.rootInterface, 1); } diff --git a/runescape-client/src/main/java/SoundEffect.java b/runescape-client/src/main/java/SoundEffect.java index 29276a314d..cbac1dcd68 100644 --- a/runescape-client/src/main/java/SoundEffect.java +++ b/runescape-client/src/main/java/SoundEffect.java @@ -49,7 +49,8 @@ public class SoundEffect { } @ObfuscatedName("q") - public final int method303() { + @Export("calculateDelay") + public final int calculateDelay() { int var1 = 9999999; int var2; diff --git a/runescape-client/src/main/java/StructDefinition.java b/runescape-client/src/main/java/StructDefinition.java index 7fcc7dcf5e..a9578d1220 100644 --- a/runescape-client/src/main/java/StructDefinition.java +++ b/runescape-client/src/main/java/StructDefinition.java @@ -134,40 +134,40 @@ public class StructDefinition extends DualNode { var4.scrollY = 0; } - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETCOLOUR) { var4.color = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETFILL) { var4.fill = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize] == 1; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETTRANS) { var4.transparency = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETLINEWID) { var4.lineWid = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETGRAPHIC) { var4.spriteId2 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SET2DANGLE) { var4.spriteAngle = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETTILING) { var4.spriteTiling = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize] == 1; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETMODEL) { var4.modelType = 1; var4.modelId = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETMODELANGLE) { RouteStrategy.Interpreter_intStackSize -= 6; @@ -177,7 +177,7 @@ public class StructDefinition extends DualNode { var4.modelAngleY = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 3]; var4.modelAngleZ = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 4]; var4.modelZoom = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 5]; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else { int var5; @@ -187,58 +187,58 @@ public class StructDefinition extends DualNode { var4.sequenceId = var5; var4.modelFrame = 0; var4.modelFrameCycle = 0; - class22.method295(var4); + WorldMapRectangle.method295(var4); } return 1; } else if (var0 == ScriptOpcodes.CC_SETMODELORTHOG) { var4.modelOrthog = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize] == 1; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETTEXT) { String var8 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; if (!var8.equals(var4.text)) { var4.text = var8; - class22.method295(var4); + WorldMapRectangle.method295(var4); } return 1; } else if (var0 == ScriptOpcodes.CC_SETTEXTFONT) { var4.fontId = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETTEXTALIGN) { RouteStrategy.Interpreter_intStackSize -= 3; var4.textXAlignment = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize]; var4.textYAlignment = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 1]; var4.textLineHeight = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 2]; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETTEXTSHADOW) { var4.textShadowed = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize] == 1; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETOUTLINE) { var4.outline = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETGRAPHICSHADOW) { var4.spriteShadow = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETVFLIP) { var4.spriteFlipV = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize] == 1; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETHFLIP) { var4.spriteFlipH = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize] == 1; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETSCROLLSIZE) { RouteStrategy.Interpreter_intStackSize -= 2; var4.scrollWidth = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize]; var4.scrollHeight = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 1]; - class22.method295(var4); + WorldMapRectangle.method295(var4); if (var3 != -1 && var4.type == 0) { class39.revalidateWidgetScroll(Widget.interfaceComponents[var3 >> 16], var4, false); } @@ -247,26 +247,26 @@ public class StructDefinition extends DualNode { } else if (var0 == ScriptOpcodes.CC_RESUME_PAUSEBUTTON) { TilePaint.method3060(var4.id, var4.childIndex); Client.field127 = var4; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == 1122) { var4.spriteId = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == ScriptOpcodes.CC_SETFILLCOLOUR) { var4.color2 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == 1124) { var4.field960 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; - class22.method295(var4); + WorldMapRectangle.method295(var4); return 1; } else if (var0 == 1125) { var5 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; RectangleMode var7 = (RectangleMode)ScriptFrame.findEnumerated(DefaultsGroup.method5822(), var5); if (var7 != null) { var4.rectangleMode = var7; - class22.method295(var4); + WorldMapRectangle.method295(var4); } return 1; diff --git a/runescape-client/src/main/java/Texture.java b/runescape-client/src/main/java/Texture.java index 99c20b1185..6d1f37c646 100644 --- a/runescape-client/src/main/java/Texture.java +++ b/runescape-client/src/main/java/Texture.java @@ -10,8 +10,8 @@ public class Texture extends Node { @Export("Texture_animatedPixels") static int[] Texture_animatedPixels; @ObfuscatedName("o") - @Export("int1") - int int1; + @Export("averageRGB") + int averageRGB; @ObfuscatedName("u") boolean field893; @ObfuscatedName("g") @@ -41,7 +41,7 @@ public class Texture extends Node { ) Texture(Buffer var1) { this.isLoaded = false; - this.int1 = var1.readUnsignedShort(); + this.averageRGB = var1.readUnsignedShort(); this.field893 = var1.readUnsignedByte() == 1; int var2 = var1.readUnsignedByte(); if (var2 >= 1 && var2 <= 4) { diff --git a/runescape-client/src/main/java/TextureLoader.java b/runescape-client/src/main/java/TextureLoader.java index ef97959b05..a6d1e7110f 100644 --- a/runescape-client/src/main/java/TextureLoader.java +++ b/runescape-client/src/main/java/TextureLoader.java @@ -19,7 +19,8 @@ public interface TextureLoader { signature = "(II)I", garbageValue = "-1641984961" ) - int vmethod324(int var1); + @Export("getAverageTextureRGB") + int getAverageTextureRGB(int var1); @ObfuscatedName("o") @ObfuscatedSignature( diff --git a/runescape-client/src/main/java/TextureProvider.java b/runescape-client/src/main/java/TextureProvider.java index c40719ff15..54c69195ff 100644 --- a/runescape-client/src/main/java/TextureProvider.java +++ b/runescape-client/src/main/java/TextureProvider.java @@ -155,8 +155,9 @@ public class TextureProvider implements TextureLoader { signature = "(II)I", garbageValue = "-1641984961" ) - public int vmethod324(int var1) { - return this.textures[var1] != null ? this.textures[var1].int1 : 0; + @Export("getAverageTextureRGB") + public int getAverageTextureRGB(int var1) { + return this.textures[var1] != null ? this.textures[var1].averageRGB : 0; } @ObfuscatedName("o") @@ -221,7 +222,7 @@ public class TextureProvider implements TextureLoader { int var2 = var0.index; byte[] var3 = class230.method4516(var1); var0.writeSmartByteShort(var3.length); - var0.index += class303.huffman.method127(var3, 0, var3.length, var0.array, var0.index); + var0.index += class303.huffman.compress(var3, 0, var3.length, var0.array, var0.index); return var0.index - var2; } diff --git a/runescape-client/src/main/java/UserComparator4.java b/runescape-client/src/main/java/UserComparator4.java index 63b67c7ca4..f87a66a02a 100644 --- a/runescape-client/src/main/java/UserComparator4.java +++ b/runescape-client/src/main/java/UserComparator4.java @@ -82,7 +82,7 @@ public class UserComparator4 implements Comparator { var3 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; if (var3 == 1 || var3 == 2) { ReflectionCheck.clientPreferences.windowMode = var3; - WorldMapSection0.savePreferences(); + WorldMapSection3.savePreferences(); } return 1; diff --git a/runescape-client/src/main/java/Varcs.java b/runescape-client/src/main/java/Varcs.java index 6a64bd9e0d..8081a699f5 100644 --- a/runescape-client/src/main/java/Varcs.java +++ b/runescape-client/src/main/java/Varcs.java @@ -145,7 +145,7 @@ public class Varcs { ) @Export("getPreferencesFile") AccessFile getPreferencesFile(boolean var1) { - return LoginPacket.getPreferencesFile("2", class22.studioGame.name, var1); + return LoginPacket.getPreferencesFile("2", WorldMapRectangle.studioGame.name, var1); } @ObfuscatedName("e") @@ -365,7 +365,7 @@ public class Varcs { garbageValue = "321265868" ) public static void method2160(AbstractArchive var0) { - FloorOverlayDefinition.field663 = var0; + FloorOverlayDefinition.FloorOverlayDefinition_archive = var0; } @ObfuscatedName("q") diff --git a/runescape-client/src/main/java/VertexNormal.java b/runescape-client/src/main/java/VertexNormal.java index 213155cbe1..66ffc6364d 100644 --- a/runescape-client/src/main/java/VertexNormal.java +++ b/runescape-client/src/main/java/VertexNormal.java @@ -61,8 +61,8 @@ public class VertexNormal { ByteArrayPool.ByteArrayPool_large[++ByteArrayPool.ByteArrayPool_largeCount - 1] = var0; } else if (RouteStrategy.field760 != null) { for (int var1 = 0; var1 < ByteArrayPool.field55.length; ++var1) { - if (var0.length == ByteArrayPool.field55[var1] && WorldMapSection2.field1082[var1] < RouteStrategy.field760[var1].length) { - RouteStrategy.field760[var1][WorldMapSection2.field1082[var1]++] = var0; + if (var0.length == ByteArrayPool.field55[var1] && WorldMapSection0.field1082[var1] < RouteStrategy.field760[var1].length) { + RouteStrategy.field760[var1][WorldMapSection0.field1082[var1]++] = var0; return; } } diff --git a/runescape-client/src/main/java/class249.java b/runescape-client/src/main/java/VerticalAlignment.java similarity index 78% rename from runescape-client/src/main/java/class249.java rename to runescape-client/src/main/java/VerticalAlignment.java index dc09ff3081..c562dc666b 100644 --- a/runescape-client/src/main/java/class249.java +++ b/runescape-client/src/main/java/VerticalAlignment.java @@ -1,10 +1,12 @@ import net.runelite.mapping.Export; +import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("ip") -public enum class249 implements Enumerated { +@Implements("VerticalAlignment") +public enum VerticalAlignment implements Enumerated { @ObfuscatedName("m") @ObfuscatedSignature( signature = "Lip;" @@ -25,7 +27,8 @@ public enum class249 implements Enumerated { @ObfuscatedGetter( intValue = 2070321655 ) - public final int field3275; + @Export("value") + public final int value; @ObfuscatedName("o") @ObfuscatedGetter( intValue = 1686539261 @@ -33,8 +36,8 @@ public enum class249 implements Enumerated { @Export("id") final int id; - private class249(int var3, int var4) { - this.field3275 = var3; + private VerticalAlignment(int var3, int var4) { + this.value = var3; this.id = var4; } diff --git a/runescape-client/src/main/java/WorldMapArea.java b/runescape-client/src/main/java/WorldMapArea.java index a7c2416d34..03d369df0a 100644 --- a/runescape-client/src/main/java/WorldMapArea.java +++ b/runescape-client/src/main/java/WorldMapArea.java @@ -126,21 +126,21 @@ public class WorldMapArea { @Export("readWorldMapSection") WorldMapSection readWorldMapSection(Buffer var1) { int var2 = var1.readUnsignedByte(); - WorldMapSectionType[] var3 = new WorldMapSectionType[]{WorldMapSectionType.field1101, WorldMapSectionType.field1103, WorldMapSectionType.field1100, WorldMapSectionType.field1102}; + WorldMapSectionType[] var3 = new WorldMapSectionType[]{WorldMapSectionType.WORLDMAPSECTIONTYPE1, WorldMapSectionType.WORLDMAPSECTIONTYPE3, WorldMapSectionType.WORLDMAPSECTIONTYPE0, WorldMapSectionType.WORLDMAPSECTIONTYPE2}; WorldMapSectionType var4 = (WorldMapSectionType)ScriptFrame.findEnumerated(var3, var2); Object var5 = null; switch(var4.type) { case 0: - var5 = new WorldMapSection2(); + var5 = new WorldMapSection0(); break; case 1: - var5 = new WorldMapSection3(); - break; - case 2: var5 = new WorldMapSection1(); break; + case 2: + var5 = new WorldMapSection2(); + break; case 3: - var5 = new WorldMapSection0(); + var5 = new WorldMapSection3(); break; default: throw new IllegalStateException(""); diff --git a/runescape-client/src/main/java/WorldMapAreaData.java b/runescape-client/src/main/java/WorldMapAreaData.java index 4c259a1f69..2f31fc3b62 100644 --- a/runescape-client/src/main/java/WorldMapAreaData.java +++ b/runescape-client/src/main/java/WorldMapAreaData.java @@ -207,14 +207,14 @@ public class WorldMapAreaData extends WorldMapArea { --RouteStrategy.Interpreter_intStackSize; var5 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize] - 1; if (var5 >= 0 && var5 <= 9) { - WorldMapSection3.method345(var4, var5); + WorldMapSection1.method345(var4, var5); return 1; } else { throw new RuntimeException(); } } else if (var0 == 1355) { var11 = 10; - WorldMapSection3.method345(var4, var11); + WorldMapSection1.method345(var4, var11); return 1; } else { return 2; diff --git a/runescape-client/src/main/java/WorldMapCacheName.java b/runescape-client/src/main/java/WorldMapCacheName.java index e01228c344..59043310c4 100644 --- a/runescape-client/src/main/java/WorldMapCacheName.java +++ b/runescape-client/src/main/java/WorldMapCacheName.java @@ -61,7 +61,7 @@ public class WorldMapCacheName { public static void method633(int[] var0, int[] var1) { if (var0 != null && var1 != null) { ByteArrayPool.field55 = var0; - WorldMapSection2.field1082 = new int[var0.length]; + WorldMapSection0.field1082 = new int[var0.length]; RouteStrategy.field760 = new byte[var0.length][][]; for (int var2 = 0; var2 < ByteArrayPool.field55.length; ++var2) { @@ -69,7 +69,7 @@ public class WorldMapCacheName { } } else { ByteArrayPool.field55 = null; - WorldMapSection2.field1082 = null; + WorldMapSection0.field1082 = null; RouteStrategy.field760 = ((byte[][][])null); } diff --git a/runescape-client/src/main/java/WorldMapDecoration.java b/runescape-client/src/main/java/WorldMapDecoration.java index ba3cfb9896..c599c7972a 100644 --- a/runescape-client/src/main/java/WorldMapDecoration.java +++ b/runescape-client/src/main/java/WorldMapDecoration.java @@ -104,6 +104,6 @@ public class WorldMapDecoration { ServerBuild.field788 = var0; Client.field220 = var1; FloorDecoration.selectedSpellFlags = var2; - class22.method295(var4); + WorldMapRectangle.method295(var4); } } diff --git a/runescape-client/src/main/java/WorldMapDecorationType.java b/runescape-client/src/main/java/WorldMapDecorationType.java index fbe474bd51..88b0771864 100644 --- a/runescape-client/src/main/java/WorldMapDecorationType.java +++ b/runescape-client/src/main/java/WorldMapDecorationType.java @@ -160,12 +160,13 @@ public enum WorldMapDecorationType implements Enumerated { signature = "(IB)Lib;", garbageValue = "1" ) - public static InvDefinition method4523(int var0) { + @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 = class4.field1158.takeFile(5, var0); + byte[] var2 = class4.InvDefinition_archive.takeFile(5, var0); var1 = new InvDefinition(); if (var2 != null) { var1.decode(new Buffer(var2)); diff --git a/runescape-client/src/main/java/WorldMapElement.java b/runescape-client/src/main/java/WorldMapElement.java index fa307bd627..f4a1c44e73 100644 --- a/runescape-client/src/main/java/WorldMapElement.java +++ b/runescape-client/src/main/java/WorldMapElement.java @@ -23,8 +23,8 @@ public class WorldMapElement extends DualNode { @ObfuscatedSignature( signature = "Lkz;" ) - @Export("fonts") - static Fonts fonts; + @Export("WorldMapElement_fonts") + static Fonts WorldMapElement_fonts; @ObfuscatedName("o") @ObfuscatedGetter( intValue = -1579051565 @@ -43,7 +43,8 @@ public class WorldMapElement extends DualNode { @Export("sprite2") int sprite2; @ObfuscatedName("l") - public String field1021; + @Export("name") + public String name; @ObfuscatedName("e") @ObfuscatedGetter( intValue = -231067 @@ -87,12 +88,14 @@ public class WorldMapElement extends DualNode { @ObfuscatedSignature( signature = "Lju;" ) - public class266 field3287; + @Export("horizontalAlignment") + public HorizontalAlignment horizontalAlignment; @ObfuscatedName("y") @ObfuscatedSignature( signature = "Lip;" ) - public class249 field3301; + @Export("verticalAlignment") + public VerticalAlignment verticalAlignment; @ObfuscatedName("h") int[] field1028; @ObfuscatedName("b") @@ -113,8 +116,8 @@ public class WorldMapElement extends DualNode { this.field1025 = Integer.MAX_VALUE; this.field1026 = Integer.MIN_VALUE; this.field1027 = Integer.MIN_VALUE; - this.field3287 = class266.field3527; - this.field3301 = class249.field3273; + this.horizontalAlignment = HorizontalAlignment.field3527; + this.verticalAlignment = VerticalAlignment.field3273; this.category = -1; this.field1020 = var1; } @@ -148,7 +151,7 @@ public class WorldMapElement extends DualNode { } else if (opcode == 2) { this.sprite2 = buffer.method51(); } else if (opcode == 3) { - this.field1021 = buffer.readStringCp1252NullTerminated(); + this.name = buffer.readStringCp1252NullTerminated(); } else if (opcode == 4) { this.field1022 = buffer.readMedium(); } else if (opcode == 5) { @@ -214,10 +217,10 @@ public class WorldMapElement extends DualNode { } else if (opcode == 28) { buffer.readUnsignedByte(); } else if (opcode == 29) { - class266[] var6 = new class266[]{class266.field3527, class266.field3526, class266.field3529}; - this.field3287 = (class266)ScriptFrame.findEnumerated(var6, buffer.readUnsignedByte()); + HorizontalAlignment[] var6 = new HorizontalAlignment[]{HorizontalAlignment.field3527, HorizontalAlignment.field3526, HorizontalAlignment.field3529}; + this.horizontalAlignment = (HorizontalAlignment)ScriptFrame.findEnumerated(var6, buffer.readUnsignedByte()); } else if (opcode == 30) { - this.field3301 = (class249)ScriptFrame.findEnumerated(FloorUnderlayDefinition.method4839(), buffer.readUnsignedByte()); + this.verticalAlignment = (VerticalAlignment)ScriptFrame.findEnumerated(FloorUnderlayDefinition.method4839(), buffer.readUnsignedByte()); } } } diff --git a/runescape-client/src/main/java/WorldMapIcon1.java b/runescape-client/src/main/java/WorldMapIcon1.java index 002ffe1a56..a8151352b2 100644 --- a/runescape-client/src/main/java/WorldMapIcon1.java +++ b/runescape-client/src/main/java/WorldMapIcon1.java @@ -136,7 +136,7 @@ public class WorldMapIcon1 extends AbstractWorldMapIcon { } int[] var4 = Client.queuedSoundEffectDelays; - var4[var0] += var11.method303(); + var4[var0] += var11.calculateDelay(); Client.soundEffects[var0] = var11; } diff --git a/runescape-client/src/main/java/WorldMapIcon2.java b/runescape-client/src/main/java/WorldMapIcon2.java index 7138ead64f..e29e9aca9a 100644 --- a/runescape-client/src/main/java/WorldMapIcon2.java +++ b/runescape-client/src/main/java/WorldMapIcon2.java @@ -97,7 +97,7 @@ public class WorldMapIcon2 extends AbstractWorldMapIcon { ) void method399() { this.element = class50.getObjectDefinition(this.field1034).transform().mapIconId; - this.label = this.field1035.method420(ViewportMouse.getWorldMapElement(this.element)); + this.label = this.field1035.createMapLabel(ViewportMouse.getWorldMapElement(this.element)); WorldMapElement var1 = ViewportMouse.getWorldMapElement(this.getElement()); Sprite var2 = var1.getSprite(false); if (var2 != null) { diff --git a/runescape-client/src/main/java/WorldMapLabel.java b/runescape-client/src/main/java/WorldMapLabel.java index 1d30cddb90..801b7a91f9 100644 --- a/runescape-client/src/main/java/WorldMapLabel.java +++ b/runescape-client/src/main/java/WorldMapLabel.java @@ -239,7 +239,7 @@ public class WorldMapLabel { static final void worldToScreen(int var0, int var1, int var2) { if (var0 >= 128 && var1 >= 128 && var0 <= 13056 && var1 <= 13056) { int var3 = class32.getTileHeight(var0, var1, SoundSystem.plane) - var2; - var0 -= WorldMapSection1.cameraX; + var0 -= WorldMapSection2.cameraX; var3 -= GrandExchangeEvents.cameraY; var1 -= GrandExchangeOfferNameComparator.cameraZ; int var4 = Rasterizer3D.Rasterizer3D_sine[WorldMapIcon1.cameraPitch]; diff --git a/runescape-client/src/main/java/WorldMapLabelSize.java b/runescape-client/src/main/java/WorldMapLabelSize.java index 05ebdd1621..a558fcd511 100644 --- a/runescape-client/src/main/java/WorldMapLabelSize.java +++ b/runescape-client/src/main/java/WorldMapLabelSize.java @@ -77,7 +77,8 @@ public class WorldMapLabelSize { signature = "(I)[Ls;", garbageValue = "1579674051" ) - static WorldMapLabelSize[] method192() { + @Export("values") + static WorldMapLabelSize[] values() { return new WorldMapLabelSize[]{WorldMapLabelSize_small, WorldMapLabelSize_medium, WorldMapLabelSize_large}; } @@ -86,8 +87,9 @@ public class WorldMapLabelSize { signature = "(IB)Ls;", garbageValue = "-67" ) - static WorldMapLabelSize method195(int var0) { - WorldMapLabelSize[] var1 = method192(); + @Export("valueOf") + static WorldMapLabelSize valueOf(int var0) { + WorldMapLabelSize[] var1 = values(); for (int var2 = 0; var2 < var1.length; ++var2) { WorldMapLabelSize var3 = var1[var2]; @@ -115,7 +117,7 @@ public class WorldMapLabelSize { } if (Client.field127 != null) { - class22.method295(Client.field127); + WorldMapRectangle.method295(Client.field127); Client.field127 = null; } diff --git a/runescape-client/src/main/java/WorldMapManager.java b/runescape-client/src/main/java/WorldMapManager.java index 3c3c0f055c..2b669590f6 100644 --- a/runescape-client/src/main/java/WorldMapManager.java +++ b/runescape-client/src/main/java/WorldMapManager.java @@ -198,7 +198,7 @@ public final class WorldMapManager { int var11 = Rasterizer2D.Rasterizer2D_height; int[] var12 = new int[4]; Rasterizer2D.Rasterizer2D_getClipArray(var12); - class22 var13 = this.method643(var1, var2, var3, var4); + WorldMapRectangle var13 = this.method643(var1, var2, var3, var4); float var14 = this.getPixelsPerTile(var7 - var5, var3 - var1); int var15 = (int)Math.ceil((double)var14); this.field1050 = var15; @@ -208,13 +208,13 @@ public final class WorldMapManager { this.field1045.put(var15, var16); } - int var23 = var13.field166 + var13.field169 - 1; - int var17 = var13.field167 + var13.field164 - 1; + int var23 = var13.worldMapRegionX + var13.worldMapRegionWidth - 1; + int var17 = var13.worldMapRegionY + var13.worldMapRegionHeight - 1; int var18; int var19; - for (var18 = var13.field166; var18 <= var23; ++var18) { - for (var19 = var13.field167; var19 <= var17; ++var19) { + for (var18 = var13.worldMapRegionX; var18 <= var23; ++var18) { + for (var19 = var13.worldMapRegionY; var19 <= var17; ++var19) { this.regions[var18][var19].method455(var15, (class40)this.field1045.get(var15), this.mapSceneSprites, this.field1046, this.field1047); } } @@ -225,8 +225,8 @@ public final class WorldMapManager { var19 = this.surfaceOffsetX + var1; int var20 = var2 + this.surfaceOffsetY; - for (int var21 = var13.field166; var21 < var13.field166 + var13.field169; ++var21) { - for (int var22 = var13.field167; var22 < var13.field167 + var13.field164; ++var22) { + for (int var21 = var13.worldMapRegionX; var21 < var13.worldMapRegionX + var13.worldMapRegionWidth; ++var21) { + for (int var22 = var13.worldMapRegionY; var22 < var13.worldMapRegionY + var13.worldMapRegionHeight; ++var22) { this.regions[var21][var22].method404(var5 + var18 * (this.regions[var21][var22].x * 64 - var19) / 64, var8 - var18 * (this.regions[var21][var22].y * 64 - var20 + 64) / 64, var18); } } @@ -239,7 +239,7 @@ public final class WorldMapManager { garbageValue = "-71" ) public final void method402(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) { - class22 var14 = this.method643(var1, var2, var3, var4); + WorldMapRectangle var14 = this.method643(var1, var2, var3, var4); float var15 = this.getPixelsPerTile(var7 - var5, var3 - var1); int var16 = (int)(var15 * 64.0F); int var17 = this.surfaceOffsetX + var1; @@ -247,8 +247,8 @@ public final class WorldMapManager { int var19; int var20; - for (var19 = var14.field166; var19 < var14.field169 + var14.field166; ++var19) { - for (var20 = var14.field167; var20 < var14.field164 + var14.field167; ++var20) { + for (var19 = var14.worldMapRegionX; var19 < var14.worldMapRegionWidth + var14.worldMapRegionX; ++var19) { + for (var20 = var14.worldMapRegionY; var20 < var14.worldMapRegionHeight + var14.worldMapRegionY; ++var20) { if (var13) { this.regions[var19][var20].method406(); } @@ -258,8 +258,8 @@ public final class WorldMapManager { } if (var10 != null && var11 > 0) { - for (var19 = var14.field166; var19 < var14.field169 + var14.field166; ++var19) { - for (var20 = var14.field167; var20 < var14.field167 + var14.field164; ++var20) { + for (var19 = var14.worldMapRegionX; var19 < var14.worldMapRegionWidth + var14.worldMapRegionX; ++var19) { + for (var20 = var14.worldMapRegionY; var20 < var14.worldMapRegionY + var14.worldMapRegionHeight; ++var20) { this.regions[var19][var20].method411(var10, var11, var12); } } @@ -318,14 +318,14 @@ public final class WorldMapManager { if (!this.isLoaded0) { return var11; } else { - class22 var12 = this.method643(var1, var2, var3, var4); + WorldMapRectangle var12 = this.method643(var1, var2, var3, var4); float var13 = this.getPixelsPerTile(var7, var3 - var1); int var14 = (int)(var13 * 64.0F); int var15 = this.surfaceOffsetX + var1; int var16 = var2 + this.surfaceOffsetY; - for (int var17 = var12.field166; var17 < var12.field166 + var12.field169; ++var17) { - for (int var18 = var12.field167; var18 < var12.field164 + var12.field167; ++var18) { + for (int var17 = var12.worldMapRegionX; var17 < var12.worldMapRegionX + var12.worldMapRegionWidth; ++var17) { + for (int var18 = var12.worldMapRegionY; var18 < var12.worldMapRegionHeight + var12.worldMapRegionY; ++var18) { List var19 = this.regions[var17][var18].method421(var5 + var14 * (this.regions[var17][var18].x * 64 - var15) / 64, var8 + var6 - var14 * (this.regions[var17][var18].y * 64 - var16 + 64) / 64, var14, var9, var10); if (!var19.isEmpty()) { var11.addAll(var19); @@ -342,8 +342,8 @@ public final class WorldMapManager { signature = "(IIIII)Lc;", garbageValue = "-1455088394" ) - class22 method643(int var1, int var2, int var3, int var4) { - class22 var5 = new class22(this); + WorldMapRectangle method643(int var1, int var2, int var3, int var4) { + WorldMapRectangle var5 = new WorldMapRectangle(this); int var6 = this.surfaceOffsetX + var1; int var7 = var2 + this.surfaceOffsetY; int var8 = var3 + this.surfaceOffsetX; @@ -352,30 +352,30 @@ public final class WorldMapManager { int var11 = var7 / 64; int var12 = var8 / 64; int var13 = var9 / 64; - var5.field169 = var12 - var10 + 1; - var5.field164 = var13 - var11 + 1; - var5.field166 = var10 - this.mapAreaData.minX(); - var5.field167 = var11 - this.mapAreaData.minY(); - if (var5.field166 < 0) { - var5.field169 += var5.field166; - var5.field166 = 0; + var5.worldMapRegionWidth = var12 - var10 + 1; + var5.worldMapRegionHeight = var13 - var11 + 1; + var5.worldMapRegionX = var10 - this.mapAreaData.minX(); + var5.worldMapRegionY = var11 - this.mapAreaData.minY(); + if (var5.worldMapRegionX < 0) { + var5.worldMapRegionWidth += var5.worldMapRegionX; + var5.worldMapRegionX = 0; } - if (var5.field166 > this.regions.length - var5.field169) { - var5.field169 = this.regions.length - var5.field166; + if (var5.worldMapRegionX > this.regions.length - var5.worldMapRegionWidth) { + var5.worldMapRegionWidth = this.regions.length - var5.worldMapRegionX; } - if (var5.field167 < 0) { - var5.field164 += var5.field167; - var5.field167 = 0; + if (var5.worldMapRegionY < 0) { + var5.worldMapRegionHeight += var5.worldMapRegionY; + var5.worldMapRegionY = 0; } - if (var5.field167 > this.regions[0].length - var5.field164) { - var5.field164 = this.regions[0].length - var5.field167; + if (var5.worldMapRegionY > this.regions[0].length - var5.worldMapRegionHeight) { + var5.worldMapRegionHeight = this.regions[0].length - var5.worldMapRegionY; } - var5.field169 = Math.min(var5.field169, this.regions.length); - var5.field164 = Math.min(var5.field164, this.regions[0].length); + var5.worldMapRegionWidth = Math.min(var5.worldMapRegionWidth, this.regions.length); + var5.worldMapRegionHeight = Math.min(var5.worldMapRegionHeight, this.regions[0].length); return var5; } diff --git a/runescape-client/src/main/java/class22.java b/runescape-client/src/main/java/WorldMapRectangle.java similarity index 88% rename from runescape-client/src/main/java/class22.java rename to runescape-client/src/main/java/WorldMapRectangle.java index 59bb98f81f..a75566568a 100644 --- a/runescape-client/src/main/java/class22.java +++ b/runescape-client/src/main/java/WorldMapRectangle.java @@ -1,10 +1,13 @@ 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("c") -public final class class22 { +@Implements("WorldMapRectangle") +public final class WorldMapRectangle +{ @ObfuscatedName("z") @ObfuscatedSignature( signature = "Lgr;" @@ -27,22 +30,26 @@ public final class class22 { @ObfuscatedGetter( intValue = 1976624405 ) - int field169; + @Export("worldMapRegionWidth") + int worldMapRegionWidth; @ObfuscatedName("f") @ObfuscatedGetter( intValue = -698663527 ) - int field164; + @Export("worldMapRegionHeight") + int worldMapRegionHeight; @ObfuscatedName("q") @ObfuscatedGetter( intValue = 1588021801 ) - int field166; + @Export("worldMapRegionX") + int worldMapRegionX; @ObfuscatedName("w") @ObfuscatedGetter( intValue = 2138505015 ) - int field167; + @Export("worldMapRegionY") + int worldMapRegionY; @ObfuscatedSignature( signature = "Lal;" ) @@ -51,7 +58,7 @@ public final class class22 { @ObfuscatedSignature( signature = "(Lal;)V" ) - class22(WorldMapManager var1) { + WorldMapRectangle(WorldMapManager var1) { this.this$0 = var1; } diff --git a/runescape-client/src/main/java/WorldMapRegion.java b/runescape-client/src/main/java/WorldMapRegion.java index dbc5e24dfa..ba6726efa0 100644 --- a/runescape-client/src/main/java/WorldMapRegion.java +++ b/runescape-client/src/main/java/WorldMapRegion.java @@ -46,7 +46,8 @@ public class WorldMapRegion { @ObfuscatedGetter( intValue = 415972873 ) - int field1054; + @Export("pixelsPerTile") + int pixelsPerTile; @ObfuscatedName("k") @Export("iconsList") List iconsList; @@ -73,9 +74,9 @@ public class WorldMapRegion { garbageValue = "-87" ) void method404(int var1, int var2, int var3) { - Sprite var4 = class13.method164(this.x, this.y, this.field1054); + Sprite var4 = class13.method164(this.x, this.y, this.pixelsPerTile); if (var4 != null) { - if (var3 == this.field1054 * 64) { + if (var3 == this.pixelsPerTile * 64) { var4.drawAt(var1, var2); } else { var4.method319(var1, var2, var3, var3); @@ -126,7 +127,7 @@ public class WorldMapRegion { label66: for (int var7 = var2; var7 < var2 + var4; ++var7) { for (int var8 = 0; var8 < var5.field156; ++var8) { - WorldMapDecoration[] var9 = var5.field144[var8][var6][var7]; + WorldMapDecoration[] var9 = var5.decorations[var8][var6][var7]; if (var9 != null && var9.length != 0) { WorldMapDecoration[] var10 = var9; @@ -187,7 +188,7 @@ public class WorldMapRegion { var10 = new WorldMapIcon2(var7, var6, var1.id, this); } else { WorldMapElement var9 = ViewportMouse.getWorldMapElement(var1.mapIconId); - var10 = new WorldMapIcon1(var7, var6, var9.field1020, this.method420(var9)); + var10 = new WorldMapIcon1(var7, var6, var9.field1020, this.createMapLabel(var9)); } this.iconsMap.put(new Coord(0, var3, var4), var10); @@ -290,7 +291,7 @@ public class WorldMapRegion { garbageValue = "518389076" ) void method455(int var1, class40 var2, IndexedSprite[] var3, AbstractArchive var4, AbstractArchive var5) { - this.field1054 = var1; + this.pixelsPerTile = var1; if ((this.field239 != null || !this.field1052.isEmpty()) && class13.method164(this.x, this.y, var1) == null) { boolean var6 = true; var6 &= this.method409(var4); @@ -305,7 +306,7 @@ public class WorldMapRegion { if (var6) { byte[] var8 = var5.takeFileFlat(var7); class27 var9 = SecureRandomCallable.method1145(var8); - Sprite var10 = new Sprite(this.field1054 * 64, this.field1054 * 64); + Sprite var10 = new Sprite(this.pixelsPerTile * 64, this.pixelsPerTile * 64); var10.setRaster(); if (this.field239 != null) { this.method546(var2, var3, var9); @@ -315,7 +316,7 @@ public class WorldMapRegion { int var11 = this.x; int var12 = this.y; - int var13 = this.field1054; + int var13 = this.pixelsPerTile; field1051.put(var10, MouseHandler.method1083(var11, var12, var13), var10.pixels.length * 4); this.method408(); } @@ -333,8 +334,8 @@ public class WorldMapRegion { var4 = new HashSet(); } - this.method412(var1, var2, var4, var3); - this.method418(var1, var2, var4, var3); + this.drawNonLinkMapIcons(var1, var2, var4, var3); + this.drawMapLinks(var1, var2, var4, var3); } @ObfuscatedName("s") @@ -351,7 +352,7 @@ public class WorldMapRegion { int var6 = var5.getElement(); if (var1.contains(var6)) { WorldMapElement var7 = ViewportMouse.getWorldMapElement(var6); - this.method414(var7, var5.field5, var5.field6, var2, var3); + this.method414(var7, var5.screenX, var5.screenY, var2, var3); } } } @@ -437,26 +438,26 @@ public class WorldMapRegion { int var6 = var3.field151[0][var1][var2] - 1; int var7 = var3.field145[0][var1][var2] - 1; if (var6 == -1 && var7 == -1) { - Rasterizer2D.Rasterizer2D_fillRectangle(this.field1054 * var1, this.field1054 * (63 - var2), this.field1054, this.field1054, this.field1053); + Rasterizer2D.Rasterizer2D_fillRectangle(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, this.pixelsPerTile, this.field1053); } int var8 = 16711935; int var9; if (var7 != -1) { int var10 = this.field1053; - FloorOverlayDefinition var11 = (FloorOverlayDefinition)FloorOverlayDefinition.field664.get((long)var7); + FloorOverlayDefinition var11 = (FloorOverlayDefinition)FloorOverlayDefinition.FloorOverlayDefinition_cached.get((long)var7); FloorOverlayDefinition var12; if (var11 != null) { var12 = var11; } else { - byte[] var13 = FloorOverlayDefinition.field663.takeFile(4, var7); + byte[] var13 = FloorOverlayDefinition.FloorOverlayDefinition_archive.takeFile(4, var7); var11 = new FloorOverlayDefinition(); if (var13 != null) { var11.decode(new Buffer(var13), var7); } var11.postDecode(); - FloorOverlayDefinition.field664.put(var11, (long)var7); + FloorOverlayDefinition.FloorOverlayDefinition_cached.put(var11, (long)var7); var12 = var11; } @@ -467,7 +468,7 @@ public class WorldMapRegion { } else { int var20; if (var12.texture >= 0) { - var20 = WorldMapArea.method427(Rasterizer3D.Rasterizer3D_textureLoader.vmethod324(var12.texture), 96); + var20 = WorldMapArea.method427(Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var12.texture), 96); var9 = Rasterizer3D.Rasterizer3D_colorPalette[var20] | -16777216; } else if (var12.rgb == 16711935) { var9 = var10; @@ -527,13 +528,13 @@ public class WorldMapRegion { } if (var7 > -1 && var3.field154[0][var1][var2] == 0) { - Rasterizer2D.Rasterizer2D_fillRectangle(this.field1054 * var1, this.field1054 * (63 - var2), this.field1054, this.field1054, var8); + Rasterizer2D.Rasterizer2D_fillRectangle(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, this.pixelsPerTile, var8); } else { var9 = this.method541(var1, var2, var3, var5); if (var7 == -1) { - Rasterizer2D.Rasterizer2D_fillRectangle(this.field1054 * var1, this.field1054 * (63 - var2), this.field1054, this.field1054, var9); + Rasterizer2D.Rasterizer2D_fillRectangle(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, this.pixelsPerTile, var9); } else { - var4.method743(this.field1054 * var1, this.field1054 * (63 - var2), var9, var8, this.field1054, this.field1054, var3.field154[0][var1][var2], var3.field155[0][var1][var2]); + var4.method743(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), var9, var8, this.pixelsPerTile, this.pixelsPerTile, var3.field154[0][var1][var2], var3.field155[0][var1][var2]); } } @@ -549,19 +550,19 @@ public class WorldMapRegion { int var6 = var3.field145[var5][var1][var2] - 1; if (var6 > -1) { int var7 = this.field1053; - FloorOverlayDefinition var8 = (FloorOverlayDefinition)FloorOverlayDefinition.field664.get((long)var6); + FloorOverlayDefinition var8 = (FloorOverlayDefinition)FloorOverlayDefinition.FloorOverlayDefinition_cached.get((long)var6); FloorOverlayDefinition var9; if (var8 != null) { var9 = var8; } else { - byte[] var10 = FloorOverlayDefinition.field663.takeFile(4, var6); + byte[] var10 = FloorOverlayDefinition.FloorOverlayDefinition_archive.takeFile(4, var6); var8 = new FloorOverlayDefinition(); if (var10 != null) { var8.decode(new Buffer(var10), var6); } var8.postDecode(); - FloorOverlayDefinition.field664.put(var8, (long)var6); + FloorOverlayDefinition.FloorOverlayDefinition_cached.put(var8, (long)var6); var9 = var8; } @@ -573,7 +574,7 @@ public class WorldMapRegion { } else { int var11; if (var9.texture >= 0) { - var11 = WorldMapArea.method427(Rasterizer3D.Rasterizer3D_textureLoader.vmethod324(var9.texture), 96); + var11 = WorldMapArea.method427(Rasterizer3D.Rasterizer3D_textureLoader.getAverageTextureRGB(var9.texture), 96); var18 = Rasterizer3D.Rasterizer3D_colorPalette[var11] | -16777216; } else if (var9.rgb == 16711935) { var18 = var7; @@ -630,9 +631,9 @@ public class WorldMapRegion { } if (var3.field154[var5][var1][var2] == 0) { - Rasterizer2D.Rasterizer2D_fillRectangle(this.field1054 * var1, this.field1054 * (63 - var2), this.field1054, this.field1054, var18); + Rasterizer2D.Rasterizer2D_fillRectangle(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, this.pixelsPerTile, var18); } else { - var4.method743(this.field1054 * var1, this.field1054 * (63 - var2), 0, var18, this.field1054, this.field1054, var3.field154[var5][var1][var2], var3.field155[var5][var1][var2]); + var4.method743(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), 0, var18, this.pixelsPerTile, this.pixelsPerTile, var3.field154[var5][var1][var2], var3.field155[var5][var1][var2]); } } } @@ -655,7 +656,7 @@ public class WorldMapRegion { ) void method464(int var1, int var2, class21 var3, IndexedSprite[] var4) { for (int var5 = 0; var5 < var3.field156; ++var5) { - WorldMapDecoration[] var6 = var3.field144[var5][var1][var2]; + WorldMapDecoration[] var6 = var3.decorations[var5][var1][var2]; if (var6 != null && var6.length != 0) { WorldMapDecoration[] var7 = var6; @@ -665,9 +666,9 @@ public class WorldMapRegion { ObjectDefinition var10 = class50.getObjectDefinition(var9.objectDefinitionId); if (var10.mapSceneId != -1) { if (var10.mapSceneId != 46 && var10.mapSceneId != 52) { - var4[var10.mapSceneId].method135(this.field1054 * var1, this.field1054 * (63 - var2), this.field1054 * 2, this.field1054 * 2); + var4[var10.mapSceneId].method135(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile * 2, this.pixelsPerTile * 2); } else { - var4[var10.mapSceneId].method135(this.field1054 * var1, this.field1054 * (63 - var2), this.field1054 * 2 + 1, this.field1054 * 2 + 1); + var4[var10.mapSceneId].method135(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile * 2 + 1, this.pixelsPerTile * 2 + 1); } } } @@ -684,7 +685,7 @@ public class WorldMapRegion { ) void method465(int var1, int var2, class21 var3) { for (int var4 = 0; var4 < var3.field156; ++var4) { - WorldMapDecoration[] var5 = var3.field144[var4][var1][var2]; + WorldMapDecoration[] var5 = var3.decorations[var4][var1][var2]; if (var5 != null && var5.length != 0) { WorldMapDecoration[] var6 = var5; @@ -706,19 +707,19 @@ public class WorldMapRegion { if (var8.decoration == WorldMapDecorationType.field2804.id) { if (var8.rotation == 0) { - Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.field1054 * var1, this.field1054 * (63 - var2), 1, var12); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), 1, var12); } if (var8.rotation == 1) { - Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.field1054 * var1 + this.field1054 - 1, this.field1054 * (63 - var2), 1, var12); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1 + this.pixelsPerTile - 1, this.pixelsPerTile * (63 - var2), 1, var12); } if (var8.rotation == 2) { - Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.field1054 * var1 + this.field1054 - 1, this.field1054 * (63 - var2) + this.field1054 - 1, 1, var12); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1 + this.pixelsPerTile - 1, this.pixelsPerTile * (63 - var2) + this.pixelsPerTile - 1, 1, var12); } if (var8.rotation == 3) { - Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.field1054 * var1, this.field1054 * (63 - var2) + this.field1054 - 1, 1, var12); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2) + this.pixelsPerTile - 1, 1, var12); } } @@ -726,12 +727,12 @@ public class WorldMapRegion { int var13 = var8.rotation % 2; int var14; if (var13 == 0) { - for (var14 = 0; var14 < this.field1054; ++var14) { - Rasterizer2D.Rasterizer2D_drawHorizontalLine(var14 + this.field1054 * var1, (64 - var2) * this.field1054 - 1 - var14, 1, var12); + for (var14 = 0; var14 < this.pixelsPerTile; ++var14) { + Rasterizer2D.Rasterizer2D_drawHorizontalLine(var14 + this.pixelsPerTile * var1, (64 - var2) * this.pixelsPerTile - 1 - var14, 1, var12); } } else { - for (var14 = 0; var14 < this.field1054; ++var14) { - Rasterizer2D.Rasterizer2D_drawHorizontalLine(var14 + this.field1054 * var1, var14 + this.field1054 * (63 - var2), 1, var12); + for (var14 = 0; var14 < this.pixelsPerTile; ++var14) { + Rasterizer2D.Rasterizer2D_drawHorizontalLine(var14 + this.pixelsPerTile * var1, var14 + this.pixelsPerTile * (63 - var2), 1, var12); } } } @@ -747,7 +748,8 @@ public class WorldMapRegion { signature = "(IILjava/util/HashSet;IB)V", garbageValue = "0" ) - void method412(int var1, int var2, HashSet var3, int var4) { + @Export("drawNonLinkMapIcons") + void drawNonLinkMapIcons(int var1, int var2, HashSet var3, int var4) { float var5 = (float)var4 / 64.0F; float var6 = var5 / 2.0F; Iterator var7 = this.iconsMap.entrySet().iterator(); @@ -759,8 +761,8 @@ public class WorldMapRegion { int var11 = (int)((float)(var2 + var4) - var5 * (float)var9.y - var6); AbstractWorldMapIcon var12 = (AbstractWorldMapIcon)var8.getValue(); if (var12 != null && var12.method19()) { - var12.field5 = var10; - var12.field6 = var11; + var12.screenX = var10; + var12.screenY = var11; WorldMapElement var13 = ViewportMouse.getWorldMapElement(var12.getElement()); if (!var3.contains(var13.method390())) { this.method415(var12, var10, var11, var5); @@ -783,7 +785,7 @@ public class WorldMapRegion { if (var5.method19()) { WorldMapElement var6 = ViewportMouse.getWorldMapElement(var5.getElement()); if (var6 != null && var1.contains(var6.method390())) { - this.method414(var6, var5.field5, var5.field6, var2, var3); + this.method414(var6, var5.screenX, var5.screenY, var2, var3); } } } @@ -795,13 +797,13 @@ public class WorldMapRegion { signature = "(Lic;IIIIB)V", garbageValue = "92" ) - void method414(WorldMapElement var1, int var2, int var3, int var4, int var5) { + void method414(WorldMapElement var1, int x, int y, int var4, int var5) { Sprite var6 = var1.getSprite(false); if (var6 != null) { - var6.drawAt2(var2 - var6.subWidth / 2, var3 - var6.subHeight / 2); + var6.drawAt2(x - var6.subWidth / 2, y - var6.subHeight / 2); if (var4 % var5 < var5 / 2) { - Rasterizer2D.Rasterizer2D_drawCircleAlpha(var2, var3, 15, 16776960, 128); - Rasterizer2D.Rasterizer2D_drawCircleAlpha(var2, var3, 7, 16777215, 256); + Rasterizer2D.Rasterizer2D_drawCircleAlpha(x, y, 15, 16776960, 128); + Rasterizer2D.Rasterizer2D_drawCircleAlpha(x, y, 7, 16777215, 256); } } @@ -826,8 +828,8 @@ public class WorldMapRegion { void method416(WorldMapElement var1, int var2, int var3) { Sprite var4 = var1.getSprite(false); if (var4 != null) { - int var5 = this.method473(var4, var1.field3287); - int var6 = this.method474(var4, var1.field3301); + int var5 = this.method473(var4, var1.horizontalAlignment); + int var6 = this.method474(var4, var1.verticalAlignment); var4.drawAt2(var5 + var2, var3 + var6); } @@ -852,7 +854,8 @@ public class WorldMapRegion { signature = "(IILjava/util/HashSet;IB)V", garbageValue = "-17" ) - void method418(int var1, int var2, HashSet var3, int var4) { + @Export("drawMapLinks") + void drawMapLinks(int var1, int var2, HashSet var3, int var4) { float var5 = (float)var4 / 64.0F; Iterator var6 = this.iconsList.iterator(); @@ -861,10 +864,10 @@ public class WorldMapRegion { if (var7.method19()) { int var8 = var7.coord2.x % 64; int var9 = var7.coord2.y % 64; - var7.field5 = (int)((float)var8 * var5 + (float)var1); - var7.field6 = (int)(var5 * (float)(63 - var9) + (float)var2); + var7.screenX = (int)((float)var8 * var5 + (float)var1); + var7.screenY = (int)(var5 * (float)(63 - var9) + (float)var2); if (!var3.contains(var7.getElement())) { - this.method415(var7, var7.field5, var7.field6, var5); + this.method415(var7, var7.screenX, var7.screenY, var5); } } } @@ -876,8 +879,8 @@ public class WorldMapRegion { signature = "(Lln;Lju;I)I", garbageValue = "1945325707" ) - int method473(Sprite var1, class266 var2) { - switch(var2.field3528) { + int method473(Sprite var1, HorizontalAlignment var2) { + switch(var2.value) { case 0: return -var1.subWidth / 2; case 2: @@ -892,8 +895,8 @@ public class WorldMapRegion { signature = "(Lln;Lip;I)I", garbageValue = "1788772278" ) - int method474(Sprite var1, class249 var2) { - switch(var2.field3275) { + int method474(Sprite var1, VerticalAlignment var2) { + switch(var2.value) { case 0: return 0; case 1: @@ -910,7 +913,7 @@ public class WorldMapRegion { ) WorldMapLabel method419(int var1) { WorldMapElement var2 = ViewportMouse.getWorldMapElement(var1); - return this.method420(var2); + return this.createMapLabel(var2); } @ObfuscatedName("ab") @@ -918,9 +921,10 @@ public class WorldMapRegion { signature = "(Lic;B)Laj;", garbageValue = "59" ) - WorldMapLabel method420(WorldMapElement var1) { - if (var1.field1021 != null && this.fonts != null && this.fonts.get(WorldMapLabelSize.WorldMapLabelSize_small) != null) { - WorldMapLabelSize var2 = WorldMapLabelSize.method195(var1.textSize); + @Export("createMapLabel") + WorldMapLabel createMapLabel(WorldMapElement var1) { + if (var1.name != null && this.fonts != null && this.fonts.get(WorldMapLabelSize.WorldMapLabelSize_small) != null) { + WorldMapLabelSize var2 = WorldMapLabelSize.valueOf(var1.textSize); if (var2 == null) { return null; } else { @@ -928,9 +932,9 @@ public class WorldMapRegion { if (var3 == null) { return null; } else { - int var4 = var3.lineCount(var1.field1021, 1000000); + int var4 = var3.lineCount(var1.name, 1000000); String[] var5 = new String[var4]; - var3.breakLines(var1.field1021, (int[])null, var5); + var3.breakLines(var1.name, (int[])null, var5); int var6 = var5.length * var3.ascent / 2; int var7 = 0; String[] var8 = var5; @@ -943,7 +947,7 @@ public class WorldMapRegion { } } - return new WorldMapLabel(var1.field1021, var7, var6, var2); + return new WorldMapLabel(var1.name, var7, var6, var2); } } } else { @@ -1009,19 +1013,19 @@ public class WorldMapRegion { void method422(int var1, int var2, int var3, int var4) { var3 %= 4; if (var3 == 0) { - Rasterizer2D.Rasterizer2D_drawVerticalLine(this.field1054 * var1, this.field1054 * (63 - var2), this.field1054, var4); + Rasterizer2D.Rasterizer2D_drawVerticalLine(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, var4); } if (var3 == 1) { - Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.field1054 * var1, this.field1054 * (63 - var2), this.field1054, var4); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, var4); } if (var3 == 2) { - Rasterizer2D.Rasterizer2D_drawVerticalLine(this.field1054 * var1 + this.field1054 - 1, this.field1054 * (63 - var2), this.field1054, var4); + Rasterizer2D.Rasterizer2D_drawVerticalLine(this.pixelsPerTile * var1 + this.pixelsPerTile - 1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, var4); } if (var3 == 3) { - Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.field1054 * var1, this.field1054 * (63 - var2) + this.field1054 - 1, this.field1054, var4); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2) + this.pixelsPerTile - 1, this.pixelsPerTile, var4); } } @@ -1050,6 +1054,7 @@ public class WorldMapRegion { signature = "(Lho;IIS)V", garbageValue = "597" ) + // Click minimap? static final void method567(Widget var0, int var1, int var2) { if ((Client.minimapState == 0 || Client.minimapState == 3) && !Client.isMenuOpen && (MouseHandler.MouseHandler_lastButton == 1 || !AbstractRasterProvider.mouseCam && MouseHandler.MouseHandler_lastButton == 4)) { SpriteMask var3 = var0.getSpriteMask(true); @@ -1102,7 +1107,7 @@ public class WorldMapRegion { for (int var5 = 0; var5 < var0.length; ++var5) { Widget var6 = var0[var5]; if (var6 != null && var6.parentId == var1) { - WorldMapSection3.alignWidgetSize(var6, var2, var3, var4); + WorldMapSection1.alignWidgetSize(var6, var2, var3, var4); FloorOverlayDefinition.alignWidgetPosition(var6, var2, var3); if (var6.scrollX > var6.scrollWidth - var6.width) { var6.scrollX = var6.scrollWidth - var6.width; diff --git a/runescape-client/src/main/java/WorldMapSection0.java b/runescape-client/src/main/java/WorldMapSection0.java index 9314fc62b0..d7f2c11787 100644 --- a/runescape-client/src/main/java/WorldMapSection0.java +++ b/runescape-client/src/main/java/WorldMapSection0.java @@ -4,86 +4,48 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("y") +@ObfuscatedName("ah") @Implements("WorldMapSection0") public class WorldMapSection0 implements WorldMapSection { - @ObfuscatedName("sn") - @ObfuscatedGetter( - intValue = -1946112139 - ) - static int field1055; - @ObfuscatedName("p") - static int[] field1056; + @ObfuscatedName("l") + static int[] field1082; + @ObfuscatedName("j") + @Export("cacheDirectoryLocations") + public static String[] cacheDirectoryLocations; @ObfuscatedName("m") @ObfuscatedGetter( - intValue = -2011838881 + intValue = -1561552223 ) - int field1057; + @Export("minPlane") + int minPlane; @ObfuscatedName("f") @ObfuscatedGetter( - intValue = 1299225715 + intValue = -245382089 ) - int field1058; + @Export("planes") + int planes; @ObfuscatedName("q") @ObfuscatedGetter( - intValue = 82600709 + intValue = -1024859679 ) - int field1059; + @Export("xRegion") + int xRegion; @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -477370575 + intValue = 40495485 ) - int field1060; + @Export("yRegion") + int yRegion; @ObfuscatedName("o") @ObfuscatedGetter( - intValue = -671345527 + intValue = 982234927 ) - int field1061; + int field1087; @ObfuscatedName("u") @ObfuscatedGetter( - intValue = 529427495 + intValue = -1272330125 ) - int field1062; - @ObfuscatedName("g") - @ObfuscatedGetter( - intValue = -150870205 - ) - int field1063; - @ObfuscatedName("l") - @ObfuscatedGetter( - intValue = 1009718107 - ) - int field1064; - @ObfuscatedName("e") - @ObfuscatedGetter( - intValue = -1022177315 - ) - int field1065; - @ObfuscatedName("x") - @ObfuscatedGetter( - intValue = -1397517463 - ) - int field1066; - @ObfuscatedName("d") - @ObfuscatedGetter( - intValue = -799353317 - ) - int field1067; - @ObfuscatedName("k") - @ObfuscatedGetter( - intValue = -1388959491 - ) - int field1068; - @ObfuscatedName("n") - @ObfuscatedGetter( - intValue = -1657956317 - ) - int field1069; - @ObfuscatedName("i") - @ObfuscatedGetter( - intValue = 1345061881 - ) - int field1070; + int field1088; @ObfuscatedName("m") @ObfuscatedSignature( @@ -91,21 +53,21 @@ public class WorldMapSection0 implements WorldMapSection { garbageValue = "1384899025" ) @Export("expandBounds") - public void expandBounds(WorldMapArea var1) { - if (var1.minX0 > this.field1061) { - var1.minX0 = this.field1061; + public void expandBounds(WorldMapArea area) { + if (area.minX0 > this.field1087) { + area.minX0 = this.field1087; } - if (var1.maxX0 < this.field1061) { - var1.maxX0 = this.field1061; + if (area.maxX0 < this.field1087) { + area.maxX0 = this.field1087; } - if (var1.minY0 > this.field1062) { - var1.minY0 = this.field1062; + if (area.minY0 > this.field1088) { + area.minY0 = this.field1088; } - if (var1.maxY0 < this.field1062) { - var1.maxY0 = this.field1062; + if (area.maxY0 < this.field1088) { + area.maxY0 = this.field1088; } } @@ -116,8 +78,8 @@ public class WorldMapSection0 implements WorldMapSection { garbageValue = "93" ) @Export("containsCoord") - public boolean containsCoord(int var1, int var2, int var3) { - return var1 >= this.field1057 && var1 < this.field1057 + this.field1058 ? var2 >= (this.field1059 << 6) + (this.field1063 << 3) && var2 <= (this.field1059 << 6) + (this.field1065 << 3) + 7 && var3 >= (this.field1060 << 6) + (this.field1064 << 3) && var3 <= (this.field1060 << 6) + (this.field1066 << 3) + 7 : false; + public boolean containsCoord(int plane, int x, int y) { + return plane >= this.minPlane && plane < this.minPlane + this.planes ? x >> 6 == this.xRegion && y >> 6 == this.yRegion : false; } @ObfuscatedName("q") @@ -126,8 +88,8 @@ public class WorldMapSection0 implements WorldMapSection { garbageValue = "4" ) @Export("containsPosition") - public boolean containsPosition(int var1, int var2) { - return var1 >= (this.field1061 << 6) + (this.field1067 << 3) && var1 <= (this.field1061 << 6) + (this.field1069 << 3) + 7 && var2 >= (this.field1062 << 6) + (this.field1068 << 3) && var2 <= (this.field1062 << 6) + (this.field1070 << 3) + 7; + public boolean containsPosition(int x, int y) { + return x >> 6 == this.field1087 && y >> 6 == this.field1088; } @ObfuscatedName("w") @@ -136,11 +98,11 @@ public class WorldMapSection0 implements WorldMapSection { garbageValue = "1545934424" ) @Export("position") - public int[] position(int var1, int var2, int var3) { - if (!this.containsCoord(var1, var2, var3)) { + public int[] position(int plane, int x, int y) { + if (!this.containsCoord(plane, x, y)) { return null; } else { - int[] var4 = new int[]{this.field1061 * 64 - this.field1059 * 64 + var2 + (this.field1067 * 8 - this.field1063 * 8), var3 + (this.field1062 * 64 - this.field1060 * 64) + (this.field1068 * 8 - this.field1064 * 8)}; + int[] var4 = new int[]{this.field1087 * 64 - this.xRegion * 64 + x, y + (this.field1088 * 64 - this.yRegion * 64)}; return var4; } } @@ -151,13 +113,13 @@ public class WorldMapSection0 implements WorldMapSection { garbageValue = "-1916486802" ) @Export("coord") - public Coord coord(int var1, int var2) { - if (!this.containsPosition(var1, var2)) { + public Coord coord(int x, int y) { + if (!this.containsPosition(x, y)) { return null; } else { - int var3 = this.field1059 * 64 - this.field1061 * 64 + (this.field1063 * 8 - this.field1067 * 8) + var1; - int var4 = this.field1060 * 64 - this.field1062 * 64 + var2 + (this.field1064 * 8 - this.field1068 * 8); - return new Coord(this.field1057, var3, var4); + int var3 = this.xRegion * 64 - this.field1087 * 64 + x; + int var4 = this.yRegion * 64 - this.field1088 * 64 + y; + return new Coord(this.minPlane, var3, var4); } } @@ -167,116 +129,189 @@ public class WorldMapSection0 implements WorldMapSection { garbageValue = "-113" ) @Export("read") - public void read(Buffer var1) { - this.field1057 = var1.readUnsignedByte(); - this.field1058 = var1.readUnsignedByte(); - this.field1059 = var1.readUnsignedShort(); - this.field1063 = var1.readUnsignedByte(); - this.field1065 = var1.readUnsignedByte(); - this.field1060 = var1.readUnsignedShort(); - this.field1064 = var1.readUnsignedByte(); - this.field1066 = var1.readUnsignedByte(); - this.field1061 = var1.readUnsignedShort(); - this.field1067 = var1.readUnsignedByte(); - this.field1069 = var1.readUnsignedByte(); - this.field1062 = var1.readUnsignedShort(); - this.field1068 = var1.readUnsignedByte(); - this.field1070 = var1.readUnsignedByte(); - this.method423(); + public void read(Buffer buffer) { + this.minPlane = buffer.readUnsignedByte(); + this.planes = buffer.readUnsignedByte(); + this.xRegion = buffer.readUnsignedShort(); + this.yRegion = buffer.readUnsignedShort(); + this.field1087 = buffer.readUnsignedShort(); + this.field1088 = buffer.readUnsignedShort(); + this.method425(); } @ObfuscatedName("g") @ObfuscatedSignature( signature = "(I)V", - garbageValue = "1967186894" + garbageValue = "-1602858772" ) - void method423() { + void method425() { } - @ObfuscatedName("w") + @ObfuscatedName("m") @ObfuscatedSignature( - signature = "(I)V", - garbageValue = "-2102591569" + signature = "(II)I", + garbageValue = "409746497" ) - @Export("savePreferences") - static void savePreferences() { - AccessFile var0 = null; + @Export("getVarbit") + public static int getVarbit(int var0) { + VarbitDefinition var1 = Occluder.getVarbitDefinition(var0); + int var2 = var1.baseVar; + int var3 = var1.startBit; + int var4 = var1.endBit; + int var5 = Varps.Varps_masks[var4 - var3]; + return Varps.Varps_main[var2] >> var3 & var5; + } - try { - var0 = LoginPacket.getPreferencesFile("", class22.studioGame.name, true); - Buffer var1 = ReflectionCheck.clientPreferences.toBuffer(); - var0.write(var1.array, 0, var1.index); - } catch (Exception var3) { - } + @ObfuscatedName("f") + @ObfuscatedSignature( + signature = "(IILfe;Lfy;I)Z", + garbageValue = "-2025028346" + ) + static final boolean method593(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; + class178.directions[var6][var7] = 99; + class178.distances[var6][var7] = 0; + byte var10 = 0; + int var11 = 0; + class178.bufferX[var10] = var0; + int var12 = var10 + 1; + class178.bufferY[var10] = var1; + int[][] var13 = var3.flags; - try { - if (var0 != null) { - var0.closeSync(true); + while (var12 != var11) { + var4 = class178.bufferX[var11]; + var5 = class178.bufferY[var11]; + var11 = var11 + 1 & 4095; + int var14 = var4 - var8; + int var15 = var5 - var9; + int var16 = var4 - var3.xInset; + int var17 = var5 - var3.yInset; + if (var2.vmethod3644(2, var4, var5, var3)) { + InterfaceParent.field986 = var4; + UrlRequester.field929 = var5; + return true; + } + + int var18 = class178.distances[var14][var15] + 1; + if (var14 > 0 && class178.directions[var14 - 1][var15] == 0 && (var13[var16 - 1][var17] & 19136782) == 0 && (var13[var16 - 1][var17 + 1] & 19136824) == 0) { + class178.bufferX[var12] = var4 - 1; + class178.bufferY[var12] = var5; + var12 = var12 + 1 & 4095; + class178.directions[var14 - 1][var15] = 2; + class178.distances[var14 - 1][var15] = var18; + } + + if (var14 < 126 && class178.directions[var14 + 1][var15] == 0 && (var13[var16 + 2][var17] & 19136899) == 0 && (var13[var16 + 2][var17 + 1] & 19136992) == 0) { + class178.bufferX[var12] = var4 + 1; + class178.bufferY[var12] = var5; + var12 = var12 + 1 & 4095; + class178.directions[var14 + 1][var15] = 8; + class178.distances[var14 + 1][var15] = var18; + } + + if (var15 > 0 && class178.directions[var14][var15 - 1] == 0 && (var13[var16][var17 - 1] & 19136782) == 0 && (var13[var16 + 1][var17 - 1] & 19136899) == 0) { + class178.bufferX[var12] = var4; + class178.bufferY[var12] = var5 - 1; + var12 = var12 + 1 & 4095; + class178.directions[var14][var15 - 1] = 1; + class178.distances[var14][var15 - 1] = var18; + } + + if (var15 < 126 && class178.directions[var14][var15 + 1] == 0 && (var13[var16][var17 + 2] & 19136824) == 0 && (var13[var16 + 1][var17 + 2] & 19136992) == 0) { + class178.bufferX[var12] = var4; + class178.bufferY[var12] = var5 + 1; + var12 = var12 + 1 & 4095; + class178.directions[var14][var15 + 1] = 4; + class178.distances[var14][var15 + 1] = var18; + } + + if (var14 > 0 && var15 > 0 && class178.directions[var14 - 1][var15 - 1] == 0 && (var13[var16 - 1][var17] & 19136830) == 0 && (var13[var16 - 1][var17 - 1] & 19136782) == 0 && (var13[var16][var17 - 1] & 19136911) == 0) { + class178.bufferX[var12] = var4 - 1; + class178.bufferY[var12] = var5 - 1; + var12 = var12 + 1 & 4095; + class178.directions[var14 - 1][var15 - 1] = 3; + class178.distances[var14 - 1][var15 - 1] = var18; + } + + if (var14 < 126 && var15 > 0 && class178.directions[var14 + 1][var15 - 1] == 0 && (var13[var16 + 1][var17 - 1] & 19136911) == 0 && (var13[var16 + 2][var17 - 1] & 19136899) == 0 && (var13[var16 + 2][var17] & 19136995) == 0) { + class178.bufferX[var12] = var4 + 1; + class178.bufferY[var12] = var5 - 1; + var12 = var12 + 1 & 4095; + class178.directions[var14 + 1][var15 - 1] = 9; + class178.distances[var14 + 1][var15 - 1] = var18; + } + + if (var14 > 0 && var15 < 126 && class178.directions[var14 - 1][var15 + 1] == 0 && (var13[var16 - 1][var17 + 1] & 19136830) == 0 && (var13[var16 - 1][var17 + 2] & 19136824) == 0 && (var13[var16][var17 + 2] & 19137016) == 0) { + class178.bufferX[var12] = var4 - 1; + class178.bufferY[var12] = var5 + 1; + var12 = var12 + 1 & 4095; + class178.directions[var14 - 1][var15 + 1] = 6; + class178.distances[var14 - 1][var15 + 1] = var18; + } + + if (var14 < 126 && var15 < 126 && class178.directions[var14 + 1][var15 + 1] == 0 && (var13[var16 + 1][var17 + 2] & 19137016) == 0 && (var13[var16 + 2][var17 + 2] & 19136992) == 0 && (var13[var16 + 2][var17 + 1] & 19136995) == 0) { + class178.bufferX[var12] = var4 + 1; + class178.bufferY[var12] = var5 + 1; + var12 = var12 + 1 & 4095; + class178.directions[var14 + 1][var15 + 1] = 12; + class178.distances[var14 + 1][var15 + 1] = var18; } - } catch (Exception var2) { } + InterfaceParent.field986 = var4; + UrlRequester.field929 = var5; + return false; } - @ObfuscatedName("hz") + @ObfuscatedName("hc") @ObfuscatedSignature( - signature = "(II)V", - garbageValue = "1886145284" + signature = "(ILjava/lang/String;I)V", + garbageValue = "-1850233906" ) - static final void method245(int var0) { - if (var0 >= 0) { - int var1 = Client.menuArguments1[var0]; - int var2 = Client.menuArguments2[var0]; - int var3 = Client.menuOpcodes[var0]; - int var4 = Client.menuArguments0[var0]; - String var5 = Client.menuActions[var0]; - String var6 = Client.menuTargetNames[var0]; - Actor.menuAction(var1, var2, var3, var4, var5, var6, MouseHandler.MouseHandler_lastPressedX, MouseHandler.MouseHandler_lastPressedY); - } + static void method583(int var0, String var1) { + int var2 = Players.Players_count; + int[] var3 = Players.Players_indices; + boolean var4 = false; + Username var5 = new Username(var1, KeyHandler.loginType); - } - - @ObfuscatedName("io") - @ObfuscatedSignature( - signature = "(Lho;IIIIIII)V", - garbageValue = "-1723792771" - ) - static final void method246(Widget var0, int var1, int var2, int var3, int var4, int var5, int var6) { - if (Client.field188) { - Client.field189 = 32; - } else { - Client.field189 = 0; - } - - Client.field188 = false; - int var7; - if (MouseHandler.MouseHandler_currentButton == 1 || !AbstractRasterProvider.mouseCam && MouseHandler.MouseHandler_currentButton == 4) { - if (var5 >= var1 && var5 < var1 + 16 && var6 >= var2 && var6 < var2 + 16) { - var0.scrollY -= 4; - class22.method295(var0); - } else if (var5 >= var1 && var5 < var1 + 16 && var6 >= var3 + var2 - 16 && var6 < var3 + var2) { - var0.scrollY += 4; - class22.method295(var0); - } else if (var5 >= var1 - Client.field189 && var5 < Client.field189 + var1 + 16 && var6 >= var2 + 16 && var6 < var3 + var2 - 16) { - var7 = var3 * (var3 - 32) / var4; - if (var7 < 8) { - var7 = 8; + for (int var6 = 0; var6 < var2; ++var6) { + Player var7 = Client.players[var3[var6]]; + if (var7 != null && var7 != Canvas.localPlayer && var7.username != null && var7.username.equals(var5)) { + PacketBufferNode var8; + if (var0 == 1) { + var8 = Interpreter.method1915(ClientPacket.field269, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShort(var3[var6]); + var8.packetBuffer.method56(0); + Client.packetWriter.method241(var8); + } else if (var0 == 4) { + var8 = Interpreter.method1915(ClientPacket.field249, Client.packetWriter.isaacCipher); + var8.packetBuffer.method64(var3[var6]); + var8.packetBuffer.method56(0); + Client.packetWriter.method241(var8); + } else if (var0 == 6) { + var8 = Interpreter.method1915(ClientPacket.field315, Client.packetWriter.isaacCipher); + var8.packetBuffer.method63(var3[var6]); + var8.packetBuffer.method57(0); + Client.packetWriter.method241(var8); + } else if (var0 == 7) { + var8 = Interpreter.method1915(ClientPacket.field297, Client.packetWriter.isaacCipher); + var8.packetBuffer.method57(0); + var8.packetBuffer.writeShortLE(var3[var6]); + Client.packetWriter.method241(var8); } - int var8 = var6 - var2 - 16 - var7 / 2; - int var9 = var3 - 32 - var7; - var0.scrollY = var8 * (var4 - var3) / var9; - class22.method295(var0); - Client.field188 = true; + var4 = true; + break; } } - if (Client.mouseWheelRotation != 0) { - var7 = var0.width; - if (var5 >= var1 - var7 && var6 >= var2 && var5 < var1 + 16 && var6 <= var3 + var2) { - var0.scrollY += Client.mouseWheelRotation * 45; - class22.method295(var0); - } + if (!var4) { + WorldMapIcon1.addGameMessage(4, "", "Unable to find " + var1); } } diff --git a/runescape-client/src/main/java/WorldMapSection1.java b/runescape-client/src/main/java/WorldMapSection1.java index 201ac1b868..b2ed5c1c6d 100644 --- a/runescape-client/src/main/java/WorldMapSection1.java +++ b/runescape-client/src/main/java/WorldMapSection1.java @@ -4,79 +4,73 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("as") +@ObfuscatedName("p") @Implements("WorldMapSection1") public class WorldMapSection1 implements WorldMapSection { - @ObfuscatedName("c") - @Export("userHomeDirectory") - public static String userHomeDirectory; - @ObfuscatedName("du") + @ObfuscatedName("h") + @Export("osNameLowerCase") + public static String osNameLowerCase; + @ObfuscatedName("dr") @ObfuscatedSignature( signature = "Lit;" ) - @Export("archive15") - static Archive archive15; - @ObfuscatedName("ey") + @Export("archive8") + static Archive archive8; + @ObfuscatedName("go") @ObfuscatedGetter( - intValue = -1516124929 + intValue = -948290091 ) - static int field1071; - @ObfuscatedName("ha") - @ObfuscatedGetter( - intValue = 1052834531 - ) - @Export("cameraX") - static int cameraX; + static int field1089; @ObfuscatedName("m") @ObfuscatedGetter( - intValue = -1971304641 + intValue = 1389733201 ) - int field1072; + int field1090; @ObfuscatedName("f") @ObfuscatedGetter( - intValue = 1483447179 + intValue = -1622972483 ) - int field1073; + int field1091; @ObfuscatedName("q") @ObfuscatedGetter( - intValue = -1875803617 + intValue = 702057599 ) - int field1074; + int field1092; @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 284566685 + intValue = -1068088609 ) - int field1075; + int field1093; @ObfuscatedName("o") @ObfuscatedGetter( - intValue = -1513010233 + intValue = 1257151629 ) - int field1076; + int field1094; @ObfuscatedName("u") @ObfuscatedGetter( - intValue = -1383826035 + intValue = -1351623663 ) - int field1077; + int field1095; @ObfuscatedName("g") @ObfuscatedGetter( - intValue = 1526007343 + intValue = 1016557381 ) - int field1078; + int field1096; @ObfuscatedName("l") @ObfuscatedGetter( - intValue = -890169045 + intValue = 884736611 ) - int field1079; + int field1097; @ObfuscatedName("e") @ObfuscatedGetter( - intValue = -1797724181 + intValue = 395786901 ) - int field1080; + int field1098; @ObfuscatedName("x") @ObfuscatedGetter( - intValue = 325777555 + intValue = -627081155 ) - int field1081; + int field1099; @ObfuscatedName("m") @ObfuscatedSignature( @@ -84,21 +78,21 @@ public class WorldMapSection1 implements WorldMapSection { garbageValue = "1384899025" ) @Export("expandBounds") - public void expandBounds(WorldMapArea var1) { - if (var1.minX0 > this.field1076) { - var1.minX0 = this.field1076; + public void expandBounds(WorldMapArea area) { + if (area.minX0 > this.field1096) { + area.minX0 = this.field1096; } - if (var1.maxX0 < this.field1076) { - var1.maxX0 = this.field1076; + if (area.maxX0 < this.field1098) { + area.maxX0 = this.field1098; } - if (var1.minY0 > this.field1077) { - var1.minY0 = this.field1077; + if (area.minY0 > this.field1097) { + area.minY0 = this.field1097; } - if (var1.maxY0 < this.field1077) { - var1.maxY0 = this.field1077; + if (area.maxY0 < this.field1099) { + area.maxY0 = this.field1099; } } @@ -109,8 +103,8 @@ public class WorldMapSection1 implements WorldMapSection { garbageValue = "93" ) @Export("containsCoord") - public boolean containsCoord(int var1, int var2, int var3) { - return var1 >= this.field1072 && var1 < this.field1072 + this.field1073 ? var2 >= (this.field1074 << 6) + (this.field1078 << 3) && var2 <= (this.field1074 << 6) + (this.field1078 << 3) + 7 && var3 >= (this.field1075 << 6) + (this.field1079 << 3) && var3 <= (this.field1075 << 6) + (this.field1079 << 3) + 7 : false; + public boolean containsCoord(int plane, int x, int y) { + return plane >= this.field1090 && plane < this.field1090 + this.field1091 ? x >> 6 >= this.field1092 && x >> 6 <= this.field1094 && y >> 6 >= this.field1093 && y >> 6 <= this.field1095 : false; } @ObfuscatedName("q") @@ -119,8 +113,8 @@ public class WorldMapSection1 implements WorldMapSection { garbageValue = "4" ) @Export("containsPosition") - public boolean containsPosition(int var1, int var2) { - return var1 >= (this.field1076 << 6) + (this.field1080 << 3) && var1 <= (this.field1076 << 6) + (this.field1080 << 3) + 7 && var2 >= (this.field1077 << 6) + (this.field1081 << 3) && var2 <= (this.field1077 << 6) + (this.field1081 << 3) + 7; + public boolean containsPosition(int x, int y) { + return x >> 6 >= this.field1096 && x >> 6 <= this.field1098 && y >> 6 >= this.field1097 && y >> 6 <= this.field1099; } @ObfuscatedName("w") @@ -129,11 +123,11 @@ public class WorldMapSection1 implements WorldMapSection { garbageValue = "1545934424" ) @Export("position") - public int[] position(int var1, int var2, int var3) { - if (!this.containsCoord(var1, var2, var3)) { + public int[] position(int plane, int x, int y) { + if (!this.containsCoord(plane, x, y)) { return null; } else { - int[] var4 = new int[]{this.field1076 * 64 - this.field1074 * 64 + var2 + (this.field1080 * 8 - this.field1078 * 8), var3 + (this.field1077 * 64 - this.field1075 * 64) + (this.field1081 * 8 - this.field1079 * 8)}; + int[] var4 = new int[]{this.field1096 * 64 - this.field1092 * 64 + x, y + (this.field1097 * 64 - this.field1093 * 64)}; return var4; } } @@ -144,13 +138,13 @@ public class WorldMapSection1 implements WorldMapSection { garbageValue = "-1916486802" ) @Export("coord") - public Coord coord(int var1, int var2) { - if (!this.containsPosition(var1, var2)) { + public Coord coord(int x, int y) { + if (!this.containsPosition(x, y)) { return null; } else { - int var3 = this.field1074 * 64 - this.field1076 * 64 + (this.field1078 * 8 - this.field1080 * 8) + var1; - int var4 = this.field1075 * 64 - this.field1077 * 64 + var2 + (this.field1079 * 8 - this.field1081 * 8); - return new Coord(this.field1072, var3, var4); + int var3 = this.field1092 * 64 - this.field1096 * 64 + x; + int var4 = this.field1093 * 64 - this.field1097 * 64 + y; + return new Coord(this.field1090, var3, var4); } } @@ -160,165 +154,111 @@ public class WorldMapSection1 implements WorldMapSection { garbageValue = "-113" ) @Export("read") - public void read(Buffer var1) { - this.field1072 = var1.readUnsignedByte(); - this.field1073 = var1.readUnsignedByte(); - this.field1074 = var1.readUnsignedShort(); - this.field1078 = var1.readUnsignedByte(); - this.field1075 = var1.readUnsignedShort(); - this.field1079 = var1.readUnsignedByte(); - this.field1076 = var1.readUnsignedShort(); - this.field1080 = var1.readUnsignedByte(); - this.field1077 = var1.readUnsignedShort(); - this.field1081 = var1.readUnsignedByte(); - this.method424(); + public void read(Buffer buffer) { + this.field1090 = buffer.readUnsignedByte(); + this.field1091 = buffer.readUnsignedByte(); + this.field1092 = buffer.readUnsignedShort(); + this.field1093 = buffer.readUnsignedShort(); + this.field1094 = buffer.readUnsignedShort(); + this.field1095 = buffer.readUnsignedShort(); + this.field1096 = buffer.readUnsignedShort(); + this.field1097 = buffer.readUnsignedShort(); + this.field1098 = buffer.readUnsignedShort(); + this.field1099 = buffer.readUnsignedShort(); + this.method426(); } @ObfuscatedName("g") @ObfuscatedSignature( - signature = "(I)V", - garbageValue = "2026323437" + signature = "(B)V", + garbageValue = "-126" ) - void method424() { + void method426() { } - @ObfuscatedName("m") + @ObfuscatedName("d") @ObfuscatedSignature( - signature = "(II)Lim;", - garbageValue = "-205156540" + signature = "(Lho;II)V", + garbageValue = "1115233428" ) - @Export("getKitDefinition") - public static KitDefinition getKitDefinition(int var0) { - KitDefinition var1 = (KitDefinition)KitDefinition.KitDefinition_cached.get((long)var0); - if (var1 != null) { - return var1; + static final void method345(Widget var0, int var1) { + if (var0.field966 == null) { + throw new RuntimeException(); } else { - byte[] var2 = KitDefinition.KitDefinition_archive.takeFile(3, var0); - var1 = new KitDefinition(); - if (var2 != null) { - var1.decode(new Buffer(var2)); + if (var0.field984 == null) { + var0.field984 = new int[var0.field966.length]; } - KitDefinition.KitDefinition_cached.put(var1, (long)var0); - return var1; + var0.field984[var1] = Integer.MAX_VALUE; } } - @ObfuscatedName("fc") + @ObfuscatedName("am") @ObfuscatedSignature( - signature = "(I)V", - garbageValue = "2142100332" + signature = "(IB)V", + garbageValue = "23" ) - static void method808() { - Client.mouseLastLastPressedTimeMillis = 1L; - Projectile.mouseRecorder.index = 0; - class230.field1138 = true; - Client.field166 = true; - Client.field126 = -1L; - PendingSpawn.method1694(); - Client.packetWriter.method239(); - Client.packetWriter.packetBuffer.index = 0; - Client.packetWriter.serverPacket0 = null; - Client.packetWriter.field676 = null; - Client.packetWriter.field677 = null; - Client.packetWriter.field678 = null; - Client.packetWriter.serverPacket0Length = 0; - Client.packetWriter.field674 = 0; - Client.rebootTimer = 0; - Client.field175 = 0; - Client.hintArrowType = 0; - Client.menuOptionsCount = 0; - Client.isMenuOpen = false; - MouseHandler.MouseHandler_idleCycles = 0; - GroundItem.method2094(); - Client.isItemSelected = 0; - Client.isSpellSelected = false; - Client.soundEffectCount = 0; - Client.camAngleY = 0; - Client.oculusOrbState = 0; - ClientParameter.field3645 = null; - Client.minimapState = 0; - Client.field125 = -1; - Client.destinationX = 0; - Client.destinationY = 0; - Client.playerAttackOption = AttackOption.AttackOption_hidden; - Client.npcAttackOption = AttackOption.AttackOption_hidden; - Client.npcCount = 0; - Players.Players_count = 0; + @Export("runWidgetOnLoadListener") + static void runWidgetOnLoadListener(int var0) { + if (var0 != -1 && GroundItemPile.loadInterface(var0)) { + Widget[] var1 = Widget.interfaceComponents[var0]; - int var0; - for (var0 = 0; var0 < 2048; ++var0) { - Players.field733[var0] = null; - Players.field732[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(); - - for (var0 = 0; var0 < 4; ++var0) { - for (int var1 = 0; var1 < 104; ++var1) { - for (int var2 = 0; var2 < 104; ++var2) { - Client.groundItems[var0][var1][var2] = null; + for (int var2 = 0; var2 < var1.length; ++var2) { + Widget var3 = var1[var2]; + if (var3.onLoad != null) { + ScriptEvent var4 = new ScriptEvent(); + var4.widget = var3; + var4.args0 = var3.onLoad; + GrandExchangeEvent.runScript0(var4, 5000000); } } } - Client.pendingSpawns = new NodeDeque(); - WorldMapArea.friendSystem.clear(); + } - for (var0 = 0; var0 < VarpDefinition.field944; ++var0) { - VarpDefinition var3 = SecureRandomCallable.method1140(var0); - if (var3 != null) { - Varps.Varps_temp[var0] = 0; - Varps.Varps_main[var0] = 0; - } + @ObfuscatedName("ic") + @ObfuscatedSignature( + signature = "(Lho;IIZB)V", + garbageValue = "-35" + ) + @Export("alignWidgetSize") + static void alignWidgetSize(Widget component, int parentWidth, int parentHeight, boolean var3) { + int var4 = component.width; + int var5 = component.height; + if (component.widthAlignment == 0) { + component.width = component.rawWidth; + } else if (component.widthAlignment == 1) { + component.width = parentWidth - component.rawWidth; + } else if (component.widthAlignment == 2) { + component.width = component.rawWidth * parentWidth >> 14; } - class196.varcs.clearTransient(); - Client.followerIndex = -1; - if (Client.rootInterface != -1) { - AbstractByteArrayCopier.unloadInterface(Client.rootInterface); + if (component.heightAlignment == 0) { + component.height = component.rawHeight; + } else if (component.heightAlignment == 1) { + component.height = parentHeight - component.rawHeight; + } else if (component.heightAlignment == 2) { + component.height = parentHeight * component.rawHeight >> 14; } - for (InterfaceParent var4 = (InterfaceParent)Client.interfaceParents.first(); var4 != null; var4 = (InterfaceParent)Client.interfaceParents.next()) { - MenuAction.closeInterface(var4, true); + if (component.widthAlignment == 4) { + component.width = component.height * component.field958 / component.field959; } - Client.rootInterface = -1; - Client.interfaceParents = new NodeHashTable(8); - Client.field127 = null; - Client.menuOptionsCount = 0; - Client.isMenuOpen = false; - Client.field119.method256((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; + if (component.heightAlignment == 4) { + component.height = component.width * component.field959 / component.field958; } - SpriteMask.method4389(); - Client.isLoading = true; - - for (var0 = 0; var0 < 100; ++var0) { - Client.field100[var0] = true; + if (component.contentType == 1337) { + Client.viewportWidget = component; } - AbstractByteArrayCopier.method4024(); - PacketWriter.clanChat = null; - - for (var0 = 0; var0 < 8; ++var0) { - Client.grandExchangeOffers[var0] = new GrandExchangeOffer(); + if (var3 && component.onResize != null && (var4 != component.width || var5 != component.height)) { + ScriptEvent var6 = new ScriptEvent(); + var6.widget = component; + var6.args0 = component.onResize; + Client.scriptEvents.addFirst(var6); } - FloorDecoration.grandExchangeEvents = null; } } diff --git a/runescape-client/src/main/java/WorldMapSection2.java b/runescape-client/src/main/java/WorldMapSection2.java index f90d0505ca..0b55613c3c 100644 --- a/runescape-client/src/main/java/WorldMapSection2.java +++ b/runescape-client/src/main/java/WorldMapSection2.java @@ -4,44 +4,79 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ah") +@ObfuscatedName("as") @Implements("WorldMapSection2") public class WorldMapSection2 implements WorldMapSection { - @ObfuscatedName("l") - static int[] field1082; - @ObfuscatedName("j") - @Export("cacheDirectoryLocations") - public static String[] cacheDirectoryLocations; + @ObfuscatedName("c") + @Export("userHomeDirectory") + public static String userHomeDirectory; + @ObfuscatedName("du") + @ObfuscatedSignature( + signature = "Lit;" + ) + @Export("archive15") + static Archive archive15; + @ObfuscatedName("ey") + @ObfuscatedGetter( + intValue = -1516124929 + ) + static int field1071; + @ObfuscatedName("ha") + @ObfuscatedGetter( + intValue = 1052834531 + ) + @Export("cameraX") + static int cameraX; @ObfuscatedName("m") @ObfuscatedGetter( - intValue = -1561552223 + intValue = -1971304641 ) - int field1083; + int field1072; @ObfuscatedName("f") @ObfuscatedGetter( - intValue = -245382089 + intValue = 1483447179 ) - int field1084; + int field1073; @ObfuscatedName("q") @ObfuscatedGetter( - intValue = -1024859679 + intValue = -1875803617 ) - int field1085; + int field1074; @ObfuscatedName("w") @ObfuscatedGetter( - intValue = 40495485 + intValue = 284566685 ) - int field1086; + int field1075; @ObfuscatedName("o") @ObfuscatedGetter( - intValue = 982234927 + intValue = -1513010233 ) - int field1087; + int field1076; @ObfuscatedName("u") @ObfuscatedGetter( - intValue = -1272330125 + intValue = -1383826035 ) - int field1088; + int field1077; + @ObfuscatedName("g") + @ObfuscatedGetter( + intValue = 1526007343 + ) + int field1078; + @ObfuscatedName("l") + @ObfuscatedGetter( + intValue = -890169045 + ) + int field1079; + @ObfuscatedName("e") + @ObfuscatedGetter( + intValue = -1797724181 + ) + int field1080; + @ObfuscatedName("x") + @ObfuscatedGetter( + intValue = 325777555 + ) + int field1081; @ObfuscatedName("m") @ObfuscatedSignature( @@ -49,21 +84,21 @@ public class WorldMapSection2 implements WorldMapSection { garbageValue = "1384899025" ) @Export("expandBounds") - public void expandBounds(WorldMapArea var1) { - if (var1.minX0 > this.field1087) { - var1.minX0 = this.field1087; + public void expandBounds(WorldMapArea area) { + if (area.minX0 > this.field1076) { + area.minX0 = this.field1076; } - if (var1.maxX0 < this.field1087) { - var1.maxX0 = this.field1087; + if (area.maxX0 < this.field1076) { + area.maxX0 = this.field1076; } - if (var1.minY0 > this.field1088) { - var1.minY0 = this.field1088; + if (area.minY0 > this.field1077) { + area.minY0 = this.field1077; } - if (var1.maxY0 < this.field1088) { - var1.maxY0 = this.field1088; + if (area.maxY0 < this.field1077) { + area.maxY0 = this.field1077; } } @@ -74,8 +109,8 @@ public class WorldMapSection2 implements WorldMapSection { garbageValue = "93" ) @Export("containsCoord") - public boolean containsCoord(int var1, int var2, int var3) { - return var1 >= this.field1083 && var1 < this.field1083 + this.field1084 ? var2 >> 6 == this.field1085 && var3 >> 6 == this.field1086 : false; + public boolean containsCoord(int plane, int x, int y) { + return plane >= this.field1072 && plane < this.field1072 + this.field1073 ? x >= (this.field1074 << 6) + (this.field1078 << 3) && x <= (this.field1074 << 6) + (this.field1078 << 3) + 7 && y >= (this.field1075 << 6) + (this.field1079 << 3) && y <= (this.field1075 << 6) + (this.field1079 << 3) + 7 : false; } @ObfuscatedName("q") @@ -84,8 +119,8 @@ public class WorldMapSection2 implements WorldMapSection { garbageValue = "4" ) @Export("containsPosition") - public boolean containsPosition(int var1, int var2) { - return var1 >> 6 == this.field1087 && var2 >> 6 == this.field1088; + public boolean containsPosition(int x, int y) { + return x >= (this.field1076 << 6) + (this.field1080 << 3) && x <= (this.field1076 << 6) + (this.field1080 << 3) + 7 && y >= (this.field1077 << 6) + (this.field1081 << 3) && y <= (this.field1077 << 6) + (this.field1081 << 3) + 7; } @ObfuscatedName("w") @@ -94,11 +129,11 @@ public class WorldMapSection2 implements WorldMapSection { garbageValue = "1545934424" ) @Export("position") - public int[] position(int var1, int var2, int var3) { - if (!this.containsCoord(var1, var2, var3)) { + public int[] position(int plane, int x, int y) { + if (!this.containsCoord(plane, x, y)) { return null; } else { - int[] var4 = new int[]{this.field1087 * 64 - this.field1085 * 64 + var2, var3 + (this.field1088 * 64 - this.field1086 * 64)}; + int[] var4 = new int[]{this.field1076 * 64 - this.field1074 * 64 + x + (this.field1080 * 8 - this.field1078 * 8), y + (this.field1077 * 64 - this.field1075 * 64) + (this.field1081 * 8 - this.field1079 * 8)}; return var4; } } @@ -109,13 +144,13 @@ public class WorldMapSection2 implements WorldMapSection { garbageValue = "-1916486802" ) @Export("coord") - public Coord coord(int var1, int var2) { - if (!this.containsPosition(var1, var2)) { + public Coord coord(int x, int y) { + if (!this.containsPosition(x, y)) { return null; } else { - int var3 = this.field1085 * 64 - this.field1087 * 64 + var1; - int var4 = this.field1086 * 64 - this.field1088 * 64 + var2; - return new Coord(this.field1083, var3, var4); + int var3 = this.field1074 * 64 - this.field1076 * 64 + (this.field1078 * 8 - this.field1080 * 8) + x; + int var4 = this.field1075 * 64 - this.field1077 * 64 + y + (this.field1079 * 8 - this.field1081 * 8); + return new Coord(this.field1072, var3, var4); } } @@ -125,190 +160,165 @@ public class WorldMapSection2 implements WorldMapSection { garbageValue = "-113" ) @Export("read") - public void read(Buffer var1) { - this.field1083 = var1.readUnsignedByte(); - this.field1084 = var1.readUnsignedByte(); - this.field1085 = var1.readUnsignedShort(); - this.field1086 = var1.readUnsignedShort(); - this.field1087 = var1.readUnsignedShort(); - this.field1088 = var1.readUnsignedShort(); - this.method425(); + public void read(Buffer buffer) { + this.field1072 = buffer.readUnsignedByte(); + this.field1073 = buffer.readUnsignedByte(); + this.field1074 = buffer.readUnsignedShort(); + this.field1078 = buffer.readUnsignedByte(); + this.field1075 = buffer.readUnsignedShort(); + this.field1079 = buffer.readUnsignedByte(); + this.field1076 = buffer.readUnsignedShort(); + this.field1080 = buffer.readUnsignedByte(); + this.field1077 = buffer.readUnsignedShort(); + this.field1081 = buffer.readUnsignedByte(); + this.method424(); } @ObfuscatedName("g") @ObfuscatedSignature( signature = "(I)V", - garbageValue = "-1602858772" + garbageValue = "2026323437" ) - void method425() { + void method424() { } @ObfuscatedName("m") @ObfuscatedSignature( - signature = "(II)I", - garbageValue = "409746497" + signature = "(II)Lim;", + garbageValue = "-205156540" ) - @Export("getVarbit") - public static int getVarbit(int var0) { - VarbitDefinition var1 = Occluder.method3255(var0); - int var2 = var1.baseVar; - int var3 = var1.startBit; - int var4 = var1.endBit; - int var5 = Varps.Varps_masks[var4 - var3]; - return Varps.Varps_main[var2] >> var3 & var5; + @Export("getKitDefinition") + public static KitDefinition getKitDefinition(int var0) { + KitDefinition var1 = (KitDefinition)KitDefinition.KitDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = KitDefinition.KitDefinition_archive.takeFile(3, var0); + var1 = new KitDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); + } + + KitDefinition.KitDefinition_cached.put(var1, (long)var0); + return var1; + } } - @ObfuscatedName("f") + @ObfuscatedName("fc") @ObfuscatedSignature( - signature = "(IILfe;Lfy;I)Z", - garbageValue = "-2025028346" + signature = "(I)V", + garbageValue = "2142100332" ) - static final boolean method593(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; - class178.directions[var6][var7] = 99; - class178.distances[var6][var7] = 0; - byte var10 = 0; - int var11 = 0; - class178.bufferX[var10] = var0; - int var12 = var10 + 1; - class178.bufferY[var10] = var1; - int[][] var13 = var3.flags; + static void method808() { + Client.mouseLastLastPressedTimeMillis = 1L; + Projectile.mouseRecorder.index = 0; + class230.field1138 = true; + Client.field166 = true; + Client.field126 = -1L; + PendingSpawn.method1694(); + Client.packetWriter.method239(); + Client.packetWriter.packetBuffer.index = 0; + Client.packetWriter.serverPacket0 = null; + Client.packetWriter.field676 = null; + Client.packetWriter.field677 = null; + Client.packetWriter.field678 = null; + Client.packetWriter.serverPacket0Length = 0; + Client.packetWriter.field674 = 0; + Client.rebootTimer = 0; + Client.field175 = 0; + Client.hintArrowType = 0; + Client.menuOptionsCount = 0; + Client.isMenuOpen = false; + MouseHandler.MouseHandler_idleCycles = 0; + GroundItem.method2094(); + Client.isItemSelected = 0; + Client.isSpellSelected = false; + Client.soundEffectCount = 0; + Client.camAngleY = 0; + Client.oculusOrbState = 0; + ClientParameter.field3645 = null; + Client.minimapState = 0; + Client.field125 = -1; + Client.destinationX = 0; + Client.destinationY = 0; + Client.playerAttackOption = AttackOption.AttackOption_hidden; + Client.npcAttackOption = AttackOption.AttackOption_hidden; + Client.npcCount = 0; + Players.Players_count = 0; - while (var12 != var11) { - var4 = class178.bufferX[var11]; - var5 = class178.bufferY[var11]; - var11 = var11 + 1 & 4095; - int var14 = var4 - var8; - int var15 = var5 - var9; - int var16 = var4 - var3.xInset; - int var17 = var5 - var3.yInset; - if (var2.vmethod3644(2, var4, var5, var3)) { - InterfaceParent.field986 = var4; - UrlRequester.field929 = var5; - return true; - } - - int var18 = class178.distances[var14][var15] + 1; - if (var14 > 0 && class178.directions[var14 - 1][var15] == 0 && (var13[var16 - 1][var17] & 19136782) == 0 && (var13[var16 - 1][var17 + 1] & 19136824) == 0) { - class178.bufferX[var12] = var4 - 1; - class178.bufferY[var12] = var5; - var12 = var12 + 1 & 4095; - class178.directions[var14 - 1][var15] = 2; - class178.distances[var14 - 1][var15] = var18; - } - - if (var14 < 126 && class178.directions[var14 + 1][var15] == 0 && (var13[var16 + 2][var17] & 19136899) == 0 && (var13[var16 + 2][var17 + 1] & 19136992) == 0) { - class178.bufferX[var12] = var4 + 1; - class178.bufferY[var12] = var5; - var12 = var12 + 1 & 4095; - class178.directions[var14 + 1][var15] = 8; - class178.distances[var14 + 1][var15] = var18; - } - - if (var15 > 0 && class178.directions[var14][var15 - 1] == 0 && (var13[var16][var17 - 1] & 19136782) == 0 && (var13[var16 + 1][var17 - 1] & 19136899) == 0) { - class178.bufferX[var12] = var4; - class178.bufferY[var12] = var5 - 1; - var12 = var12 + 1 & 4095; - class178.directions[var14][var15 - 1] = 1; - class178.distances[var14][var15 - 1] = var18; - } - - if (var15 < 126 && class178.directions[var14][var15 + 1] == 0 && (var13[var16][var17 + 2] & 19136824) == 0 && (var13[var16 + 1][var17 + 2] & 19136992) == 0) { - class178.bufferX[var12] = var4; - class178.bufferY[var12] = var5 + 1; - var12 = var12 + 1 & 4095; - class178.directions[var14][var15 + 1] = 4; - class178.distances[var14][var15 + 1] = var18; - } - - if (var14 > 0 && var15 > 0 && class178.directions[var14 - 1][var15 - 1] == 0 && (var13[var16 - 1][var17] & 19136830) == 0 && (var13[var16 - 1][var17 - 1] & 19136782) == 0 && (var13[var16][var17 - 1] & 19136911) == 0) { - class178.bufferX[var12] = var4 - 1; - class178.bufferY[var12] = var5 - 1; - var12 = var12 + 1 & 4095; - class178.directions[var14 - 1][var15 - 1] = 3; - class178.distances[var14 - 1][var15 - 1] = var18; - } - - if (var14 < 126 && var15 > 0 && class178.directions[var14 + 1][var15 - 1] == 0 && (var13[var16 + 1][var17 - 1] & 19136911) == 0 && (var13[var16 + 2][var17 - 1] & 19136899) == 0 && (var13[var16 + 2][var17] & 19136995) == 0) { - class178.bufferX[var12] = var4 + 1; - class178.bufferY[var12] = var5 - 1; - var12 = var12 + 1 & 4095; - class178.directions[var14 + 1][var15 - 1] = 9; - class178.distances[var14 + 1][var15 - 1] = var18; - } - - if (var14 > 0 && var15 < 126 && class178.directions[var14 - 1][var15 + 1] == 0 && (var13[var16 - 1][var17 + 1] & 19136830) == 0 && (var13[var16 - 1][var17 + 2] & 19136824) == 0 && (var13[var16][var17 + 2] & 19137016) == 0) { - class178.bufferX[var12] = var4 - 1; - class178.bufferY[var12] = var5 + 1; - var12 = var12 + 1 & 4095; - class178.directions[var14 - 1][var15 + 1] = 6; - class178.distances[var14 - 1][var15 + 1] = var18; - } - - if (var14 < 126 && var15 < 126 && class178.directions[var14 + 1][var15 + 1] == 0 && (var13[var16 + 1][var17 + 2] & 19137016) == 0 && (var13[var16 + 2][var17 + 2] & 19136992) == 0 && (var13[var16 + 2][var17 + 1] & 19136995) == 0) { - class178.bufferX[var12] = var4 + 1; - class178.bufferY[var12] = var5 + 1; - var12 = var12 + 1 & 4095; - class178.directions[var14 + 1][var15 + 1] = 12; - class178.distances[var14 + 1][var15 + 1] = var18; - } + int var0; + for (var0 = 0; var0 < 2048; ++var0) { + Players.field733[var0] = null; + Players.field732[var0] = 1; } - InterfaceParent.field986 = var4; - UrlRequester.field929 = var5; - return false; - } + for (var0 = 0; var0 < 2048; ++var0) { + Client.players[var0] = null; + } - @ObfuscatedName("hc") - @ObfuscatedSignature( - signature = "(ILjava/lang/String;I)V", - garbageValue = "-1850233906" - ) - static void method583(int var0, String var1) { - int var2 = Players.Players_count; - int[] var3 = Players.Players_indices; - boolean var4 = false; - Username var5 = new Username(var1, KeyHandler.loginType); + for (var0 = 0; var0 < 32768; ++var0) { + Client.npcs[var0] = null; + } - for (int var6 = 0; var6 < var2; ++var6) { - Player var7 = Client.players[var3[var6]]; - if (var7 != null && var7 != Canvas.localPlayer && var7.username != null && var7.username.equals(var5)) { - PacketBufferNode var8; - if (var0 == 1) { - var8 = Interpreter.method1915(ClientPacket.field269, Client.packetWriter.isaacCipher); - var8.packetBuffer.writeShort(var3[var6]); - var8.packetBuffer.method56(0); - Client.packetWriter.method241(var8); - } else if (var0 == 4) { - var8 = Interpreter.method1915(ClientPacket.field249, Client.packetWriter.isaacCipher); - var8.packetBuffer.method64(var3[var6]); - var8.packetBuffer.method56(0); - Client.packetWriter.method241(var8); - } else if (var0 == 6) { - var8 = Interpreter.method1915(ClientPacket.field315, Client.packetWriter.isaacCipher); - var8.packetBuffer.method63(var3[var6]); - var8.packetBuffer.method57(0); - Client.packetWriter.method241(var8); - } else if (var0 == 7) { - var8 = Interpreter.method1915(ClientPacket.field297, Client.packetWriter.isaacCipher); - var8.packetBuffer.method57(0); - var8.packetBuffer.writeShortLE(var3[var6]); - Client.packetWriter.method241(var8); + Client.combatTargetPlayerIndex = -1; + Client.projectiles.clear(); + Client.graphicsObjects.clear(); + + for (var0 = 0; var0 < 4; ++var0) { + for (int var1 = 0; var1 < 104; ++var1) { + for (int var2 = 0; var2 < 104; ++var2) { + Client.groundItems[var0][var1][var2] = null; } - - var4 = true; - break; } } - if (!var4) { - WorldMapIcon1.addGameMessage(4, "", "Unable to find " + var1); + Client.pendingSpawns = new NodeDeque(); + WorldMapArea.friendSystem.clear(); + + for (var0 = 0; var0 < VarpDefinition.field944; ++var0) { + VarpDefinition var3 = SecureRandomCallable.method1140(var0); + if (var3 != null) { + Varps.Varps_temp[var0] = 0; + Varps.Varps_main[var0] = 0; + } } + class196.varcs.clearTransient(); + Client.followerIndex = -1; + if (Client.rootInterface != -1) { + AbstractByteArrayCopier.unloadInterface(Client.rootInterface); + } + + for (InterfaceParent var4 = (InterfaceParent)Client.interfaceParents.first(); var4 != null; var4 = (InterfaceParent)Client.interfaceParents.next()) { + MenuAction.closeInterface(var4, true); + } + + Client.rootInterface = -1; + Client.interfaceParents = new NodeHashTable(8); + Client.field127 = null; + Client.menuOptionsCount = 0; + Client.isMenuOpen = false; + Client.field119.method256((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; + } + + SpriteMask.method4389(); + Client.isLoading = true; + + for (var0 = 0; var0 < 100; ++var0) { + Client.field100[var0] = true; + } + + AbstractByteArrayCopier.method4024(); + PacketWriter.clanChat = null; + + for (var0 = 0; var0 < 8; ++var0) { + Client.grandExchangeOffers[var0] = new GrandExchangeOffer(); + } + + FloorDecoration.grandExchangeEvents = null; } } diff --git a/runescape-client/src/main/java/WorldMapSection3.java b/runescape-client/src/main/java/WorldMapSection3.java index 3122fa5e65..1f50642d0f 100644 --- a/runescape-client/src/main/java/WorldMapSection3.java +++ b/runescape-client/src/main/java/WorldMapSection3.java @@ -4,73 +4,86 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("p") +@ObfuscatedName("y") @Implements("WorldMapSection3") public class WorldMapSection3 implements WorldMapSection { - @ObfuscatedName("h") - @Export("osNameLowerCase") - public static String osNameLowerCase; - @ObfuscatedName("dr") - @ObfuscatedSignature( - signature = "Lit;" - ) - @Export("archive8") - static Archive archive8; - @ObfuscatedName("go") + @ObfuscatedName("sn") @ObfuscatedGetter( - intValue = -948290091 + intValue = -1946112139 ) - static int field1089; + static int field1055; + @ObfuscatedName("p") + static int[] field1056; @ObfuscatedName("m") @ObfuscatedGetter( - intValue = 1389733201 + intValue = -2011838881 ) - int field1090; + int field1057; @ObfuscatedName("f") @ObfuscatedGetter( - intValue = -1622972483 + intValue = 1299225715 ) - int field1091; + int field1058; @ObfuscatedName("q") @ObfuscatedGetter( - intValue = 702057599 + intValue = 82600709 ) - int field1092; + int field1059; @ObfuscatedName("w") @ObfuscatedGetter( - intValue = -1068088609 + intValue = -477370575 ) - int field1093; + int field1060; @ObfuscatedName("o") @ObfuscatedGetter( - intValue = 1257151629 + intValue = -671345527 ) - int field1094; + int field1061; @ObfuscatedName("u") @ObfuscatedGetter( - intValue = -1351623663 + intValue = 529427495 ) - int field1095; + int field1062; @ObfuscatedName("g") @ObfuscatedGetter( - intValue = 1016557381 + intValue = -150870205 ) - int field1096; + int field1063; @ObfuscatedName("l") @ObfuscatedGetter( - intValue = 884736611 + intValue = 1009718107 ) - int field1097; + int field1064; @ObfuscatedName("e") @ObfuscatedGetter( - intValue = 395786901 + intValue = -1022177315 ) - int field1098; + int field1065; @ObfuscatedName("x") @ObfuscatedGetter( - intValue = -627081155 + intValue = -1397517463 ) - int field1099; + int field1066; + @ObfuscatedName("d") + @ObfuscatedGetter( + intValue = -799353317 + ) + int field1067; + @ObfuscatedName("k") + @ObfuscatedGetter( + intValue = -1388959491 + ) + int field1068; + @ObfuscatedName("n") + @ObfuscatedGetter( + intValue = -1657956317 + ) + int field1069; + @ObfuscatedName("i") + @ObfuscatedGetter( + intValue = 1345061881 + ) + int field1070; @ObfuscatedName("m") @ObfuscatedSignature( @@ -78,21 +91,21 @@ public class WorldMapSection3 implements WorldMapSection { garbageValue = "1384899025" ) @Export("expandBounds") - public void expandBounds(WorldMapArea var1) { - if (var1.minX0 > this.field1096) { - var1.minX0 = this.field1096; + public void expandBounds(WorldMapArea area) { + if (area.minX0 > this.field1061) { + area.minX0 = this.field1061; } - if (var1.maxX0 < this.field1098) { - var1.maxX0 = this.field1098; + if (area.maxX0 < this.field1061) { + area.maxX0 = this.field1061; } - if (var1.minY0 > this.field1097) { - var1.minY0 = this.field1097; + if (area.minY0 > this.field1062) { + area.minY0 = this.field1062; } - if (var1.maxY0 < this.field1099) { - var1.maxY0 = this.field1099; + if (area.maxY0 < this.field1062) { + area.maxY0 = this.field1062; } } @@ -103,8 +116,8 @@ public class WorldMapSection3 implements WorldMapSection { garbageValue = "93" ) @Export("containsCoord") - public boolean containsCoord(int var1, int var2, int var3) { - return var1 >= this.field1090 && var1 < this.field1090 + this.field1091 ? var2 >> 6 >= this.field1092 && var2 >> 6 <= this.field1094 && var3 >> 6 >= this.field1093 && var3 >> 6 <= this.field1095 : false; + public boolean containsCoord(int plane, int x, int y) { + return plane >= this.field1057 && plane < this.field1057 + this.field1058 ? x >= (this.field1059 << 6) + (this.field1063 << 3) && x <= (this.field1059 << 6) + (this.field1065 << 3) + 7 && y >= (this.field1060 << 6) + (this.field1064 << 3) && y <= (this.field1060 << 6) + (this.field1066 << 3) + 7 : false; } @ObfuscatedName("q") @@ -113,8 +126,8 @@ public class WorldMapSection3 implements WorldMapSection { garbageValue = "4" ) @Export("containsPosition") - public boolean containsPosition(int var1, int var2) { - return var1 >> 6 >= this.field1096 && var1 >> 6 <= this.field1098 && var2 >> 6 >= this.field1097 && var2 >> 6 <= this.field1099; + public boolean containsPosition(int x, int y) { + return x >= (this.field1061 << 6) + (this.field1067 << 3) && x <= (this.field1061 << 6) + (this.field1069 << 3) + 7 && y >= (this.field1062 << 6) + (this.field1068 << 3) && y <= (this.field1062 << 6) + (this.field1070 << 3) + 7; } @ObfuscatedName("w") @@ -123,11 +136,11 @@ public class WorldMapSection3 implements WorldMapSection { garbageValue = "1545934424" ) @Export("position") - public int[] position(int var1, int var2, int var3) { - if (!this.containsCoord(var1, var2, var3)) { + public int[] position(int plane, int x, int y) { + if (!this.containsCoord(plane, x, y)) { return null; } else { - int[] var4 = new int[]{this.field1096 * 64 - this.field1092 * 64 + var2, var3 + (this.field1097 * 64 - this.field1093 * 64)}; + int[] var4 = new int[]{this.field1061 * 64 - this.field1059 * 64 + x + (this.field1067 * 8 - this.field1063 * 8), y + (this.field1062 * 64 - this.field1060 * 64) + (this.field1068 * 8 - this.field1064 * 8)}; return var4; } } @@ -138,13 +151,13 @@ public class WorldMapSection3 implements WorldMapSection { garbageValue = "-1916486802" ) @Export("coord") - public Coord coord(int var1, int var2) { - if (!this.containsPosition(var1, var2)) { + public Coord coord(int x, int y) { + if (!this.containsPosition(x, y)) { return null; } else { - int var3 = this.field1092 * 64 - this.field1096 * 64 + var1; - int var4 = this.field1093 * 64 - this.field1097 * 64 + var2; - return new Coord(this.field1090, var3, var4); + int var3 = this.field1059 * 64 - this.field1061 * 64 + (this.field1063 * 8 - this.field1067 * 8) + x; + int var4 = this.field1060 * 64 - this.field1062 * 64 + y + (this.field1064 * 8 - this.field1068 * 8); + return new Coord(this.field1057, var3, var4); } } @@ -154,110 +167,116 @@ public class WorldMapSection3 implements WorldMapSection { garbageValue = "-113" ) @Export("read") - public void read(Buffer var1) { - this.field1090 = var1.readUnsignedByte(); - this.field1091 = var1.readUnsignedByte(); - this.field1092 = var1.readUnsignedShort(); - this.field1093 = var1.readUnsignedShort(); - this.field1094 = var1.readUnsignedShort(); - this.field1095 = var1.readUnsignedShort(); - this.field1096 = var1.readUnsignedShort(); - this.field1097 = var1.readUnsignedShort(); - this.field1098 = var1.readUnsignedShort(); - this.field1099 = var1.readUnsignedShort(); - this.method426(); + public void read(Buffer buffer) { + this.field1057 = buffer.readUnsignedByte(); + this.field1058 = buffer.readUnsignedByte(); + this.field1059 = buffer.readUnsignedShort(); + this.field1063 = buffer.readUnsignedByte(); + this.field1065 = buffer.readUnsignedByte(); + this.field1060 = buffer.readUnsignedShort(); + this.field1064 = buffer.readUnsignedByte(); + this.field1066 = buffer.readUnsignedByte(); + this.field1061 = buffer.readUnsignedShort(); + this.field1067 = buffer.readUnsignedByte(); + this.field1069 = buffer.readUnsignedByte(); + this.field1062 = buffer.readUnsignedShort(); + this.field1068 = buffer.readUnsignedByte(); + this.field1070 = buffer.readUnsignedByte(); + this.method423(); } @ObfuscatedName("g") @ObfuscatedSignature( - signature = "(B)V", - garbageValue = "-126" + signature = "(I)V", + garbageValue = "1967186894" ) - void method426() { + void method423() { } - @ObfuscatedName("d") + @ObfuscatedName("w") @ObfuscatedSignature( - signature = "(Lho;II)V", - garbageValue = "1115233428" + signature = "(I)V", + garbageValue = "-2102591569" ) - static final void method345(Widget var0, int var1) { - if (var0.field966 == null) { - throw new RuntimeException(); + @Export("savePreferences") + static void savePreferences() { + AccessFile var0 = null; + + try { + var0 = LoginPacket.getPreferencesFile("", WorldMapRectangle.studioGame.name, true); + Buffer var1 = ReflectionCheck.clientPreferences.toBuffer(); + var0.write(var1.array, 0, var1.index); + } catch (Exception var3) { + } + + try { + if (var0 != null) { + var0.closeSync(true); + } + } catch (Exception var2) { + } + + } + + @ObfuscatedName("hz") + @ObfuscatedSignature( + signature = "(II)V", + garbageValue = "1886145284" + ) + static final void method245(int var0) { + if (var0 >= 0) { + int var1 = Client.menuArguments1[var0]; + int var2 = Client.menuArguments2[var0]; + int var3 = Client.menuOpcodes[var0]; + int var4 = Client.menuArguments0[var0]; + String var5 = Client.menuActions[var0]; + String var6 = Client.menuTargetNames[var0]; + Actor.menuAction(var1, var2, var3, var4, var5, var6, MouseHandler.MouseHandler_lastPressedX, MouseHandler.MouseHandler_lastPressedY); + } + + } + + @ObfuscatedName("io") + @ObfuscatedSignature( + signature = "(Lho;IIIIIII)V", + garbageValue = "-1723792771" + ) + static final void method246(Widget var0, int var1, int var2, int var3, int var4, int var5, int var6) { + if (Client.field188) { + Client.field189 = 32; } else { - if (var0.field984 == null) { - var0.field984 = new int[var0.field966.length]; - } - - var0.field984[var1] = Integer.MAX_VALUE; + Client.field189 = 0; } - } - @ObfuscatedName("am") - @ObfuscatedSignature( - signature = "(IB)V", - garbageValue = "23" - ) - @Export("runWidgetOnLoadListener") - static void runWidgetOnLoadListener(int var0) { - if (var0 != -1 && GroundItemPile.loadInterface(var0)) { - Widget[] var1 = 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.args0 = var3.onLoad; - GrandExchangeEvent.runScript0(var4, 5000000); + Client.field188 = false; + int var7; + if (MouseHandler.MouseHandler_currentButton == 1 || !AbstractRasterProvider.mouseCam && MouseHandler.MouseHandler_currentButton == 4) { + if (var5 >= var1 && var5 < var1 + 16 && var6 >= var2 && var6 < var2 + 16) { + var0.scrollY -= 4; + WorldMapRectangle.method295(var0); + } else if (var5 >= var1 && var5 < var1 + 16 && var6 >= var3 + var2 - 16 && var6 < var3 + var2) { + var0.scrollY += 4; + WorldMapRectangle.method295(var0); + } else if (var5 >= var1 - Client.field189 && var5 < Client.field189 + 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; + WorldMapRectangle.method295(var0); + Client.field188 = true; } } - } - - @ObfuscatedName("ic") - @ObfuscatedSignature( - signature = "(Lho;IIZB)V", - garbageValue = "-35" - ) - @Export("alignWidgetSize") - static void alignWidgetSize(Widget component, int parentWidth, int parentHeight, boolean var3) { - int var4 = component.width; - int var5 = component.height; - if (component.widthAlignment == 0) { - component.width = component.rawWidth; - } else if (component.widthAlignment == 1) { - component.width = parentWidth - component.rawWidth; - } else if (component.widthAlignment == 2) { - component.width = component.rawWidth * parentWidth >> 14; - } - - if (component.heightAlignment == 0) { - component.height = component.rawHeight; - } else if (component.heightAlignment == 1) { - component.height = parentHeight - component.rawHeight; - } else if (component.heightAlignment == 2) { - component.height = parentHeight * component.rawHeight >> 14; - } - - if (component.widthAlignment == 4) { - component.width = component.height * component.field958 / component.field959; - } - - if (component.heightAlignment == 4) { - component.height = component.width * component.field959 / component.field958; - } - - if (component.contentType == 1337) { - Client.viewportWidget = component; - } - - if (var3 && component.onResize != null && (var4 != component.width || var5 != component.height)) { - ScriptEvent var6 = new ScriptEvent(); - var6.widget = component; - var6.args0 = component.onResize; - Client.scriptEvents.addFirst(var6); + if (Client.mouseWheelRotation != 0) { + var7 = var0.width; + if (var5 >= var1 - var7 && var6 >= var2 && var5 < var1 + 16 && var6 <= var3 + var2) { + var0.scrollY += Client.mouseWheelRotation * 45; + WorldMapRectangle.method295(var0); + } } } diff --git a/runescape-client/src/main/java/WorldMapSectionType.java b/runescape-client/src/main/java/WorldMapSectionType.java index f22ace252c..30441ed6bd 100644 --- a/runescape-client/src/main/java/WorldMapSectionType.java +++ b/runescape-client/src/main/java/WorldMapSectionType.java @@ -13,22 +13,26 @@ public enum WorldMapSectionType implements Enumerated { @ObfuscatedSignature( signature = "Lh;" ) - field1100(1, (byte)0), + @Export("WORLDMAPSECTIONTYPE0") + WORLDMAPSECTIONTYPE0(1, (byte)0), @ObfuscatedName("f") @ObfuscatedSignature( signature = "Lh;" ) - field1101(0, (byte)1), + @Export("WORLDMAPSECTIONTYPE1") + WORLDMAPSECTIONTYPE1(0, (byte)1), @ObfuscatedName("q") @ObfuscatedSignature( signature = "Lh;" ) - field1102(3, (byte)2), + @Export("WORLDMAPSECTIONTYPE2") + WORLDMAPSECTIONTYPE2(3, (byte)2), @ObfuscatedName("w") @ObfuscatedSignature( signature = "Lh;" ) - field1103(2, (byte)3); + @Export("WORLDMAPSECTIONTYPE3") + WORLDMAPSECTIONTYPE3(2, (byte)3); @ObfuscatedName("e") @ObfuscatedSignature( @@ -71,15 +75,15 @@ public enum WorldMapSectionType implements Enumerated { @ObfuscatedName("m") public static String method252(long var0) { - class211.field1126.setTime(new Date(var0)); - int var2 = class211.field1126.get(7); - int var3 = class211.field1126.get(5); - int var4 = class211.field1126.get(2); - int var5 = class211.field1126.get(1); - int var6 = class211.field1126.get(11); - int var7 = class211.field1126.get(12); - int var8 = class211.field1126.get(13); - return class211.field1125[var2 - 1] + ", " + var3 / 10 + var3 % 10 + "-" + class211.field1124[0][var4] + "-" + var5 + " " + var6 / 10 + var6 % 10 + ":" + var7 / 10 + var7 % 10 + ":" + var8 / 10 + var8 % 10 + " GMT"; + 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("w") diff --git a/runescape-client/src/main/java/class1.java b/runescape-client/src/main/java/class1.java index 7a52970d1d..0ad3f3a622 100644 --- a/runescape-client/src/main/java/class1.java +++ b/runescape-client/src/main/java/class1.java @@ -93,7 +93,7 @@ final class class1 implements class0 { var4.rawY = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 1]; var4.xAlignment = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 2]; var4.yAlignment = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 3]; - class22.method295(var4); + WorldMapRectangle.method295(var4); TextureProvider.client.alignWidget(var4); if (var3 != -1 && var4.type == 0) { class39.revalidateWidgetScroll(Widget.interfaceComponents[var3 >> 16], var4, false); @@ -106,7 +106,7 @@ final class class1 implements class0 { var4.rawHeight = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 1]; var4.widthAlignment = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 2]; var4.heightAlignment = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 3]; - class22.method295(var4); + WorldMapRectangle.method295(var4); TextureProvider.client.alignWidget(var4); if (var3 != -1 && var4.type == 0) { class39.revalidateWidgetScroll(Widget.interfaceComponents[var3 >> 16], var4, false); @@ -117,7 +117,7 @@ final class class1 implements class0 { boolean var5 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize] == 1; if (var5 != var4.isHidden) { var4.isHidden = var5; - class22.method295(var4); + WorldMapRectangle.method295(var4); } return 1; @@ -228,7 +228,7 @@ final class class1 implements class0 { String var7 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; var4 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; class50.method900(var7, var4 == 1); - Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = WorldMapSection0.field1055; + Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = WorldMapSection3.field1055; return 1; } else if (var0 != ScriptOpcodes.OC_FINDNEXT) { if (var0 == ScriptOpcodes.OC_FINDRESET) { @@ -238,7 +238,7 @@ final class class1 implements class0 { return 2; } } else { - if (AttackOption.field30 != null && WorldMapDecorationType.field1139 < WorldMapSection0.field1055) { + if (AttackOption.field30 != null && WorldMapDecorationType.field1139 < WorldMapSection3.field1055) { Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = AttackOption.field30[++WorldMapDecorationType.field1139 - 1] & '\uffff'; } else { Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = -1; diff --git a/runescape-client/src/main/java/class15.java b/runescape-client/src/main/java/class15.java index d8eb31073f..beec47d32f 100644 --- a/runescape-client/src/main/java/class15.java +++ b/runescape-client/src/main/java/class15.java @@ -62,7 +62,7 @@ public class class15 extends class21 { super.field145 = new short[super.field156][64][64]; super.field154 = new byte[super.field156][64][64]; super.field155 = new byte[super.field156][64][64]; - super.field144 = new WorldMapDecoration[super.field156][64][64][]; + super.decorations = new WorldMapDecoration[super.field156][64][64][]; int var2 = var1.readUnsignedByte(); if (var2 != class30.field246.field248) { throw new IllegalStateException(""); @@ -123,7 +123,7 @@ public class class15 extends class21 { static int method182(int var0, Script var1, boolean var2) { Widget var3 = Huffman.getWidget(Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]); if (var0 == ScriptOpcodes.IF_GETTARGETMASK) { - Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = class211.method4107(class1.getWidgetClickMask(var3)); + Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = Calendar.method4107(class1.getWidgetClickMask(var3)); return 1; } else if (var0 != ScriptOpcodes.IF_GETOP) { if (var0 == ScriptOpcodes.IF_GETOPBASE) { diff --git a/runescape-client/src/main/java/class16.java b/runescape-client/src/main/java/class16.java index 6b30dbe49d..d3099181eb 100644 --- a/runescape-client/src/main/java/class16.java +++ b/runescape-client/src/main/java/class16.java @@ -64,7 +64,7 @@ public class class16 { static int method188(int var0, Script var1, boolean var2) { Widget var3 = var2 ? WorldMapIcon1.field1030 : GrandExchangeOfferAgeComparator.field1111; if (var0 == ScriptOpcodes.CC_GETTARGETMASK) { - Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = class211.method4107(class1.getWidgetClickMask(var3)); + Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = Calendar.method4107(class1.getWidgetClickMask(var3)); return 1; } else if (var0 != ScriptOpcodes.CC_GETOP) { if (var0 == ScriptOpcodes.CC_GETOPBASE) { @@ -122,7 +122,7 @@ public class class16 { var9 = var1.method65(); var10 = var1.method61(); var11 = var1.readUnsignedByteNegate(); - int var15 = (var11 >> 4 & 7) + WorldMapSection3.field1089; + int var15 = (var11 >> 4 & 7) + WorldMapSection1.field1089; int var16 = (var11 & 7) + Canvas.field95; Player var17; if (var9 == Client.localPlayerIndex) { @@ -185,7 +185,7 @@ public class class16 { int var32; if (class190.field2349 == var0) { var31 = var1.method58(); - var2 = (var31 >> 4 & 7) + WorldMapSection3.field1089; + var2 = (var31 >> 4 & 7) + WorldMapSection1.field1089; var32 = (var31 & 7) + Canvas.field95; var3 = var1.method59(); var4 = var3 >> 2; @@ -198,7 +198,7 @@ public class class16 { } else { if (class190.field2345 == var0) { var31 = var1.readUnsignedByte(); - var2 = (var31 >> 4 & 7) + WorldMapSection3.field1089; + var2 = (var31 >> 4 & 7) + WorldMapSection1.field1089; var32 = (var31 & 7) + Canvas.field95; var3 = var1.method59(); var4 = var1.method58(); @@ -223,7 +223,7 @@ public class class16 { var2 = var1.method58(); var32 = var1.method66(); var3 = var1.readUnsignedByte(); - var4 = (var3 >> 4 & 7) + WorldMapSection3.field1089; + var4 = (var3 >> 4 & 7) + WorldMapSection1.field1089; var5 = (var3 & 7) + Canvas.field95; if (var4 >= 0 && var5 >= 0 && var4 < 104 && var5 < 104) { var4 = var4 * 128 + 64; @@ -239,7 +239,7 @@ public class class16 { var32 = var31 & 3; var3 = Client.field182[var2]; var4 = var1.readUnsignedByteNegate(); - var5 = (var4 >> 4 & 7) + WorldMapSection3.field1089; + var5 = (var4 >> 4 & 7) + WorldMapSection1.field1089; var6 = (var4 & 7) + Canvas.field95; var7 = var1.readUnsignedShort(); if (var5 >= 0 && var6 >= 0 && var5 < 103 && var6 < 103) { @@ -298,7 +298,7 @@ public class class16 { NodeDeque var40; if (class190.field2347 == var0) { var31 = var1.method58(); - var2 = (var31 >> 4 & 7) + WorldMapSection3.field1089; + var2 = (var31 >> 4 & 7) + WorldMapSection1.field1089; var32 = (var31 & 7) + Canvas.field95; var3 = var1.method67(); if (var2 >= 0 && var32 >= 0 && var2 < 104 && var32 < 104) { @@ -324,7 +324,7 @@ public class class16 { var32 = var31 & 3; var3 = Client.field182[var2]; var4 = var1.method59(); - var5 = (var4 >> 4 & 7) + WorldMapSection3.field1089; + var5 = (var4 >> 4 & 7) + WorldMapSection1.field1089; var6 = (var4 & 7) + Canvas.field95; if (var5 >= 0 && var6 >= 0 && var5 < 104 && var6 < 104) { class258.method4898(SoundSystem.plane, var5, var6, var3, -1, var2, var32, 0, -1); @@ -339,7 +339,7 @@ public class class16 { var6 = var1.method59(); var7 = var1.method65(); var8 = var1.method58(); - var35 = (var8 >> 4 & 7) + WorldMapSection3.field1089; + var35 = (var8 >> 4 & 7) + WorldMapSection1.field1089; var9 = (var8 & 7) + Canvas.field95; var10 = var1.method60(); byte var41 = var1.method61(); @@ -359,7 +359,7 @@ public class class16 { var31 = var1.method66(); var2 = var1.method67(); var32 = var1.method58(); - var3 = (var32 >> 4 & 7) + WorldMapSection3.field1089; + var3 = (var32 >> 4 & 7) + WorldMapSection1.field1089; var4 = (var32 & 7) + Canvas.field95; if (var3 >= 0 && var4 >= 0 && var3 < 104 && var4 < 104) { var38 = new GroundItem(); @@ -378,7 +378,7 @@ public class class16 { var2 = var1.method67(); var32 = var1.method65(); var3 = var1.method58(); - var4 = (var3 >> 4 & 7) + WorldMapSection3.field1089; + var4 = (var3 >> 4 & 7) + WorldMapSection1.field1089; var5 = (var3 & 7) + Canvas.field95; if (var4 >= 0 && var5 >= 0 && var4 < 104 && var5 < 104) { var40 = Client.groundItems[SoundSystem.plane][var4][var5]; @@ -526,7 +526,7 @@ public class class16 { if (var6 == 14) { var9 = var2[var4++]; - var7 = WorldMapSection2.getVarbit(var9); + var7 = WorldMapSection0.getVarbit(var9); } if (var6 == 15) { diff --git a/runescape-client/src/main/java/class171.java b/runescape-client/src/main/java/class171.java index 51e80c8a4b..3de5f3d753 100644 --- a/runescape-client/src/main/java/class171.java +++ b/runescape-client/src/main/java/class171.java @@ -99,26 +99,26 @@ public class class171 { Login.Login_loadingPercent = 10; Client.titleLoadingStage = 30; } else if (Client.titleLoadingStage == 30) { - AbstractArchive.archive0 = class22.newArchive(0, false, true, true); - Skeleton.archive1 = class22.newArchive(1, false, true, true); - ObjectSound.archive2 = class22.newArchive(2, true, false, true); - WorldMapIcon1.archive3 = class22.newArchive(3, false, true, true); - WorldMapDecoration.archive4 = class22.newArchive(4, false, true, true); - SecureRandomFuture.archive5 = class22.newArchive(5, true, true, true); - UserComparator3.archive6 = class22.newArchive(6, true, true, true); - class40.archive7 = class22.newArchive(7, false, true, true); - WorldMapSection3.archive8 = class22.newArchive(8, false, true, true); - class238.archive9 = class22.newArchive(9, false, true, true); - class16.archive10 = class22.newArchive(10, false, true, true); - Login.archive11 = class22.newArchive(11, false, true, true); - Formatting.archive12 = class22.newArchive(12, false, true, true); - ByteArrayPool.archive13 = class22.newArchive(13, true, false, true); - class2.archive14 = class22.newArchive(14, false, true, true); - WorldMapSection1.archive15 = class22.newArchive(15, false, true, true); - class22.archive16 = class22.newArchive(17, true, true, true); - WorldMapLabelSize.field1040 = class22.newArchive(18, false, true, true); - ItemContainer.field434 = class22.newArchive(19, false, true, true); - AbstractByteArrayCopier.field0 = class22.newArchive(20, false, true, true); + AbstractArchive.archive0 = WorldMapRectangle.newArchive(0, false, true, true); + Skeleton.archive1 = WorldMapRectangle.newArchive(1, false, true, true); + ObjectSound.archive2 = WorldMapRectangle.newArchive(2, true, false, true); + WorldMapIcon1.archive3 = WorldMapRectangle.newArchive(3, false, true, true); + WorldMapDecoration.archive4 = WorldMapRectangle.newArchive(4, false, true, true); + SecureRandomFuture.archive5 = WorldMapRectangle.newArchive(5, true, true, true); + UserComparator3.archive6 = WorldMapRectangle.newArchive(6, true, true, true); + class40.archive7 = WorldMapRectangle.newArchive(7, false, true, true); + WorldMapSection1.archive8 = WorldMapRectangle.newArchive(8, false, true, true); + class238.archive9 = WorldMapRectangle.newArchive(9, false, true, true); + class16.archive10 = WorldMapRectangle.newArchive(10, false, true, true); + Login.archive11 = WorldMapRectangle.newArchive(11, false, true, true); + Formatting.archive12 = WorldMapRectangle.newArchive(12, false, true, true); + ByteArrayPool.archive13 = WorldMapRectangle.newArchive(13, true, false, true); + class2.archive14 = WorldMapRectangle.newArchive(14, false, true, true); + WorldMapSection2.archive15 = WorldMapRectangle.newArchive(15, false, true, true); + WorldMapRectangle.archive16 = WorldMapRectangle.newArchive(17, true, true, true); + WorldMapLabelSize.field1040 = WorldMapRectangle.newArchive(18, false, true, true); + ItemContainer.field434 = WorldMapRectangle.newArchive(19, false, true, true); + AbstractByteArrayCopier.field0 = WorldMapRectangle.newArchive(20, false, true, true); Login.Login_loadingText = "Connecting to update server"; Login.Login_loadingPercent = 20; Client.titleLoadingStage = 40; @@ -132,18 +132,18 @@ public class class171 { var0 += SecureRandomFuture.archive5.percentage() * 4 / 100; var0 += UserComparator3.archive6.percentage() * 2 / 100; var0 += class40.archive7.percentage() * 56 / 100; - var0 += WorldMapSection3.archive8.percentage() * 2 / 100; + var0 += WorldMapSection1.archive8.percentage() * 2 / 100; var0 += class238.archive9.percentage() * 2 / 100; var0 += class16.archive10.percentage() * 2 / 100; var0 += Login.archive11.percentage() * 2 / 100; var0 += Formatting.archive12.percentage() * 2 / 100; var0 += ByteArrayPool.archive13.percentage() * 2 / 100; var0 += class2.archive14.percentage() * 2 / 100; - var0 += WorldMapSection1.archive15.percentage() * 2 / 100; + var0 += WorldMapSection2.archive15.percentage() * 2 / 100; var0 += ItemContainer.field434.percentage() / 100; var0 += WorldMapLabelSize.field1040.percentage() / 100; var0 += AbstractByteArrayCopier.field0.percentage() / 100; - var0 += class22.archive16.method130() && class22.archive16.method2() ? 1 : 0; + var0 += WorldMapRectangle.archive16.method130() && WorldMapRectangle.archive16.method2() ? 1 : 0; if (var0 != 100) { if (var0 != 0) { Login.Login_loadingText = "Checking for updates - " + var0 + "%"; @@ -157,15 +157,15 @@ public class class171 { AbstractWorldMapIcon.method625(SecureRandomFuture.archive5, "Maps"); AbstractWorldMapIcon.method625(UserComparator3.archive6, "Music Tracks"); AbstractWorldMapIcon.method625(class40.archive7, "Models"); - AbstractWorldMapIcon.method625(WorldMapSection3.archive8, "Sprites"); + AbstractWorldMapIcon.method625(WorldMapSection1.archive8, "Sprites"); AbstractWorldMapIcon.method625(Login.archive11, "Music Jingles"); AbstractWorldMapIcon.method625(class2.archive14, "Music Samples"); - AbstractWorldMapIcon.method625(WorldMapSection1.archive15, "Music Patches"); + AbstractWorldMapIcon.method625(WorldMapSection2.archive15, "Music Patches"); AbstractWorldMapIcon.method625(ItemContainer.field434, "World Map"); AbstractWorldMapIcon.method625(WorldMapLabelSize.field1040, "World Map Geography"); AbstractWorldMapIcon.method625(AbstractByteArrayCopier.field0, "World Map Ground"); - class211.spriteIds = new GraphicsDefaults(); - class211.spriteIds.decode(class22.archive16); + Calendar.spriteIds = new GraphicsDefaults(); + Calendar.spriteIds.decode(WorldMapRectangle.archive16); Login.Login_loadingText = "Loaded update list"; Login.Login_loadingPercent = 30; Client.titleLoadingStage = 45; @@ -176,7 +176,7 @@ public class class171 { var28.method174(9, 128); WorldMapCacheName.pcmPlayer0 = Players.newPcmPlayer(GameShell.taskHandler, 0, 22050); WorldMapCacheName.pcmPlayer0.setStream(var28); - NetSocket.method3537(WorldMapSection1.archive15, class2.archive14, WorldMapDecoration.archive4, var28); + NetSocket.method3537(WorldMapSection2.archive15, class2.archive14, WorldMapDecoration.archive4, var28); AbstractArchive.pcmPlayer1 = Players.newPcmPlayer(GameShell.taskHandler, 1, 2048); TaskHandler.pcmStreamMixer = new PcmStreamMixer(); AbstractArchive.pcmPlayer1.setStream(TaskHandler.pcmStreamMixer); @@ -184,13 +184,13 @@ public class class171 { Login.Login_loadingText = "Prepared sound engine"; Login.Login_loadingPercent = 35; Client.titleLoadingStage = 50; - WorldMapElement.fonts = new Fonts(WorldMapSection3.archive8, ByteArrayPool.archive13); + WorldMapElement.WorldMapElement_fonts = new Fonts(WorldMapSection1.archive8, ByteArrayPool.archive13); } else { int var29; if (Client.titleLoadingStage == 50) { FontName[] var2 = new FontName[]{FontName.FontName_verdana15, FontName.FontName_bold12, FontName.FontName_plain12, FontName.FontName_verdana11, FontName.FontName_plain11, FontName.FontName_verdana13}; var29 = var2.length; - Fonts var3 = WorldMapElement.fonts; + Fonts var3 = WorldMapElement.WorldMapElement_fonts; FontName[] var4 = new FontName[]{FontName.FontName_verdana15, FontName.FontName_bold12, FontName.FontName_plain12, FontName.FontName_verdana11, FontName.FontName_plain11, FontName.FontName_verdana13}; Client.fontsMap = var3.createMap(var4); if (Client.fontsMap.size() < var29) { @@ -206,7 +206,7 @@ public class class171 { Client.titleLoadingStage = 60; } } else if (Client.titleLoadingStage == 60) { - var0 = FloorDecoration.method2853(class16.archive10, WorldMapSection3.archive8); + var0 = FloorDecoration.method2853(class16.archive10, WorldMapSection1.archive8); var29 = class3.method36(); if (var0 < var29) { Login.Login_loadingText = "Loading title screen - " + var0 * 100 / var29 + "%"; @@ -260,7 +260,7 @@ public class class171 { VarpDefinition.field944 = VarpDefinition.field943.method4(16); Archive var15 = WorldMapIcon1.archive3; Archive var16 = class40.archive7; - Archive var17 = WorldMapSection3.archive8; + Archive var17 = WorldMapSection1.archive8; Archive var18 = ByteArrayPool.archive13; Widget.Widget_archive = var15; BufferedSource.field54 = var16; @@ -269,20 +269,20 @@ public class class171 { Widget.interfaceComponents = new Widget[Widget.Widget_archive.method5()][]; Widget.loadedInterfaces = new boolean[Widget.Widget_archive.method5()]; Archive var19 = ObjectSound.archive2; - class4.field1158 = var19; + class4.InvDefinition_archive = var19; Archive var20 = ObjectSound.archive2; EnumDefinition.EnumDefinition_archive = var20; Frames.method3241(ObjectSound.archive2); Archive var21 = ObjectSound.archive2; ParamDefinition.ParamDefinition_archive = var21; class196.varcs = new Varcs(); - class60.method1172(ObjectSound.archive2, WorldMapSection3.archive8, ByteArrayPool.archive13); + class60.method1172(ObjectSound.archive2, WorldMapSection1.archive8, ByteArrayPool.archive13); Archive var22 = ObjectSound.archive2; - Archive var23 = WorldMapSection3.archive8; + Archive var23 = WorldMapSection1.archive8; HealthBarDefinition.field379 = var22; HealthBarDefinition.field380 = var23; Archive var24 = ObjectSound.archive2; - Archive var25 = WorldMapSection3.archive8; + Archive var25 = WorldMapSection1.archive8; WorldMapElement.WorldMapElement_archive = var25; if (var24.method2()) { UserComparator4.WorldMapElement_count = var24.method4(35); @@ -305,13 +305,13 @@ public class class171 { } else if (Client.titleLoadingStage == 80) { var0 = 0; if (GrandExchangeOfferUnitPriceComparator.compass == null) { - GrandExchangeOfferUnitPriceComparator.compass = class322.readSprite(WorldMapSection3.archive8, class211.spriteIds.field878, 0); + GrandExchangeOfferUnitPriceComparator.compass = class322.readSprite(WorldMapSection1.archive8, Calendar.spriteIds.field878, 0); } else { ++var0; } if (FaceNormal.field345 == null) { - FaceNormal.field345 = class322.readSprite(WorldMapSection3.archive8, class211.spriteIds.field879, 0); + FaceNormal.field345 = class322.readSprite(WorldMapSection1.archive8, Calendar.spriteIds.field879, 0); } else { ++var0; } @@ -319,8 +319,8 @@ public class class171 { IndexedSprite[] var32; int var34; if (class192.mapSceneSprites == null) { - var30 = WorldMapSection3.archive8; - var34 = class211.spriteIds.mapScenes; + var30 = WorldMapSection1.archive8; + var34 = Calendar.spriteIds.mapScenes; if (!SpriteMask.loadSprite(var30, var34, 0)) { var32 = null; } else { @@ -334,8 +334,8 @@ public class class171 { Sprite[] var35; if (class15.headIconPkSprites == null) { - var30 = WorldMapSection3.archive8; - var34 = class211.spriteIds.headIconsPk; + var30 = WorldMapSection1.archive8; + var34 = Calendar.spriteIds.headIconsPk; if (!SpriteMask.loadSprite(var30, var34, 0)) { var35 = null; } else { @@ -348,8 +348,8 @@ public class class171 { } if (ClientPreferences.headIconPrayerSprites == null) { - var30 = WorldMapSection3.archive8; - var34 = class211.spriteIds.headIconsPrayer; + var30 = WorldMapSection1.archive8; + var34 = Calendar.spriteIds.headIconsPrayer; if (!SpriteMask.loadSprite(var30, var34, 0)) { var35 = null; } else { @@ -362,8 +362,8 @@ public class class171 { } if (Player.headIconHintSprites == null) { - var30 = WorldMapSection3.archive8; - var34 = class211.spriteIds.headIconsHint; + var30 = WorldMapSection1.archive8; + var34 = Calendar.spriteIds.headIconsHint; if (!SpriteMask.loadSprite(var30, var34, 0)) { var35 = null; } else { @@ -376,8 +376,8 @@ public class class171 { } if (class16.mapMarkerSprites == null) { - var30 = WorldMapSection3.archive8; - var34 = class211.spriteIds.mapMarkers; + var30 = WorldMapSection1.archive8; + var34 = Calendar.spriteIds.mapMarkers; if (!SpriteMask.loadSprite(var30, var34, 0)) { var35 = null; } else { @@ -390,8 +390,8 @@ public class class171 { } if (KeyHandler.crossSprites == null) { - var30 = WorldMapSection3.archive8; - var34 = class211.spriteIds.crosses; + var30 = WorldMapSection1.archive8; + var34 = Calendar.spriteIds.crosses; if (!SpriteMask.loadSprite(var30, var34, 0)) { var35 = null; } else { @@ -404,8 +404,8 @@ public class class171 { } if (class39.mapDotSprites == null) { - var30 = WorldMapSection3.archive8; - var34 = class211.spriteIds.mapDots; + var30 = WorldMapSection1.archive8; + var34 = Calendar.spriteIds.mapDots; if (!SpriteMask.loadSprite(var30, var34, 0)) { var35 = null; } else { @@ -418,8 +418,8 @@ public class class171 { } if (class32.scrollBarSprites == null) { - var30 = WorldMapSection3.archive8; - var34 = class211.spriteIds.scrollBars; + var30 = WorldMapSection1.archive8; + var34 = Calendar.spriteIds.scrollBars; if (!SpriteMask.loadSprite(var30, var34, 0)) { var32 = null; } else { @@ -432,8 +432,8 @@ public class class171 { } if (WorldMapSectionType.modIconSprites == null) { - var30 = WorldMapSection3.archive8; - var34 = class211.spriteIds.modIcons; + var30 = WorldMapSection1.archive8; + var34 = Calendar.spriteIds.modIcons; if (!SpriteMask.loadSprite(var30, var34, 0)) { var32 = null; } else { @@ -465,7 +465,7 @@ public class class171 { Login.Login_loadingText = "Loading textures - 0%"; Login.Login_loadingPercent = 90; } else { - SecureRandomFuture.textureProvider = new TextureProvider(class238.archive9, WorldMapSection3.archive8, 20, 0.8D, Client.isLowDetail ? 64 : 128); + SecureRandomFuture.textureProvider = new TextureProvider(class238.archive9, WorldMapSection1.archive8, 20, 0.8D, Client.isLowDetail ? 64 : 128); Rasterizer3D.Rasterizer3D_setTextureLoader(SecureRandomFuture.textureProvider); Rasterizer3D.Rasterizer3D_setBrightness(0.8D); Client.titleLoadingStage = 100; diff --git a/runescape-client/src/main/java/class196.java b/runescape-client/src/main/java/class196.java index 5931b7aa83..5df771cfd5 100644 --- a/runescape-client/src/main/java/class196.java +++ b/runescape-client/src/main/java/class196.java @@ -18,7 +18,7 @@ public class class196 { garbageValue = "125" ) static int method3736(int var0, Script var1, boolean var2) { - return var0 < 1000 ? Canvas.method861(var0, var1, var2) : (var0 < 1100 ? class1.method8(var0, var1, var2) : (var0 < 1200 ? StructDefinition.method4952(var0, var1, var2) : (var0 < 1300 ? class32.method576(var0, var1, var2) : (var0 < 1400 ? WorldMapAreaData.method710(var0, var1, var2) : (var0 < 1500 ? GrandExchangeOfferNameComparator.method141(var0, var1, var2) : (var0 < 1600 ? WorldMapSectionType.method253(var0, var1, var2) : (var0 < 1700 ? ScriptEvent.method1185(var0, var1, var2) : (var0 < 1800 ? Formatting.method2023(var0, var1, var2) : (var0 < 1900 ? class16.method188(var0, var1, var2) : (var0 < 2000 ? FriendSystem.method1867(var0, var1, var2) : (var0 < 2100 ? class1.method8(var0, var1, var2) : (var0 < 2200 ? StructDefinition.method4952(var0, var1, var2) : (var0 < 2300 ? class32.method576(var0, var1, var2) : (var0 < 2400 ? WorldMapAreaData.method710(var0, var1, var2) : (var0 < 2500 ? GrandExchangeOfferNameComparator.method141(var0, var1, var2) : (var0 < 2600 ? ViewportMouse.method2983(var0, var1, var2) : (var0 < 2700 ? GrandExchangeEvents.method75(var0, var1, var2) : (var0 < 2800 ? GrandExchangeOfferNameComparator.method146(var0, var1, var2) : (var0 < 2900 ? class15.method182(var0, var1, var2) : (var0 < 3000 ? FriendSystem.method1867(var0, var1, var2) : (var0 < 3200 ? class4.method54(var0, var1, var2) : (var0 < 3300 ? GrandExchangeOfferWorldComparator.method68(var0, var1, var2) : (var0 < 3400 ? ScriptEvent.method1187(var0, var1, var2) : (var0 < 3500 ? Formatting.method2022(var0, var1, var2) : (var0 < 3700 ? FontName.method5639(var0, var1, var2) : (var0 < 4000 ? class248.method4741(var0, var1, var2) : (var0 < 4100 ? TextureProvider.method2752(var0, var1, var2) : (var0 < 4200 ? class211.method4103(var0, var1, var2) : (var0 < 4300 ? class1.method16(var0, var1, var2) : (var0 < 5100 ? DynamicObject.method2223(var0, var1, var2) : (var0 < 5400 ? UserComparator4.method3335(var0, var1, var2) : (var0 < 5600 ? GrandExchangeOfferOwnWorldComparator.method1285(var0, var1, var2) : (var0 < 5700 ? Decimator.method2492(var0, var1, var2) : (var0 < 6300 ? class229.method4513(var0, var1, var2) : (var0 < 6600 ? class31.method573(var0, var1, var2) : (var0 < 6700 ? class54.method1093(var0, var1, var2) : 2)))))))))))))))))))))))))))))))))))); + return var0 < 1000 ? Canvas.method861(var0, var1, var2) : (var0 < 1100 ? class1.method8(var0, var1, var2) : (var0 < 1200 ? StructDefinition.method4952(var0, var1, var2) : (var0 < 1300 ? class32.method576(var0, var1, var2) : (var0 < 1400 ? WorldMapAreaData.method710(var0, var1, var2) : (var0 < 1500 ? GrandExchangeOfferNameComparator.method141(var0, var1, var2) : (var0 < 1600 ? WorldMapSectionType.method253(var0, var1, var2) : (var0 < 1700 ? ScriptEvent.method1185(var0, var1, var2) : (var0 < 1800 ? Formatting.method2023(var0, var1, var2) : (var0 < 1900 ? class16.method188(var0, var1, var2) : (var0 < 2000 ? FriendSystem.method1867(var0, var1, var2) : (var0 < 2100 ? class1.method8(var0, var1, var2) : (var0 < 2200 ? StructDefinition.method4952(var0, var1, var2) : (var0 < 2300 ? class32.method576(var0, var1, var2) : (var0 < 2400 ? WorldMapAreaData.method710(var0, var1, var2) : (var0 < 2500 ? GrandExchangeOfferNameComparator.method141(var0, var1, var2) : (var0 < 2600 ? ViewportMouse.method2983(var0, var1, var2) : (var0 < 2700 ? GrandExchangeEvents.method75(var0, var1, var2) : (var0 < 2800 ? GrandExchangeOfferNameComparator.method146(var0, var1, var2) : (var0 < 2900 ? class15.method182(var0, var1, var2) : (var0 < 3000 ? FriendSystem.method1867(var0, var1, var2) : (var0 < 3200 ? class4.method54(var0, var1, var2) : (var0 < 3300 ? GrandExchangeOfferWorldComparator.method68(var0, var1, var2) : (var0 < 3400 ? ScriptEvent.method1187(var0, var1, var2) : (var0 < 3500 ? Formatting.method2022(var0, var1, var2) : (var0 < 3700 ? FontName.method5639(var0, var1, var2) : (var0 < 4000 ? class248.method4741(var0, var1, var2) : (var0 < 4100 ? TextureProvider.method2752(var0, var1, var2) : (var0 < 4200 ? Calendar.method4103(var0, var1, var2) : (var0 < 4300 ? class1.method16(var0, var1, var2) : (var0 < 5100 ? DynamicObject.method2223(var0, var1, var2) : (var0 < 5400 ? UserComparator4.method3335(var0, var1, var2) : (var0 < 5600 ? GrandExchangeOfferOwnWorldComparator.method1285(var0, var1, var2) : (var0 < 5700 ? Decimator.method2492(var0, var1, var2) : (var0 < 6300 ? class229.method4513(var0, var1, var2) : (var0 < 6600 ? class31.method573(var0, var1, var2) : (var0 < 6700 ? class54.method1093(var0, var1, var2) : 2)))))))))))))))))))))))))))))))))))); } @ObfuscatedName("u") diff --git a/runescape-client/src/main/java/class198.java b/runescape-client/src/main/java/class198.java index 362dfec973..8c993792a7 100644 --- a/runescape-client/src/main/java/class198.java +++ b/runescape-client/src/main/java/class198.java @@ -9,6 +9,6 @@ public class class198 { garbageValue = "1713547686" ) static String method3745(Widget var0) { - return class211.method4107(class1.getWidgetClickMask(var0)) == 0 ? null : (var0.spellActionName != null && var0.spellActionName.trim().length() != 0 ? var0.spellActionName : null); + return Calendar.method4107(class1.getWidgetClickMask(var0)) == 0 ? null : (var0.spellActionName != null && var0.spellActionName.trim().length() != 0 ? var0.spellActionName : null); } } diff --git a/runescape-client/src/main/java/class21.java b/runescape-client/src/main/java/class21.java index 6fa1f51396..2b38dda583 100644 --- a/runescape-client/src/main/java/class21.java +++ b/runescape-client/src/main/java/class21.java @@ -1,4 +1,5 @@ import java.util.LinkedList; +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; @@ -59,7 +60,8 @@ public abstract class class21 { @ObfuscatedSignature( signature = "[[[[Lv;" ) - WorldMapDecoration[][][][] field144; + @Export("decorations") + WorldMapDecoration[][][][] decorations; @ObfuscatedName("i") boolean field157; @ObfuscatedName("a") @@ -112,11 +114,11 @@ public abstract class class21 { garbageValue = "-2111523326" ) void method282() { - this.field151 = (short[][][])((short[][][])null); - this.field145 = (short[][][])((short[][][])null); + this.field151 = ((short[][][])null); + this.field145 = ((short[][][])null); this.field154 = ((byte[][][])null); this.field155 = ((byte[][][])null); - this.field144 = (WorldMapDecoration[][][][])((WorldMapDecoration[][][][])null); + this.decorations = ((WorldMapDecoration[][][][])null); this.field157 = false; this.field153 = false; } @@ -183,7 +185,7 @@ public abstract class class21 { for (var8 = 0; var8 < var5; ++var8) { var9 = var3.readUnsignedByte(); if (var9 != 0) { - WorldMapDecoration[] var14 = this.field144[var8][var1][var2] = new WorldMapDecoration[var9]; + WorldMapDecoration[] var14 = this.decorations[var8][var1][var2] = new WorldMapDecoration[var9]; for (var10 = 0; var10 < var9; ++var10) { int var12 = var3.method51(); diff --git a/runescape-client/src/main/java/class238.java b/runescape-client/src/main/java/class238.java index 93abb6d2d3..dd236c8353 100644 --- a/runescape-client/src/main/java/class238.java +++ b/runescape-client/src/main/java/class238.java @@ -226,7 +226,7 @@ public final class class238 { class171.method3494(var22 + 1, var9.id, var9.childIndex, var9.itemId, ""); } else if (var22 == 10) { Player.method1281(); - WorldMapDecoration.method350(var9.id, var9.childIndex, class211.method4107(class1.getWidgetClickMask(var9)), var9.itemId); + WorldMapDecoration.method350(var9.id, var9.childIndex, Calendar.method4107(class1.getWidgetClickMask(var9)), var9.itemId); Client.selectedSpellActionName = class198.method3745(var9); if (Client.selectedSpellActionName == null) { Client.selectedSpellActionName = "null"; @@ -557,7 +557,7 @@ public final class class238 { } if (var9.scrollHeight > var9.height) { - WorldMapSection0.method246(var9, var10 + var9.width, var11, var9.height, var9.scrollHeight, MouseHandler.MouseHandler_x, MouseHandler.MouseHandler_y); + WorldMapSection3.method246(var9, var10 + var9.width, var11, var9.height, var9.scrollHeight, MouseHandler.MouseHandler_x, MouseHandler.MouseHandler_y); } } diff --git a/runescape-client/src/main/java/class306.java b/runescape-client/src/main/java/class306.java index 8d43fd8015..5e43864f4f 100644 --- a/runescape-client/src/main/java/class306.java +++ b/runescape-client/src/main/java/class306.java @@ -58,7 +58,7 @@ public final class class306 { ClientPreferences var1 = new ClientPreferences(); try { - var0 = LoginPacket.getPreferencesFile("", class22.studioGame.name, false); + var0 = LoginPacket.getPreferencesFile("", WorldMapRectangle.studioGame.name, false); byte[] var2 = new byte[(int)var0.length()]; int var3; diff --git a/runescape-client/src/main/java/class32.java b/runescape-client/src/main/java/class32.java index 5bce438bb1..e55e10c7de 100644 --- a/runescape-client/src/main/java/class32.java +++ b/runescape-client/src/main/java/class32.java @@ -28,7 +28,7 @@ public class class32 { var3 = var2 ? WorldMapIcon1.field1030 : GrandExchangeOfferAgeComparator.field1111; } - class22.method295(var3); + WorldMapRectangle.method295(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; diff --git a/runescape-client/src/main/java/class39.java b/runescape-client/src/main/java/class39.java index 36ca69390f..e06fd1e3b0 100644 --- a/runescape-client/src/main/java/class39.java +++ b/runescape-client/src/main/java/class39.java @@ -68,7 +68,7 @@ public class class39 extends class21 { super.field145 = new short[super.field156][64][64]; super.field154 = new byte[super.field156][64][64]; super.field155 = new byte[super.field156][64][64]; - super.field144 = new WorldMapDecoration[super.field156][64][64][]; + super.decorations = new WorldMapDecoration[super.field156][64][64][]; int var2 = var1.readUnsignedByte(); if (var2 != class30.field247.field248) { throw new IllegalStateException(""); diff --git a/runescape-client/src/main/java/class4.java b/runescape-client/src/main/java/class4.java index b23775676d..85b1bbb8a8 100644 --- a/runescape-client/src/main/java/class4.java +++ b/runescape-client/src/main/java/class4.java @@ -1,3 +1,4 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; import net.runelite.rs.ScriptOpcodes; @@ -8,7 +9,8 @@ final class class4 implements class0 { @ObfuscatedSignature( signature = "Lir;" ) - public static AbstractArchive field1158; + @Export("InvDefinition_archive") + public static AbstractArchive InvDefinition_archive; @ObfuscatedName("m") @ObfuscatedSignature( @@ -52,7 +54,7 @@ final class class4 implements class0 { garbageValue = "-843046456" ) public static void method55() { - FloorOverlayDefinition.field664.clear(); + FloorOverlayDefinition.FloorOverlayDefinition_cached.clear(); } @ObfuscatedName("v") @@ -110,7 +112,7 @@ final class class4 implements class0 { if (var0 == ScriptOpcodes.OPPLAYER) { var7 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; var6 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize]; - WorldMapSection2.method583(var7, var6); + WorldMapSection0.method583(var7, var6); return 1; } else if (var0 == ScriptOpcodes.IF_DRAGPICKUP) { RouteStrategy.Interpreter_intStackSize -= 3; @@ -135,7 +137,7 @@ final class class4 implements class0 { return 1; } else if (var0 == ScriptOpcodes.SETREMOVEROOFS) { ReflectionCheck.clientPreferences.roofsHidden = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize] == 1; - WorldMapSection0.savePreferences(); + WorldMapSection3.savePreferences(); return 1; } else { boolean var8; @@ -268,7 +270,7 @@ final class class4 implements class0 { } else if (var0 == ScriptOpcodes.SETHIDEUSERNAME) { var8 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize] == 1; ReflectionCheck.clientPreferences.hideUsername = var8; - WorldMapSection0.savePreferences(); + WorldMapSection3.savePreferences(); return 1; } else if (var0 == ScriptOpcodes.GETHIDEUSERNAME) { Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = ReflectionCheck.clientPreferences.hideUsername ? 1 : 0; @@ -278,7 +280,7 @@ final class class4 implements class0 { Client.Login_isUsernameRemembered = var8; if (!var8) { ReflectionCheck.clientPreferences.rememberedUsername = ""; - WorldMapSection0.savePreferences(); + WorldMapSection3.savePreferences(); } return 1; @@ -291,7 +293,7 @@ final class class4 implements class0 { var8 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize] == 1; if (var8 == ReflectionCheck.clientPreferences.titleMusicDisabled) { ReflectionCheck.clientPreferences.titleMusicDisabled = !var8; - WorldMapSection0.savePreferences(); + WorldMapSection3.savePreferences(); } return 1; diff --git a/runescape-client/src/main/java/class40.java b/runescape-client/src/main/java/class40.java index 5e353ec340..bdb93f4406 100644 --- a/runescape-client/src/main/java/class40.java +++ b/runescape-client/src/main/java/class40.java @@ -31,11 +31,11 @@ public class class40 { signature = "(IIIIIIIIB)V", garbageValue = "125" ) - void method743(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { + void method743(int x, int y, int var3, int var4, int width, int height, int var7, int var8) { if (var7 != 0 && this.field326 != 0 && this.field329 != null) { var8 = this.method744(var8, var7); var7 = this.method774(var7); - Rasterizer2D.raster2d7(var1, var2, var5, var6, var3, var4, this.field329[var7 - 1][var8], this.field326); + Rasterizer2D.raster2d7(x, y, width, height, var3, var4, this.field329[var7 - 1][var8], this.field326); } } @@ -755,7 +755,7 @@ public class class40 { var11 = var19; } - WorldMapSection1.cameraX = var6 - var11; + WorldMapSection2.cameraX = var6 - var11; GrandExchangeEvents.cameraY = var14 - var12; GrandExchangeOfferNameComparator.cameraZ = var15 - var16; WorldMapIcon1.cameraPitch = var4; @@ -779,7 +779,7 @@ public class class40 { var4 = Login.method2061(); } - var13 = WorldMapSection1.cameraX; + var13 = WorldMapSection2.cameraX; var6 = GrandExchangeEvents.cameraY; var14 = GrandExchangeOfferNameComparator.cameraZ; var15 = WorldMapIcon1.cameraPitch; @@ -789,7 +789,7 @@ public class class40 { if (Client.field139[var24]) { var9 = (int)(Math.random() * (double)(Client.field141[var24] * 2 + 1) - (double)Client.field141[var24] + Math.sin((double)Client.field144[var24] * ((double)Client.field143[var24] / 100.0D)) * (double)Client.field142[var24]); if (var24 == 0) { - WorldMapSection1.cameraX += var9; + WorldMapSection2.cameraX += var9; } if (var24 == 1) { @@ -842,7 +842,7 @@ public class class40 { class13.playPcmPlayers(); var10 = Rasterizer3D.Rasterizer3D_zoom; Rasterizer3D.Rasterizer3D_zoom = Client.viewportZoom; - class65.scene.draw(WorldMapSection1.cameraX, GrandExchangeEvents.cameraY, GrandExchangeOfferNameComparator.cameraZ, WorldMapIcon1.cameraPitch, MusicPatchNode.cameraYaw, var4); + class65.scene.draw(WorldMapSection2.cameraX, GrandExchangeEvents.cameraY, GrandExchangeOfferNameComparator.cameraZ, WorldMapIcon1.cameraPitch, MusicPatchNode.cameraYaw, var4); Rasterizer3D.Rasterizer3D_zoom = var10; class13.playPcmPlayers(); class65.scene.clearTempGameObjects(); @@ -864,7 +864,7 @@ public class class40 { Client.field208 = 0; } - WorldMapSection1.cameraX = var13; + WorldMapSection2.cameraX = var13; GrandExchangeEvents.cameraY = var6; GrandExchangeOfferNameComparator.cameraZ = var14; WorldMapIcon1.cameraPitch = var15; diff --git a/runescape-client/src/main/java/class50.java b/runescape-client/src/main/java/class50.java index 1cf6f12438..2320090bd0 100644 --- a/runescape-client/src/main/java/class50.java +++ b/runescape-client/src/main/java/class50.java @@ -213,7 +213,7 @@ public class class50 { ItemDefinition var5 = Skills.getItemDefinition(var4); if ((!var1 || var5.isTradable) && var5.noteTemplate == -1 && var5.name.toLowerCase().indexOf(var0) != -1) { if (var3 >= 250) { - WorldMapSection0.field1055 = -1; + WorldMapSection3.field1055 = -1; AttackOption.field30 = null; return; } @@ -234,10 +234,10 @@ public class class50 { AttackOption.field30 = var2; WorldMapDecorationType.field1139 = 0; - WorldMapSection0.field1055 = var3; - String[] var8 = new String[WorldMapSection0.field1055]; + WorldMapSection3.field1055 = var3; + String[] var8 = new String[WorldMapSection3.field1055]; - for (int var9 = 0; var9 < WorldMapSection0.field1055; ++var9) { + for (int var9 = 0; var9 < WorldMapSection3.field1055; ++var9) { var8[var9] = Skills.getItemDefinition(var2[var9]).name; } diff --git a/runescape-client/src/main/java/class54.java b/runescape-client/src/main/java/class54.java index 7519252f20..cfed70848e 100644 --- a/runescape-client/src/main/java/class54.java +++ b/runescape-client/src/main/java/class54.java @@ -18,7 +18,7 @@ public final class class54 { ) static int method1086(int var0, int var1) { long var2 = (long)((var0 << 16) + var1); - return ModelData0.NetCache_currentResponse != null && var2 == ModelData0.NetCache_currentResponse.key ? class22.NetCache_responseArchiveBuffer.index * 99 / (class22.NetCache_responseArchiveBuffer.array.length - ModelData0.NetCache_currentResponse.padding) + 1 : 0; + return ModelData0.NetCache_currentResponse != null && var2 == ModelData0.NetCache_currentResponse.key ? WorldMapRectangle.NetCache_responseArchiveBuffer.index * 99 / (WorldMapRectangle.NetCache_responseArchiveBuffer.array.length - ModelData0.NetCache_currentResponse.padding) + 1 : 0; } @ObfuscatedName("q") @@ -41,7 +41,7 @@ public final class class54 { if (!Login.worldSelectOpen) { if ((MouseHandler.MouseHandler_lastButton == 1 || !AbstractRasterProvider.mouseCam && MouseHandler.MouseHandler_lastButton == 4) && MouseHandler.MouseHandler_lastPressedX >= Login.xPadding + 765 - 50 && MouseHandler.MouseHandler_lastPressedY >= 453) { ReflectionCheck.clientPreferences.titleMusicDisabled = !ReflectionCheck.clientPreferences.titleMusicDisabled; - WorldMapSection0.savePreferences(); + WorldMapSection3.savePreferences(); if (!ReflectionCheck.clientPreferences.titleMusicDisabled) { class204.method4011(UserComparator3.archive6, "scape main", "", 255, false); } else { @@ -224,7 +224,7 @@ public final class class54 { Client.Login_isUsernameRemembered = !Client.Login_isUsernameRemembered; if (!Client.Login_isUsernameRemembered && ReflectionCheck.clientPreferences.rememberedUsername != null) { ReflectionCheck.clientPreferences.rememberedUsername = null; - WorldMapSection0.savePreferences(); + WorldMapSection3.savePreferences(); } } @@ -239,7 +239,7 @@ public final class class54 { class196.method3740(); } - WorldMapSection0.savePreferences(); + WorldMapSection3.savePreferences(); } while (true) { @@ -927,10 +927,10 @@ public final class class54 { if (var0 == ScriptOpcodes.MEC_TEXT) { var3 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]; var12 = ViewportMouse.getWorldMapElement(var3); - if (var12.field1021 == null) { + if (var12.name == null) { Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = ""; } else { - Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var12.field1021; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var12.name; } return 1; From ad565d399173e2de4a6852dc5eb5dfa2dc3071ce Mon Sep 17 00:00:00 2001 From: Lucas Date: Mon, 8 Jul 2019 22:41:26 +0200 Subject: [PATCH 2/2] more RSClient refactoring --- .../net/runelite/mixins/ClickboxMixin.java | 3 +- .../runelite/mixins/RSRasterizer2DMixin.java | 8 +- .../java/net/runelite/rs/api/RSClient.java | 2 +- .../runelite/rs/api/RSWorldMapManager.java | 2 +- .../src/main/java/AbstractArchive.java | 16 +- .../main/java/AbstractByteArrayCopier.java | 3 +- .../src/main/java/AbstractWorldMapIcon.java | 2 +- runescape-client/src/main/java/Animation.java | 6 +- runescape-client/src/main/java/Archive.java | 44 ++--- .../src/main/java/ArchiveLoader.java | 29 +-- .../src/main/java/AudioFilter.java | 34 ++-- runescape-client/src/main/java/Buffer.java | 74 +++++--- runescape-client/src/main/java/Calendar.java | 2 +- runescape-client/src/main/java/Client.java | 43 ++--- .../src/main/java/ClientParameter.java | 4 +- runescape-client/src/main/java/Decimator.java | 15 +- .../src/main/java/DefaultsGroup.java | 2 +- .../main/java/DevicePcmPlayerProvider.java | 80 ++++---- .../src/main/java/DynamicObject.java | 4 +- runescape-client/src/main/java/Fonts.java | 5 +- runescape-client/src/main/java/Frames.java | 2 +- .../src/main/java/GrandExchangeOffer.java | 2 +- .../GrandExchangeOfferWorldComparator.java | 20 +- .../src/main/java/GroundItemPile.java | 2 +- .../src/main/java/HitSplatDefinition.java | 6 +- .../src/main/java/Instrument.java | 173 +++++++++--------- .../src/main/java/Interpreter.java | 15 +- .../src/main/java/IsaacCipher.java | 156 ++++++++-------- .../src/main/java/ItemContainer.java | 3 +- .../src/main/java/KitDefinition.java | 5 +- .../src/main/java/LoginPacket.java | 9 +- .../src/main/java/LoginScreenAnimation.java | 6 +- .../src/main/java/MidiFileReader.java | 6 +- .../src/main/java/MilliClock.java | 67 +++---- runescape-client/src/main/java/Model.java | 10 +- runescape-client/src/main/java/ModelData.java | 36 ++-- .../src/main/java/MouseHandler.java | 14 -- .../src/main/java/MusicPatch.java | 2 +- .../src/main/java/MusicSample.java | 2 +- .../src/main/java/MusicTrack.java | 8 +- .../src/main/java/NetFileRequest.java | 4 +- .../src/main/java/ObjectDefinition.java | 6 +- .../src/main/java/PacketBuffer.java | 30 +-- .../src/main/java/PacketBufferNode.java | 5 +- .../src/main/java/PacketWriter.java | 2 +- runescape-client/src/main/java/Player.java | 2 +- .../src/main/java/PlayerAppearance.java | 38 ++-- .../src/main/java/Rasterizer2D.java | 8 +- .../src/main/java/Rasterizer3D.java | 4 +- .../src/main/java/RectangleMode.java | 28 +-- .../src/main/java/ServerPacket.java | 2 +- .../src/main/java/SoundCache.java | 8 +- runescape-client/src/main/java/Sprite.java | 16 +- runescape-client/src/main/java/Strings.java | 2 +- .../src/main/java/TextureProvider.java | 6 +- .../src/main/java/UserComparator7.java | 2 +- runescape-client/src/main/java/Varcs.java | 4 +- runescape-client/src/main/java/Varps.java | 4 +- .../src/main/java/ViewportMouse.java | 10 +- .../src/main/java/WallDecoration.java | 2 +- runescape-client/src/main/java/Widget.java | 30 +-- runescape-client/src/main/java/World.java | 5 +- .../src/main/java/WorldMapElement.java | 6 +- .../src/main/java/WorldMapIcon2.java | 3 +- .../src/main/java/WorldMapLabel.java | 2 +- .../src/main/java/WorldMapLabelSize.java | 3 +- .../src/main/java/WorldMapManager.java | 32 ++-- .../src/main/java/WorldMapRectangle.java | 10 +- .../src/main/java/WorldMapSection2.java | 2 +- .../src/main/java/WorldMapSectionType.java | 4 +- runescape-client/src/main/java/class14.java | 4 +- runescape-client/src/main/java/class15.java | 40 ++-- runescape-client/src/main/java/class171.java | 46 ++--- runescape-client/src/main/java/class190.java | 7 +- runescape-client/src/main/java/class204.java | 8 +- runescape-client/src/main/java/class21.java | 22 +-- runescape-client/src/main/java/class226.java | 40 ++-- runescape-client/src/main/java/class238.java | 4 +- runescape-client/src/main/java/class31.java | 6 +- runescape-client/src/main/java/class40.java | 2 +- 80 files changed, 714 insertions(+), 667 deletions(-) diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/ClickboxMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/ClickboxMixin.java index 3bf15193e1..d8cc17ecfd 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/ClickboxMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/ClickboxMixin.java @@ -40,8 +40,7 @@ public abstract class ClickboxMixin implements RSClient return; } - boolean bb = boundingboxCheck(model, _x, _y, _z); - if (!bb) + if (!boundingboxCheck(model, _x, _y, _z)) { return; } diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSRasterizer2DMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSRasterizer2DMixin.java index 8b8c3534e6..0233976309 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/RSRasterizer2DMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSRasterizer2DMixin.java @@ -27,13 +27,13 @@ public abstract class RSRasterizer2DMixin implements RSClient pixels[index] = value & 0x00FFFFFF | outAlpha << 24; } - @Copy("drawGradientAlpha") - private static void rs$raster2d6(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) + @Copy("Rasterizer2D_fillRectangleGradientAlpha") + private static void rs$drawGradientAlpha(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { throw new RuntimeException(); } - @Replace("drawGradientAlpha") + @Replace("Rasterizer2D_fillRectangleGradientAlpha") private static void rl$drawGradientAlpha(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { final int width = client.getGraphicsPixelsWidth(); @@ -45,7 +45,7 @@ public abstract class RSRasterizer2DMixin implements RSClient if (!client.isGpu()) { - rs$raster2d6(var0, var1, var2, var3, var4, var5, var6, var7); + rs$drawGradientAlpha(var0, var1, var2, var3, var4, var5, var6, var7); return; } 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 eba775f70e..88502c4b9c 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 @@ -978,7 +978,7 @@ public interface RSClient extends RSGameShell, Client @Import("Rasterizer2D_drawVerticalLine") void rasterizerDrawVerticalLine(int x, int y, int h, int rgb); - @Import("Rasterizer2D_drawGradient") + @Import("Rasterizer2D_fillRectangleGradient") void rasterizerDrawGradient(int x, int y, int w, int h, int rgbTop, int rgbBottom); @Import("Rasterizer2D_fillRectangleAlpha") diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSWorldMapManager.java b/runescape-api/src/main/java/net/runelite/rs/api/RSWorldMapManager.java index 9a534ce187..ec78157ef3 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSWorldMapManager.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSWorldMapManager.java @@ -5,7 +5,7 @@ import net.runelite.mapping.Import; public interface RSWorldMapManager extends WorldMapManager { - @Import("isLoaded0") + @Import("isLoaded") @Override boolean isLoaded(); diff --git a/runescape-client/src/main/java/AbstractArchive.java b/runescape-client/src/main/java/AbstractArchive.java index 198880b6ba..8c9bc68e6f 100644 --- a/runescape-client/src/main/java/AbstractArchive.java +++ b/runescape-client/src/main/java/AbstractArchive.java @@ -97,9 +97,9 @@ public abstract class AbstractArchive { @Export("shallowFiles") boolean shallowFiles; - AbstractArchive(boolean var1, boolean var2) { - this.releaseGroups = var1; - this.shallowFiles = var2; + AbstractArchive(boolean releaseGroups, boolean shallowFiles) { + this.releaseGroups = releaseGroups; + this.shallowFiles = shallowFiles; } @ObfuscatedName("m") @@ -446,8 +446,9 @@ public abstract class AbstractArchive { signature = "(II)I", garbageValue = "1178362496" ) - public int method4(int var1) { - return this.files[var1].length; + @Export("getGroupFileCount") + public int getGroupFileCount(int group) { + return this.files[group].length; } @ObfuscatedName("t") @@ -455,7 +456,8 @@ public abstract class AbstractArchive { signature = "(I)I", garbageValue = "1702434573" ) - public int method5() { + @Export("getGroupCount") + public int getGroupCount() { return this.files.length; } @@ -751,7 +753,7 @@ public abstract class AbstractArchive { if (Client.archiveLoaders != null && Client.archiveLoaderArchive < Client.archiveLoaders.size()) { while (Client.archiveLoaderArchive < Client.archiveLoaders.size()) { ArchiveLoader var0 = (ArchiveLoader)Client.archiveLoaders.get(Client.archiveLoaderArchive); - if (!var0.method134()) { + if (!var0.isLoaded()) { return false; } diff --git a/runescape-client/src/main/java/AbstractByteArrayCopier.java b/runescape-client/src/main/java/AbstractByteArrayCopier.java index 509818dd92..94a019905b 100644 --- a/runescape-client/src/main/java/AbstractByteArrayCopier.java +++ b/runescape-client/src/main/java/AbstractByteArrayCopier.java @@ -13,7 +13,8 @@ public abstract class AbstractByteArrayCopier { @ObfuscatedSignature( signature = "Lit;" ) - static Archive field0; + @Export("archive20") + static Archive archive20; @ObfuscatedName("m") @ObfuscatedSignature( diff --git a/runescape-client/src/main/java/AbstractWorldMapIcon.java b/runescape-client/src/main/java/AbstractWorldMapIcon.java index 6fb6f20059..1c881a4b02 100644 --- a/runescape-client/src/main/java/AbstractWorldMapIcon.java +++ b/runescape-client/src/main/java/AbstractWorldMapIcon.java @@ -169,6 +169,6 @@ public abstract class AbstractWorldMapIcon { static void method625(Archive var0, String var1) { ArchiveLoader var2 = new ArchiveLoader(var0, var1); Client.archiveLoaders.add(var2); - Client.field140 += var2.field408; + Client.field140 += var2.groupCount; } } diff --git a/runescape-client/src/main/java/Animation.java b/runescape-client/src/main/java/Animation.java index da9442b259..ee445af99c 100644 --- a/runescape-client/src/main/java/Animation.java +++ b/runescape-client/src/main/java/Animation.java @@ -79,19 +79,19 @@ public class Animation { } if ((var9 & 1) != 0) { - field27[var7] = var4.method47(); + field27[var7] = var4.readShortSmart(); } else { field27[var7] = var11; } if ((var9 & 2) != 0) { - field28[var7] = var4.method47(); + field28[var7] = var4.readShortSmart(); } else { field28[var7] = var11; } if ((var9 & 4) != 0) { - field29[var7] = var4.method47(); + field29[var7] = var4.readShortSmart(); } else { field29[var7] = var11; } diff --git a/runescape-client/src/main/java/Archive.java b/runescape-client/src/main/java/Archive.java index 11542e7c7b..72a68414b8 100644 --- a/runescape-client/src/main/java/Archive.java +++ b/runescape-client/src/main/java/Archive.java @@ -57,14 +57,14 @@ public class Archive extends AbstractArchive { @ObfuscatedSignature( signature = "(Lff;Lff;IZZZ)V" ) - public Archive(ArchiveDisk var1, ArchiveDisk var2, int var3, boolean var4, boolean var5, boolean var6) { - super(var4, var5); + public Archive(ArchiveDisk archiveDisk, ArchiveDisk masterDisk, int index, boolean releaseGroups, boolean shallowFiles, boolean var6) { + super(releaseGroups, shallowFiles); this.field403 = false; this.field404 = false; this.field405 = -1; - this.archiveDisk = var1; - this.masterDisk = var2; - this.index = var3; + this.archiveDisk = archiveDisk; + this.masterDisk = masterDisk; + this.index = index; this.field404 = var6; int var7 = this.index; if (Players.NetCache_reference != null) { @@ -240,26 +240,26 @@ public class Archive extends AbstractArchive { garbageValue = "-2045340856" ) @Export("load") - void load(ArchiveDisk var1, int var2, byte[] var3, boolean var4) { + void load(ArchiveDisk var1, int group, byte[] data, boolean var4) { int var5; if (var1 == this.masterDisk) { if (this.field403) { throw new RuntimeException(); } - if (var3 == null) { + if (data == null) { PacketBuffer.requestNetFile(this, 255, this.index, this.indexCrc, (byte)0, true); } else { Archive_crc.reset(); - Archive_crc.update(var3, 0, var3.length); + Archive_crc.update(data, 0, data.length); var5 = (int)Archive_crc.getValue(); if (var5 != this.indexCrc) { PacketBuffer.requestNetFile(this, 255, this.index, this.indexCrc, (byte)0, true); } else { - Buffer var6 = new Buffer(Strings.decompressBytes(var3)); + Buffer var6 = new Buffer(Strings.decompressBytes(data)); int var7 = var6.readUnsignedByte(); if (var7 != 5 && var7 != 6) { - throw new RuntimeException(var7 + "," + this.index + "," + var2); + throw new RuntimeException(var7 + "," + this.index + "," + group); } int var8 = 0; @@ -270,36 +270,36 @@ public class Archive extends AbstractArchive { if (var8 != this.indexVersion) { PacketBuffer.requestNetFile(this, 255, this.index, this.indexCrc, (byte)0, true); } else { - this.decodeIndex(var3); + this.decodeIndex(data); this.loadAllLocal(); } } } } else { - if (!var4 && var2 == this.field405) { + if (!var4 && group == this.field405) { this.field403 = true; } - if (var3 != null && var3.length > 2) { + if (data != null && data.length > 2) { Archive_crc.reset(); - Archive_crc.update(var3, 0, var3.length - 2); + Archive_crc.update(data, 0, data.length - 2); var5 = (int)Archive_crc.getValue(); - int var9 = ((var3[var3.length - 2] & 255) << 8) + (var3[var3.length - 1] & 255); - if (var5 == super.groupCrcs[var2] && var9 == super.groupVersions[var2]) { - this.validGroups[var2] = true; + int var9 = ((data[data.length - 2] & 255) << 8) + (data[data.length - 1] & 255); + if (var5 == super.groupCrcs[group] && var9 == super.groupVersions[group]) { + this.validGroups[group] = true; if (var4) { - super.groups[var2] = Projectile.byteArrayToObject(var3, false); + super.groups[group] = Projectile.byteArrayToObject(data, false); } } else { - this.validGroups[var2] = false; + this.validGroups[group] = false; if (this.field404 || var4) { - PacketBuffer.requestNetFile(this, this.index, var2, super.groupCrcs[var2], (byte)2, var4); + PacketBuffer.requestNetFile(this, this.index, group, super.groupCrcs[group], (byte)2, var4); } } } else { - this.validGroups[var2] = false; + this.validGroups[group] = false; if (this.field404 || var4) { - PacketBuffer.requestNetFile(this, this.index, var2, super.groupCrcs[var2], (byte)2, var4); + PacketBuffer.requestNetFile(this, this.index, group, super.groupCrcs[group], (byte)2, var4); } } } diff --git a/runescape-client/src/main/java/ArchiveLoader.java b/runescape-client/src/main/java/ArchiveLoader.java index 266e415c5b..6459f155c2 100644 --- a/runescape-client/src/main/java/ArchiveLoader.java +++ b/runescape-client/src/main/java/ArchiveLoader.java @@ -38,20 +38,22 @@ public class ArchiveLoader { @ObfuscatedGetter( intValue = 1459455501 ) - final int field408; + @Export("groupCount") + final int groupCount; @ObfuscatedName("w") @ObfuscatedGetter( intValue = 782003089 ) - int field409; + @Export("loadedCount") + int loadedCount; @ObfuscatedSignature( signature = "(Lit;Ljava/lang/String;)V" ) - ArchiveLoader(Archive var1, String var2) { - this.field409 = 0; - this.archive = var1; - this.field408 = var1.method5(); + ArchiveLoader(Archive archive, String name) { + this.loadedCount = 0; + this.archive = archive; + this.groupCount = archive.getGroupCount(); } @ObfuscatedName("m") @@ -59,16 +61,17 @@ public class ArchiveLoader { signature = "(I)Z", garbageValue = "1352221725" ) - boolean method134() { - this.field409 = 0; + @Export("isLoaded") + boolean isLoaded() { + this.loadedCount = 0; - for (int var1 = 0; var1 < this.field408; ++var1) { + for (int var1 = 0; var1 < this.groupCount; ++var1) { if (!this.archive.method133(var1) || this.archive.method132(var1)) { - ++this.field409; + ++this.loadedCount; } } - return this.field409 >= this.field408; + return this.loadedCount >= this.groupCount; } @ObfuscatedName("x") @@ -147,8 +150,8 @@ public class ArchiveLoader { } Rasterizer2D.Rasterizer2D_fillRectangle(Login.xPadding, 23, 765, 480, 0); - Rasterizer2D.Rasterizer2D_drawGradient(Login.xPadding, 0, 125, 23, 0xbd9839, 0x8b6608); - Rasterizer2D.Rasterizer2D_drawGradient(Login.xPadding + 125, 0, 640, 23, 0x4f4f4f, 0x292929); + Rasterizer2D.Rasterizer2D_fillRectangleGradient(Login.xPadding, 0, 125, 23, 0xbd9839, 0x8b6608); + Rasterizer2D.Rasterizer2D_fillRectangleGradient(Login.xPadding + 125, 0, 640, 23, 0x4f4f4f, 0x292929); var0.drawCentered("Select a world", Login.xPadding + 62, 15, 0, -1); if (UrlRequest.worldSelectStars != null) { UrlRequest.worldSelectStars[1].drawAt(Login.xPadding + 140, 1); diff --git a/runescape-client/src/main/java/AudioFilter.java b/runescape-client/src/main/java/AudioFilter.java index db956f6e44..c39825230b 100644 --- a/runescape-client/src/main/java/AudioFilter.java +++ b/runescape-client/src/main/java/AudioFilter.java @@ -8,13 +8,13 @@ public class AudioFilter { @ObfuscatedName("u") static float[][] field32; @ObfuscatedName("g") - static int[][] field33; + static int[][] coefficients; @ObfuscatedName("l") static float field34; @ObfuscatedName("e") - static int field35; + static int forwardMultiplier; @ObfuscatedName("m") - int[] field36; + int[] pairs; @ObfuscatedName("q") int[][][] field37; @ObfuscatedName("w") @@ -23,7 +23,7 @@ public class AudioFilter { int[] field39; AudioFilter() { - this.field36 = new int[2]; + this.pairs = new int[2]; this.field37 = new int[2][2][4]; this.field38 = new int[2][2][4]; this.field39 = new int[2]; @@ -44,16 +44,16 @@ public class AudioFilter { } @ObfuscatedName("w") - int method26(int var1, float var2) { + int compute(int var1, float var2) { float var3; if (var1 == 0) { var3 = (float)this.field39[0] + (float)(this.field39[1] - this.field39[0]) * var2; var3 *= 0.0030517578F; field34 = (float)Math.pow(0.1D, (double)(var3 / 20.0F)); - field35 = (int)(field34 * 65536.0F); + forwardMultiplier = (int)(field34 * 65536.0F); } - if (this.field36[var1] == 0) { + if (this.pairs[var1] == 0) { return 0; } else { var3 = this.method24(var1, 0, var2); @@ -62,7 +62,7 @@ public class AudioFilter { float[] var4; int var5; - for (var5 = 1; var5 < this.field36[var1]; ++var5) { + for (var5 = 1; var5 < this.pairs[var1]; ++var5) { var3 = this.method24(var1, var5, var2); float var6 = -2.0F * var3 * (float)Math.cos((double)this.method25(var1, var5, var2)); float var7 = var3 * var3; @@ -81,17 +81,17 @@ public class AudioFilter { } if (var1 == 0) { - for (var5 = 0; var5 < this.field36[0] * 2; ++var5) { + for (var5 = 0; var5 < this.pairs[0] * 2; ++var5) { var4 = field32[0]; var4[var5] *= field34; } } - for (var5 = 0; var5 < this.field36[var1] * 2; ++var5) { - field33[var1][var5] = (int)(field32[var1][var5] * 65536.0F); + for (var5 = 0; var5 < this.pairs[var1] * 2; ++var5) { + coefficients[var1][var5] = (int)(field32[var1][var5] * 65536.0F); } - return this.field36[var1] * 2; + return this.pairs[var1] * 2; } } @@ -101,8 +101,8 @@ public class AudioFilter { ) final void method27(Buffer var1, SoundEnvelope var2) { int var3 = var1.readUnsignedByte(); - this.field36[0] = var3 >> 4; - this.field36[1] = var3 & 15; + this.pairs[0] = var3 >> 4; + this.pairs[1] = var3 & 15; if (var3 != 0) { this.field39[0] = var1.readUnsignedShort(); this.field39[1] = var1.readUnsignedShort(); @@ -111,14 +111,14 @@ public class AudioFilter { int var5; int var6; for (var5 = 0; var5 < 2; ++var5) { - for (var6 = 0; var6 < this.field36[var5]; ++var6) { + for (var6 = 0; var6 < this.pairs[var5]; ++var6) { this.field37[var5][0][var6] = var1.readUnsignedShort(); this.field38[var5][0][var6] = var1.readUnsignedShort(); } } for (var5 = 0; var5 < 2; ++var5) { - for (var6 = 0; var6 < this.field36[var5]; ++var6) { + for (var6 = 0; var6 < this.pairs[var5]; ++var6) { if ((var4 & 1 << var5 * 4 << var6) != 0) { this.field37[var5][1][var6] = var1.readUnsignedShort(); this.field38[var5][1][var6] = var1.readUnsignedShort(); @@ -148,6 +148,6 @@ public class AudioFilter { static { field32 = new float[2][8]; - field33 = new int[2][8]; + coefficients = new int[2][8]; } } diff --git a/runescape-client/src/main/java/Buffer.java b/runescape-client/src/main/java/Buffer.java index 950ee61a8c..ec0ccb5661 100644 --- a/runescape-client/src/main/java/Buffer.java +++ b/runescape-client/src/main/java/Buffer.java @@ -9,9 +9,11 @@ import net.runelite.mapping.ObfuscatedSignature; @Implements("Buffer") public class Buffer extends Node { @ObfuscatedName("q") - static int[] field45; + @Export("crc32Table") + static int[] crc32Table; @ObfuscatedName("o") - static long[] field46; + @Export("crc64Table") + static long[] crc64Table; @ObfuscatedName("m") @Export("array") public byte[] array; @@ -163,7 +165,8 @@ public class Buffer extends Node { signature = "(Ljava/lang/CharSequence;B)V", garbageValue = "58" ) - public void method37(CharSequence var1) { + @Export("writeCESU8") + public void writeCESU8(CharSequence var1) { int var2 = var1.length(); int var3 = 0; @@ -179,7 +182,7 @@ public class Buffer extends Node { } this.array[++this.index - 1] = 0; - this.method42(var3); + this.writeVarInt(var3); this.index += class16.method190(this.array, this.index, var1); } @@ -188,9 +191,10 @@ public class Buffer extends Node { signature = "([BIII)V", garbageValue = "-1915344405" ) - public void method38(byte[] var1, int var2, int var3) { - for (int var4 = var2; var4 < var3 + var2; ++var4) { - this.array[++this.index - 1] = var1[var4]; + @Export("writeBytes") + public void writeBytes(byte[] bytes, int startIdx, int endIdx) { + for (int var4 = startIdx; var4 < endIdx + startIdx; ++var4) { + this.array[++this.index - 1] = bytes[var4]; } } @@ -200,7 +204,8 @@ public class Buffer extends Node { signature = "(II)V", garbageValue = "-225163682" ) - public void method39(int var1) { + @Export("writeLengthInt") + public void writeLengthInt(int var1) { this.array[this.index - var1 - 4] = (byte)(var1 >> 24); this.array[this.index - var1 - 3] = (byte)(var1 >> 16); this.array[this.index - var1 - 2] = (byte)(var1 >> 8); @@ -212,7 +217,8 @@ public class Buffer extends Node { signature = "(II)V", garbageValue = "-1298210761" ) - public void method40(int var1) { + @Export("writeLengthShort") + public void writeLengthShort(int var1) { this.array[this.index - var1 - 2] = (byte)(var1 >> 8); this.array[this.index - var1 - 1] = (byte)var1; } @@ -222,7 +228,8 @@ public class Buffer extends Node { signature = "(II)V", garbageValue = "-1839722163" ) - public void method41(int var1) { + @Export("writeLengthByte") + public void writeLengthByte(int var1) { this.array[this.index - var1 - 1] = (byte)var1; } @@ -250,7 +257,8 @@ public class Buffer extends Node { signature = "(II)V", garbageValue = "820873705" ) - public void method42(int var1) { + @Export("writeVarInt") + public void writeVarInt(int var1) { if ((var1 & -128) != 0) { if ((var1 & -16384) != 0) { if ((var1 & -2097152) != 0) { @@ -306,7 +314,8 @@ public class Buffer extends Node { signature = "(B)I", garbageValue = "1" ) - public int method44() { + @Export("readShort") + public int readShort() { this.index += 2; int var1 = (this.array[this.index - 1] & 255) + ((this.array[this.index - 2] & 255) << 8); if (var1 > 32767) { @@ -417,12 +426,13 @@ public class Buffer extends Node { signature = "(B)Ljava/lang/String;", garbageValue = "-14" ) - public String method45() { + @Export("readCESU8") + public String readCESU8() { byte var1 = this.array[++this.index - 1]; if (var1 != 0) { throw new IllegalStateException(""); } else { - int var2 = this.method52(); + int var2 = this.readVarInt(); if (var2 + this.index > this.array.length) { throw new IllegalStateException(""); } else { @@ -489,7 +499,8 @@ public class Buffer extends Node { signature = "([BIIB)V", garbageValue = "-122" ) - public void method46(byte[] var1, int var2, int var3) { + @Export("readBytes") + public void readBytes(byte[] var1, int var2, int var3) { for (int var4 = var2; var4 < var3 + var2; ++var4) { var1[var4] = this.array[++this.index - 1]; } @@ -501,7 +512,8 @@ public class Buffer extends Node { signature = "(B)I", garbageValue = "-24" ) - public int method47() { + @Export("readShortSmart") + public int readShortSmart() { int var1 = this.array[this.index] & 255; return var1 < 128 ? this.readUnsignedByte() - 64 : this.readUnsignedShort() - 49152; } @@ -511,7 +523,8 @@ public class Buffer extends Node { signature = "(I)I", garbageValue = "1370512869" ) - public int method48() { + @Export("readUShortSmart") + public int readUShortSmart() { int var1 = this.array[this.index] & 255; return var1 < 128 ? this.readUnsignedByte() : this.readUnsignedShort() - 32768; } @@ -525,7 +538,7 @@ public class Buffer extends Node { int var1 = 0; int var2; - for (var2 = this.method48(); var2 == 32767; var2 = this.method48()) { + for (var2 = this.readUShortSmart(); var2 == 32767; var2 = this.readUShortSmart()) { var1 += 32767; } @@ -561,7 +574,8 @@ public class Buffer extends Node { signature = "(I)I", garbageValue = "984135559" ) - public int method52() { + @Export("readVarInt") + public int readVarInt() { byte var1 = this.array[++this.index - 1]; int var2; @@ -698,13 +712,13 @@ public class Buffer extends Node { int var3 = this.index; this.index = 0; byte[] var4 = new byte[var3]; - this.method46(var4, 0, var3); + this.readBytes(var4, 0, var3); BigInteger var5 = new BigInteger(var4); BigInteger var6 = var5.modPow(var1, var2); byte[] var7 = var6.toByteArray(); this.index = 0; this.writeShort(var7.length); - this.method38(var7, 0, var7.length); + this.writeBytes(var7, 0, var7.length); } @ObfuscatedName("aa") @@ -712,13 +726,14 @@ public class Buffer extends Node { signature = "(II)I", garbageValue = "-484928770" ) - public int method53(int var1) { + @Export("writeCrc") + public int writeCrc(int var1) { byte[] var2 = this.array; int var3 = this.index; int var4 = -1; for (int var5 = var1; var5 < var3; ++var5) { - var4 = var4 >>> 8 ^ field45[(var4 ^ var2[var5]) & 255]; + var4 = var4 >>> 8 ^ crc32Table[(var4 ^ var2[var5]) & 255]; } var4 = ~var4; @@ -731,7 +746,8 @@ public class Buffer extends Node { signature = "(B)Z", garbageValue = "-11" ) - public boolean method54() { + @Export("checkCrc") + public boolean checkCrc() { this.index -= 4; byte[] var1 = this.array; int var2 = this.index; @@ -739,7 +755,7 @@ public class Buffer extends Node { int var4; for (var4 = 0; var4 < var2; ++var4) { - var3 = var3 >>> 8 ^ field45[(var3 ^ var1[var4]) & 255]; + var3 = var3 >>> 8 ^ crc32Table[(var3 ^ var1[var4]) & 255]; } var3 = ~var3; @@ -1023,7 +1039,7 @@ public class Buffer extends Node { } static { - field45 = new int[256]; + crc32Table = new int[256]; int var0; for (int var1 = 0; var1 < 256; ++var1) { @@ -1037,10 +1053,10 @@ public class Buffer extends Node { } } - field45[var1] = var2; + crc32Table[var1] = var2; } - field46 = new long[256]; + crc64Table = new long[256]; for (var0 = 0; var0 < 256; ++var0) { long var4 = (long)var0; @@ -1053,7 +1069,7 @@ public class Buffer extends Node { } } - field46[var0] = var4; + crc64Table[var0] = var4; } } diff --git a/runescape-client/src/main/java/Calendar.java b/runescape-client/src/main/java/Calendar.java index 0d00a8f7fa..cb8ef7e634 100644 --- a/runescape-client/src/main/java/Calendar.java +++ b/runescape-client/src/main/java/Calendar.java @@ -74,7 +74,7 @@ public class Calendar { var6 = Interpreter.Interpreter_calendar.get(5); int var15 = Interpreter.Interpreter_calendar.get(2); int var16 = Interpreter.Interpreter_calendar.get(1); - Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6 + "-" + Interpreter.field422[var15] + "-" + var16; + Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6 + "-" + Interpreter.Interpreter_MONTHS[var15] + "-" + var16; return 1; } else if (var0 != ScriptOpcodes.TEXT_GENDER) { if (var0 == ScriptOpcodes.TOSTRING) { diff --git a/runescape-client/src/main/java/Client.java b/runescape-client/src/main/java/Client.java index 8a104b9752..86bf250252 100644 --- a/runescape-client/src/main/java/Client.java +++ b/runescape-client/src/main/java/Client.java @@ -236,7 +236,8 @@ public final class Client extends GameShell implements Usernamed { @ObfuscatedSignature( signature = "Lhi;" ) - static PlayerAppearance field119; + @Export("playerAppearance") + static PlayerAppearance playerAppearance; @ObfuscatedName("qa") @ObfuscatedGetter( intValue = -1481002083 @@ -1518,7 +1519,7 @@ public final class Client extends GameShell implements Usernamed { var10 = 0; while (true) { - var11 = var26.method48(); + var11 = var26.readUShortSmart(); if (var11 == 0) { break; } @@ -2499,9 +2500,9 @@ public final class Client extends GameShell implements Usernamed { var31 = var15.readStringCp1252NullCircumfixed(); } } else { - var30 = var15.method45(); + var30 = var15.readCESU8(); if (var11 == 1) { - var31 = var15.method45(); + var31 = var15.readCESU8(); } } @@ -3321,7 +3322,7 @@ public final class Client extends GameShell implements Usernamed { var8.packetBuffer.writeInt(180); var8.packetBuffer.writeInt(1); var8.packetBuffer.writeByte(clientType); - var8.packetBuffer.method38(var6.array, 0, var6.index); + var8.packetBuffer.writeBytes(var6.array, 0, var6.index); int var10 = var8.packetBuffer.index; var8.packetBuffer.writeStringCp1252NullTerminated(Login.Login_username); var8.packetBuffer.writeByte((isResizable ? 1 : 0) << 1 | (isLowDetail ? 1 : 0)); @@ -3332,7 +3333,7 @@ public final class Client extends GameShell implements Usernamed { var8.packetBuffer.writeInt(AbstractArchive.field2); Buffer var11 = new Buffer(WorldMapLabelSize.platformInfo.size()); WorldMapLabelSize.platformInfo.write(var11); - var8.packetBuffer.method38(var11.array, 0, var11.array.length); + var8.packetBuffer.writeBytes(var11.array, 0, var11.array.length); var8.packetBuffer.writeByte(clientType); var8.packetBuffer.writeInt(0); var8.packetBuffer.writeInt(AbstractArchive.archive0.hash); @@ -3352,12 +3353,12 @@ public final class Client extends GameShell implements Usernamed { var8.packetBuffer.writeInt(class2.archive14.hash); var8.packetBuffer.writeInt(WorldMapSection2.archive15.hash); var8.packetBuffer.writeInt(0); - var8.packetBuffer.writeInt(WorldMapRectangle.archive16.hash); - var8.packetBuffer.writeInt(WorldMapLabelSize.field1040.hash); - var8.packetBuffer.writeInt(ItemContainer.field434.hash); - var8.packetBuffer.writeInt(AbstractByteArrayCopier.field0.hash); + var8.packetBuffer.writeInt(WorldMapRectangle.archive17.hash); + var8.packetBuffer.writeInt(WorldMapLabelSize.archive18.hash); + var8.packetBuffer.writeInt(ItemContainer.archive19.hash); + var8.packetBuffer.writeInt(AbstractByteArrayCopier.archive20.hash); var8.packetBuffer.xteaEncrypt(var7, var10, var8.packetBuffer.index); - var8.packetBuffer.method40(var8.packetBuffer.index - var9); + var8.packetBuffer.writeLengthShort(var8.packetBuffer.index - var9); packetWriter.method241(var8); packetWriter.method240(); packetWriter.isaacCipher = new IsaacCipher(var7); @@ -3650,7 +3651,7 @@ public final class Client extends GameShell implements Usernamed { var6.packetBuffer.writeByte(0); var7 = var6.packetBuffer.index; timer.write(var6.packetBuffer); - var6.packetBuffer.method41(var6.packetBuffer.index - var7); + var6.packetBuffer.writeLengthByte(var6.packetBuffer.index - var7); packetWriter.method241(var6); timer.method333(); } @@ -3746,7 +3747,7 @@ public final class Client extends GameShell implements Usernamed { } if (var5 != null) { - var5.packetBuffer.method41(var5.packetBuffer.index - var4); + var5.packetBuffer.writeLengthByte(var5.packetBuffer.index - var4); var12 = var5.packetBuffer.index; var5.packetBuffer.index = var4; var5.packetBuffer.writeByte(var10 / var11); @@ -3815,7 +3816,7 @@ public final class Client extends GameShell implements Usernamed { var6.packetBuffer.writeMedium((int)var21); } - var6.packetBuffer.method40(var6.packetBuffer.index - var7); + var6.packetBuffer.writeLengthShort(var6.packetBuffer.index - var7); packetWriter.method241(var6); } @@ -4267,7 +4268,7 @@ public final class Client extends GameShell implements Usernamed { var5.packetBuffer.writeByte(0); var4 = var5.packetBuffer.index; WorldMapLabel.method443(var5.packetBuffer); - var5.packetBuffer.method41(var5.packetBuffer.index - var4); + var5.packetBuffer.writeLengthByte(var5.packetBuffer.index - var4); packetWriter.method241(var5); } } @@ -4628,7 +4629,7 @@ public final class Client extends GameShell implements Usernamed { Widget var8; if (ServerPacket.field850 == var1.serverPacket0) { - var38 = var3.method44(); + var38 = var3.readShort(); var6 = var3.method73(); var8 = Huffman.getWidget(var6); if (var38 != var8.sequenceId || var38 == -1) { @@ -4969,7 +4970,7 @@ public final class Client extends GameShell implements Usernamed { String var17; boolean var18; if (ServerPacket.field792 == var1.serverPacket0) { - var38 = var3.method48(); + var38 = var3.readUShortSmart(); var14 = var3.readUnsignedByte() == 1; var17 = ""; var18 = false; @@ -5142,7 +5143,7 @@ public final class Client extends GameShell implements Usernamed { } for (; var3.index < var1.serverPacket0Length; WorldMapManager.itemContainerSetItem(var6, var10, var11 - 1, var12)) { - var10 = var3.method48(); + var10 = var3.readUShortSmart(); var11 = var3.readUnsignedShort(); var12 = 0; if (var11 != 0) { @@ -5502,7 +5503,7 @@ public final class Client extends GameShell implements Usernamed { if (ServerPacket.field846 == var1.serverPacket0) { var3.index += 28; - if (var3.method54()) { + if (var3.checkCrc()) { class234.method4535(var3, var3.index - 28); } @@ -5546,7 +5547,7 @@ public final class Client extends GameShell implements Usernamed { if (ServerPacket.field860 == var1.serverPacket0) { GrandExchangeOfferAgeComparator.method159(); - weight = var3.method44(); + weight = var3.readShort(); field124 = cycleCntr; var1.serverPacket0 = null; return true; @@ -6528,7 +6529,7 @@ public final class Client extends GameShell implements Usernamed { viewportWidth = 0; viewportHeight = 0; viewportZoom = 0; - field119 = new PlayerAppearance(); + playerAppearance = new PlayerAppearance(); field118 = -1; field120 = -1; platformInfoProvider = new DesktopPlatformInfoProvider(); diff --git a/runescape-client/src/main/java/ClientParameter.java b/runescape-client/src/main/java/ClientParameter.java index 3ca51f2f48..85eddcd51d 100644 --- a/runescape-client/src/main/java/ClientParameter.java +++ b/runescape-client/src/main/java/ClientParameter.java @@ -145,10 +145,10 @@ public class ClientParameter { var2.host = var1.readStringCp1252NullTerminated(); var2.activity = var1.readStringCp1252NullTerminated(); var2.location = var1.readUnsignedByte(); - var2.population = var1.method44(); + var2.population = var1.readShort(); } - MilliClock.method3400(ItemContainer.worlds, 0, ItemContainer.worlds.length - 1, World.sortOption1, World.sortOption2); + MilliClock.sortWorlds(ItemContainer.worlds, 0, ItemContainer.worlds.length - 1, World.sortOption1, World.sortOption2); FriendLoginUpdate.field356 = null; return true; } diff --git a/runescape-client/src/main/java/Decimator.java b/runescape-client/src/main/java/Decimator.java index 4e4e0739db..3a8f3dd9e9 100644 --- a/runescape-client/src/main/java/Decimator.java +++ b/runescape-client/src/main/java/Decimator.java @@ -172,7 +172,8 @@ public class Decimator { signature = "(Ldu;IIII)Z", garbageValue = "555449756" ) - static final boolean method2491(Model var0, int var1, int var2, int var3) { + @Export("boundingBoxCheck") + static final boolean boundingBoxCheck(Model model, int x, int y, int z) { boolean var4 = ViewportMouse.ViewportMouse_isInViewport; if (!var4) { return false; @@ -219,12 +220,12 @@ public class Decimator { class248.field1142 = Math.abs(Skeleton.field874); } - var5 = var0.xMid + var1; - var6 = var2 + var0.yMid; - var7 = var3 + var0.zMid; - var8 = var0.xMidOffset; - var12 = var0.yMidOffset; - var13 = var0.zMidOffset; + var5 = model.xMid + x; + var6 = y + model.yMid; + var7 = z + model.zMid; + var8 = model.xMidOffset; + var12 = model.yMidOffset; + var13 = model.zMidOffset; var9 = AccessFile.field7 - var5; var10 = ViewportMouse.field951 - var6; var11 = ViewportMouse.field952 - var7; diff --git a/runescape-client/src/main/java/DefaultsGroup.java b/runescape-client/src/main/java/DefaultsGroup.java index 4ef75cf266..03f11c56c7 100644 --- a/runescape-client/src/main/java/DefaultsGroup.java +++ b/runescape-client/src/main/java/DefaultsGroup.java @@ -35,7 +35,7 @@ public class DefaultsGroup { garbageValue = "-2017595575" ) public static RectangleMode[] method5822() { - return new RectangleMode[]{RectangleMode.field758, RectangleMode.field757, RectangleMode.field759}; + return new RectangleMode[]{RectangleMode.GRADIENT_COLOR, RectangleMode.SOLID, RectangleMode.GRADIENT_ALPHA}; } static { diff --git a/runescape-client/src/main/java/DevicePcmPlayerProvider.java b/runescape-client/src/main/java/DevicePcmPlayerProvider.java index 292829e300..86dcbb5f66 100644 --- a/runescape-client/src/main/java/DevicePcmPlayerProvider.java +++ b/runescape-client/src/main/java/DevicePcmPlayerProvider.java @@ -150,13 +150,13 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { garbageValue = "-1516599170" ) @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_method1(); + static final void drawInterface(Widget[] components, int interfaceID, int xStart, int yStart, int xEnd, int yEnd, int var6, int var7, int var8) { + Rasterizer2D.Rasterizer2D_setClip(xStart, yStart, xEnd, yEnd); + 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)) { + for (int var9 = 0; var9 < components.length; ++var9) { + Widget var10 = components[var9]; + if (var10 != null && (var10.parentId == interfaceID || interfaceID == 0xabcdabcd && var10 == Client.clickedWidget)) { int var11; if (var8 == -1) { Client.rootWidgetXs[Client.rootWidgetCount] = var10.x + var6; @@ -170,7 +170,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { var10.rootIndex = var11; var10.cycle = Client.cycle; - if (!var10.isIf3 || !PacketBufferNode.method3673(var10)) { + if (!var10.isIf3 || !PacketBufferNode.isComponentHidden(var10)) { if (var10.contentType > 0) { class15.method186(var10); } @@ -181,8 +181,8 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { int var15; int var16; if (var10 == Client.clickedWidget) { - if (var1 != -1412584499 && !var10.isScrollBar) { - class279.field1145 = var0; + if (interfaceID != -1412584499 && !var10.isScrollBar) { + class279.field1145 = components; class54.field1161 = var6; BuddyRankComparator.field1114 = var7; continue; @@ -225,10 +225,10 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { int var21; int var22; if (var10.type == 2) { - var15 = var2; - var16 = var3; - var17 = var4; - var18 = var5; + var15 = xStart; + var16 = yStart; + var17 = xEnd; + var18 = yEnd; } else if (var10.type == 9) { var22 = var12; var19 = var13; @@ -246,17 +246,17 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { ++var20; ++var21; - var15 = var22 > var2 ? var22 : var2; - var16 = var19 > var3 ? var19 : var3; - var17 = var20 < var4 ? var20 : var4; - var18 = var21 < var5 ? var21 : var5; + var15 = var22 > xStart ? var22 : xStart; + var16 = var19 > yStart ? var19 : yStart; + var17 = var20 < xEnd ? var20 : xEnd; + var18 = var21 < yEnd ? var21 : yEnd; } else { var22 = var12 + var10.width; var19 = var13 + var10.height; - var15 = var12 > var2 ? var12 : var2; - var16 = var13 > var3 ? var13 : var3; - var17 = var22 < var4 ? var22 : var4; - var18 = var19 < var5 ? var19 : var5; + var15 = var12 > xStart ? var12 : xStart; + var16 = var13 > yStart ? var13 : yStart; + var17 = var22 < xEnd ? var22 : xEnd; + var18 = var19 < yEnd ? var19 : yEnd; } if (!var10.isIf3 || var15 < var17 && var16 < var18) { @@ -284,19 +284,19 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { Client.field217 = var13; class40.drawEntities(var12, var13, var10.width, var10.height); Client.field100[var10.rootIndex] = true; - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + Rasterizer2D.Rasterizer2D_setClip(xStart, yStart, xEnd, yEnd); continue; } if (var10.contentType == 1338) { MouseRecorder.method1189(var10, var12, var13, var11); - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + Rasterizer2D.Rasterizer2D_setClip(xStart, yStart, xEnd, yEnd); continue; } if (var10.contentType == 1339) { WorldMapRectangle.method296(var10, var12, var13, var11); - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + Rasterizer2D.Rasterizer2D_setClip(xStart, yStart, xEnd, yEnd); continue; } @@ -314,7 +314,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { } if (var10.type == 0) { - if (!var10.isIf3 && PacketBufferNode.method3673(var10) && var10 != Clock.mousedOverWidgetIf1) { + if (!var10.isIf3 && PacketBufferNode.isComponentHidden(var10) && var10 != Clock.mousedOverWidgetIf1) { continue; } @@ -328,7 +328,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { } } - drawInterface(var0, var10.id, var15, var16, var17, var18, var12 - var10.scrollX, var13 - var10.scrollY, var11); + drawInterface(components, 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); } @@ -338,8 +338,8 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { Interpreter.drawWidgets(var23.group, var15, var16, var17, var18, var12, var13, var11); } - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); - Rasterizer3D.Rasterizer3D_method1(); + Rasterizer2D.Rasterizer2D_setClip(xStart, yStart, xEnd, yEnd); + Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D(); } if (Client.isResizable || Client.field101[var11] || Client.gameDrawingMode > 1) { @@ -377,7 +377,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { boolean var35 = false; boolean var46 = false; var25 = var10.itemIds[var22] - 1; - if (var21 + 32 > var2 && var21 < var4 && var26 + 32 > var3 && var26 < var5 || var10 == dragInventoryWidget && var22 == Client.dragItemSlotSource) { + if (var21 + 32 > xStart && var21 < xEnd && var26 + 32 > yStart && var26 < yEnd || var10 == dragInventoryWidget && var22 == Client.dragItemSlotSource) { Sprite var42; if (Client.isItemSelected == 1 && var22 == HealthBarDefinition.selectedItemSlot && var10.id == ServerPacket.selectedItemWidget) { var42 = class226.getItemSprite(var25, var10.itemQuantities[var22], 2, 0, 2, false); @@ -403,8 +403,8 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { } var42.method310(var21 + var33, var26 + var24, 128); - if (var1 != -1) { - Widget var47 = var0[var1 & 65535]; + if (interfaceID != -1) { + Widget var47 = components[interfaceID & 65535]; int var45; if (var26 + var24 < Rasterizer2D.Rasterizer2D_yClipStart && var47.scrollY > 0) { var45 = (Rasterizer2D.Rasterizer2D_yClipStart - var26 - var24) * Client.field183 / 3; @@ -464,12 +464,12 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { } if (var10.fill) { - switch(var10.rectangleMode.id) { + switch(var10.rectangleMode.value) { case 1: - Rasterizer2D.Rasterizer2D_drawGradient(var12, var13, var10.width, var10.height, var10.color, var10.color2); + Rasterizer2D.Rasterizer2D_fillRectangleGradient(var12, var13, var10.width, var10.height, var10.color, var10.color2); break; case 2: - Rasterizer2D.drawGradientAlpha(var12, var13, var10.width, var10.height, var10.color, var10.color2, 255 - (var10.transparency & 255), 255 - (var10.field960 & 255)); + Rasterizer2D.Rasterizer2D_fillRectangleGradientAlpha(var12, var13, var10.width, var10.height, var10.color, var10.color2, 255 - (var10.transparency & 255), 255 - (var10.field960 & 255)); break; default: if (var14 == 0) { @@ -583,7 +583,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { } } - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + Rasterizer2D.Rasterizer2D_setClip(xStart, yStart, xEnd, yEnd); } } } @@ -613,7 +613,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { } } else if (var10.modelType == 5) { if (var10.modelId == 0) { - var43 = Client.field119.getModel((SequenceDefinition)null, -1, (SequenceDefinition)null, -1); + var43 = Client.playerAppearance.getModel((SequenceDefinition)null, -1, (SequenceDefinition)null, -1); } else { var43 = Canvas.localPlayer.getModel(); } @@ -717,12 +717,12 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider { var33 = var12 + 5; } - if (var22 + var33 > var4) { - var33 = var4 - var22; + if (var22 + var33 > xEnd) { + var33 = xEnd - var22; } - if (var24 + var19 > var5) { - var24 = var5 - var19; + if (var24 + var19 > yEnd) { + var24 = yEnd - var19; } Rasterizer2D.Rasterizer2D_fillRectangle(var33, var24, var22, var19, 16777120); diff --git a/runescape-client/src/main/java/DynamicObject.java b/runescape-client/src/main/java/DynamicObject.java index c023e48d5a..c467592e44 100644 --- a/runescape-client/src/main/java/DynamicObject.java +++ b/runescape-client/src/main/java/DynamicObject.java @@ -421,7 +421,7 @@ public class DynamicObject extends Entity { var10.packetBuffer.writeByte(var13); var10.packetBuffer.writeByte(var14); TextureProvider.method2777(var10.packetBuffer, var3); - var10.packetBuffer.method41(var10.packetBuffer.index - var11); + var10.packetBuffer.writeLengthByte(var10.packetBuffer.index - var11); Client.packetWriter.method241(var10); return 1; } else if (var0 == ScriptOpcodes.CHAT_SENDPRIVATE) { @@ -433,7 +433,7 @@ public class DynamicObject extends Entity { int var9 = var8.packetBuffer.index; var8.packetBuffer.writeStringCp1252NullTerminated(var3); TextureProvider.method2777(var8.packetBuffer, var7); - var8.packetBuffer.method40(var8.packetBuffer.index - var9); + var8.packetBuffer.writeLengthShort(var8.packetBuffer.index - var9); Client.packetWriter.method241(var8); return 1; } else if (var0 != ScriptOpcodes.CHAT_PLAYERNAME) { diff --git a/runescape-client/src/main/java/Fonts.java b/runescape-client/src/main/java/Fonts.java index 81cb67cf78..d081332b56 100644 --- a/runescape-client/src/main/java/Fonts.java +++ b/runescape-client/src/main/java/Fonts.java @@ -80,7 +80,8 @@ public class Fonts { signature = "(I)Lbt;", garbageValue = "2102006478" ) - static World method5647() { - return World.field987 < World.worldsCount ? ItemContainer.worlds[++World.field987 - 1] : null; + @Export("getNextWorldListWorld") + static World getNextWorldListWorld() { + return World.worldListWorldCount < World.worldsCount ? ItemContainer.worlds[++World.worldListWorldCount - 1] : null; } } diff --git a/runescape-client/src/main/java/Frames.java b/runescape-client/src/main/java/Frames.java index 3cb846b185..21657bfe05 100644 --- a/runescape-client/src/main/java/Frames.java +++ b/runescape-client/src/main/java/Frames.java @@ -28,7 +28,7 @@ public class Frames extends DualNode { ) public Frames(AbstractArchive var1, AbstractArchive var2, int var3, boolean var4) { NodeDeque var5 = new NodeDeque(); - int var6 = var1.method4(var3); + int var6 = var1.getGroupFileCount(var3); this.frames = new Animation[var6]; int[] var7 = var1.method3(var3); diff --git a/runescape-client/src/main/java/GrandExchangeOffer.java b/runescape-client/src/main/java/GrandExchangeOffer.java index e88a74d43f..89fec173ad 100644 --- a/runescape-client/src/main/java/GrandExchangeOffer.java +++ b/runescape-client/src/main/java/GrandExchangeOffer.java @@ -143,7 +143,7 @@ public class GrandExchangeOffer { int var0 = 0; for (int var1 = 0; var1 <= Client.archiveLoaderArchive; ++var1) { - var0 += ((ArchiveLoader)Client.archiveLoaders.get(var1)).field409; + var0 += ((ArchiveLoader)Client.archiveLoaders.get(var1)).loadedCount; } return var0 * 10000 / Client.field140; diff --git a/runescape-client/src/main/java/GrandExchangeOfferWorldComparator.java b/runescape-client/src/main/java/GrandExchangeOfferWorldComparator.java index fe2abac0ab..a34c468e81 100644 --- a/runescape-client/src/main/java/GrandExchangeOfferWorldComparator.java +++ b/runescape-client/src/main/java/GrandExchangeOfferWorldComparator.java @@ -143,19 +143,19 @@ final class GrandExchangeOfferWorldComparator implements Comparator { var8 = -1; var9 = -1; var10 = -1; - var7 = var0.method48(); + var7 = var0.readUShortSmart(); if (var7 == 32767) { - var7 = var0.method48(); - var9 = var0.method48(); - var8 = var0.method48(); - var10 = var0.method48(); + var7 = var0.readUShortSmart(); + var9 = var0.readUShortSmart(); + var8 = var0.readUShortSmart(); + var10 = var0.readUShortSmart(); } else if (var7 != 32766) { - var9 = var0.method48(); + var9 = var0.readUShortSmart(); } else { var7 = -1; } - var11 = var0.method48(); + var11 = var0.readUShortSmart(); var3.addHitSplat(var7, var9, var8, var10, Client.cycle, var11); } } @@ -163,10 +163,10 @@ final class GrandExchangeOfferWorldComparator implements Comparator { var6 = var0.method58(); if (var6 > 0) { for (var7 = 0; var7 < var6; ++var7) { - var8 = var0.method48(); - var9 = var0.method48(); + var8 = var0.readUShortSmart(); + var9 = var0.readUShortSmart(); if (var9 != 32767) { - var10 = var0.method48(); + var10 = var0.readUShortSmart(); var11 = var0.readUnsignedByte(); int var12 = var9 > 0 ? var0.method59() : var11; var3.addHealthBar(var8, Client.cycle, var9, var10, var11, var12); diff --git a/runescape-client/src/main/java/GroundItemPile.java b/runescape-client/src/main/java/GroundItemPile.java index dc6c145b69..46e1dfe9fe 100644 --- a/runescape-client/src/main/java/GroundItemPile.java +++ b/runescape-client/src/main/java/GroundItemPile.java @@ -74,7 +74,7 @@ public final class GroundItemPile { } else if (!Widget.Widget_archive.tryLoadGroup(itf)) { return false; } else { - int var1 = Widget.Widget_archive.method4(itf); + int var1 = Widget.Widget_archive.getGroupFileCount(itf); if (var1 == 0) { Widget.loadedInterfaces[itf] = true; return true; diff --git a/runescape-client/src/main/java/HitSplatDefinition.java b/runescape-client/src/main/java/HitSplatDefinition.java index 17c3f5e280..07ae476724 100644 --- a/runescape-client/src/main/java/HitSplatDefinition.java +++ b/runescape-client/src/main/java/HitSplatDefinition.java @@ -173,19 +173,19 @@ public class HitSplatDefinition extends DualNode { } else if (var2 == 6) { this.field391 = var1.method51(); } else if (var2 == 7) { - this.field392 = var1.method44(); + this.field392 = var1.readShort(); } else if (var2 == 8) { this.field395 = var1.readStringCp1252NullCircumfixed(); } else if (var2 == 9) { this.field387 = var1.readUnsignedShort(); } else if (var2 == 10) { - this.field393 = var1.method44(); + this.field393 = var1.readShort(); } else if (var2 == 11) { this.field394 = 0; } else if (var2 == 12) { this.field396 = var1.readUnsignedByte(); } else if (var2 == 13) { - this.field397 = var1.method44(); + this.field397 = var1.readShort(); } else if (var2 == 14) { this.field394 = var1.readUnsignedShort(); } else if (var2 == 17 || var2 == 18) { diff --git a/runescape-client/src/main/java/Instrument.java b/runescape-client/src/main/java/Instrument.java index f398bd47db..a00392cd96 100644 --- a/runescape-client/src/main/java/Instrument.java +++ b/runescape-client/src/main/java/Instrument.java @@ -35,42 +35,50 @@ public class Instrument { @ObfuscatedSignature( signature = "Lde;" ) - SoundEnvelope field413; + @Export("pitch") + SoundEnvelope pitch; @ObfuscatedName("f") @ObfuscatedSignature( signature = "Lde;" ) - SoundEnvelope field414; + @Export("volume") + SoundEnvelope volume; @ObfuscatedName("q") @ObfuscatedSignature( signature = "Lde;" ) - SoundEnvelope field415; + @Export("pitchModifier") + SoundEnvelope pitchModifier; @ObfuscatedName("w") @ObfuscatedSignature( signature = "Lde;" ) - SoundEnvelope field416; + @Export("pitchModifierAmplitude") + SoundEnvelope pitchModifierAmplitude; @ObfuscatedName("o") @ObfuscatedSignature( signature = "Lde;" ) - SoundEnvelope field417; + @Export("volumeMultiplier") + SoundEnvelope volumeMultiplier; @ObfuscatedName("u") @ObfuscatedSignature( signature = "Lde;" ) - SoundEnvelope field418; + @Export("volumeMultiplierAmplitude") + SoundEnvelope volumeMultiplierAmplitude; @ObfuscatedName("g") @ObfuscatedSignature( signature = "Lde;" ) - SoundEnvelope field419; + @Export("release") + SoundEnvelope release; @ObfuscatedName("l") @ObfuscatedSignature( signature = "Lde;" ) - SoundEnvelope field420; + @Export("attack") + SoundEnvelope attack; @ObfuscatedName("e") @Export("oscillatorVolume") int[] oscillatorVolume; @@ -96,7 +104,8 @@ public class Instrument { @ObfuscatedSignature( signature = "Lde;" ) - SoundEnvelope field421; + @Export("filterEnvelope") + SoundEnvelope filterEnvelope; @ObfuscatedName("z") @Export("duration") int duration; @@ -122,26 +131,26 @@ public class Instrument { return Instrument_samples; } else { double var3 = (double)var1 / ((double)var2 + 0.0D); - this.field413.reset(); - this.field414.reset(); + this.pitch.reset(); + this.volume.reset(); int var5 = 0; int var6 = 0; int var7 = 0; - if (this.field415 != null) { - this.field415.reset(); - this.field416.reset(); - var5 = (int)((double)(this.field415.end - this.field415.start) * 32.768D / var3); - var6 = (int)((double)this.field415.start * 32.768D / var3); + 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; int var9 = 0; int var10 = 0; - if (this.field417 != null) { - this.field417.reset(); - this.field418.reset(); - var8 = (int)((double)(this.field417.end - this.field417.start) * 32.768D / var3); - var9 = (int)((double)this.field417.start * 32.768D / var3); + 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; @@ -150,8 +159,8 @@ public class Instrument { 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.field413.end - this.field413.start) * 32.768D * Math.pow(1.0057929410678534D, (double)this.oscillatorPitch[var11]) / var3); - Instrument_pitchBaseSteps[var11] = (int)((double)this.field413.start * 32.768D / var3); + 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); } } @@ -161,19 +170,19 @@ public class Instrument { int var15; int[] var16; for (var11 = 0; var11 < var1; ++var11) { - var12 = this.field413.doStep(var1); - var13 = this.field414.doStep(var1); - if (this.field415 != null) { - var14 = this.field415.doStep(var1); - var15 = this.field416.doStep(var1); - var12 += this.evaluateWave(var7, var15, this.field415.form) >> 1; + 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.field417 != null) { - var14 = this.field417.doStep(var1); - var15 = this.field418.doStep(var1); - var13 = var13 * ((this.evaluateWave(var10, var15, this.field417.form) >> 1) + 32768) >> 15; + 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); } @@ -182,7 +191,7 @@ public class Instrument { var15 = Instrument_delays[var14] + var11; if (var15 < var1) { var16 = Instrument_samples; - var16[var15] += this.evaluateWave(Instrument_phases[var14], var13 * Instrument_volumeSteps[var14] >> 15, this.field413.form); + var16[var15] += this.evaluateWave(Instrument_phases[var14], var13 * Instrument_volumeSteps[var14] >> 15, this.pitch.form); var16 = Instrument_phases; var16[var14] += (var12 * Instrument_pitchSteps[var14] >> 16) + Instrument_pitchBaseSteps[var14]; } @@ -191,20 +200,20 @@ public class Instrument { } int var17; - if (this.field419 != null) { - this.field419.reset(); - this.field420.reset(); + if (this.release != null) { + this.release.reset(); + this.attack.reset(); var11 = 0; boolean var18 = false; boolean var19 = true; for (var14 = 0; var14 < var1; ++var14) { - var15 = this.field419.doStep(var1); - var17 = this.field420.doStep(var1); + var15 = this.release.doStep(var1); + var17 = this.attack.doStep(var1); if (var19) { - var12 = (var15 * (this.field419.end - this.field419.start) >> 8) + this.field419.start; + var12 = (var15 * (this.release.end - this.release.start) >> 8) + this.release.start; } else { - var12 = (var17 * (this.field419.end - this.field419.start) >> 8) + this.field419.start; + var12 = (var17 * (this.release.end - this.release.start) >> 8) + this.release.start; } var11 += 256; @@ -228,11 +237,11 @@ public class Instrument { } } - if (this.filter.field36[0] > 0 || this.filter.field36[1] > 0) { - this.field421.reset(); - var11 = this.field421.doStep(var1 + 1); - var12 = this.filter.method26(0, (float)var11 / 65536.0F); - var13 = this.filter.method26(1, (float)var11 / 65536.0F); + 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; @@ -242,18 +251,18 @@ public class Instrument { int var20; while (var14 < var15) { - var17 = (int)((long)Instrument_samples[var14 + var12] * (long)AudioFilter.field35 >> 16); + var17 = (int)((long)Instrument_samples[var14 + var12] * (long)AudioFilter.forwardMultiplier >> 16); for (var20 = 0; var20 < var12; ++var20) { - var17 += (int)((long)Instrument_samples[var14 + var12 - 1 - var20] * (long)AudioFilter.field33[0][var20] >> 16); + var17 += (int)((long)Instrument_samples[var14 + var12 - 1 - var20] * (long)AudioFilter.coefficients[0][var20] >> 16); } for (var20 = 0; var20 < var14; ++var20) { - var17 -= (int)((long)Instrument_samples[var14 - 1 - var20] * (long)AudioFilter.field33[1][var20] >> 16); + var17 -= (int)((long)Instrument_samples[var14 - 1 - var20] * (long)AudioFilter.coefficients[1][var20] >> 16); } Instrument_samples[var14] = var17; - var11 = this.field421.doStep(var1 + 1); + var11 = this.filterEnvelope.doStep(var1 + 1); ++var14; } @@ -266,18 +275,18 @@ public class Instrument { int var21; while (var14 < var15) { - var20 = (int)((long)Instrument_samples[var14 + var12] * (long)AudioFilter.field35 >> 16); + var20 = (int)((long)Instrument_samples[var14 + var12] * (long)AudioFilter.forwardMultiplier >> 16); for (var21 = 0; var21 < var12; ++var21) { - var20 += (int)((long)Instrument_samples[var14 + var12 - 1 - var21] * (long)AudioFilter.field33[0][var21] >> 16); + var20 += (int)((long)Instrument_samples[var14 + var12 - 1 - var21] * (long)AudioFilter.coefficients[0][var21] >> 16); } for (var21 = 0; var21 < var13; ++var21) { - var20 -= (int)((long)Instrument_samples[var14 - 1 - var21] * (long)AudioFilter.field33[1][var21] >> 16); + var20 -= (int)((long)Instrument_samples[var14 - 1 - var21] * (long)AudioFilter.coefficients[1][var21] >> 16); } Instrument_samples[var14] = var20; - var11 = this.field421.doStep(var1 + 1); + var11 = this.filterEnvelope.doStep(var1 + 1); ++var14; } @@ -286,22 +295,22 @@ public class Instrument { var20 = 0; for (var21 = var14 + var12 - var1; var21 < var12; ++var21) { - var20 += (int)((long)Instrument_samples[var14 + var12 - 1 - var21] * (long)AudioFilter.field33[0][var21] >> 16); + var20 += (int)((long)Instrument_samples[var14 + var12 - 1 - var21] * (long)AudioFilter.coefficients[0][var21] >> 16); } for (var21 = 0; var21 < var13; ++var21) { - var20 -= (int)((long)Instrument_samples[var14 - 1 - var21] * (long)AudioFilter.field33[1][var21] >> 16); + var20 -= (int)((long)Instrument_samples[var14 - 1 - var21] * (long)AudioFilter.coefficients[1][var21] >> 16); } Instrument_samples[var14] = var20; - this.field421.doStep(var1 + 1); + this.filterEnvelope.doStep(var1 + 1); ++var14; } break; } - var12 = this.filter.method26(0, (float)var11 / 65536.0F); - var13 = this.filter.method26(1, (float)var11 / 65536.0F); + var12 = this.filter.compute(0, (float)var11 / 65536.0F); + var13 = this.filter.compute(1, (float)var11 / 65536.0F); var15 += 128; } } @@ -333,55 +342,55 @@ public class Instrument { ) @Export("decode") final void decode(Buffer buffer) { - this.field413 = new SoundEnvelope(); - this.field413.decode(buffer); - this.field414 = new SoundEnvelope(); - this.field414.decode(buffer); + this.pitch = new SoundEnvelope(); + this.pitch.decode(buffer); + this.volume = new SoundEnvelope(); + this.volume.decode(buffer); int var2 = buffer.readUnsignedByte(); if (var2 != 0) { --buffer.index; - this.field415 = new SoundEnvelope(); - this.field415.decode(buffer); - this.field416 = new SoundEnvelope(); - this.field416.decode(buffer); + this.pitchModifier = new SoundEnvelope(); + this.pitchModifier.decode(buffer); + this.pitchModifierAmplitude = new SoundEnvelope(); + this.pitchModifierAmplitude.decode(buffer); } var2 = buffer.readUnsignedByte(); if (var2 != 0) { --buffer.index; - this.field417 = new SoundEnvelope(); - this.field417.decode(buffer); - this.field418 = new SoundEnvelope(); - this.field418.decode(buffer); + this.volumeMultiplier = new SoundEnvelope(); + this.volumeMultiplier.decode(buffer); + this.volumeMultiplierAmplitude = new SoundEnvelope(); + this.volumeMultiplierAmplitude.decode(buffer); } var2 = buffer.readUnsignedByte(); if (var2 != 0) { --buffer.index; - this.field419 = new SoundEnvelope(); - this.field419.decode(buffer); - this.field420 = new SoundEnvelope(); - this.field420.decode(buffer); + this.release = new SoundEnvelope(); + this.release.decode(buffer); + this.attack = new SoundEnvelope(); + this.attack.decode(buffer); } for (int var3 = 0; var3 < 10; ++var3) { - int var4 = buffer.method48(); + int var4 = buffer.readUShortSmart(); if (var4 == 0) { break; } this.oscillatorVolume[var3] = var4; - this.oscillatorPitch[var3] = buffer.method47(); - this.oscillatorDelays[var3] = buffer.method48(); + this.oscillatorPitch[var3] = buffer.readShortSmart(); + this.oscillatorDelays[var3] = buffer.readUShortSmart(); } - this.delayTime = buffer.method48(); - this.delayDecay = buffer.method48(); + this.delayTime = buffer.readUShortSmart(); + this.delayDecay = buffer.readUShortSmart(); this.duration = buffer.readUnsignedShort(); this.offset = buffer.readUnsignedShort(); this.filter = new AudioFilter(); - this.field421 = new SoundEnvelope(); - this.filter.method27(buffer, this.field421); + this.filterEnvelope = new SoundEnvelope(); + this.filter.method27(buffer, this.filterEnvelope); } static { diff --git a/runescape-client/src/main/java/Interpreter.java b/runescape-client/src/main/java/Interpreter.java index 17773e38ff..ca85e1b04b 100644 --- a/runescape-client/src/main/java/Interpreter.java +++ b/runescape-client/src/main/java/Interpreter.java @@ -48,7 +48,8 @@ public class Interpreter { @Export("Interpreter_calendar") static Calendar Interpreter_calendar; @ObfuscatedName("z") - static final String[] field422; + @Export("Interpreter_MONTHS") + static final String[] Interpreter_MONTHS; @ObfuscatedName("s") static boolean field423; @ObfuscatedName("t") @@ -139,7 +140,7 @@ public class Interpreter { World.sortOption1 = var2; World.sortOption2 = var3; - MilliClock.method3400(ItemContainer.worlds, 0, ItemContainer.worlds.length - 1, World.sortOption1, World.sortOption2); + MilliClock.sortWorlds(ItemContainer.worlds, 0, ItemContainer.worlds.length - 1, World.sortOption1, World.sortOption2); } @ObfuscatedName("w") @@ -186,12 +187,12 @@ public class Interpreter { garbageValue = "-10" ) @Export("drawWidgets") - static final void drawWidgets(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { - if (GroundItemPile.loadInterface(var0)) { + static final void drawWidgets(int interfaceID, int xStart, int yStart, int xEnd, int yEnd, int var5, int var6, int var7) { + if (GroundItemPile.loadInterface(interfaceID)) { class279.field1145 = null; - DevicePcmPlayerProvider.drawInterface(Widget.interfaceComponents[var0], -1, var1, var2, var3, var4, var5, var6, var7); + DevicePcmPlayerProvider.drawInterface(Widget.interfaceComponents[interfaceID], -1, xStart, yStart, xEnd, yEnd, var5, var6, var7); if (class279.field1145 != null) { - DevicePcmPlayerProvider.drawInterface(class279.field1145, -1412584499, var1, var2, var3, var4, class54.field1161, BuddyRankComparator.field1114, var7); + DevicePcmPlayerProvider.drawInterface(class279.field1145, -1412584499, xStart, yStart, xEnd, yEnd, class54.field1161, BuddyRankComparator.field1114, var7); class279.field1145 = null; } } else if (var7 != -1) { @@ -212,7 +213,7 @@ public class Interpreter { Interpreter_frameDepth = 0; Interpreter_frames = new ScriptFrame[50]; Interpreter_calendar = Calendar.getInstance(); - field422 = new String[]{"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; + Interpreter_MONTHS = new String[]{"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; field423 = false; field424 = false; field425 = 0; diff --git a/runescape-client/src/main/java/IsaacCipher.java b/runescape-client/src/main/java/IsaacCipher.java index b7c0bfef42..235eec0d49 100644 --- a/runescape-client/src/main/java/IsaacCipher.java +++ b/runescape-client/src/main/java/IsaacCipher.java @@ -1,3 +1,4 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; @@ -10,33 +11,39 @@ public final class IsaacCipher { @ObfuscatedGetter( intValue = 1514845493 ) - int field428; + @Export("valuesRemaining") + int valuesRemaining; @ObfuscatedName("o") - int[] field429; + @Export("results") + int[] results; @ObfuscatedName("u") - int[] field430; + @Export("mm") + int[] mm; @ObfuscatedName("g") @ObfuscatedGetter( intValue = -1670027699 ) - int field431; + @Export("aa") + int aa; @ObfuscatedName("l") @ObfuscatedGetter( intValue = -325762649 ) - int field432; + @Export("bb") + int bb; @ObfuscatedName("e") @ObfuscatedGetter( intValue = -1951204929 ) - int field433; + @Export("cc") + int cc; - public IsaacCipher(int[] var1) { - this.field430 = new int[256]; - this.field429 = new int[256]; + public IsaacCipher(int[] seed) { + this.mm = new int[256]; + this.results = new int[256]; - for (int var2 = 0; var2 < var1.length; ++var2) { - this.field429[var2] = var1[var2]; + for (int var2 = 0; var2 < seed.length; ++var2) { + this.results[var2] = seed[var2]; } this.method139(); @@ -47,13 +54,14 @@ public final class IsaacCipher { signature = "(I)I", garbageValue = "-7509790" ) - final int method136() { - if (0 == --this.field428 + 1) { - this.method138(); - this.field428 = 255; + @Export("nextInt") + final int nextInt() { + if (0 == --this.valuesRemaining + 1) { + this.generateMoreResults(); + this.valuesRemaining = 255; } - return this.field429[this.field428]; + return this.results[this.valuesRemaining]; } @ObfuscatedName("f") @@ -62,12 +70,12 @@ public final class IsaacCipher { garbageValue = "-506873526" ) final int method137() { - if (this.field428 == 0) { - this.method138(); - this.field428 = 256; + if (this.valuesRemaining == 0) { + this.generateMoreResults(); + this.valuesRemaining = 256; } - return this.field429[this.field428 - 1]; + return this.results[this.valuesRemaining - 1]; } @ObfuscatedName("q") @@ -75,27 +83,28 @@ public final class IsaacCipher { signature = "(B)V", garbageValue = "124" ) - final void method138() { - this.field432 += ++this.field433; + @Export("generateMoreResults") + final void generateMoreResults() { + this.bb += ++this.cc; for (int var1 = 0; var1 < 256; ++var1) { - int var2 = this.field430[var1]; + int var2 = this.mm[var1]; if ((var1 & 2) == 0) { if ((var1 & 1) == 0) { - this.field431 ^= this.field431 << 13; + this.aa ^= this.aa << 13; } else { - this.field431 ^= this.field431 >>> 6; + this.aa ^= this.aa >>> 6; } } else if ((var1 & 1) == 0) { - this.field431 ^= this.field431 << 2; + this.aa ^= this.aa << 2; } else { - this.field431 ^= this.field431 >>> 16; + this.aa ^= this.aa >>> 16; } - this.field431 += this.field430[128 + var1 & 255]; + this.aa += this.mm[128 + var1 & 255]; int var3; - this.field430[var1] = var3 = this.field430[(var2 & 1020) >> 2] + this.field432 + this.field431; - this.field429[var1] = this.field432 = this.field430[(var3 >> 8 & 1020) >> 2] + var2; + this.mm[var1] = var3 = this.mm[(var2 & 1020) >> 2] + this.bb + this.aa; + this.results[var1] = this.bb = this.mm[(var3 >> 8 & 1020) >> 2] + var2; } } @@ -106,14 +115,14 @@ public final class IsaacCipher { garbageValue = "579890110" ) final void method139() { - int var1 = -1640531527; - int var2 = -1640531527; - int var3 = -1640531527; - int var4 = -1640531527; - int var5 = -1640531527; - int var6 = -1640531527; - int var7 = -1640531527; - int var8 = -1640531527; + int var1 = 0x9e3779b9; + int var2 = 0x9e3779b9; + int var3 = 0x9e3779b9; + int var4 = 0x9e3779b9; + int var5 = 0x9e3779b9; + int var6 = 0x9e3779b9; + int var7 = 0x9e3779b9; + int var8 = 0x9e3779b9; int var9; for (var9 = 0; var9 < 4; ++var9) { @@ -144,14 +153,14 @@ public final class IsaacCipher { } for (var9 = 0; var9 < 256; var9 += 8) { - var8 += this.field429[var9]; - var7 += this.field429[var9 + 1]; - var6 += this.field429[var9 + 2]; - var5 += this.field429[var9 + 3]; - var4 += this.field429[var9 + 4]; - var3 += this.field429[var9 + 5]; - var2 += this.field429[var9 + 6]; - var1 += this.field429[var9 + 7]; + var8 += this.results[var9]; + var7 += this.results[var9 + 1]; + var6 += this.results[var9 + 2]; + var5 += this.results[var9 + 3]; + var4 += this.results[var9 + 4]; + var3 += this.results[var9 + 5]; + var2 += this.results[var9 + 6]; + var1 += this.results[var9 + 7]; var8 ^= var7 << 11; var5 += var8; var7 += var6; @@ -176,25 +185,25 @@ public final class IsaacCipher { var1 ^= var8 >>> 9; var6 += var1; var8 += var7; - this.field430[var9] = var8; - this.field430[var9 + 1] = var7; - this.field430[var9 + 2] = var6; - this.field430[var9 + 3] = var5; - this.field430[var9 + 4] = var4; - this.field430[var9 + 5] = var3; - this.field430[var9 + 6] = var2; - this.field430[var9 + 7] = var1; + this.mm[var9] = var8; + this.mm[var9 + 1] = var7; + this.mm[var9 + 2] = var6; + this.mm[var9 + 3] = var5; + this.mm[var9 + 4] = var4; + this.mm[var9 + 5] = var3; + this.mm[var9 + 6] = var2; + this.mm[var9 + 7] = var1; } for (var9 = 0; var9 < 256; var9 += 8) { - var8 += this.field430[var9]; - var7 += this.field430[var9 + 1]; - var6 += this.field430[var9 + 2]; - var5 += this.field430[var9 + 3]; - var4 += this.field430[var9 + 4]; - var3 += this.field430[var9 + 5]; - var2 += this.field430[var9 + 6]; - var1 += this.field430[var9 + 7]; + var8 += this.mm[var9]; + var7 += this.mm[var9 + 1]; + var6 += this.mm[var9 + 2]; + var5 += this.mm[var9 + 3]; + var4 += this.mm[var9 + 4]; + var3 += this.mm[var9 + 5]; + var2 += this.mm[var9 + 6]; + var1 += this.mm[var9 + 7]; var8 ^= var7 << 11; var5 += var8; var7 += var6; @@ -219,18 +228,18 @@ public final class IsaacCipher { var1 ^= var8 >>> 9; var6 += var1; var8 += var7; - this.field430[var9] = var8; - this.field430[var9 + 1] = var7; - this.field430[var9 + 2] = var6; - this.field430[var9 + 3] = var5; - this.field430[var9 + 4] = var4; - this.field430[var9 + 5] = var3; - this.field430[var9 + 6] = var2; - this.field430[var9 + 7] = var1; + this.mm[var9] = var8; + this.mm[var9 + 1] = var7; + this.mm[var9 + 2] = var6; + this.mm[var9 + 3] = var5; + this.mm[var9 + 4] = var4; + this.mm[var9 + 5] = var3; + this.mm[var9 + 6] = var2; + this.mm[var9 + 7] = var1; } - this.method138(); - this.field428 = 256; + this.generateMoreResults(); + this.valuesRemaining = 256; } @ObfuscatedName("m") @@ -238,7 +247,8 @@ public final class IsaacCipher { signature = "(Lir;Lir;I)V", garbageValue = "75867683" ) - public static void method4082(AbstractArchive var0, AbstractArchive var1) { + @Export("setNpcDefinitionArchives") + public static void setNpcDefinitionArchives(AbstractArchive var0, AbstractArchive var1) { NPCDefinition.NpcDefinition_archive = var0; NPCDefinition.NpcDefinition_modelArchive = var1; } diff --git a/runescape-client/src/main/java/ItemContainer.java b/runescape-client/src/main/java/ItemContainer.java index b29e3ea6c9..40a7592c28 100644 --- a/runescape-client/src/main/java/ItemContainer.java +++ b/runescape-client/src/main/java/ItemContainer.java @@ -22,7 +22,8 @@ public class ItemContainer extends Node { @ObfuscatedSignature( signature = "Lit;" ) - static Archive field434; + @Export("archive19") + static Archive archive19; @ObfuscatedName("f") @Export("ids") int[] ids; diff --git a/runescape-client/src/main/java/KitDefinition.java b/runescape-client/src/main/java/KitDefinition.java index f3c8232050..1bc3ba848e 100644 --- a/runescape-client/src/main/java/KitDefinition.java +++ b/runescape-client/src/main/java/KitDefinition.java @@ -22,7 +22,8 @@ public class KitDefinition extends DualNode { @ObfuscatedGetter( intValue = 235389995 ) - public static int field457; + @Export("KitDefinition_totalCount") + public static int KitDefinition_totalCount; @ObfuscatedName("w") @ObfuscatedSignature( signature = "Ler;" @@ -245,7 +246,7 @@ public class KitDefinition extends DualNode { public static String method4866(Buffer var0) { String var1; try { - int var2 = var0.method48(); + int var2 = var0.readUShortSmart(); if (var2 > 32767) { var2 = 32767; } diff --git a/runescape-client/src/main/java/LoginPacket.java b/runescape-client/src/main/java/LoginPacket.java index 39c810feeb..1c26096efc 100644 --- a/runescape-client/src/main/java/LoginPacket.java +++ b/runescape-client/src/main/java/LoginPacket.java @@ -38,7 +38,8 @@ public class LoginPacket implements ClientPacketMarker { @ObfuscatedSignature( signature = "[Lgl;" ) - static final LoginPacket[] field478; + @Export("LoginPacket_indexedValues") + static final LoginPacket[] LoginPacket_indexedValues; @ObfuscatedName("u") @ObfuscatedGetter( intValue = 1743806243 @@ -101,11 +102,11 @@ public class LoginPacket implements ClientPacketMarker { field475 = new LoginPacket(16, -2); field476 = new LoginPacket(18, -2); field477 = new LoginPacket(27, 0); - field478 = new LoginPacket[32]; - LoginPacket[] var0 = WorldMapIcon2.method300(); + LoginPacket_indexedValues = new LoginPacket[32]; + LoginPacket[] var0 = WorldMapIcon2.LoginPacket_values(); for (int var1 = 0; var1 < var0.length; ++var1) { - field478[var0[var1].id] = var0[var1]; + LoginPacket_indexedValues[var0[var1].id] = var0[var1]; } } diff --git a/runescape-client/src/main/java/LoginScreenAnimation.java b/runescape-client/src/main/java/LoginScreenAnimation.java index cd04c9ff89..b519c6b2b7 100644 --- a/runescape-client/src/main/java/LoginScreenAnimation.java +++ b/runescape-client/src/main/java/LoginScreenAnimation.java @@ -524,11 +524,11 @@ public class LoginScreenAnimation { Buffer var9 = new Buffer(var4.index + var5.index + var8.index + 5); var9.writeByte(2); var9.writeByte(var4.index); - var9.method38(var4.array, 0, var4.index); + var9.writeBytes(var4.array, 0, var4.index); var9.writeByte(var5.index); - var9.method38(var5.array, 0, var5.index); + var9.writeBytes(var5.array, 0, var5.index); var9.writeShort(var8.index); - var9.method38(var8.array, 0, var8.index); + var9.writeBytes(var8.array, 0, var8.index); byte[] var10 = var9.array; int var11 = var10.length; StringBuilder var12 = new StringBuilder(); diff --git a/runescape-client/src/main/java/MidiFileReader.java b/runescape-client/src/main/java/MidiFileReader.java index 7abeab23ee..9e01515cc3 100644 --- a/runescape-client/src/main/java/MidiFileReader.java +++ b/runescape-client/src/main/java/MidiFileReader.java @@ -120,7 +120,7 @@ public class MidiFileReader { @ObfuscatedName("l") @Export("readTrackLength") void readTrackLength(int trackId) { - int var2 = this.buffer.method52(); + int var2 = this.buffer.readVarInt(); int[] var3 = this.trackLengths; var3[trackId] += var2; } @@ -148,7 +148,7 @@ public class MidiFileReader { if (var3 != 240 && var3 != 247) { return this.method167(trackId, var3); } else { - int var4 = this.buffer.method52(); + int var4 = this.buffer.readVarInt(); if (var3 == 247 && var4 > 0) { int var5 = this.buffer.array[this.buffer.index] & 255; if (var5 >= 241 && var5 <= 243 || var5 == 246 || var5 == 248 || var5 >= 250 && var5 <= 252 || var5 == 254) { @@ -169,7 +169,7 @@ public class MidiFileReader { int var3; if (var2 == 255) { int var8 = this.buffer.readUnsignedByte(); - var3 = this.buffer.method52(); + var3 = this.buffer.readVarInt(); Buffer var5; if (var8 == 47) { var5 = this.buffer; diff --git a/runescape-client/src/main/java/MilliClock.java b/runescape-client/src/main/java/MilliClock.java index 8c7e5bb61e..f66a6ba026 100644 --- a/runescape-client/src/main/java/MilliClock.java +++ b/runescape-client/src/main/java/MilliClock.java @@ -130,14 +130,15 @@ public class MilliClock extends Clock { signature = "([Lbt;II[I[II)V", garbageValue = "-1374398116" ) - static void method3400(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; + @Export("sortWorlds") + static void sortWorlds(World[] worlds, int lowestUnsorted, int highestUnsorted, int[] sortOption1, int[] sortOption2) { + if (lowestUnsorted < highestUnsorted) { + int var5 = lowestUnsorted - 1; + int var6 = highestUnsorted + 1; + int var7 = (highestUnsorted + lowestUnsorted) / 2; + World var8 = worlds[var7]; + worlds[var7] = worlds[lowestUnsorted]; + worlds[lowestUnsorted] = var8; while (var5 < var6) { boolean var9 = true; @@ -149,29 +150,29 @@ public class MilliClock extends Clock { --var6; for (var10 = 0; var10 < 4; ++var10) { - if (var3[var10] == 2) { - var11 = var0[var6].index; + if (sortOption1[var10] == 2) { + var11 = worlds[var6].index; var12 = var8.index; - } else if (var3[var10] == 1) { - var11 = var0[var6].population; + } else if (sortOption1[var10] == 1) { + var11 = worlds[var6].population; var12 = var8.population; - if (var11 == -1 && var4[var10] == 1) { + if (var11 == -1 && sortOption2[var10] == 1) { var11 = 2001; } - if (var12 == -1 && var4[var10] == 1) { + if (var12 == -1 && sortOption2[var10] == 1) { var12 = 2001; } - } else if (var3[var10] == 3) { - var11 = var0[var6].isMembersOnly() ? 1 : 0; + } else if (sortOption1[var10] == 3) { + var11 = worlds[var6].isMembersOnly() ? 1 : 0; var12 = var8.isMembersOnly() ? 1 : 0; } else { - var11 = var0[var6].id; + var11 = worlds[var6].id; var12 = var8.id; } if (var12 != var11) { - if ((var4[var10] != 1 || var11 <= var12) && (var4[var10] != 0 || var11 >= var12)) { + if ((sortOption2[var10] != 1 || var11 <= var12) && (sortOption2[var10] != 0 || var11 >= var12)) { var9 = false; } break; @@ -189,29 +190,29 @@ public class MilliClock extends Clock { ++var5; for (var10 = 0; var10 < 4; ++var10) { - if (var3[var10] == 2) { - var11 = var0[var5].index; + if (sortOption1[var10] == 2) { + var11 = worlds[var5].index; var12 = var8.index; - } else if (var3[var10] == 1) { - var11 = var0[var5].population; + } else if (sortOption1[var10] == 1) { + var11 = worlds[var5].population; var12 = var8.population; - if (var11 == -1 && var4[var10] == 1) { + if (var11 == -1 && sortOption2[var10] == 1) { var11 = 2001; } - if (var12 == -1 && var4[var10] == 1) { + if (var12 == -1 && sortOption2[var10] == 1) { var12 = 2001; } - } else if (var3[var10] == 3) { - var11 = var0[var5].isMembersOnly() ? 1 : 0; + } else if (sortOption1[var10] == 3) { + var11 = worlds[var5].isMembersOnly() ? 1 : 0; var12 = var8.isMembersOnly() ? 1 : 0; } else { - var11 = var0[var5].id; + var11 = worlds[var5].id; var12 = var8.id; } if (var11 != var12) { - if ((var4[var10] != 1 || var11 >= var12) && (var4[var10] != 0 || var11 <= var12)) { + if ((sortOption2[var10] != 1 || var11 >= var12) && (sortOption2[var10] != 0 || var11 <= var12)) { var9 = false; } break; @@ -224,14 +225,14 @@ public class MilliClock extends Clock { } while(var9); if (var5 < var6) { - World var13 = var0[var5]; - var0[var5] = var0[var6]; - var0[var6] = var13; + World var13 = worlds[var5]; + worlds[var5] = worlds[var6]; + worlds[var6] = var13; } } - method3400(var0, var1, var6, var3, var4); - method3400(var0, var6 + 1, var2, var3, var4); + sortWorlds(worlds, lowestUnsorted, var6, sortOption1, sortOption2); + sortWorlds(worlds, var6 + 1, highestUnsorted, sortOption1, sortOption2); } } diff --git a/runescape-client/src/main/java/Model.java b/runescape-client/src/main/java/Model.java index 337cb289dd..0e010afbf3 100644 --- a/runescape-client/src/main/java/Model.java +++ b/runescape-client/src/main/java/Model.java @@ -1529,19 +1529,19 @@ public class Model extends Entity { @ObfuscatedName("cy") @Export("draw") - void draw(int yaw, int cameraPitchSine, int cameraPitchCosine, int cameraYawSine, int cameraYawCosine, int x, int y, int var8, long tag) { + void draw(int yaw, int cameraPitchSine, int cameraPitchCosine, int cameraYawSine, int cameraYawCosine, int x, int y, int z, long tag) { field529[0] = -1; if (this.boundsType != 1) { this.calculateBoundsCylinder(); } this.calculateBoundingBox(yaw); - int var11 = cameraYawCosine * var8 - cameraYawSine * x >> 16; + int var11 = cameraYawCosine * z - cameraYawSine * x >> 16; int var12 = cameraPitchSine * y + cameraPitchCosine * var11 >> 16; int var13 = cameraPitchCosine * this.xzRadius >> 16; int var14 = var12 + var13; if (var14 > 50 && var12 < 3500) { - int var15 = var8 * cameraYawSine + cameraYawCosine * x >> 16; + int var15 = z * cameraYawSine + cameraYawCosine * x >> 16; int var16 = (var15 - this.xzRadius) * Rasterizer3D.Rasterizer3D_zoom; if (var16 / var14 < Rasterizer3D.Rasterizer3D_clipMidX2) { int var17 = (var15 + this.xzRadius) * Rasterizer3D.Rasterizer3D_zoom; @@ -1578,7 +1578,7 @@ public class Model extends Entity { if (var30 && var29) { boolean var35 = false; if (field539) { - var35 = Decimator.method2491(this, x, y, var8); + var35 = Decimator.boundingBoxCheck(this, x, y, z); } else { var32 = var12 - var13; if (var32 <= 50) { @@ -1639,7 +1639,7 @@ public class Model extends Entity { var37 += x; var38 += y; - var39 += var8; + var39 += z; var40 = var39 * cameraYawSine + cameraYawCosine * var37 >> 16; var39 = cameraYawCosine * var39 - var37 * cameraYawSine >> 16; var37 = var40; diff --git a/runescape-client/src/main/java/ModelData.java b/runescape-client/src/main/java/ModelData.java index f466b29af9..009a9a53c6 100644 --- a/runescape-client/src/main/java/ModelData.java +++ b/runescape-client/src/main/java/ModelData.java @@ -532,17 +532,17 @@ public class ModelData extends Entity { var50 = var2.readUnsignedByte(); var51 = 0; if ((var50 & 1) != 0) { - var51 = var3.method47(); + var51 = var3.readShortSmart(); } var52 = 0; if ((var50 & 2) != 0) { - var52 = var4.method47(); + var52 = var4.readShortSmart(); } var53 = 0; if ((var50 & 4) != 0) { - var53 = var5.method47(); + var53 = var5.readShortSmart(); } this.verticesX[var49] = var46 + var51; @@ -602,9 +602,9 @@ public class ModelData extends Entity { for (var53 = 0; var53 < var10; ++var53) { var54 = var3.readUnsignedByte(); if (var54 == 1) { - var49 = var2.method47() + var52; - var50 = var2.method47() + var49; - var51 = var2.method47() + var50; + var49 = var2.readShortSmart() + var52; + var50 = var2.readShortSmart() + var49; + var51 = var2.readShortSmart() + var50; var52 = var51; this.indices1[var53] = var49; this.indices2[var53] = var50; @@ -613,7 +613,7 @@ public class ModelData extends Entity { if (var54 == 2) { var50 = var51; - var51 = var2.method47() + var52; + var51 = var2.readShortSmart() + var52; var52 = var51; this.indices1[var53] = var49; this.indices2[var53] = var50; @@ -622,7 +622,7 @@ public class ModelData extends Entity { if (var54 == 3) { var49 = var51; - var51 = var2.method47() + var52; + var51 = var2.readShortSmart() + var52; var52 = var51; this.indices1[var53] = var49; this.indices2[var53] = var50; @@ -633,7 +633,7 @@ public class ModelData extends Entity { int var55 = var49; var49 = var50; var50 = var55; - var51 = var2.method47() + var52; + var51 = var2.readShortSmart() + var52; var52 = var51; this.indices1[var53] = var49; this.indices2[var53] = var55; @@ -790,17 +790,17 @@ public class ModelData extends Entity { var39 = var4.readUnsignedByte(); var40 = 0; if ((var39 & 1) != 0) { - var40 = var5.method47(); + var40 = var5.readShortSmart(); } var41 = 0; if ((var39 & 2) != 0) { - var41 = var6.method47(); + var41 = var6.readShortSmart(); } var42 = 0; if ((var39 & 4) != 0) { - var42 = var7.method47(); + var42 = var7.readShortSmart(); } this.verticesX[var38] = var35 + var40; @@ -869,9 +869,9 @@ public class ModelData extends Entity { for (var42 = 0; var42 < var10; ++var42) { var43 = var5.readUnsignedByte(); if (var43 == 1) { - var38 = var4.method47() + var41; - var39 = var4.method47() + var38; - var40 = var4.method47() + var39; + var38 = var4.readShortSmart() + var41; + var39 = var4.readShortSmart() + var38; + var40 = var4.readShortSmart() + var39; var41 = var40; this.indices1[var42] = var38; this.indices2[var42] = var39; @@ -880,7 +880,7 @@ public class ModelData extends Entity { if (var43 == 2) { var39 = var40; - var40 = var4.method47() + var41; + var40 = var4.readShortSmart() + var41; var41 = var40; this.indices1[var42] = var38; this.indices2[var42] = var39; @@ -889,7 +889,7 @@ public class ModelData extends Entity { if (var43 == 3) { var38 = var40; - var40 = var4.method47() + var41; + var40 = var4.readShortSmart() + var41; var41 = var40; this.indices1[var42] = var38; this.indices2[var42] = var39; @@ -900,7 +900,7 @@ public class ModelData extends Entity { var44 = var38; var38 = var39; var39 = var44; - var40 = var4.method47() + var41; + var40 = var4.readShortSmart() + var41; var41 = var40; this.indices1[var42] = var38; this.indices2[var42] = var44; diff --git a/runescape-client/src/main/java/MouseHandler.java b/runescape-client/src/main/java/MouseHandler.java index f3e1510f7e..7334e28bc0 100644 --- a/runescape-client/src/main/java/MouseHandler.java +++ b/runescape-client/src/main/java/MouseHandler.java @@ -141,8 +141,6 @@ public class MouseHandler implements MouseListener, MouseMotionListener, FocusLi return !mouseEvent.isAltDown() && var2 != 2 ? (!mouseEvent.isMetaDown() && var2 != 3 ? 1 : 2) : 4; } - @Export("mouseMoved") - @ObfuscatedName("mouseMoved") public final synchronized void mouseMoved(MouseEvent var1) { if (MouseHandler_instance != null) { MouseHandler_idleCycles = 0; @@ -153,8 +151,6 @@ public class MouseHandler implements MouseListener, MouseMotionListener, FocusLi } - @Export("mousePressed") - @ObfuscatedName("mousePressed") public final synchronized void mousePressed(MouseEvent var1) { if (MouseHandler_instance != null) { MouseHandler_idleCycles = 0; @@ -173,8 +169,6 @@ public class MouseHandler implements MouseListener, MouseMotionListener, FocusLi } - @Export("mouseReleased") - @ObfuscatedName("mouseReleased") public final synchronized void mouseReleased(MouseEvent var1) { if (MouseHandler_instance != null) { MouseHandler_idleCycles = 0; @@ -208,19 +202,13 @@ public class MouseHandler implements MouseListener, MouseMotionListener, FocusLi } - @Export("mouseDragged") - @ObfuscatedName("mouseDragged") public final synchronized void mouseDragged(MouseEvent var1) { this.mouseMoved(var1); } - @Export("focusGained") - @ObfuscatedName("focusGained") public final void focusGained(FocusEvent var1) { } - @Export("focusLost") - @ObfuscatedName("focusLost") public final synchronized void focusLost(FocusEvent var1) { if (MouseHandler_instance != null) { MouseHandler_currentButton0 = 0; @@ -228,8 +216,6 @@ public class MouseHandler implements MouseListener, MouseMotionListener, FocusLi } - @Export("mouseEntered") - @ObfuscatedName("mouseEntered") public final synchronized void mouseEntered(MouseEvent var1) { this.mouseMoved(var1); } diff --git a/runescape-client/src/main/java/MusicPatch.java b/runescape-client/src/main/java/MusicPatch.java index 4ebabaf7ee..753ae666df 100644 --- a/runescape-client/src/main/java/MusicPatch.java +++ b/runescape-client/src/main/java/MusicPatch.java @@ -177,7 +177,7 @@ public class MusicPatch extends Node { var21 = -1; } - var23 = var2.method52(); + var23 = var2.readVarInt(); } this.field568[var24] = (short)(this.field568[var24] + ((var23 - 1 & 2) << 14)); diff --git a/runescape-client/src/main/java/MusicSample.java b/runescape-client/src/main/java/MusicSample.java index 48d701efb9..182e0b9278 100644 --- a/runescape-client/src/main/java/MusicSample.java +++ b/runescape-client/src/main/java/MusicSample.java @@ -122,7 +122,7 @@ public class MusicSample extends Node { } while(var6 >= 255); byte[] var7 = new byte[var5]; - var2.method46(var7, 0, var5); + var2.readBytes(var7, 0, var5); this.field620[var4] = var7; } diff --git a/runescape-client/src/main/java/MusicTrack.java b/runescape-client/src/main/java/MusicTrack.java index deb18fb6d6..7c5b88f066 100644 --- a/runescape-client/src/main/java/MusicTrack.java +++ b/runescape-client/src/main/java/MusicTrack.java @@ -82,7 +82,7 @@ public class MusicTrack extends Node { var14 = var2 + var5 + var6 + var7 + var8 + var9 + var10 + var11 + var12; for (var15 = 0; var15 < var14; ++var15) { - var1.method52(); + var1.readVarInt(); } var4 += var1.index - var13; @@ -205,8 +205,8 @@ public class MusicTrack extends Node { while (true) { while (true) { - int var63 = var1.method52(); - var51.method42(var63); + int var63 = var1.readVarInt(); + var51.writeVarInt(var63); int var64 = var1.array[var29++] & 255; boolean var65 = var64 != var62; var62 = var64 & 15; @@ -217,7 +217,7 @@ public class MusicTrack extends Node { var51.writeByte(47); var51.writeByte(0); - var51.method39(var51.index - var61); + var51.writeLengthInt(var51.index - var61); continue label222; } diff --git a/runescape-client/src/main/java/NetFileRequest.java b/runescape-client/src/main/java/NetFileRequest.java index c459759de8..19788c8a3b 100644 --- a/runescape-client/src/main/java/NetFileRequest.java +++ b/runescape-client/src/main/java/NetFileRequest.java @@ -31,9 +31,9 @@ public class NetFileRequest extends DualNode { static final void method4555(Widget[] var0, int var1) { for (int var2 = 0; var2 < var0.length; ++var2) { Widget var3 = var0[var2]; - if (var3 != null && var3.parentId == var1 && (!var3.isIf3 || !PacketBufferNode.method3673(var3))) { + if (var3 != null && var3.parentId == var1 && (!var3.isIf3 || !PacketBufferNode.isComponentHidden(var3))) { if (var3.type == 0) { - if (!var3.isIf3 && PacketBufferNode.method3673(var3) && var3 != Clock.mousedOverWidgetIf1) { + if (!var3.isIf3 && PacketBufferNode.isComponentHidden(var3) && var3 != Clock.mousedOverWidgetIf1) { continue; } diff --git a/runescape-client/src/main/java/ObjectDefinition.java b/runescape-client/src/main/java/ObjectDefinition.java index d0187aad78..6a6a68db6f 100644 --- a/runescape-client/src/main/java/ObjectDefinition.java +++ b/runescape-client/src/main/java/ObjectDefinition.java @@ -440,11 +440,11 @@ public class ObjectDefinition extends DualNode { } else if (var2 == 69) { var1.readUnsignedByte(); } else if (var2 == 70) { - this.offsetX = var1.method44(); + this.offsetX = var1.readShort(); } else if (var2 == 71) { - this.offsetHeight = var1.method44(); + this.offsetHeight = var1.readShort(); } else if (var2 == 72) { - this.offsetY = var1.method44(); + this.offsetY = var1.readShort(); } else if (var2 == 73) { this.boolean2 = true; } else if (var2 == 74) { diff --git a/runescape-client/src/main/java/PacketBuffer.java b/runescape-client/src/main/java/PacketBuffer.java index 562ce452d3..2c70890ad6 100644 --- a/runescape-client/src/main/java/PacketBuffer.java +++ b/runescape-client/src/main/java/PacketBuffer.java @@ -19,8 +19,8 @@ public final class PacketBuffer extends Buffer { @ObfuscatedSignature( signature = "Lhn;" ) - @Export("isaacCipher0") - IsaacCipher isaacCipher0; + @Export("isaacCipher") + IsaacCipher isaacCipher; @ObfuscatedName("d") @ObfuscatedGetter( intValue = -1048718919 @@ -39,7 +39,7 @@ public final class PacketBuffer extends Buffer { ) @Export("newIsaacCipher") public void newIsaacCipher(int[] array) { - this.isaacCipher0 = new IsaacCipher(array); + this.isaacCipher = new IsaacCipher(array); } @ObfuscatedName("ih") @@ -49,7 +49,7 @@ public final class PacketBuffer extends Buffer { ) @Export("setIsaacCipher") public void setIsaacCipher(IsaacCipher isaacCipher) { - this.isaacCipher0 = isaacCipher; + this.isaacCipher = isaacCipher; } @ObfuscatedName("im") @@ -59,7 +59,7 @@ public final class PacketBuffer extends Buffer { ) @Export("writeByteIsaac") public void writeByteIsaac(int var1) { - super.array[++super.index - 1] = (byte)(var1 + this.isaacCipher0.method136()); + super.array[++super.index - 1] = (byte)(var1 + this.isaacCipher.nextInt()); } @ObfuscatedName("ii") @@ -69,7 +69,7 @@ public final class PacketBuffer extends Buffer { ) @Export("readByteIsaac") public int readByteIsaac() { - return super.array[++super.index - 1] - this.isaacCipher0.method136() & 255; + return super.array[++super.index - 1] - this.isaacCipher.nextInt() & 255; } @ObfuscatedName("ig") @@ -78,7 +78,7 @@ public final class PacketBuffer extends Buffer { garbageValue = "101" ) public boolean method236() { - int var1 = super.array[super.index] - this.isaacCipher0.method137() & 255; + int var1 = super.array[super.index] - this.isaacCipher.method137() & 255; return var1 >= 128; } @@ -89,8 +89,8 @@ public final class PacketBuffer extends Buffer { ) @Export("readSmartByteShortIsaac") public int readSmartByteShortIsaac() { - int var1 = super.array[++super.index - 1] - this.isaacCipher0.method136() & 255; - return var1 < 128 ? var1 : (var1 - 128 << 8) + (super.array[++super.index - 1] - this.isaacCipher0.method136() & 255); + int var1 = super.array[++super.index - 1] - this.isaacCipher.nextInt() & 255; + return var1 < 128 ? var1 : (var1 - 128 << 8) + (super.array[++super.index - 1] - this.isaacCipher.nextInt() & 255); } @ObfuscatedName("jb") @@ -100,7 +100,7 @@ public final class PacketBuffer extends Buffer { ) public void method237(byte[] var1, int var2, int var3) { for (int var4 = 0; var4 < var3; ++var4) { - var1[var4 + var2] = (byte)(super.array[++super.index - 1] - this.isaacCipher0.method136()); + var1[var4 + var2] = (byte)(super.array[++super.index - 1] - this.isaacCipher.nextInt()); } } @@ -175,7 +175,7 @@ public final class PacketBuffer extends Buffer { garbageValue = "-1562700981" ) @Export("requestNetFile") - static void requestNetFile(Archive var0, int var1, int var2, int var3, byte var4, boolean var5) { + static void requestNetFile(Archive archive, int var1, int var2, int var3, byte var4, boolean priority) { long var6 = (long)((var1 << 16) + var2); NetFileRequest var8 = (NetFileRequest)NetCache.NetCache_pendingPriorityWrites.get(var6); if (var8 == null) { @@ -183,14 +183,14 @@ public final class PacketBuffer extends Buffer { if (var8 == null) { var8 = (NetFileRequest)NetCache.NetCache_pendingWrites.get(var6); if (var8 != null) { - if (var5) { + if (priority) { var8.removeDual(); NetCache.NetCache_pendingPriorityWrites.put(var8, var6); --NetCache.NetCache_pendingWritesCount; ++NetCache.NetCache_pendingPriorityWritesCount; } } else { - if (!var5) { + if (!priority) { var8 = (NetFileRequest)NetCache.NetCache_pendingResponses.get(var6); if (var8 != null) { return; @@ -198,10 +198,10 @@ public final class PacketBuffer extends Buffer { } var8 = new NetFileRequest(); - var8.archive = var0; + var8.archive = archive; var8.crc = var3; var8.padding = var4; - if (var5) { + if (priority) { NetCache.NetCache_pendingPriorityWrites.put(var8, var6); ++NetCache.NetCache_pendingPriorityWritesCount; } else { diff --git a/runescape-client/src/main/java/PacketBufferNode.java b/runescape-client/src/main/java/PacketBufferNode.java index 192a707d9b..551145d4b0 100644 --- a/runescape-client/src/main/java/PacketBufferNode.java +++ b/runescape-client/src/main/java/PacketBufferNode.java @@ -57,8 +57,9 @@ public class PacketBufferNode extends Node { signature = "(Lho;I)Z", garbageValue = "-739353556" ) - static boolean method3673(Widget var0) { - return var0.isHidden; + @Export("isComponentHidden") + static boolean isComponentHidden(Widget component) { + return component.isHidden; } static { diff --git a/runescape-client/src/main/java/PacketWriter.java b/runescape-client/src/main/java/PacketWriter.java index 56fe4d7e67..55e9f56060 100644 --- a/runescape-client/src/main/java/PacketWriter.java +++ b/runescape-client/src/main/java/PacketWriter.java @@ -128,7 +128,7 @@ public class PacketWriter { break; } - this.buffer.method38(var1.packetBuffer.array, 0, var1.field671); + this.buffer.writeBytes(var1.packetBuffer.array, 0, var1.field671); this.field672 -= var1.field671; var1.remove(); var1.packetBuffer.method36(); diff --git a/runescape-client/src/main/java/Player.java b/runescape-client/src/main/java/Player.java index 1219103c7c..f51c19a45e 100644 --- a/runescape-client/src/main/java/Player.java +++ b/runescape-client/src/main/java/Player.java @@ -287,7 +287,7 @@ public final class Player extends Actor { this.appearance = new PlayerAppearance(); } - this.appearance.method256(var4, var9, var2 == 1, var3); + this.appearance.update(var4, var9, var2 == 1, var3); } @ObfuscatedName("f") diff --git a/runescape-client/src/main/java/PlayerAppearance.java b/runescape-client/src/main/java/PlayerAppearance.java index 6b9510751b..ad5de3e57f 100644 --- a/runescape-client/src/main/java/PlayerAppearance.java +++ b/runescape-client/src/main/java/PlayerAppearance.java @@ -10,7 +10,8 @@ public class PlayerAppearance { @ObfuscatedName("g") public static short[] field726; @ObfuscatedName("d") - static final int[] field727; + @Export("equipmentIndices") + static final int[] equipmentIndices; @ObfuscatedName("k") @ObfuscatedSignature( signature = "Ler;" @@ -48,25 +49,26 @@ public class PlayerAppearance { signature = "([I[IZII)V", garbageValue = "727056871" ) - public void method256(int[] var1, int[] var2, boolean var3, int var4) { - if (var1 == null) { - var1 = new int[12]; + @Export("update") + public void update(int[] equipment, int[] bodyColors, boolean isFemale, int npcTransformId) { + if (equipment == null) { + equipment = new int[12]; for (int var5 = 0; var5 < 7; ++var5) { - for (int var6 = 0; var6 < KitDefinition.field457; ++var6) { + for (int var6 = 0; var6 < KitDefinition.KitDefinition_totalCount; ++var6) { KitDefinition var7 = WorldMapSection2.getKitDefinition(var6); - if (var7 != null && !var7.nonSelectable && var5 + (var3 ? 7 : 0) == var7.bodypartID) { - var1[field727[var5]] = var6 + 256; + if (var7 != null && !var7.nonSelectable && var5 + (isFemale ? 7 : 0) == var7.bodypartID) { + equipment[equipmentIndices[var5]] = var6 + 256; break; } } } } - this.equipment = var1; - this.bodyColors = var2; - this.isFemale = var3; - this.npcTransformId = var4; + this.equipment = equipment; + this.bodyColors = bodyColors; + this.isFemale = isFemale; + this.npcTransformId = npcTransformId; this.setHash(); } @@ -77,7 +79,7 @@ public class PlayerAppearance { ) public void method257(int var1, boolean var2) { if (var1 != 1 || !this.isFemale) { - int var3 = this.equipment[field727[var1]]; + int var3 = this.equipment[equipmentIndices[var1]]; if (var3 != 0) { var3 -= 256; @@ -88,11 +90,11 @@ public class PlayerAppearance { if (!var2) { --var3; if (var3 < 0) { - var3 = KitDefinition.field457 - 1; + var3 = KitDefinition.KitDefinition_totalCount - 1; } } else { ++var3; - if (var3 >= KitDefinition.field457) { + if (var3 >= KitDefinition.KitDefinition_totalCount) { var3 = 0; } } @@ -102,7 +104,7 @@ public class PlayerAppearance { } while(var4.nonSelectable); } while(var1 + (this.isFemale ? 7 : 0) != var4.bodypartID); - this.equipment[field727[var1]] = var3 + 256; + this.equipment[equipmentIndices[var1]] = var3 + 256; this.setHash(); } } @@ -143,7 +145,7 @@ public class PlayerAppearance { ) public void method259(boolean var1) { if (this.isFemale != var1) { - this.method256((int[])null, this.bodyColors, var1, -1); + this.update((int[])null, this.bodyColors, var1, -1); } } @@ -158,7 +160,7 @@ public class PlayerAppearance { int var2; for (var2 = 0; var2 < 7; ++var2) { - int var3 = this.equipment[field727[var2]]; + int var3 = this.equipment[equipmentIndices[var2]]; if (var3 == 0) { var1.writeByte(-1); } else { @@ -408,7 +410,7 @@ public class PlayerAppearance { } static { - field727 = new int[]{8, 11, 4, 6, 9, 7, 10}; + equipmentIndices = new int[]{8, 11, 4, 6, 9, 7, 10}; PlayerAppearance_cachedModels = new EvictingDualNodeHashTable(260); } } diff --git a/runescape-client/src/main/java/Rasterizer2D.java b/runescape-client/src/main/java/Rasterizer2D.java index 1409081934..181dc8e39c 100644 --- a/runescape-client/src/main/java/Rasterizer2D.java +++ b/runescape-client/src/main/java/Rasterizer2D.java @@ -411,9 +411,9 @@ public class Rasterizer2D extends DualNode { } - @Export("Rasterizer2D_drawGradient") + @Export("Rasterizer2D_fillRectangleGradient") @ObfuscatedName("dw") - public static void Rasterizer2D_drawGradient(int x, int y, int width, int height, int rgbTop, int rgbBot) { + public static void Rasterizer2D_fillRectangleGradient(int x, int y, int width, int height, int rgbTop, int rgbBot) { if (width > 0 && height > 0) { int var6 = 0; int var7 = 65536 / height; @@ -456,8 +456,8 @@ public class Rasterizer2D extends DualNode { } @ObfuscatedName("dv") - @Export("drawGradientAlpha") - public static void drawGradientAlpha(int x, int y, int width, int height, int rgbTop, int rgbBot, int alphaTop, int alphaBot) { + @Export("Rasterizer2D_fillRectangleGradientAlpha") + public static void Rasterizer2D_fillRectangleGradientAlpha(int x, int y, int width, int height, int rgbTop, int rgbBot, int alphaTop, int alphaBot) { if (width > 0 && height > 0) { int var8 = 0; int var9 = 65536 / height; diff --git a/runescape-client/src/main/java/Rasterizer3D.java b/runescape-client/src/main/java/Rasterizer3D.java index 2541162f80..992dff9e1b 100644 --- a/runescape-client/src/main/java/Rasterizer3D.java +++ b/runescape-client/src/main/java/Rasterizer3D.java @@ -69,8 +69,8 @@ public class Rasterizer3D extends Rasterizer2D { public static int[] Rasterizer3D_cosine; @ObfuscatedName("m") - @Export("Rasterizer3D_method1") - public static final void Rasterizer3D_method1() { + @Export("Rasterizer3D_setClipFromRasterizer2D") + public static final void Rasterizer3D_setClipFromRasterizer2D() { Rasterizer3D_setClip(Rasterizer2D.Rasterizer2D_xClipStart, Rasterizer2D.Rasterizer2D_yClipStart, Rasterizer2D.Rasterizer2D_xClipEnd, Rasterizer2D.Rasterizer2D_yClipEnd); } diff --git a/runescape-client/src/main/java/RectangleMode.java b/runescape-client/src/main/java/RectangleMode.java index 8ff42d1569..06257b72d3 100644 --- a/runescape-client/src/main/java/RectangleMode.java +++ b/runescape-client/src/main/java/RectangleMode.java @@ -11,17 +11,20 @@ public enum RectangleMode implements Enumerated { @ObfuscatedSignature( signature = "Llj;" ) - field757(0, 0), + @Export("SOLID") + SOLID(0, 0), @ObfuscatedName("f") @ObfuscatedSignature( signature = "Llj;" ) - field758(1, 1), + @Export("GRADIENT_COLOR") + GRADIENT_COLOR(1, 1), @ObfuscatedName("q") @ObfuscatedSignature( signature = "Llj;" ) - field759(2, 2); + @Export("GRADIENT_ALPHA") + GRADIENT_ALPHA(2, 2); @ObfuscatedName("d") @Export("musicTrackBoolean") @@ -30,18 +33,18 @@ public enum RectangleMode implements Enumerated { @ObfuscatedGetter( intValue = -1391612747 ) - @Export("id") - public final int id; + @Export("value") + public final int value; @ObfuscatedName("o") @ObfuscatedGetter( intValue = -1204297807 ) - @Export("id2") - final int id2; + @Export("id") + final int id; private RectangleMode(int var3, int var4) { - this.id = var3; - this.id2 = var4; + this.value = var3; + this.id = var4; } @ObfuscatedName("f") @@ -51,7 +54,7 @@ public enum RectangleMode implements Enumerated { ) @Export("rsOrdinal") public int rsOrdinal() { - return this.id2; + return this.id; } @ObfuscatedName("m") @@ -59,9 +62,10 @@ public enum RectangleMode implements Enumerated { signature = "(Lir;Lir;ZB)V", garbageValue = "1" ) - public static void method6028(AbstractArchive var0, AbstractArchive var1, boolean var2) { + @Export("setObjectDefinitionArchives") + public static void setObjectDefinitionArchives(AbstractArchive var0, AbstractArchive var1, boolean isLowDetail) { ObjectDefinition.ObjectDefinition_archive = var0; ObjectDefinition.field640 = var1; - ObjectDefinition.ObjectDefinition_isLowDetail = var2; + ObjectDefinition.ObjectDefinition_isLowDetail = isLowDetail; } } diff --git a/runescape-client/src/main/java/ServerPacket.java b/runescape-client/src/main/java/ServerPacket.java index 68feb8a77e..f5779b1c83 100644 --- a/runescape-client/src/main/java/ServerPacket.java +++ b/runescape-client/src/main/java/ServerPacket.java @@ -500,7 +500,7 @@ public class ServerPacket { int var13 = 0; while (true) { - int var14 = var10.method48(); + int var14 = var10.readUShortSmart(); if (var14 == 0) { break; } diff --git a/runescape-client/src/main/java/SoundCache.java b/runescape-client/src/main/java/SoundCache.java index c529ad236a..0ba06677af 100644 --- a/runescape-client/src/main/java/SoundCache.java +++ b/runescape-client/src/main/java/SoundCache.java @@ -123,9 +123,9 @@ public class SoundCache { ) @Export("getSoundEffect") public RawSound getSoundEffect(int var1, int[] var2) { - if (this.soundEffectIndex.method5() == 1) { + if (this.soundEffectIndex.getGroupCount() == 1) { return this.getSoundEffect0(0, var1, var2); - } else if (this.soundEffectIndex.method4(var1) == 1) { + } else if (this.soundEffectIndex.getGroupFileCount(var1) == 1) { return this.getSoundEffect0(var1, 0, var2); } else { throw new RuntimeException(); @@ -139,9 +139,9 @@ public class SoundCache { ) @Export("getMusicSample") public RawSound getMusicSample(int var1, int[] var2) { - if (this.musicSampleIndex.method5() == 1) { + if (this.musicSampleIndex.getGroupCount() == 1) { return this.getMusicSample0(0, var1, var2); - } else if (this.musicSampleIndex.method4(var1) == 1) { + } else if (this.musicSampleIndex.getGroupFileCount(var1) == 1) { return this.getMusicSample0(var1, 0, var2); } else { throw new RuntimeException(); diff --git a/runescape-client/src/main/java/Sprite.java b/runescape-client/src/main/java/Sprite.java index 81b909b331..7de90a652c 100644 --- a/runescape-client/src/main/java/Sprite.java +++ b/runescape-client/src/main/java/Sprite.java @@ -181,7 +181,8 @@ public final class Sprite extends Rasterizer2D { } @ObfuscatedName("l") - public void method307(int var1) { + @Export("outline") + public void outline(int color) { int[] var2 = new int[this.subWidth * this.subHeight]; int var3 = 0; @@ -190,13 +191,13 @@ public final class Sprite extends Rasterizer2D { int var6 = this.pixels[var3]; if (var6 == 0) { if (var5 > 0 && this.pixels[var3 - 1] != 0) { - var6 = var1; + var6 = color; } else if (var4 > 0 && this.pixels[var3 - this.subWidth] != 0) { - var6 = var1; + var6 = color; } else if (var5 < this.subWidth - 1 && this.pixels[var3 + 1] != 0) { - var6 = var1; + var6 = color; } else if (var4 < this.subHeight - 1 && this.pixels[var3 + this.subWidth] != 0) { - var6 = var1; + var6 = color; } } @@ -208,13 +209,14 @@ public final class Sprite extends Rasterizer2D { } @ObfuscatedName("e") - public void method308(int var1) { + @Export("shadow") + public void shadow(int color) { for (int var2 = this.subHeight - 1; var2 > 0; --var2) { int var3 = var2 * this.subWidth; 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; + this.pixels[var4 + var3] = color; } } } diff --git a/runescape-client/src/main/java/Strings.java b/runescape-client/src/main/java/Strings.java index 7e7903bafb..4e4ca80681 100644 --- a/runescape-client/src/main/java/Strings.java +++ b/runescape-client/src/main/java/Strings.java @@ -31,7 +31,7 @@ public class Strings { throw new RuntimeException(); } else if (var2 == 0) { byte[] var6 = new byte[var3]; - var1.method46(var6, 0, var3); + var1.readBytes(var6, 0, var3); return var6; } else { int var4 = var1.readInt(); diff --git a/runescape-client/src/main/java/TextureProvider.java b/runescape-client/src/main/java/TextureProvider.java index 54c69195ff..c572412dd1 100644 --- a/runescape-client/src/main/java/TextureProvider.java +++ b/runescape-client/src/main/java/TextureProvider.java @@ -69,7 +69,7 @@ public class TextureProvider implements TextureLoader { this.textureSize = var6; int[] var7 = var1.method3(0); int var8 = var7.length; - this.textures = new Texture[var1.method4(0)]; + this.textures = new Texture[var1.getGroupFileCount(0)]; for (int var9 = 0; var9 < var8; ++var9) { Buffer var10 = new Buffer(var1.takeFile(0, var7[var9])); @@ -277,7 +277,7 @@ public class TextureProvider implements TextureLoader { while (true) { int var13; while (!var8) { - var13 = var4.method48(); + var13 = var4.readUShortSmart(); if (var13 == 0) { continue label56; } @@ -301,7 +301,7 @@ public class TextureProvider implements TextureLoader { } } - var13 = var4.method48(); + var13 = var4.readUShortSmart(); if (var13 == 0) { break; } diff --git a/runescape-client/src/main/java/UserComparator7.java b/runescape-client/src/main/java/UserComparator7.java index a0c6b7e792..91e28b043d 100644 --- a/runescape-client/src/main/java/UserComparator7.java +++ b/runescape-client/src/main/java/UserComparator7.java @@ -71,7 +71,7 @@ public class UserComparator7 extends AbstractUserComparator { for (int var12 = 0; var12 < var7; ++var12) { var11 = var0.readInt(); var10[var12] = new byte[var11]; - var0.method46(var10[var12], 0, var11); + var0.readBytes(var10[var12], 0, var11); } } diff --git a/runescape-client/src/main/java/Varcs.java b/runescape-client/src/main/java/Varcs.java index 8081a699f5..0b73237f57 100644 --- a/runescape-client/src/main/java/Varcs.java +++ b/runescape-client/src/main/java/Varcs.java @@ -33,7 +33,7 @@ public class Varcs { Varcs() { this.unwrittenChanges = false; - int var1 = ObjectSound.archive2.method4(19); + int var1 = ObjectSound.archive2.getGroupFileCount(19); this.map = new HashMap(); this.intsPersistence = new boolean[var1]; @@ -45,7 +45,7 @@ public class Varcs { var2 = 0; if (ObjectSound.archive2.method133(15)) { - var2 = ObjectSound.archive2.method4(15); + var2 = ObjectSound.archive2.getGroupFileCount(15); } this.strings = new String[var2]; diff --git a/runescape-client/src/main/java/Varps.java b/runescape-client/src/main/java/Varps.java index a18fcda29b..0778f793cb 100644 --- a/runescape-client/src/main/java/Varps.java +++ b/runescape-client/src/main/java/Varps.java @@ -39,10 +39,10 @@ public class Varps { ) static void method4400(Buffer var0) { if (Client.field172 != null) { - var0.method38(Client.field172, 0, Client.field172.length); + var0.writeBytes(Client.field172, 0, Client.field172.length); } else { byte[] var1 = AttackOption.method2032(); - var0.method38(var1, 0, var1.length); + var0.writeBytes(var1, 0, var1.length); } } diff --git a/runescape-client/src/main/java/ViewportMouse.java b/runescape-client/src/main/java/ViewportMouse.java index 8ca879af33..ae4ed28680 100644 --- a/runescape-client/src/main/java/ViewportMouse.java +++ b/runescape-client/src/main/java/ViewportMouse.java @@ -112,26 +112,26 @@ public class ViewportMouse { if (var1 >= 300 && var1 <= 313) { var2 = (var1 - 300) / 2; var3 = var1 & 1; - Client.field119.method257(var2, var3 == 1); + Client.playerAppearance.method257(var2, var3 == 1); } if (var1 >= 314 && var1 <= 323) { var2 = (var1 - 314) / 2; var3 = var1 & 1; - Client.field119.method258(var2, var3 == 1); + Client.playerAppearance.method258(var2, var3 == 1); } if (var1 == 324) { - Client.field119.method259(false); + Client.playerAppearance.method259(false); } if (var1 == 325) { - Client.field119.method259(true); + Client.playerAppearance.method259(true); } if (var1 == 326) { PacketBufferNode var4 = Interpreter.method1915(ClientPacket.field234, Client.packetWriter.isaacCipher); - Client.field119.method260(var4.packetBuffer); + Client.playerAppearance.method260(var4.packetBuffer); Client.packetWriter.method241(var4); return true; } else { diff --git a/runescape-client/src/main/java/WallDecoration.java b/runescape-client/src/main/java/WallDecoration.java index 517e9deb81..66423c855c 100644 --- a/runescape-client/src/main/java/WallDecoration.java +++ b/runescape-client/src/main/java/WallDecoration.java @@ -88,7 +88,7 @@ public final class WallDecoration { int var2 = -1; for (int var3 = 0; var3 < var1; ++var3) { - var2 = var2 >>> 8 ^ Buffer.field45[(var2 ^ var0[var3]) & 255]; + var2 = var2 >>> 8 ^ Buffer.crc32Table[(var2 ^ var0[var3]) & 255]; } var2 = ~var2; diff --git a/runescape-client/src/main/java/Widget.java b/runescape-client/src/main/java/Widget.java index 11fb4c6deb..69b5dca3b4 100644 --- a/runescape-client/src/main/java/Widget.java +++ b/runescape-client/src/main/java/Widget.java @@ -724,7 +724,7 @@ public class Widget extends Node { this.mouseOverColor = 0; this.mouseOverColor2 = 0; this.fill = false; - this.rectangleMode = RectangleMode.field757; + this.rectangleMode = RectangleMode.SOLID; this.transparency = 0; this.field960 = 0; this.lineWid = 1; @@ -801,8 +801,8 @@ public class Widget extends Node { this.type = buffer.readUnsignedByte(); this.buttonType = buffer.readUnsignedByte(); this.contentType = buffer.readUnsignedShort(); - this.rawX = buffer.method44(); - this.rawY = buffer.method44(); + this.rawX = buffer.readShort(); + this.rawY = buffer.readShort(); this.rawWidth = buffer.readUnsignedShort(); this.rawHeight = buffer.readUnsignedShort(); this.transparency = buffer.readUnsignedByte(); @@ -893,8 +893,8 @@ public class Widget extends Node { for (var8 = 0; var8 < 20; ++var8) { int var9 = buffer.readUnsignedByte(); if (var9 == 1) { - this.inventoryXOffsets[var8] = buffer.method44(); - this.inventoryYOffsets[var8] = buffer.method44(); + this.inventoryXOffsets[var8] = buffer.readShort(); + this.inventoryYOffsets[var8] = buffer.readShort(); this.inventorySprites[var8] = buffer.readInt(); } else { this.inventorySprites[var8] = -1; @@ -987,8 +987,8 @@ public class Widget extends Node { this.textShadowed = buffer.readUnsignedByte() == 1; this.color = buffer.readInt(); - this.paddingX = buffer.method44(); - this.paddingY = buffer.method44(); + this.paddingX = buffer.readShort(); + this.paddingY = buffer.readShort(); var4 = buffer.readUnsignedByte(); if (var4 == 1) { this.clickMask |= 1073741824; @@ -1058,11 +1058,11 @@ public class Widget extends Node { this.isIf3 = true; this.type = buffer.readUnsignedByte(); this.contentType = buffer.readUnsignedShort(); - this.rawX = buffer.method44(); - this.rawY = buffer.method44(); + this.rawX = buffer.readShort(); + this.rawY = buffer.readShort(); this.rawWidth = buffer.readUnsignedShort(); if (this.type == 9) { - this.rawHeight = buffer.method44(); + this.rawHeight = buffer.readShort(); } else { this.rawHeight = buffer.readUnsignedShort(); } @@ -1103,8 +1103,8 @@ public class Widget extends Node { this.modelId = -1; } - this.modelOffsetX = buffer.method44(); - this.modelOffsetY = buffer.method44(); + this.modelOffsetX = buffer.readShort(); + this.modelOffsetY = buffer.readShort(); this.modelAngleX = buffer.readUnsignedShort(); this.modelAngleY = buffer.readUnsignedShort(); this.modelAngleZ = buffer.readUnsignedShort(); @@ -1293,15 +1293,15 @@ public class Widget extends Node { } if (this.outline >= 1) { - var5.method307(1); + var5.outline(1); } if (this.outline >= 2) { - var5.method307(16777215); + var5.outline(16777215); } if (this.spriteShadow != 0) { - var5.method308(this.spriteShadow); + var5.shadow(this.spriteShadow); } widgetSpriteCache.put(var5, var3); diff --git a/runescape-client/src/main/java/World.java b/runescape-client/src/main/java/World.java index 410e309591..75467409f7 100644 --- a/runescape-client/src/main/java/World.java +++ b/runescape-client/src/main/java/World.java @@ -17,7 +17,8 @@ public class World { @ObfuscatedGetter( intValue = 1143875805 ) - static int field987; + @Export("worldListWorldCount") + static int worldListWorldCount; @ObfuscatedName("l") @Export("sortOption2") static int[] sortOption2; @@ -136,7 +137,7 @@ public class World { static { worldsCount = 0; - field987 = 0; + worldListWorldCount = 0; sortOption2 = new int[]{1, 1, 1, 1}; sortOption1 = new int[]{0, 1, 2, 3}; } diff --git a/runescape-client/src/main/java/WorldMapElement.java b/runescape-client/src/main/java/WorldMapElement.java index f4a1c44e73..b3f27793bc 100644 --- a/runescape-client/src/main/java/WorldMapElement.java +++ b/runescape-client/src/main/java/WorldMapElement.java @@ -177,7 +177,7 @@ public class WorldMapElement extends DualNode { int var4; for (var4 = 0; var4 < var3 * 2; ++var4) { - this.field1023[var4] = buffer.method44(); + this.field1023[var4] = buffer.readShort(); } buffer.readInt(); @@ -210,8 +210,8 @@ public class WorldMapElement extends DualNode { buffer.readUnsignedByte(); buffer.readUnsignedByte(); } else if (opcode == 24) { - buffer.method44(); - buffer.method44(); + buffer.readShort(); + buffer.readShort(); } else if (opcode == 25) { buffer.method51(); } else if (opcode == 28) { diff --git a/runescape-client/src/main/java/WorldMapIcon2.java b/runescape-client/src/main/java/WorldMapIcon2.java index e29e9aca9a..1f03250147 100644 --- a/runescape-client/src/main/java/WorldMapIcon2.java +++ b/runescape-client/src/main/java/WorldMapIcon2.java @@ -115,7 +115,8 @@ public class WorldMapIcon2 extends AbstractWorldMapIcon { signature = "(I)[Lgl;", garbageValue = "1026409510" ) - static LoginPacket[] method300() { + @Export("LoginPacket_values") + static LoginPacket[] LoginPacket_values() { return new LoginPacket[]{LoginPacket.field475, LoginPacket.field476, LoginPacket.field473, LoginPacket.field477, LoginPacket.field474}; } diff --git a/runescape-client/src/main/java/WorldMapLabel.java b/runescape-client/src/main/java/WorldMapLabel.java index 801b7a91f9..dae9994f72 100644 --- a/runescape-client/src/main/java/WorldMapLabel.java +++ b/runescape-client/src/main/java/WorldMapLabel.java @@ -148,7 +148,7 @@ public class WorldMapLabel { } } - var0.method53(var2); + var0.writeCrc(var2); var1.remove(); } diff --git a/runescape-client/src/main/java/WorldMapLabelSize.java b/runescape-client/src/main/java/WorldMapLabelSize.java index a558fcd511..f86e3b2de0 100644 --- a/runescape-client/src/main/java/WorldMapLabelSize.java +++ b/runescape-client/src/main/java/WorldMapLabelSize.java @@ -35,7 +35,8 @@ public class WorldMapLabelSize { @ObfuscatedSignature( signature = "Lit;" ) - static Archive field1040; + @Export("archive18") + static Archive archive18; @ObfuscatedName("fi") @ObfuscatedGetter( intValue = 1577759565 diff --git a/runescape-client/src/main/java/WorldMapManager.java b/runescape-client/src/main/java/WorldMapManager.java index 2b669590f6..43ef750c5d 100644 --- a/runescape-client/src/main/java/WorldMapManager.java +++ b/runescape-client/src/main/java/WorldMapManager.java @@ -13,8 +13,8 @@ import net.runelite.mapping.ObfuscatedSignature; @Implements("WorldMapManager") public final class WorldMapManager { @ObfuscatedName("m") - @Export("isLoaded0") - boolean isLoaded0; + @Export("loaded") + boolean loaded; @ObfuscatedName("f") @Export("loadStarted") boolean loadStarted; @@ -92,7 +92,7 @@ public final class WorldMapManager { signature = "([Llq;Ljava/util/HashMap;Lir;Lir;)V" ) public WorldMapManager(IndexedSprite[] var1, HashMap var2, AbstractArchive var3, AbstractArchive var4) { - this.isLoaded0 = false; + this.loaded = false; this.loadStarted = false; this.field1045 = new HashMap(); this.field1050 = 0; @@ -108,15 +108,15 @@ public final class WorldMapManager { garbageValue = "32" ) @Export("load") - public void load(AbstractArchive indexCache, String cacheName, boolean isMembersWorld) { + public void load(AbstractArchive archive, String cacheName, boolean isMembersWorld) { if (!this.loadStarted) { - this.isLoaded0 = false; + this.loaded = false; this.loadStarted = true; System.nanoTime(); - int var4 = indexCache.getGroupId(WorldMapCacheName.WorldMapCacheName_details.name); - int var5 = indexCache.getFileId(var4, cacheName); - Buffer var6 = new Buffer(indexCache.takeFileByNames(WorldMapCacheName.WorldMapCacheName_details.name, cacheName)); - Buffer var7 = new Buffer(indexCache.takeFileByNames(WorldMapCacheName.WorldMapCacheName_compositeMap.name, cacheName)); + int var4 = archive.getGroupId(WorldMapCacheName.WorldMapCacheName_details.name); + int var5 = archive.getFileId(var4, cacheName); + Buffer var6 = new Buffer(archive.takeFileByNames(WorldMapCacheName.WorldMapCacheName_details.name, cacheName)); + Buffer var7 = new Buffer(archive.takeFileByNames(WorldMapCacheName.WorldMapCacheName_compositeMap.name, cacheName)); System.nanoTime(); System.nanoTime(); this.mapAreaData = new WorldMapAreaData(); @@ -164,15 +164,15 @@ public final class WorldMapManager { System.nanoTime(); System.nanoTime(); - if (indexCache.method9(WorldMapCacheName.WorldMapCacheName_compositeTexture.name, cacheName)) { - byte[] var18 = indexCache.takeFileByNames(WorldMapCacheName.WorldMapCacheName_compositeTexture.name, cacheName); + if (archive.method9(WorldMapCacheName.WorldMapCacheName_compositeTexture.name, cacheName)) { + byte[] var18 = archive.takeFileByNames(WorldMapCacheName.WorldMapCacheName_compositeTexture.name, cacheName); this.overviewSprite = class27.convertJpgToSprite(var18); } System.nanoTime(); - indexCache.method6(); - indexCache.method8(); - this.isLoaded0 = true; + archive.method6(); + archive.method8(); + this.loaded = true; } } @@ -315,7 +315,7 @@ public final class WorldMapManager { ) public List method403(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.isLoaded0) { + if (!this.loaded) { return var11; } else { WorldMapRectangle var12 = this.method643(var1, var2, var3, var4); @@ -386,7 +386,7 @@ public final class WorldMapManager { ) @Export("isLoaded") public boolean isLoaded() { - return this.isLoaded0; + return this.loaded; } @ObfuscatedName("e") diff --git a/runescape-client/src/main/java/WorldMapRectangle.java b/runescape-client/src/main/java/WorldMapRectangle.java index a75566568a..3276cdc08b 100644 --- a/runescape-client/src/main/java/WorldMapRectangle.java +++ b/runescape-client/src/main/java/WorldMapRectangle.java @@ -24,8 +24,8 @@ public final class WorldMapRectangle @ObfuscatedSignature( signature = "Lit;" ) - @Export("archive16") - static Archive archive16; + @Export("archive17") + static Archive archive17; @ObfuscatedName("m") @ObfuscatedGetter( intValue = 1976624405 @@ -89,13 +89,13 @@ public final class WorldMapRectangle garbageValue = "-15" ) @Export("newArchive") - static Archive newArchive(int var0, boolean var1, boolean var2, boolean var3) { + static Archive newArchive(int index, boolean releaseGroups, boolean shallowFiles, boolean var3) { ArchiveDisk var4 = null; if (class168.dat2File != null) { - var4 = new ArchiveDisk(var0, class168.dat2File, ArchiveDiskAction.idxFiles[var0], 1000000); + var4 = new ArchiveDisk(index, class168.dat2File, ArchiveDiskAction.idxFiles[index], 1000000); } - return new Archive(var4, Fonts.masterDisk, var0, var1, var2, var3); + return new Archive(var4, Fonts.masterDisk, index, releaseGroups, shallowFiles, var3); } @ObfuscatedName("jp") diff --git a/runescape-client/src/main/java/WorldMapSection2.java b/runescape-client/src/main/java/WorldMapSection2.java index 0b55613c3c..cc68c4570b 100644 --- a/runescape-client/src/main/java/WorldMapSection2.java +++ b/runescape-client/src/main/java/WorldMapSection2.java @@ -298,7 +298,7 @@ public class WorldMapSection2 implements WorldMapSection { Client.field127 = null; Client.menuOptionsCount = 0; Client.isMenuOpen = false; - Client.field119.method256((int[])null, new int[]{0, 0, 0, 0, 0}, false, -1); + Client.playerAppearance.update((int[])null, new int[]{0, 0, 0, 0, 0}, false, -1); for (var0 = 0; var0 < 8; ++var0) { Client.playerMenuActions[var0] = null; diff --git a/runescape-client/src/main/java/WorldMapSectionType.java b/runescape-client/src/main/java/WorldMapSectionType.java index 30441ed6bd..5b094b7385 100644 --- a/runescape-client/src/main/java/WorldMapSectionType.java +++ b/runescape-client/src/main/java/WorldMapSectionType.java @@ -91,8 +91,8 @@ public enum WorldMapSectionType implements Enumerated { signature = "(IZIZI)V", garbageValue = "2102950996" ) - @Export("sortWorlds") - static void sortWorlds(int primaryMode, boolean primaryReversed, int secondaryMode, boolean secondaryReversed) { + @Export("sortWorldList") + static void sortWorldList(int primaryMode, boolean primaryReversed, int secondaryMode, boolean secondaryReversed) { if (ItemContainer.worlds != null) { class3.doWorldSorting(0, ItemContainer.worlds.length - 1, primaryMode, primaryReversed, secondaryMode, secondaryReversed); } diff --git a/runescape-client/src/main/java/class14.java b/runescape-client/src/main/java/class14.java index c221cc9d65..05982b75e4 100644 --- a/runescape-client/src/main/java/class14.java +++ b/runescape-client/src/main/java/class14.java @@ -16,9 +16,9 @@ public class class14 { Buffer var3 = new Buffer(500); var3.writeByte(3); var3.writeByte(var1 != null ? 1 : 0); - var3.method37(var0.getPath()); + var3.writeCESU8(var0.getPath()); if (var1 != null) { - var3.method37(""); + var3.writeCESU8(""); } var2.write(var3.array, 0, var3.index); diff --git a/runescape-client/src/main/java/class15.java b/runescape-client/src/main/java/class15.java index beec47d32f..c58056d2b0 100644 --- a/runescape-client/src/main/java/class15.java +++ b/runescape-client/src/main/java/class15.java @@ -169,40 +169,40 @@ public class class15 extends class21 { signature = "(Lho;I)V", garbageValue = "1585987978" ) - static final void method186(Widget var0) { - int var1 = var0.contentType; + static final void method186(Widget component) { + int var1 = component.contentType; if (var1 == 324) { if (Client.field118 == -1) { - Client.field118 = var0.spriteId2; - Client.field120 = var0.spriteId; + Client.field118 = component.spriteId2; + Client.field120 = component.spriteId; } - if (Client.field119.isFemale) { - var0.spriteId2 = Client.field118; + if (Client.playerAppearance.isFemale) { + component.spriteId2 = Client.field118; } else { - var0.spriteId2 = Client.field120; + component.spriteId2 = Client.field120; } } else if (var1 == 325) { if (Client.field118 == -1) { - Client.field118 = var0.spriteId2; - Client.field120 = var0.spriteId; + Client.field118 = component.spriteId2; + Client.field120 = component.spriteId; } - if (Client.field119.isFemale) { - var0.spriteId2 = Client.field120; + if (Client.playerAppearance.isFemale) { + component.spriteId2 = Client.field120; } else { - var0.spriteId2 = Client.field118; + component.spriteId2 = Client.field118; } } 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; + component.modelAngleX = 150; + component.modelAngleY = (int)(Math.sin((double)Client.cycle / 40.0D) * 256.0D) & 2047; + component.modelType = 5; + component.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; + component.modelAngleX = 150; + component.modelAngleY = (int)(Math.sin((double)Client.cycle / 40.0D) * 256.0D) & 2047; + component.modelType = 5; + component.modelId = 1; } } diff --git a/runescape-client/src/main/java/class171.java b/runescape-client/src/main/java/class171.java index 3de5f3d753..e367b2fbc8 100644 --- a/runescape-client/src/main/java/class171.java +++ b/runescape-client/src/main/java/class171.java @@ -115,10 +115,10 @@ public class class171 { ByteArrayPool.archive13 = WorldMapRectangle.newArchive(13, true, false, true); class2.archive14 = WorldMapRectangle.newArchive(14, false, true, true); WorldMapSection2.archive15 = WorldMapRectangle.newArchive(15, false, true, true); - WorldMapRectangle.archive16 = WorldMapRectangle.newArchive(17, true, true, true); - WorldMapLabelSize.field1040 = WorldMapRectangle.newArchive(18, false, true, true); - ItemContainer.field434 = WorldMapRectangle.newArchive(19, false, true, true); - AbstractByteArrayCopier.field0 = WorldMapRectangle.newArchive(20, false, true, true); + WorldMapRectangle.archive17 = WorldMapRectangle.newArchive(17, true, true, true); + WorldMapLabelSize.archive18 = WorldMapRectangle.newArchive(18, false, true, true); + ItemContainer.archive19 = WorldMapRectangle.newArchive(19, false, true, true); + AbstractByteArrayCopier.archive20 = WorldMapRectangle.newArchive(20, false, true, true); Login.Login_loadingText = "Connecting to update server"; Login.Login_loadingPercent = 20; Client.titleLoadingStage = 40; @@ -140,10 +140,10 @@ public class class171 { var0 += ByteArrayPool.archive13.percentage() * 2 / 100; var0 += class2.archive14.percentage() * 2 / 100; var0 += WorldMapSection2.archive15.percentage() * 2 / 100; - var0 += ItemContainer.field434.percentage() / 100; - var0 += WorldMapLabelSize.field1040.percentage() / 100; - var0 += AbstractByteArrayCopier.field0.percentage() / 100; - var0 += WorldMapRectangle.archive16.method130() && WorldMapRectangle.archive16.method2() ? 1 : 0; + var0 += ItemContainer.archive19.percentage() / 100; + var0 += WorldMapLabelSize.archive18.percentage() / 100; + var0 += AbstractByteArrayCopier.archive20.percentage() / 100; + var0 += WorldMapRectangle.archive17.method130() && WorldMapRectangle.archive17.method2() ? 1 : 0; if (var0 != 100) { if (var0 != 0) { Login.Login_loadingText = "Checking for updates - " + var0 + "%"; @@ -161,11 +161,11 @@ public class class171 { AbstractWorldMapIcon.method625(Login.archive11, "Music Jingles"); AbstractWorldMapIcon.method625(class2.archive14, "Music Samples"); AbstractWorldMapIcon.method625(WorldMapSection2.archive15, "Music Patches"); - AbstractWorldMapIcon.method625(ItemContainer.field434, "World Map"); - AbstractWorldMapIcon.method625(WorldMapLabelSize.field1040, "World Map Geography"); - AbstractWorldMapIcon.method625(AbstractByteArrayCopier.field0, "World Map Ground"); + AbstractWorldMapIcon.method625(ItemContainer.archive19, "World Map"); + AbstractWorldMapIcon.method625(WorldMapLabelSize.archive18, "World Map Geography"); + AbstractWorldMapIcon.method625(AbstractByteArrayCopier.archive20, "World Map Ground"); Calendar.spriteIds = new GraphicsDefaults(); - Calendar.spriteIds.decode(WorldMapRectangle.archive16); + Calendar.spriteIds.decode(WorldMapRectangle.archive17); Login.Login_loadingText = "Loaded update list"; Login.Login_loadingPercent = 30; Client.titleLoadingStage = 45; @@ -230,9 +230,9 @@ public class class171 { Archive var33 = class40.archive7; KitDefinition.KitDefinition_archive = var31; KitDefinition.field456 = var33; - KitDefinition.field457 = KitDefinition.KitDefinition_archive.method4(3); - RectangleMode.method6028(ObjectSound.archive2, class40.archive7, Client.isLowDetail); - IsaacCipher.method4082(ObjectSound.archive2, class40.archive7); + KitDefinition.KitDefinition_totalCount = KitDefinition.KitDefinition_archive.getGroupFileCount(3); + RectangleMode.setObjectDefinitionArchives(ObjectSound.archive2, class40.archive7, Client.isLowDetail); + IsaacCipher.setNpcDefinitionArchives(ObjectSound.archive2, class40.archive7); var30 = ObjectSound.archive2; StructDefinition.StructDefinition_archive = var30; Archive var5 = ObjectSound.archive2; @@ -242,7 +242,7 @@ public class class171 { ItemDefinition.ItemDefinition_archive = var5; ItemDefinition.ItemDefinition_modelArchive = var6; class30.inMembersWorld = var7; - class83.field1167 = ItemDefinition.ItemDefinition_archive.method4(10); + class83.field1167 = ItemDefinition.ItemDefinition_archive.getGroupFileCount(10); class204.field1122 = var8; Archive var9 = ObjectSound.archive2; Archive var10 = AbstractArchive.archive0; @@ -257,7 +257,7 @@ public class class171 { GrandExchangeOfferUnitPriceComparator.setVarbitDefinitionArchive(ObjectSound.archive2); Archive var14 = ObjectSound.archive2; VarpDefinition.field943 = var14; - VarpDefinition.field944 = VarpDefinition.field943.method4(16); + VarpDefinition.field944 = VarpDefinition.field943.getGroupFileCount(16); Archive var15 = WorldMapIcon1.archive3; Archive var16 = class40.archive7; Archive var17 = WorldMapSection1.archive8; @@ -266,8 +266,8 @@ public class class171 { BufferedSource.field54 = var16; Widget.field955 = var17; class27.field1143 = var18; - Widget.interfaceComponents = new Widget[Widget.Widget_archive.method5()][]; - Widget.loadedInterfaces = new boolean[Widget.Widget_archive.method5()]; + Widget.interfaceComponents = new Widget[Widget.Widget_archive.getGroupCount()][]; + Widget.loadedInterfaces = new boolean[Widget.Widget_archive.getGroupCount()]; Archive var19 = ObjectSound.archive2; class4.InvDefinition_archive = var19; Archive var20 = ObjectSound.archive2; @@ -285,7 +285,7 @@ public class class171 { Archive var25 = WorldMapSection1.archive8; WorldMapElement.WorldMapElement_archive = var25; if (var24.method2()) { - UserComparator4.WorldMapElement_count = var24.method4(35); + UserComparator4.WorldMapElement_count = var24.getGroupFileCount(35); Widget.WorldMapElement_cached = new WorldMapElement[UserComparator4.WorldMapElement_count]; for (int var26 = 0; var26 < UserComparator4.WorldMapElement_count; ++var26) { @@ -514,12 +514,12 @@ public class class171 { } } else if (Client.titleLoadingStage == 140) { Login.Login_loadingPercent = 100; - if (!ItemContainer.field434.tryLoadGroupByName(WorldMapCacheName.WorldMapCacheName_details.name)) { - Login.Login_loadingText = "Loading world map - " + ItemContainer.field434.groupLoadPercentByName(WorldMapCacheName.WorldMapCacheName_details.name) / 10 + "%"; + if (!ItemContainer.archive19.tryLoadGroupByName(WorldMapCacheName.WorldMapCacheName_details.name)) { + Login.Login_loadingText = "Loading world map - " + ItemContainer.archive19.groupLoadPercentByName(WorldMapCacheName.WorldMapCacheName_details.name) / 10 + "%"; } else { if (class60.worldMap0 == null) { class60.worldMap0 = new WorldMap(); - class60.worldMap0.init(ItemContainer.field434, WorldMapLabelSize.field1040, AbstractByteArrayCopier.field0, class2.fontBold12, Client.fontsMap, class192.mapSceneSprites); + class60.worldMap0.init(ItemContainer.archive19, WorldMapLabelSize.archive18, AbstractByteArrayCopier.archive20, class2.fontBold12, Client.fontsMap, class192.mapSceneSprites); } Login.Login_loadingText = "Loaded world map"; diff --git a/runescape-client/src/main/java/class190.java b/runescape-client/src/main/java/class190.java index d0a6e50c4b..0da28fa61f 100644 --- a/runescape-client/src/main/java/class190.java +++ b/runescape-client/src/main/java/class190.java @@ -70,9 +70,10 @@ public class class190 { signature = "(I)Lbt;", garbageValue = "-68901151" ) - static World method3672() { - World.field987 = 0; - return Fonts.method5647(); + @Export("worldListStart") + static World worldListStart() { + World.worldListWorldCount = 0; + return Fonts.getNextWorldListWorld(); } @ObfuscatedName("iv") diff --git a/runescape-client/src/main/java/class204.java b/runescape-client/src/main/java/class204.java index fe7e8011c0..91a9695535 100644 --- a/runescape-client/src/main/java/class204.java +++ b/runescape-client/src/main/java/class204.java @@ -30,10 +30,10 @@ public class class204 { signature = "(Lir;Ljava/lang/String;Ljava/lang/String;IZB)V", garbageValue = "0" ) - public static void method4011(AbstractArchive var0, String var1, String var2, int var3, boolean var4) { - int var5 = var0.getGroupId(var1); - int var6 = var0.getFileId(var5, var2); - Login.method2076(var0, var5, var6, var3, var4); + public static void method4011(AbstractArchive archive, String groupName, String fileName, int var3, boolean var4) { + int var5 = archive.getGroupId(groupName); + int var6 = archive.getFileId(var5, fileName); + Login.method2076(archive, var5, var6, var3, var4); } @ObfuscatedName("w") diff --git a/runescape-client/src/main/java/class21.java b/runescape-client/src/main/java/class21.java index 2b38dda583..c7fa01f8f1 100644 --- a/runescape-client/src/main/java/class21.java +++ b/runescape-client/src/main/java/class21.java @@ -246,19 +246,19 @@ public abstract class class21 { var8 = -1; var9 = -1; var12 = -1; - var11 = var0.method48(); + var11 = var0.readUShortSmart(); if (var11 == 32767) { - var11 = var0.method48(); - var9 = var0.method48(); - var8 = var0.method48(); - var12 = var0.method48(); + var11 = var0.readUShortSmart(); + var9 = var0.readUShortSmart(); + var8 = var0.readUShortSmart(); + var12 = var0.readUShortSmart(); } else if (var11 != 32766) { - var9 = var0.method48(); + var9 = var0.readUShortSmart(); } else { var11 = -1; } - var13 = var0.method48(); + var13 = var0.readUShortSmart(); var3.addHitSplat(var11, var9, var8, var12, Client.cycle, var13); } } @@ -266,10 +266,10 @@ public abstract class class21 { var7 = var0.readUnsignedByteNegate(); if (var7 > 0) { for (var11 = 0; var11 < var7; ++var11) { - var8 = var0.method48(); - var9 = var0.method48(); + var8 = var0.readUShortSmart(); + var9 = var0.readUShortSmart(); if (var9 != 32767) { - var12 = var0.method48(); + var12 = var0.readUShortSmart(); var13 = var0.method58(); var10 = var9 > 0 ? var0.readUnsignedByte() : var13; var3.addHealthBar(var8, Client.cycle, var9, var12, var13, var10); @@ -382,7 +382,7 @@ public abstract class class21 { if (!var19 && Client.field208 == 0 && !var3.isHidden) { Players.field738.index = 0; - var0.method46(Players.field738.array, 0, var8); + var0.readBytes(Players.field738.array, 0, var8); Players.field738.index = 0; String var14 = AbstractFont.escapeBrackets(class233.method4527(KitDefinition.method4866(Players.field738))); var3.overheadText = var14.trim(); diff --git a/runescape-client/src/main/java/class226.java b/runescape-client/src/main/java/class226.java index 717fe2281a..9432e890f4 100644 --- a/runescape-client/src/main/java/class226.java +++ b/runescape-client/src/main/java/class226.java @@ -19,23 +19,23 @@ public class class226 { garbageValue = "-76173898" ) @Export("getItemSprite") - public static final Sprite getItemSprite(int var0, int quantity, int var2, int var3, int var4, boolean var5) { + public static final Sprite getItemSprite(int id, int quantity, int outline, int shadow, int quantityMode, boolean noted) { if (quantity == -1) { - var4 = 0; - } else if (var4 == 2 && quantity != 1) { - var4 = 1; + quantityMode = 0; + } else if (quantityMode == 2 && quantity != 1) { + quantityMode = 1; } - long var6 = ((long)quantity << 16) + (long)var0 + ((long)var2 << 38) + ((long)var4 << 40) + ((long)var3 << 42); + long var6 = ((long)quantity << 16) + (long)id + ((long)outline << 38) + ((long)quantityMode << 40) + ((long)shadow << 42); Sprite var8; - if (!var5) { + if (!noted) { var8 = (Sprite)ItemDefinition.Sprite_cached.get(var6); if (var8 != null) { return var8; } } - ItemDefinition var9 = Skills.getItemDefinition(var0); + ItemDefinition var9 = Skills.getItemDefinition(id); if (quantity > 1 && var9.countobj != null) { int var10 = -1; @@ -61,7 +61,7 @@ public class class226 { return null; } } else if (var9.notedId != -1) { - var20 = getItemSprite(var9.unnotedId, quantity, var2, var3, 0, false); + var20 = getItemSprite(var9.unnotedId, quantity, outline, shadow, 0, false); if (var20 == null) { return null; } @@ -80,7 +80,7 @@ public class class226 { var8 = new Sprite(36, 32); Rasterizer2D.Rasterizer2D_replace(var8.pixels, 36, 32); Rasterizer2D.Rasterizer2D_clear(); - Rasterizer3D.Rasterizer3D_method1(); + Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D(); Rasterizer3D.method2989(16, 16); Rasterizer3D.field741 = false; if (var9.placeholderTemplate != -1) { @@ -88,9 +88,9 @@ public class class226 { } int var16 = var9.zoom2d; - if (var5) { + if (noted) { var16 = (int)((double)var16 * 1.5D); - } else if (var2 == 2) { + } else if (outline == 2) { var16 = (int)((double)var16 * 1.04D); } @@ -102,16 +102,16 @@ public class class226 { var20.drawAt2(0, 0); } - if (var2 >= 1) { - var8.method307(1); + if (outline >= 1) { + var8.outline(1); } - if (var2 >= 2) { - var8.method307(16777215); + if (outline >= 2) { + var8.outline(16777215); } - if (var3 != 0) { - var8.method308(var3); + if (shadow != 0) { + var8.shadow(shadow); } Rasterizer2D.Rasterizer2D_replace(var8.pixels, 36, 32); @@ -119,17 +119,17 @@ public class class226 { var20.drawAt2(0, 0); } - if (var4 == 1 || var4 == 2 && var9.isStackable == 1) { + if (quantityMode == 1 || quantityMode == 2 && var9.isStackable == 1) { class204.field1122.draw(class196.method3735(quantity), 0, 9, 16776960, 1); } - if (!var5) { + if (!noted) { ItemDefinition.Sprite_cached.put(var8, var6); } Rasterizer2D.Rasterizer2D_replace(var12, var13, var14); Rasterizer2D.Rasterizer2D_setClipArray(var15); - Rasterizer3D.Rasterizer3D_method1(); + Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D(); Rasterizer3D.field741 = true; return var8; } diff --git a/runescape-client/src/main/java/class238.java b/runescape-client/src/main/java/class238.java index dd236c8353..b7aa774a6e 100644 --- a/runescape-client/src/main/java/class238.java +++ b/runescape-client/src/main/java/class238.java @@ -56,10 +56,10 @@ public final class class238 { Widget var9 = components[var8]; if (var9 != null && var9.parentId == parentId && (!var9.isIf3 || var9.type == 0 || var9.hasListener || class1.getWidgetClickMask(var9) != 0 || var9 == Client.clickedWidgetParent || var9.contentType == 1338)) { if (var9.isIf3) { - if (PacketBufferNode.method3673(var9)) { + if (PacketBufferNode.isComponentHidden(var9)) { continue; } - } else if (var9.type == 0 && var9 != Clock.mousedOverWidgetIf1 && PacketBufferNode.method3673(var9)) { + } else if (var9.type == 0 && var9 != Clock.mousedOverWidgetIf1 && PacketBufferNode.isComponentHidden(var9)) { continue; } diff --git a/runescape-client/src/main/java/class31.java b/runescape-client/src/main/java/class31.java index ad52fd4fdb..f4c2c2884a 100644 --- a/runescape-client/src/main/java/class31.java +++ b/runescape-client/src/main/java/class31.java @@ -62,7 +62,7 @@ public class class31 { } else { World var3; if (var0 == ScriptOpcodes.WORLDLIST_START) { - var3 = class190.method3672(); + var3 = class190.worldListStart(); if (var3 != null) { Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var3.id; Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var3.properties; @@ -81,7 +81,7 @@ public class class31 { return 1; } else if (var0 == ScriptOpcodes.WORLDLIST_NEXT) { - var3 = Fonts.method5647(); + var3 = Fonts.getNextWorldListWorld(); if (var3 != null) { Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var3.id; Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var3.properties; @@ -137,7 +137,7 @@ public class class31 { boolean var9 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 1] == 1; var5 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 2]; boolean var10 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 3] == 1; - WorldMapSectionType.sortWorlds(var6, var9, var5, var10); + WorldMapSectionType.sortWorldList(var6, var9, var5, var10); return 1; } else if (var0 != ScriptOpcodes.GETWORLDINFO) { if (var0 == ScriptOpcodes.SETFOLLOWEROPSLOWPRIORITY) { diff --git a/runescape-client/src/main/java/class40.java b/runescape-client/src/main/java/class40.java index bdb93f4406..1a197bd508 100644 --- a/runescape-client/src/main/java/class40.java +++ b/runescape-client/src/main/java/class40.java @@ -705,7 +705,7 @@ public class class40 { var2 = Client.viewportWidth; var3 = Client.viewportHeight; Rasterizer2D.Rasterizer2D_setClip(var0, var1, var0 + var2, var3 + var1); - Rasterizer3D.Rasterizer3D_method1(); + Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D(); int var9; int var10; int var11;